Als je denkt dat ik veel blijf hameren op de ESP8266/ESP32-modules… dan geef ik toe dat ik schuldig ben. Deze microcontrollers vormen een uitstekend startpunt voor wie zijn voeten wil natmaken in de wereld van DIY, Arduino-code en andere compatibele talen. Er zijn talloze manieren om een ESP32 te programmeren, maar vandaag keren we terug naar het kanaal van atomic14, die ons het minimale en noodzakelijke aan componenten leert.

Een ESP32-module programmeren met minimale benodigdheden
Een ESP32 programmeren

Ik kan me voorstellen dat iemand denkt: "Lisandro, dit heeft geen zin." Waarom deze weg volgen als een ESP32-module met eigen spanningsregelaar, resetknoppen, gesoldeerde pinnen en micro-USB-poort minder dan 10 euro kost op Amazon? Het antwoord is simpel: "leren". Ja, een kant-en-klare ESP32-module brengt je gemakkelijk tot een goed resultaat, maar op een dag moet je hem uit een ander product halen, of je USB-naar-serieel-adapter faalt onverwachts. Kennis van de pinout en interne functies van elke ESP / Arduino / ATtiny / STM32-module is altijd een goed idee, en de nieuwste video van atomic14 wijst in die richting.

Een ESP32-module programmeren met minimale componenten

Het eerste dat we over de tutorial moeten vermelden is dat deze alleen werkt met de modellen ESP32-S2 en ESP32-S3. De reden is simpel: dit zijn de enige leden van de ESP-familie met USB-OTG-ondersteuning (alle andere vereisen een adapter). We mogen ook niet vergeten dat de ESP32 werkt op 3,3V, en elke poging om hem rechtstreeks op 5V aan te sluiten zal hem laten oplichten als een kerstboom... voordat hij wordt vernietigd. Dus wat hebben we precies nodig?

  • Een 3,3V-bron (batterij, adapter, jouw keuze), aangesloten op de bijbehorende pin (3v3 = +) en op een van de GND-pinnen (-)
  • De Enable-pin, verbonden met 3,3V om hem op "hoog" te zetten.
  • IO19 is "Data -" van de USB-poort, terwijl IO20 is "Data +".
  • IO0 moet de eerste keer dat we de ESP32 programmeren met GND verbonden zijn. Een drukknop is hier geen slecht idee.
  • De LED op IO2 en zijn weerstand zijn optioneel, maar erg handig om te controleren of alles werkt.
  • En natuurlijk, elke relevante driver voor Windows (als je die gebruikt), begeleid door een compatibele IDE (Arduino IDE, PlatformIO, enz.)

Tot slot wil ik een detail toevoegen dat nauwelijks wordt genoemd in de video van atomic14: veel gebruikers melden connectiviteitsproblemen bij sommige ESP32-modules, met de melding "Er is een fatale fout opgetreden: kan geen verbinding maken met de ESP32". YouTuber VoltLog suggereert dat dit komt door een fout veroorzaakt door het springen van het Enable-signaal, dat de toestand van IO0 verandert. De oplossing is het toevoegen van een condensator van 1 microfarad tussen de Enable-pin en GND. Dit vertraagt Enable een beetje en voorkomt dat de fout optreedt.