В конце января в Сингапуре прошла конференция 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 = 0x11;
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(0x02),
I2cTransaction.newRead(2)
};
private static final I2cTransaction[] radiatoinRead = {
I2cTransaction.newWrite(0x04),
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 и др.
Спасибо за внимание.
Автор: PapaBubaDiop