Следующие руководства помогут настроить компьютер и Arduino IDE для создания правильного ZIP-файла, а также покажут, как использовать смарттелефон или планшет для загрузки нового кода в плату Ganglion. Это руководство также научит, как загружать код в плату Ganglion в первый раз.
Платы Ganglion, выпущенные до 27 февраля 2017 года, не будут программироваться через Over The Air. Для программирования такой платы необходимо следовать приведенным ниже инструкциям, чтобы впервые запрограммировать плату через OTA.
Для начала необходимо следующее:
Arduino IDE v1.8.0 или новее;
файлы Simblee Board;
прошивка для библиотеки Ganglion;
прошивка Wifi Master Library;
инструменты компилятора (для OTA).
Cначала необходимо установить Arduino IDE v1.8.0 или новее. Далее необходимо скачать файлы Simblee Board. А затем следовать инструкциям по быстрому запуску Simblee, чтобы установить файлы платы Simblee в Arduino
для MacOS.
4.8.3. Модификация файлов Simblee Board
Чтобы запрограммировать Simblee для связи и управления платой Ganglion, необходимо изменить файл “variants.h” в папке Simblee, которая была загружена в Arduino. Необходимо перейти к папке
“/Applications/Arduino.app/Contents/Java/portable/packages/Simblee/hardware/Sim blee/1.1.0/variants/Simblee”. Там надо найти файл с именем “variant.h”.
Необходимо открыть этот файл в любом редакторе и изменить значения, как показано на рис. 4.18. Для доступа к содержимому приложения необходимо щелкнуть правой кнопкой мыши по приложению [или нажать “control”+щелчек левой кнопкой мыши] и выбрать “Show Package Contents”.
Рис. 4.18. Редактирование файла настроек
110
В табл. 4.3 представлены значения параметров, которые необходимо изменить.
Таблица 4.3
define |
По умолчанию |
Изменить на |
|
|
|
PIN_SPI_SS |
6U |
26U |
|
|
|
PIN_SPI_MOSI |
5U |
18u |
|
|
|
PIN_SPI_MISO |
3U |
15U |
|
|
|
PIN_SPI_SCK |
4u |
16U |
|
|
|
Обязательно необходимо сохранить файл перед закрытием. Если вы этого не сделать, изменения не будут сохранены, и плата Ganglion не будет работать после того, как будет перепрограммирована.
4.8.4. Установка прошивки из Arduino Library Manager
Для начала надо прочитать, что такое “Arduino Library Manager” (https://www.arduino.cc/en/Guide/Libraries#toc3).
Необходимо открыть диспетчер библиотек и найти OpenBCI. Далее надо установить последнюю версию для “OpenBCI_Ganglion_Library” и “OpenBCI_Wifi_Master”.
4.8.5. Ручная установка прошивки Ganglion
Необходимо загрузить последнюю версию “OpenBCI_Ganglion_Library”,
это самый верхний ZIP-файл (http://www.arduinolibraries.info/libraries/openbci_ganglion_library). Далее содержимое архива надо разархивировать в папку с именем “OpenBCI_Ganglion_Library”. Затем переместить папку
“OpenBCI_Ganglion_Library” в директорию:
на MacOS: “/Documents/Arduino/libraries”;
на Windows: “C:\Users\username\Documents\Arduino\libraries”.
Если папки “libraries” нет, то ее необходимо создать.
Если при этом возникли проблемы или есть желание узнать больше, то необходимо обратиться к официальному руководству Arduino (https://www.arduino.cc/en/Guide/Libraries#toc5) для ручной установки.
4.8.6. Ручная установка прошивки WiFi Master
Необходимо загрузить последнюю версию “WiFi Master Library” (https://www.arduinolibraries.info/libraries/open-bci_wifi_master), это самый
111
верхний ZIP-файл. Далее надо разархивировать содержимое в папку
”OpenBCI_Wifi_Master”. Затем переместить папку “OpenBCI_Wifi_Master” в:
на MacOS: “/Documents/Arduino/libraries”;
на Windows: “C:\Users\username\Documents\Arduino\libraries”.
Если при этом возникли проблемы или есть желание узнать больше, то необходимо обратиться к официальному руководству Arduino (https://www.arduino.cc/en/Guide/Libraries#toc5) для ручной установки.
4.8.7. Клонирование кода из репозитория Github
Разработчики, желающие внести свой вклад или написать собственную прошивку, могут клонировать хранилища прошивок прямо в папку libraries:
на MacOS: “/Documents/Arduino/libraries”;
на Windows: “C:\Users\username\Documents\Arduino\libraries”.
Ссылка на Github для OpenBCI_Ganglion_Library: “https://github.com/OpenBCI/OpenBCI_Ganglion_Library”. Ссылка на Github для OpenBCI_Wifi_Master_Library:
“https://github.com/OpenBCI/OpenBCI_Wifi_Master_Library”.
4.8.8. Выбор «Simblee» в качестве прошиваемой платы
Если все вышеуказанные действия выполнены правильно, то появится возможность выбрать вид платы “Simblee” из выпадающего меню “Tools >> Board >>”.
4.8.9. Выбор DefaultGanglion.ino из доступных примеров
Далее необходимо в Arduino IDE зайти в меню
“File=>Examples=>OpenBCI_Ganglion_Library=>DefaultGanglion”, которое запускает прошивку Ganglion. Необходимо загрузить только “DefaultGanglion” скетч. Если библиотека “OpenBCI_Ganglion_Library” не видна, необходимо убедиться, что выбран тип платы “Simblee”.
4.8.10. Создание файла OTA
Для создания ZIP-файла с соответствующими компонентами в целях выполнения действий OTA необходимо дополнительно изменить файлы платы
Simblee в папке “Arduino/Contents/Java/portable”.
Для этого необходимо перейти в папку
“/Arduino.app/Contents/Java/portable/packages/Simblee/hardware/Simblee/1.1.0”, затем изменить имя файла “platform.txt” на “platform_NORMAL.txt” (рис. 4.19).
Это делается на случай возвращения к оригиналу.
112
Рис. 4.19. Изменение файла “platform.txt”
Далее необходимо скачать следующие файлы
(https://github.com/biomurph/Ganglion_OTA_Tools):
mkdfuzip;
nrfutil_macosx;
platform.txt.
Затем |
необходимо |
переместить |
файлы |
с |
названиями |
mkdfuzip, nrfutil_macosx и platform.txt в папку |
“Simblee/1.1.0”. Далее надо |
||||
перезапустить или запустить заново Arduino. Далее надо нажать “Создать файл OTA”. В результате будет создан файл OTA в формате .zip (рис. 4.20).
Рис. 4.20. Изменение файла “platform.txt”
Выше приведенное руководство позволяет создавать собственные прошивки Ganglion, которые правильно упакованы для программирования OTA. Всякий раз, когда необходимо создать или изменить прошивку Ganglion,
надо всегда ставить строку #include <OpenBCI_Ganglion_Library.h> в верхней части создаваемого кода.
Чтобы создать файлы OTA, просто необходимо выбрать команду “Export compiled Binary” в “Sketch” меню. В течение некоторого времени Arduino IDE
совместно с установленными инструментами создаст .zip файл прямо в папке с эскизами рядом с исходным эскизом. Этот файл и нужен для OTA. Далее надо изменить имя файла, удалив “.ino.Simblee”, и все готово.
113
4.8.11. Настройка мобильного устройства для программирования
OTA
Модуль Simblee разработан на основе чипа Nordic Semiconductor nRF51822 (https://www.nordicsemi.com/Products/Low-power-short-range- wireless/nRF51822), и поэтому необходимо использовать приложения Nordic nRF для подключения через OTA.
4.8.11.1. Настройка OTA для iPhone
Для настройки OTA в iPhone необходимо иметь:
iPhone;
приложение nRF Toolbox;
приложение Lightblue Explorer (рис. 4.21).
Рис. 4.21. Приложения для iPhone
Далее надо установить приложения nRF Toolbox и Lightblue Explorer на iPhone. Включить плату Ganglion и Bluetooth на телефоне.
Затем необходимо открыть приложение Lightblue. Приложение и покажет, какие периферийные устройства Bluetooth находятся поблизости. Сеть Simblee (плата Ganglion) будет отображена в списке доступных сетей (рис. 4.22).
Рис. 4.22. Сеть Simblee
114