This is an old revision of the document!
NodeMCU - Vývojářské prostředí pro Ubuntu
Ubuntu Obsah
Nahrání firmware
Firmware je potřeba do ESP8266 nahrát. K tomuto účelu jsou na internetu dostupné programy a skripty. Předvedeme si dva nástroje jeden pro Linux napsaný v Pythonu Esptool.py a druhý pro Windows napsaný v Delphi NodeMCU-Flasher.
Před nahráním NodeMCU firmware se ujistěte, že jej se máte zkompilovaný. Také před nahráním firmwaru je třeba na NodeMCU zapnout FLASH mód a budťo zmáčknutím tlačítka FLASH na NodeMCU nebo před rebootem nastavte na pin GPIO0
na hodnotu LOW
. Viz. upozornění
Výsledný zkopilovaný bootloader a firmware je uložen ve složce ../nodemcu-firmware/bin
.
Bootloader nese název 0x00000.bin a firmware 0x10000.bin.
-rw-rw-r-- 1 node node 27872 Oct 26 11:21 0x00000.bin -rw-rw-r-- 1 node node 357683 Oct 26 11:21 0x10000.bin
Nástoj Esptool.py
Esptool vyžaduje Python 2. K instalaci esptool
použijeme správce balíčků pip
.Pokud používáte verzi Pythonu 2 >=2.7.9 nebo Python 3 >=3.4 pip
je již součástí vaší instalace.
Instalace pip:
python get-pip.py
Instalace esptool pomocí pip:
sudo pip install –upgrade esptool
Pokud máte výchozí verzi Python 3, pak příkaz bude následující:
sudo pip2 install esptool
Zkombinování bin souborů do monolitní binárky:
esptool.py make_image -f bin/0x00000.bin -a 0x00000 -f bin/0x10000.bin -a 0x10000 bin/flash.bin
Předtím než budeme nahrávat firmware ujistěte se, že jste členy dialout
skupiny, která vám dá práva a můžete komunikovat přes sériový port např. /dev/ttyUSB0
.
Přidání aktuálního uživatele do dialout
skupiny:
sudo adduser $USER dialout
Nahrání výsledných binárek po kompilaci:
esptool.py --port /dev/ttyUSB0 write_flash -fm dio -fs 32m 0x00000 bin/0x00000.bin 0x10000 bin/0x10000.bin
Nahrání monolitické binárky:
esptool.py --port /dev/ttyUSB0 write_flash -fm dio -fs 32m 0x00000 bin/flash.bin
Nahrání LUA skriptů na ESP8266
Nástrojů pro nahravání existuje víc než dost a jsou zdokumentovány zde.
Nástroj Luatool
Stránka projektu na GitHubu: LUA Tool
Stáhněte si luatool
:
$ mkdir -p ~/.opt && cd ~/.opt $ git clone https://github.com/4refr0nt/luatool.git
Nahrání init.lua soboru:
$ cd ~/.opt/luatool/luatool $ python luatool.py --port /dev/ttyUSB0 --src init.lua --dest init.lua --verbose
Instalace MQTT Brokera Mosquitto
Instalace mosquitto-1.4.10-install-win32.exe Instalace Win32OpenSSL_Light-1_0_2j.exe Stáhnout ftp://sources.redhat.com/pub/pthreads-win32/dll-latest/dll/x86/pthreadVC2.dll
Copy libraries pthreadVC2.dll, libeay32.dll and ssleay32.dll to mosquitto installation folder C:\Program Files (x86)\mosquitto\pthreadVC2.dll C:\Program Files (x86)\mosquitto\libeay32.dll C:\Program Files (x86)\mosquitto\ssleay32.dll
Modify Mosquitto configuration C:\Program Files (x86)\mosquitto\mosquitto.conf
Start Mosquitto Service
Test MQTT with Chrome extension MQTTLens Subscribe Topic Publish Message
Installace MongoDB Serveru
Instalace Node.js
Instalace Node.js balíčků
Instalace Node.js balíčků mqtt, mongodb, pm2
npm install -g mqtt npm install -g mongodb npm install -g pm2
Instalace Node-Red
Instalace Node-Red
npm install -g node-red
Instalace vlastní sestavy Node-Red https://github.com/node-red/node-red/releases/latest
npm install --production
Spustění Node-Red
node node_modules/node-red/red.js
Konfigurace automatického spuštění Node-Red
pm2 start C:\Users\<USER-NAME>\AppData\Roaming\npm\node_modules\node-red\red.js --save