Ara, да? Или модульный смартфон будущего
В конце января в Сингапуре прошла конференция Google, посвященная Project Ara.Любителям конструкторов будет интересно узнать о свежем состоянии проекта, а остальным читателям напомню, что Project Google Ara (название не я придумал) — это модульный смартфон будущего, в котором пользователь сам выбирает компоненты не только по стоимости, но и по функционалу.
Работа смартфона будущего с модулем измерения радиации.
Темы конференции: текущее состояние Project Ara, планы по выходу на рынок модульного смартфона Ara, изменение аппаратной платформы Spiral, программные средства управления и проектирования, презентация модулей разработчиков, программа поддержки разработчиков, каналы продаж смартфона и модулей к нему.
Конференцию мы посетили, как официально признанные разработчики собственного устройства DO-RA.Module.
Далее, по-порядку.В середине декабря мы получили от Google девелоперский КIT (системная плата смартфона Ara).
Комплект разработки модульного смартфона Spiral -1. Слева направо — процессорный модуль, хаб, I2C- шлюз.
Самое сложное было правильно соединить провода к хабу. Как нормальные программисты, мануалов читать не стали. С ходу ничего не заработало.
Пришлось читать и перекручивать 12 проводов из 16. Крутить BNC-разьемы была самой сложной задачей в освоении Spiral. Все остальное гораздо проще. Все остальное — это запустить с тестовым сенсором (сенсор частоты сердцебиения прилагался) всю систему. Затем мы заменили тестовый сенсор на сенсор ДО-РА и переписали софт под свой протокол I2C.
Кусок кода, с тремя комментариями package com.google.araploxio;
import android.content.Context; import android.hardware.I2cManager; import android.hardware.I2cTransaction; import android.os.Handler; import android.util.Log;
import java.io.IOException; import java.util.concurrent.Executors; import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.TimeUnit;
public class Sensor { // The 7-bit slave address private static final int address = 0×11; private static final String bus = »/dev/i2c-4»;
private Context context; private I2cManager i2c; private Handler handler; private ScheduledExecutorService executor = Executors.newScheduledThreadPool (1);
////////////////////////////////////////////////////////////////////////////////////////////////// // // Описание транзакций чтения данных //
private static final I2cTransaction[] totalCountRead = { I2cTransaction.newWrite (0×02), I2cTransaction.newRead (2) }; private static final I2cTransaction[] radiatoinRead = { I2cTransaction.newWrite (0×04), I2cTransaction.newRead (2) };
////////////////////////////////////////////////////////////////////////////////////////////////// // // Получаем системный сервис //
public Sensor (Context context, Handler handler) { this.context = context; this.i2c = (I2cManager)context.getSystemService («i2c»); this.handler = handler; }
private I2cTransaction[] execute (I2cTransaction[] txns) { I2cTransaction[] results; try { results = null; for (I2cTransaction txn: txns) results = i2c.performTransactions (bus, address, txn); } catch (IOException e) { throw new RuntimeException («I2C error:» + e); } return results; }
public void start () { executor.scheduleAtFixedRate (collector, 500, 500, TimeUnit.MILLISECONDS); }
public void stop () { executor.shutdown (); try { executor.awaitTermination (500, TimeUnit.MILLISECONDS); } catch (InterruptedException e) { assert false; } }
////////////////////////////////////////////////////////////////////////////////////////////////// // // Разбираем результат, пришедший от датчика //
private final Runnable collector = new Runnable () { public void run () { I2cTransaction[] results; byte[] data;
results = execute (totalCountRead); data = results[0].data; int count = (((int)data[1] & 0xFF) << 8) | (((int)data[0] & 0xFF) << 0);
results = execute (radiatoinRead); data = results[0].data; int radiation = (((int)data[1] & 0xFF) << 8) | (((int)data[0] & 0xFF) << 0);
Log.d («DORA», «count =» + count + » radiation = » + radiation);
handler.obtainMessage (0, count, radiation).sendToTarget (); } }; } И со всей этой компактной системой мы улетели в Сингапур.Итак, в Сингапур мы привезли три рабочих модуля DO-RA.Module-1, 2, 3, отличающихся друг от друга лишь габаритами: 39×17х7 мм, 27×17х7 мм, и самый компактный из них 18×18х3,5 мм.
На фотографии для масштаба изделий присутствовал квотер (25 центов), но его кто-то стащил.Дорисуйте квотер мысленно в верхнем правом углу.
Также мы имеем программное обеспечение DO-RA.Soft под платформу Android для управления собственным модулем анализа радиационной обстановки и измерения избыточного ионизирующего излучения вокруг нас. Эти модули могут монтироваться в разные электронные устройства для контроля и сигнализации об уровне радиации в окружающей среде.
Конференцию открыл руководитель Project Ara, Paul Eremenko, прилетевший сюда из США.
Glavkosmos, забаненный на Хабре до 2016 года и Paul Eremenko.
За период конференции было сделано около двух десятков докладов от руководителей и разработчиков Project Ara, производителей электроники и программного обеспечения, в частности: Toshiba, Marvell, Foxconn Interconnect, Quanta Computer, Synopsys, IDT на заявленные темы. Предоставленная информация была полезна, теперь мы детально понимаем суть проекта Ara и, надеюсь, идём в ногу с ключевыми игроками и разработчиками модулей Ara, без отставания по дизайну устройства и программному обеспечению.
Как нам кажется, модульный смартфон — это пока более экзотика и отчасти исследовательский проект для понимания предпочтений пользователей, скрытая суть которого, возможно, определение наиболее интересных модульных разработок для будущих смартфонов. Не исключено, что в ближайшем будущем самые выдающиеся электронные модули для нашей жизни станут стандартом для индустрии смартфоностроения и будут ставиться, как штатные компоненты во все новые смартфоны. Так в своё время фото камера для телефона сначала была экзотикой, а теперь фото/видео камеры планируют ставить по нескольку штук на один смартфон.
С точки зрения открытости платформы для разработчиков, Google совершил чудо, открыв бесплатно свою платформу и оснастив всех желающих разработчиков девелоперскими инструментами и программами. Например, пару лет назад для участия в аналогичной разработке тот же Qualcomm мог попросить у разработчика за ординарную лицензию девелопера для своих чипсетов до $3 млн. Почувствуйте разницу?!
На конференции в Сингапуре было заявлено, что с 25 января 2015 г. аккредитованным разработчикам проекта Ara будет предоставлена новая платформа Spiral-2 с MDK 0.2, обладающая большим количеством интерфейсов и технических возможностей, а во втором квартале 2015 г. будет выпущена Spiral-3 c MDK 0.5. К концу года Google в рамках Project Ara планирует выпустить пилотный проект работоспособного модульного смартфона с 20–30 модулями, прошедшими технические испытания и сертификацию. Предполагается, что тестовый объем модульных смартфонов, около 50 тыс. штук, будет выпушен к концу текущего года. А зона тестирования выбрана Пуэрто-Рико, где максимальный процент смартфонов у населения, широкое проникновение Интернет и действуют американские стандарты для сотовых операторов связи.
Относительно приза Google в $100K за разработку самого выдающегося модуля для смартфона Ara было отмечено, что в связи с техническими задержками поставок Spiral-1 и Spiral-2, подача заявок на участие в конкурсе продлено до 1 марта, видеосюжеты о разработках модулей надо подавать до 15 апреля, подведение итогов конкурса на лучший модуль для Ara состоится до 1 мая 2015 года.
Из реальных компонентов для смартфона Ara на конференции был презентован также модуль компании Vestigen из Словакии. Анонсированный модуль позволяет делать экспресс-анализы состава жидких сред, включая анализ крови и, в частности, контролировать показатель уровень инсулина.
Итоги конференции для ОАО «Интерсофт Евразия»:
1. Получена достоверная информация о текущем статусе Project Ara/Google непосредственно от его разработчиков и идеологов, что позволяет синхронизировать планы по разработке и коммерциализации DO-RA.Module для модульного смартфона Ara.
2. Установлены прямые контакты с руководителем Project Ara, г-ном Paul Eremenko и его командой, а также с производителями компонентов перспективных модулей к смартфону Ara, в лице представителей компаний: Toshiba, Marvell, Foxconn, Quanta Computer и др.
Спасибо за внимание.