Сборка прошивки DeviceHive для чипа ESP8266 на OrangePi

Платформа DeviceHive содержит множество различных компонентов, включая плагин Grafana. Он может собирать данные с сервера DeviceHive и отображать их с помощью различных информационных панелей, используя популярный инструмент Grafana.

Сборка компилятора на основе Crosstool-NG и esp-open-sdk
Тестировал на ARMBIAN 5.40 user-built Debian GNU/Linux 9 (stretch) 4.14.17-sunxi
Для сборки нужна флешка не менее 8Gb.
Установку кросс-компилятора и сборку производим из под обычного пользователя

sudo apt-get install make unrar-free autoconf automake libtool gcc g++ gperf \
    flex bison texinfo gawk ncurses-dev libexpat-dev python-dev python python-serial \
    sed git unzip bash help2man wget bzip2 libtool-bin
sudo mkdir /opt/Espressif

username меняем на логин текущего пользователя.

sudo chown username:root /opt/Espressif/
cd /opt/Espressif/ 
git clone --recursive https://github.com/pfalcon/esp-open-sdk
cd esp-open-sdk

в файл /opt/Espressif/esp-open-sdk/crosstool-config-overrides добавляем строки:

# CT_GMP_V_6_0_0 is not set
CT_GMP_V_5_1_3=y
CT_GMP_VERSION="5.1.3"

компилируем:

make STANDALONE=y
export PATH=/opt/Espressif/esp-open-sdk/xtensa-lx106-elf/bin:$PATH

Пару часов ожидания...
И можно собрать WiFi NAT Router или продолжим собирать DeviceHive esp8266-firmware :

cd /opt/Espressif/esp-open-sdk
git clone https://github.com/devicehive/esp8266-firmware.git
cd /opt/Espressif/esp-open-sdk/esp8266-firmware/firmware-src

Меняем строки в файлах,
в директории /opt/Espressif/esp-open-sdk/esp8266-firmware/firmware-src
сохраняя табуляцию в начале строк:

6 строка Makefile

CROSS_COMPILE	?= /opt/Espressif/esp-open-sdk/xtensa-lx106-elf/bin/xtensa-lx106-elf-

54 строка Makefile

@(cd $(dir $(FIRMWARE)) && ./../../esp-utils/build/esp-flasher   /dev/ttyS3 --developer)

62 строка Makefile

@./../esp-utils/build/esp-terminal /dev/ttyS3

25 строка genbin.sh

CROSS_COMPILE="/opt/Espressif/esp-open-sdk/xtensa-lx106-elf/bin/xtensa-lx106-elf-"

Компилируем утилиты:

cd /opt/Espressif/esp-open-sdk/esp8266-firmware/esp-utils
make

Компилируем прошивку DeviceHive для чипа ESP8266:

cd /opt/Espressif/esp-open-sdk/esp8266-firmware/firmware-src
make


text data bss dec hex filename
394491 2352 38728 435571 6a573 build/devicehive.elf
Extract sections...
Writing header...
Writing .text section...
Writing .data section...
Writing .rodata section...
Writing checksum...
Writing irom0 section...
Done
Firmware file is firmware/devicehive.bin, size is 413323 bytes

файл прошивки в папке
/opt/Espressif/esp-open-sdk/esp8266-firmware/firmware-src/firmware devicehive.bin

Прошивка чипа ESP8266
не забывайте включить uart3. В терминале OrangePi:

armbian-config --> System --> Hardware

включаем uart3 — это 8,10 (PA13,PA14) пины на гребёнке OrangePi

reboot
cd /opt/Espressif/esp-open-sdk/esp8266-firmware/firmware-src

схема подключения модуля ESP8266 к OrangePi – пост Прошивка ESP8266 модулей на Orange Pi
перед прошивкой кратковременно нажать кнопку сброс (подключена к RST модуля)

make flash

Рекомендуется прошить в модуль файл esp_init_data_default.bin с калибровками по умолчанию, эти настройки влияют на работу wifi и adc. В большинстве случаев модули работают корректно без этого файла. Последние SDK могут вообще не запускаться без данного файла.
Адрес прошивки файла зависит от установленного размера flash памяти:

0x7c000 для 512 kB.
0xfc000 для 1 MB.
0x3fc000 для 4 MB.
0xffc000 для 16 MB.

wget http://demo.homes-smart.ru/foto/esp_init_data_default.bin

/opt/Espressif/esp-open-sdk/esp8266-firmware/esp-utils/build/esp-flasher /dev/ttyS3 0x7c000 esp_init_data_default.bin

Теперь настроить все предельно просто:
• устройство трижды перезагружается (с интервалом не более 3-х секунд), после чего превращается в точку доступа Wi-Fi;
• вы подключаетесь к этой точке и через браузер вводите все необходимые настройки;
• после применения настроек устройство автоматически перезагружается уже с новыми настройками.
запуск терминала:

make terminal

команда help выведет описание команд терминала

После успешного коннекта заходим вручную по адресу http://192.168.2.1 используя веб браузер.

Подробнее про DeviceHive
Share
Send
Pin
Your comment
won’t be published

HTML will not work

Ctrl + Enter
Popular