Project owner: | lichnak, PeterBay |
Interested: | |
Related: | |
Reference: | https://Espressif.com |
License: | Uveďte původ-Zachovejte licenci; CC BY-SA |
NodeMCU Vývojářské prostředí pro Windows
Cílem tohoto návodu je vytvořit vývojařské prostředí pro práci a vývoj NodeMCU řešení na operačním systému Windows 10.
Většina snippetů byla vyzkoušena v PowerShellu verze 5. PowerShell verze 5 je součástí balíčku The Windows Management Framework (WMF) 5.0 RTM. Balíček pro Windows 2008 R2 SP1/2012 R2/2012 a Windows 7 SP1/8.1 můžete stáhnout na stránce Microsoft Download Center.
PS C:\> $PSVersionTable.PSVersion Major Minor Build Revision ----- ----- ----- -------- 5 1 14393 206
Obsah
Nahrání NodeMCU firmware
V návodu Linux Firmware Build Environment jsme si ukázali jak NodeMCU firmware zkompilovat. Firmware je nyní potřeba do ESP8266 nahrát. K tomuto účelu jsou na internetu dostupné programy a skripty. Předvedeme si nástroj 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í
Nástoj ESP8266 Flasher
Stránka projektu na GitHubu: NodeMCU Flasher
Stáhněte z GitHubu NodeMCU Flasher.
Osobně používám pro práci s GIT prostředím na Windows 10 GIT scm.
ESP8266Flasher najdete ve ložce kam jste si stáhli soubory z GitHubu.
%PATHNODEMCUFLASHER%\Win64\Release\ESP8266Flasher.exe
Ověřit ve Správci zařízení seriový port pro kominikaci s NodeMCU.
%SYSTEMROOT%\System32\devmgmt.msc
Postup pro nahrání firmwaru
- Připojit se na správný seriový port
- Změnit nastavení komunikace pro ESP8266 Flasher
- Pomocí ESP8266Flasher.exe jsem nahrál vzniklý monolitický flash.bin do adresy 0x00000
- Nebo pomocí ESP8266Flasher.exe jsem nahrál vzniklý bootloader bin/0x00000.bin do adresy 0x00000 a firmware bin/0x10000.bin na adresu 0x10000
- Předchozí kroky potvrdíme náhráním firmware na NodeMCU
- Nakonec se dočkáme uspěchu
Nahrání LUA skriptů na ESP8266
Nástrojů pro nahravání existuje víc než dost a jsou zdokumentovány zde.
Nástroj ESPlorer
ESPlorer je integrované vývojařské prosředí pro ESP8266, primarně podporující LUA pro NodeMCU, MicroPython a vybrané AT príkazy. Vyžaduje instalované JAVA prostředí Standard Edition - SE ver 7 a vyšší.
Stránka projektu na GitHubu: ESPlorer
ESPlorer můžete stáhnout zde.
Podporované platformy:
- Windows(x86, x86-64)
- Linux(x86, x86-64, ARM soft & hard float)
- Solaris(x86, x86-64)
- Mac OS X(x86, x86-64, PPC, PPC64)
Výstup ze konzole ESPloreru
> =node.heap() 45264 >
Instalace MongoDB Serveru
Pro ukládání dat jsme si vybrali MondoDB. MongoDB je multiplatformní dokumentová databáze. Řadí se mezi NoSQL databáze a místo tradičních relačních databází využívajících tabulky používá dokumenty podobné formátu JSON a dynamické databázové schéma, které umožňuje vytváření a integraci dat s Node.js.
Původní návod si mužete přečíst zde.
- Prvně si stáhněte instalační balíček mongodb-win32-x86_64-2008plus-ssl-3.2.10-signed.msi
- Nainstalujte balíček
mongodb-win32-x86_64-2008plus-ssl-3.2.10-signed.msi
- Přidejte cestu k instalaci MongoDB do systémové proměné
PATH
PS C:\> $env:path += ";" + "C:\Program Files\mongodb\Server\3.2\bin" PS C:\> [Environment]::SetEnvironmentVariable("PATH", $env:path, "Machine")
- Vytvoření složky pro databáze
PS C:\> New-Item -ItemType "directory" -Path c:\data -Force PS C:\> New-Item -ItemType "directory" -Path c:\data\db -Force
- Vytvoření složky pro logy
PS C:\> New-Item -ItemType "directory" -Path "c:\data\log" -Force
- Vytvoření logu
PS C:\> New-Item -ItemType "file" -Path "c:\data\log\mongo.log" -Force
- Vytvoření konfigurace pro MongoDB
PS C:\> New-Item -ItemType "file" -Path "C:\Program Files\MongoDB\Server\3.2\bin\mongod.cfg" -Force PS C:\> $MONGODBCONF = "systemLog:`n destination: file`n path: c:\data\log\mongo.log`nstorage:`n dbPath: c:\data\db" PS C:\> $MONGODBCONF | Out-File -FilePath "C:\Program Files\MongoDB\Server\3.2\bin\mongod.cfg" -Append PS C:\> more "C:\Program Files\MongoDB\Server\3.2\bin\mongod.cfg" systemLog: destination: file path: C:\Data\log\mongod.log storage: dbPath: C:\Data\db
- Vytvoření s spuštění MongoDB služby
PS C:\> Invoke-Expression "& `"C:\Program Files\MongoDB\Server\3.2\bin\mongod.exe`" --config `"C:\Program Files\MongoDB\Server\3.2\bin\mongod.cfg`" --install" PS C:\> Set-Service MongoDB -Status Running PS C:\> Get-Service MongoDB Status Name DisplayName ------ ---- ----------- Running MongoDB MongoDB
Pro automatickou instalaci jsem napsal v PowerShellu 5 MongDB Instalační PowerShell Skript
Instalace Node.js
Node.js je vysoce výkonné, událostmi řízené prostředí pro Javascript. Základem Node.js je javascriptový interpret V8 z Google Chrome. Nad ním je tenká vrstva kódu v C++ poskytující minimální nutné zázemí (event-loop vyhodnocující příchozí události, obsluha I/O bufferů a jiné).
Stránka dokumentace projektu Node.js API
Pokud používáté Node v7.1.0 reinstalujte Node.js na verzi v7.0.0. Node.js v7.1.0 má známou chybu pro platformu Windows, chyba znemožňuje správné spouštění Node aplikací při použítí Powershell nebo CMD.
- Stáhněte si 64 bitovou verzi Node.js (32 bitová je pro hipstery) node-v7.0.0-x64.msi
- Nainstalujte balíček
node-v7.0.0-x64.msi
, výchozí instalační cesta jeC:\Program Files\nodejs
- Pokud jste si během instalace nevybrali možnost
Add PATH
, pak přidejte cestu k instalaci Node.js a cestu do systémové proměnéPATH
nyní
PS C:\> $NPMPATH = $Env:USERPROFILE + "\AppData\Roaming\npm" PS C:\> New-Item -ItemType "directory" -Path $NPMPATH PS C:\> $Env:PATH += ";" + $NPMPATH + ";C:\Program Files\nodejs" PS C:\> [Environment]::SetEnvironmentVariable("PATH", $Env:PATH, "Machine")
Instalace Pythonu
Pro další práci budeme potřeboavat Python verze 2.7. Node.js balíček node-gyf nepodporuje Pyhthon v3.x.x
- Stáhněte 64 bitovou verzi Python v2.7
- Nainstalujte balíček
python-2.7.12.amd64.msi
- Můžete použít výchozí nastavení instalace a následně přidat Python do systémový proměných
PATH
aPYTHON
PS C:\> $Env:PATH += ";C:\Program Files\Python27" PS C:\> [Environment]::SetEnvironmentVariable("PATH", $Env:PATH, "Machine") PS C:\> [Environment]::SetEnvironmentVariable("PYTHON", "C:\Program Files\Python27", "Machine")
- Nastavíme Node.js verzi Pythonu do konfigurace
PS C:\> cd "C:\Program Files\nodejs\" PS C:\Program Files\nodejs> cmd Microsoft Windows [Version 10.0.14393] (c) 2016 Microsoft Corporation. Všechna práva vyhrazena. C:\Program Files\nodejs>npm config set python "C:\Program Files\Python27\python.exe" C:\Program Files\nodejs>exit PS C:\Program Files\nodejs>
Instalace Node-Red
Instalace Node.js balíčků potřebných pro následnou instalaci Node-Red. Prvně nainstalujte potřebné nástroje od Microsoftu windows-build-tools
pro kompilaci Node.js balíčků, abychom předešli problémům s řešením závislostí balíčků.
PS C:\> cd "C:\Program Files\nodejs\" PS C:\Program Files\nodejs> cmd Microsoft Windows [Version 10.0.14393] (c) 2016 Microsoft Corporation. Všechna práva vyhrazena. C:\Program Files\nodejs>npm install -g --production windows-build-tools C:\Program Files\nodejs>npm install -g node-gyp C:\Program Files\nodejs>npm install -g bindings C:\Program Files\nodejs>npm install -g bcrypt C:\Program Files\nodejs>npm install -g bson C:\Program Files\nodejs>npm install -g bufferutil C:\Program Files\nodejs>npm install -g kerberos C:\Program Files\nodejs>npm install -g mqtt C:\Program Files\nodejs>npm install -g mongodb C:\Program Files\nodejs>npm install -g nan C:\Program Files\nodejs>npm install -g node-sass C:\Program Files\nodejs>npm install -g options C:\Program Files\nodejs>npm install -g phantomjs C:\Program Files\nodejs>npm install -g pm2 C:\Program Files\nodejs>npm install -g pm2-windows-startup C:\Program Files\nodejs>npm install -g sqlite3 C:\Program Files\nodejs>npm install -g ultron C:\Program Files\nodejs>npm install -g utf-8-validate C:\Program Files\nodejs>npm install -g ws C:\Program Files\nodejs>exit PS C:\Program Files\nodejs>
Konfigurace pm2-windows-startup
PS C:\> cd "C:\Program Files\nodejs\" PS C:\Program Files\nodejs> cmd Microsoft Windows [Version 10.0.14393] (c) 2016 Microsoft Corporation. Všechna práva vyhrazena. C:\Program Files\nodejs>pm2-startup install C:\Program Files\nodejs>pm2 save C:\Program Files\nodejs>exit PS C:\Program Files\nodejs>
Instalace Node-Red
PS C:\> cd "C:\Program Files\nodejs\" PS C:\Program Files\nodejs> cmd Microsoft Windows [Version 10.0.14393] (c) 2016 Microsoft Corporation. Všechna práva vyhrazena. C:\Program Files\nodejs>npm install -g node-red C:\Program Files\nodejs>npm install -g node-red-dashboard C:\Program Files\nodejs>exit PS C:\Program Files\nodejs>
Spustění Node-Red
PS C:\> cd "C:\Program Files\nodejs\" PS C:\Program Files\nodejs> cmd Microsoft Windows [Version 10.0.14393] (c) 2016 Microsoft Corporation. Všechna práva vyhrazena. C:\Program Files\nodejs>node "%USERPROFILE%\AppData\Roaming\npm\node_modules\node-red\red.js" C:\Program Files\nodejs>exit PS C:\Program Files\nodejs>
Konfigurace automatického spuštění Node-Red
PS C:\> cd "C:\Program Files\nodejs\" PS C:\Program Files\nodejs> cmd Microsoft Windows [Version 10.0.14393] (c) 2016 Microsoft Corporation. Všechna práva vyhrazena. C:\Program Files\nodejs>pm2 start "%USERPROFILE%\AppData\Roaming\npm\node_modules\node-red\red.js" C:\Program Files\nodejs>pm2 save C:\Program Files\nodejs>exit PS C:\Program Files\nodejs>
Nyní můžeme spustit Node-RED editor na http://localhost:1880
Instalace Mosquitto MQTT Broker
Pro roli MQTT Brokera jsme si vybrali implementaci Mosquitto.
- Nainstalujte OpenSSL balíček
Win32OpenSSL_Light-1_0_2j.exe
- Nainstalujte Mosquitto balíček
mosquitto-1.4.10-install-win32.exe
- Zkopírujte staženou knihovnu
pthreadVC2.dll
do instalační složky Mosquitto
PS C:\> dir "C:\Program Files (x86)\mosquitto\pthreadVC2.dll" Directory: C:\Program Files (x86)\mosquitto Mode LastWriteTime Length Name ---- ------------- ------ ---- -a---- 27.5.2012 1:00 55808 pthreadVC2.dll
- Zkopírujte OpenSSL knihovny
libeay32.dll
assleay32.dll
do instalační složky Mosquitto
PS C:\> dir "C:\Program Files (x86)\OpenSSL-Win32-102j\*eay32.dll" Directory: C:\Program Files (x86)\OpenSSL-Win32-102j Mode LastWriteTime Length Name ---- ------------- ------ ---- -a---- 26.9.2016 10:00 1265664 libeay32.dll -a---- 26.9.2016 10:00 274432 ssleay32.dll PS C:\> copy "C:\Program Files (x86)\OpenSSL-Win32-102j\*eay32.dll" "C:\Program Files (x86)\mosquitto\" PS C:\> dir "C:\Program Files (x86)\mosquitto\*eay32.dll" Directory: C:\Program Files (x86)\mosquitto Mode LastWriteTime Length Name ---- ------------- ------ ---- -a---- 26.9.2016 10:00 1265664 libeay32.dll -a---- 26.9.2016 10:00 274432 ssleay32.dll
- Pokud potřebujete upravte si nastavení Mosquitto konfigurace
PS C:\> notepad "C:\Program Files (x86)\mosquitto\mosquitto.conf"
- Spusťte Mosquitto službu
PS C:\> Set-Service Mosquitto -Status Running PS C:\> Get-Service Mosquitto Status Name DisplayName ------ ---- ----------- Running mosquitto Mosquitto Broker