Quick notes: Espruino firmware flashen naar ESP8266

EspruinoNet als gisteren is dit weer een blogpost in de categorie: “over een week ben ik zelf vergeten wat ik ook al weer deed, dus ik moet het even ergens documenteren”. Omdat het kerstvakantie is had ik even tijd om te experimenteren (lees: spelen) met een apparaatje dat ik een week of zo geleden uit het Midden-Oosten heb laten komen. Het gaat om een ESP12E/ESP8266. Die van mij kwam hier vandaan. Heel kort samengevat lijkt het op een Arduino, je programmeert hem als een Arduino (kun je zelfs de Arduino IDE voor gebruiken), maar hij is zo klein als een Arduino nano, kost heel weinig (deze versie €6,09 incl. verzenden) én heeft een wifi chip ingebouwd zitten. En vooral voor dat laatste betaal je bij Arduino normaal gesproken de hoofdprijs.

Goed, er zitten ook nadelen aan de ESP8266, maar daarover een andere keer meer. Mij ging het om een ander op Arduino gebaseerd initiatief, genaamd Espruino. Die biedt namelijk de mogelijkheid om JavaScript code uit te voeren én heeft ondersteuning voor Blockly bij het programmeren van hun board. Zie ook dit bericht dat ik er eerder over schreef.
Maar niet alleen voor het specifieke Espruino board, er is ook ondersteuning voor de ESP12E/ESP8266. Daarvoor moet je echter wel even de ESP12E/ESP8266 flashen met andere firmware. Potentieel is dat iets waarmee je een apparaat om zeep kunt helpen. Ik plaats hier mijn notities om het de volgende keer weer opnieuw te kunnen doen, wil je ze volgen, dan doe je dat volledig op eigen risico!

Ik voer de stappen uit op een Windows 10 machine met de ESP12E/ESP8266 aangesloten via een USB-kabel.

  • Ga met de browser naar https://github.com/espruino/EspruinoBuilds
  • Klik op de Download ZIP knop aan de rechterkant van de pagina.
  • Sla de ZIP op in een map en pak hem uit.
  • Uit de map EspruinoBuilds-master\ESP8266 heb je nodig: blank.bin, boot_v1.4(b1).bin en espruino_esp8266_user1.bin

Tegen de tijd dat je dit doet kan het zijn dat er een nieuwe versie van de bestanden is. De README.md in de ZIP heeft alle benodigde informatie, zie ook verderop.

Om de bestanden op de ESP12E/ESP8266 te kunnen plaatsen is er nog een aanvullend tooltje nodig:

  • Ga met de browser naar https://github.com/igrr/esptool-ck/releases
  • Download esptool-0.4.6-win32.zip of de versie die inmiddels het nieuwste is.
  • Open de ZIP en plaats esptool.exe in dezelfde map als de andere bestanden van hierboven.

nodemcu_devkit_v10_pinoutNu gaan we de software op de ESP12E/ESP8266 plaatsen, maar daarvoor moeten we hem eerst in een update-modus plaatsen:

  • Plaats een weerstand tussen de pin waar D3 bij staat (GPIO0) en een van de GRND pinnen (de zwarte in de afbeelding hiernaast)
  • Reset de  ESP12E/ESP8266
  • Open op de Windows-computer een dos-prompt en ga naar de map met de bestanden
  • Voer de volgende commandoregel in, vervang hierbij COM14 met de COM-poort die de ESP12E/ESP8266 op jouw computer heeft: esptool -bm qio -bz 4M -bf 40 -cp COM14 -cb 115200 -cd nodemcu -ca 0x00000 -cf "boot_v1.4(b1).bin" -ca 0x1000 -cf espruino_esp8266_user1.bin -ca 0x7E000 -cf blank.bin
  • Als de update goed gegaan is, reset dan de ESP12E/ESP8266.

Flash

Ga dan met Google Chrome naar https://chrome.google.com/webstore en zoek naar espruino. Je vindt dan de Espruino Web IDE, voeg die toe aan Chrome. Hiermee kun je verbinding maken met de ESP12E/ESP8266, code uitvoeren etc.

Klaar.