Тестируем VoCore в хакспейсе — микро-компьютер с WiFi на Linux/OpenWrt



VoCore — это такой микрокомпьютер с Linux/OpenWrt на борту, который совсем недавно с помощью краудфандинга собрал более $100к (из заявленных $6k). Внутри этой штучки: MIPS процессор 360МГц, WiFi 802.11n, Ethernet 10/100Мбит/с, и куча GPIO. Все уместилось на платке размерами 25х25мм!

Ниже мы расскажем о том, как за пять минут заставить VoCore (этот аппарат) выполнять простое действие — зажигать и гасить светодиод. Понятно, что с помощью нехитрых схем, вместо светодиода можно подключить любую другую нагрузку: от лампочки до котла отопления.

А самое главное, мы объявляем конкурс на раздачу трех VoCore тем, кто предложит самые лучшие идеи его применения. Подробности, опять же, под катом!

Более развернутая характеристика VoCore:
 
  • прошивка — OpenWrt;
  • процессор — RT5350(360MHz MIPS) (недавно был пост Исследуем китайские роутеры на RT5350);
  • ОЗУ — 32Мб SDRAM;
  • ПЗУ — 8Мб SPI Flash;
  • интерфейсы — 10/100M Ethernet, USB, UART, I2C, I2S, PCM, JTAG, >20 GPIO;
  • размер — 25х25мм;
  • цена — ориентировочно 80 Юаней в Китае (около 500 руб).


Итак, у нас есть VoCore (мы получили пред-релизные версии), и есть твердое намерение чем-нибудь поуправлять, например, светодиодом.

План такой:
  1. подключить питание к VoCore
  2. подключиться по Wi-Fi к VoCore и зайти через SSH в OpenWrt
  3. собрать на макетке простую схему светодиода резистором
  4. подключить эту схему к GPIO выходу VoCore
  5. реализовать управление GPIO выходом
  6. мигать светодиодом


Приступим.

Первым делом нам надо найти спецификации на пины этой платы:



Внимание, т.к. у нас пред-релизная версия — то в релизной — возможны небольшие отличия.
 

1. Подключаем питание


Мы использовали четыре батарейки по 1.5В. Получаем в сумме 5.5В. VoCore можно питать напряжением от +3.5В до +6.0В.

Поскольку на VoCore пины имеют шаг 1.27, а не 2.54, то для работы с ними пришлось применить специальные «крокодилы».



Так получилось, что в нашем примере мы минус поставили на HOLE1 (техническое отверстие для крепления платы) — оказалось, что оно работает как «земля». А нижние левые ноги GND, напротив, не были соединены с землей.
 

2. Подключаемся к VoCore по Wi-Fi и заходим по SSH


После включения питания — ожидаем порядка 30 секунд пока VoCore загрузится (Linux) и делаем поиск по Wi-Fi. Подключаемся в WiFi точке c SSID «VoCore» (кто бы мог подумать).

После этого заходим ssh на IP 192.168.61.1 и логинимся с реквизитами root/vocore.

Видим знакомую картинку:


Теперь мы находимся внутри OpenWrt/Linux — внутри компьютера размером с монетку!
 

3. Создаём на макетке схемы для светодиода


На макетной плате (без использования паяльника) сделаем простую схему включения светодиода (не забудем про резистор).

Вот схема:


Напомню, что в макетных платах — есть внутренняя структура соединения пинов — что обеспечивает контакт без необходимости пайки (вот здесь, указано как соединены пины на макетке)
 

4. Подключаемся к GPIO VoCore


Для управления светодиодом будем использовать GPIO7.

Подключаем согласно схеме:


Вот наш макет в сборе:

 

5. Инициализируем GPIO


Для работы с GPIO выходами, мы будем использовать GPIO Sysfs — это механизм работы с GPIO как с файловой системой.

Для управления GPIO выходом — надо будет просто создать соотв. файл и записывать в него 0 или 1.

Выполняем следующие действия в консоли:
 
cd /sys/class/gpio
echo 7 > export
cd gpio7
echo out > direction

Мы перешли в виртуальную файловую систему — "/sys/class/gpio", подключили «7»-ой GPIO, и указали его направление «out».
 

6. Зажигаем и гасим светодиод


Теперь, когда порт настроен, мы можем изменять значение с помощью записи значения (1 или 0) в файл «value».

Зажигаем светодиод, передавая на GPIO7 истину:
echo 1 > value


Ну и гасим (выдача 0):
echo 0 > value


Прочитать подробнее про GPIO sysfs здесь: GPIO Sysfs Interface for Userspace.

Вот, что получилось в конце:

 

Конкурс


У нас в хакспейсе есть 3шт VoCore, которые мы готовы бесплатно выслать. Для этого мы объявляем Конкурс. Основная цель конкурса — посмотреть насколько проект VoCore станет интересен читателям хабра.

Конкурс будет состоять из двух этапов. Первый этап продлится с настоящего момента по 12.10.2014. За это время требуется сформулировать идею проекта, либо показать наработки с аналогичными системами (на базе OpenWrt или с использованием других микрокомпьютеров).

Заявку можно подать заявку двумя способами:
1) опубликовав комментарий под этим постом;
2) прислав описание на почту hackspace@makeitlab.ru

На втором этапе мы проведем голосование по 10 понравившимся работам, и выберем из них три лучших ( с 13.10.2014 по 19.10.2014 ). При этом, два победителя будут выбраны по наибольшему числу голосов, а одного выберем субъективно за наиболее всего понравившийся проект.

В заявке приветствуется:
1) наличие готового аналога на базе OpenWrt;
2) наличие аналога на прочих микрокомпьютерах;
3) подробное описание и история создания;
4) ссылки на код, если проект открытый.
 

Анкета


Так же, у нас появилась идея заказать партию VoCore прямо на заводе в Китае. Чтобы это сделать, потребуется оценить потенциал рынка. Если у вас появился интерес в данном девайсе, не поленитесь, заполните пару поле в этой анкете. Чем больше желающих появится, тем дешевле выйдет VoCore!

На последок, пара полезных ссылок:

Проект VoCore на IndieGoGo
Официальный сайт проекта VoCore

http://habrahabr.ru/company/makeitlab/blog/238897/