Download en installeer de meest actuele versie van de Arduino Integrated Development Environment (IDE) voor het Operating Systeem (OS) waar jouw Desktop of Laptop computer (er zijn versies voor Windows, Linux en Mac) mee werkt. Je kunt de Software hier downloaden.
De DSMRloggerAPI firmware is getest met de ArduinoIDE v1.8.19
Let op! De Arduino IDE v1.9.x (Beta) is NIET geschikt om deze firmware mee te compileren. Tot v1.9.x zorgt de IDE ervoor dat alle tab-bladen (.ino files) achter elkaar worden geplakt tot één source file waarna van alle functies in dit gecombineerde file zgn. prototypes worden gemaakt voordat deze aan de compiler (als één file dus) wordt aangeboden. De Arduino IDE is eigenlijk de enige IDE (voor zover ik weet) die dit doet en is als zodanig dus een beetje vreemd. v1.9.x (Beta) doet dit voor AVR processoren wel maar helaas (nog) niet voor de ESP32 processor familie.
Na het downloaden moet je het ontvangen bestand uitpakken (unzip of untar) en installeren. Dat installeren is per OS anders maar staat duidelijk op de website van Arduino aangegeven. Eenmaal geïnstalleerd kun je direct met de Arduino IDE aan de slag.
Om de IDE met de ESP32 microprocessor te kunnen gebruiken moeten we nog wat stappen uitvoeren.
In de volgende vier hoofdstukken wordt beschreven wat je moet doen om zélf de DSMRlogger32 firmware te compileren en naar de DSMR-logger32 te flashen.
Nu je een ArduinoIDE hebt waarmee je ESP32’s kunt programmeren (flashen) zul je ontdekken dat er door briljante mensen software is ontwikkeld die je kunt gebruiken om complexe projecten te realiseren, zonder dat je zelf het wiel hoeft uit te vinden.
Deze software wordt veelal in de vorm van een bibliotheek aangeboden en je hoeft zo’n bibliotheek alleen maar te installeren om er gebruik van te kunnen maken.
Hier vind je de officiële instructies voor het installeren van bibliotheken met de ArduinoIDE.
Stel je wilt je ESP32 benaderen met een telnet client
zodat je vanaf je Desktop of Laptop op de ESP32 kunt inloggen. Je hebt op de ESP32 dan een telnet server
nodig. Met wat Googelen naar "ESP32 telnet" blijken hier een aantal bibliotheken voor te bestaan.
Als voorbeeld nemen we TelnetStream van Juraj Andrassy. Zijn telnet implementatie kun je vanaf deze github pagina als bibliotheek downloaden.
Om de bibliotheek te installeren klik je op de groene [Clone or download]
(of [<> Code]
) knop en selecteer je [Download ZIP]
.
Onthoud waar je het zip-file bewaard hebt!
Ga nu naar de Arduino IDE en selecteer:
[Sketch]
=>[Include Library]
=>[Add .ZIP Library]
Er verschijnt een selectie window waar je het bestand selecteert dat zojuist gedownload hebt.
Klik op [Choose]
.
De bibliotheek is nu geïnstalleerd en klaar om gebruikt te worden. De meeste bibliotheken komen met een aantal voorbeeld programma’s waarmee je kunt leren hoe je de bibliotheek kunt gebruiken.
Verreweg de eenvoudigste manier om een bibliotheek te installeren is via de Library Manager.
Na het klikken op "Manage Libraries.." verschijnt er een pop-up window van de Library Manager. Voer in de zoekbalk de gewenste bibliotheek in.
.. en klik op [Install]
of [Update]
.
De bibliotheek is nu geïnstalleerd.
Juraj Andrassy is erg summier met zijn uitleg maar gelukkig is er een map met voorbeelden (nou ja, één voorbeeld).
Klik je nu op[TelnetStreamTest]
dan wordt dit voorbeeld programma in de Arduino IDE geladen.
Installeer op dezelfde manier de andere bibliotheken die voor de DSMRlogger32
firmware nodig zijn.
Om het mogelijk te maken de "data" map van de DSMRlogger32 firmware naar de DSMR-loggr32 te uploaden, moet eerst een extensie in de Arduino IDE worden geïnstalleerd.
Ga hiervoor naar .
Ga vervolgens naar en selecteer het nieuwste esp32fs.zip
bestand.
Maak een map tools
aan in je Arduino Projecten map (als die map nog niet bestaat) en ga in de map "tools
" staan.
Pak nu het esp32fs.zip
bestand uit. Controleer dat nu onder de map "tools
" een nieuwe map "ESP32FS
" staat, met daaronder een map "tool
" (zonder 's') en dat in de map "tool
" een programma "esp32fs.jar
" staat.
Start nu de Arduino IDE (opnieuw) op en kijk of onder [Tools]
het ESP32 Sketch Data Upload tool verschijnt!
Als je deze aanklikt verschijnt er een pop-up window waarin je kunt kiezen wat voor Filesysteem je wilt uploaden.
Voor de DSMR-logger32 moet dat "SPIFFS" zijn!
Zorg ervoor dat de juiste Seriële poort is geselecteerd én (belangrijk) dat de Serial Monitor
uit staat!
(sorry, het plaatje is een beetje verknipt)
In de Arduino IDE moet bij “Instellingen” de volgende URL worden ingevoerd achter “Additional Boards Manager URL’s:” (zie blauw gekleurde regel)
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
Lees vooral de uitleg in het README.md
bestand en de uitgebreide documentatie
op hun website!
Er kunnen meer additional board manager URL’s worden ingevuld. Je moet ze dan achter elkaar zetten en scheiden door een komma (,).
Nadat de preferences zijn geupdate moet je in de Arduino IDE de Boards Manager opstarten:
Nadat de Boards Manager is opgestart (dat duurt even) moet je in de selectie-balk "esp32" intoetsen.
Klik nu op [Install]
of selecteer de gewenst versie en klik op [Update]
.
De DSMRlogger32 firmware is met versie 2.0.5 van de ESP32 core getest.
Let op! De DSMRlogger32 firmware is getest met versie 2.0.5 van de Arduino/ESP32 core. Nieuwere versies zullen zeer waarschijnlijk ook werken, maar bij problemen is het het beste om deze versie te gebruiken.