ESP8266 NodeMcu met Arduino IDE op Linux
|
Veel Arduino projecten gebruiken een ESP8266 WiFi module, meestal de ESP-01, voor alleen draadloze communicatie. Maar de ESP8266 is ook een krachtige microcontroller op zichzelf. Hij is geschikt voor het uitvoeren van veel taken waar Arduino microcontrollers voor gebruikt worden. De ESP-01 is enigszins beperkt in zijn mogelijkheden door het kleine aantal pinnen, maar andere versies van de ESP8266 modules zijn een stuk veelzijdiger. Eén van die uitvoeringen is de “ESP8266 NodeMcu ESP12E”, een ontwikkelbord. Het is een ESP-12E/F samen met een USB naar serieel-interface en een spanningsregelaar geïntegreerd op een bord met veel pinnen. Nog een voordeel: de ontwikkelborden zijn erg goedkoop. Ik kocht er een, een “Geekcreit™ Doit NodeMcu Lua ESP8266 ESP-12E WIFI Development Board“, bij VNG Systems voor slechts €8,50.


ESP8266 NodeMcu ESP-12E met de Arduino IDE op Linux Mint/Ubuntu Linux
De ESP8266 NodeMcu is standaard voorzien van firmware welke je de chip met de Lua scripttaal laat programmeren. Maar als je al gewend bent aan de ‘Arduino manier’ van werken dan kun je ook de Arduino IDE gebruiken om de ESP te programmeren. Dankzij een project op GitHub genaamd ‘Arduino core for ESP8266 WiFi chip‘ kun je ondersteuning voor de chip aan de Arduino IDE toevoegen. Op deze manier kun je sketches schrijven met gebruik van de vertrouwde Arduino functies en libraries. Je kunt je code direct naar de chip uploaden en je sketch op de ESP8266 uitvoeren. Geen externe microcontroller benodigd.
De ESP8266 Arduino IDE extensie bevat libraries om te communiceren over WiFi met gebruik van TCP en UDP, voor het opzetten van HTTP-verbindingen, mDNS, SSDP, en DNS servers en het uitvoeren van OTA updates. Het laat je ook een bestandssysteem gebruiken in flashgeheugen, werken met SD geheugenkaarten en servomotoren. En natuurlijk ontbreekt SPI en I2C niet voor communicatie met andere apparatuur.
De ESP8266 Arduino core installeren
Allereerst moet je er voor zorgen dat je een recente versie van de Arduino IDE geinstalleerd hebt. Het moet minstens versie 1.6.4 zijn omdat we de Boards Manager functie nodig hebben. Deze functie maakt het installeren van third-party platform pakketten mogelijk. Hier kun je lezen hoe je een installatie van (of upgrade naar) de nieuwste versie van deArduino IDE uitvoert op Linux Mint of Ubuntu Linux.
Wanneer je de juiste versie reeds geïnstalleerd hebt, start dan de Arduino IDE en navigeer naar Bestand > Voorkeuren.
Voer https://arduino.esp8266.com/stable/package_esp8266com_index.json
in het veld Additionele Bordenbeheerder URLs in. Je kunt eventueel meerder URL’s invoeren, gescheiden door komma’s.


Open daarna de Bordenbeheerder door te navigeren naar Hulpmiddelen > Board:”(je huidige geselecteerde bord)” > Bordenbeheerder… en typ “ESP8266” in het zoekveld. Selecteer dan het “esp8266 by ESP8266 Community” pakket en klik op de knop “Installeren“.


Sluit de bordenbeheerder wanneer de installatie voltooid is. Navigeer naar Hulpmiddelen > Board en selecteer jouw ESP8366 bord, in mijn geval de “NodeMcu 1.0 (ESP-12E module)”. Als laatste, zorg ervoor dat je de juiste USB-poort hebt geselecteerd onder Hulpmiddelen > Poort.
De “Blink” sketch uitvoeren op de ESP8266
Om te controleren of alles correct werkt kun je de “Blink” sketch naar het bord uploaden. Ga naar Bestand > Voorbeelden > 01.Basics en selecteer de “Blink” sketch. Klik dan de “upload” knop (de ronde met de pijl naar rechts) en de IDE zal de sketch compileren en naar het bord uploaden. Na een paar seconden zou je dan de LED moeten zien knipperen.



