ID.nl logo
Huis

Arduino IDE: Ondersteuning voor ESP8266 en ESP32

Standaard ondersteunt Arduino IDE de meest voorkomende Arduino-bordjes. Maar net zoals je extra bibliotheken kunt installeren om functionaliteit toe te voegen, kun je ook ondersteuning voor extra bordjes toevoegen, zoals de populaire modules ESP8266 en ESP32. Lees hier hoe dat moet.

Arduino IDE en de standaardbibliotheken van Arduino zijn zo’n populair softwareplatform geworden, dat heel wat andere microcontrollerbordjes op het succes willen meeliften. Zo vind je op Wikipedia een uitgebreide lijst van Arduino-bordjes en compatibele systemen.

Sommige van deze bordjes zijn 100% compatibel met een officieel Arduino-bordje en kun je dan ook zonder extra benodigde stappen in Arduino IDE gebruiken. Voor andere bordjes moet je eerst extra ondersteuning aan Arduino IDE toevoegen.

Er zijn zelfs bordjes die origineel ontworpen zijn om te programmeren met een andere ontwikkelomgeving, maar waarvan de makers of de community later Arduino-ondersteuning hebben toegevoegd, omdat Arduino IDE zo populair is. De ESP8266 en ESP32 zijn voorbeelden van zulke bordjes die in de praktijk heel vaak geprogrammeerd worden in Arduino IDE in plaats van in de ESP-IDF van de maker Espressif.

Arduino Board Beheer

Standaard ondersteunt Arduino IDE alle officiële Arduino-bordjes met Atmel AVR-microcontroller en de bordjes van andere producenten die daar 100% compatibel mee zijn. Daardoor kun je met de meest voorkomende Arduino-bordjes onmiddellijk aan de slag in Arduino IDE.

Die ondersteuning voor (een familie van) bordjes zit in een afzonderlijk pakket, een Arduino-kern (‘core’). De beschikbare kernen krijg je te zien in het bordbeheer van Arduino IDE, dat je opent in het menu Hulpmiddelen / Board / Board Beheer (sic). Je ziet daar dat de eerste kern geïnstalleerd is, Arduino AVR Boards, en in de omschrijving krijg je een uitgebreide lijst van alle ondersteunde bordjes.

Gebruik je het Arduino-platform voor toepassingen die wat meer processorkracht of aansluitingsmogelijkheden nodig hebben, dan zet je waarschijnlijk de Arduino Due of een van de bordjes uit de MKR-familie in. Deze hebben geen AVR-microcontroller van 8 bits, maar zijn uitgerust met een ARM Cortex-processor van 32 bits, die niet in de standaard geïnstalleerde Arduino-kern ondersteund is.

©PXimport

In het bordbeheer voeg je die ondersteuning eenvoudig toe, te vergelijken met hoe je een bibliotheek installeert in het bibliotheekbeheer. Je zoekt eerst in de lijst welke kern je Arduino-bordje ondersteunt. Voor de Arduino Due is dat bijvoorbeeld Arduino SAM Boards (32-bits ARM Cortex-M3). Klik (na eventueel eerst een versie te kiezen) met rechts op Installeren en wacht even tot Arduino IDE de kern geïnstalleerd heeft.

Daarna kun je het bordbeheer sluiten en is je bordje beschikbaar in de lijst in het menu Hulpmiddelen / Board. Als je je bordje gekozen hebt, bekijk je de pagina Getting Started with Arduino and Genuino products op de website van Arduino hoe je met dit bordje werkt en welke instellingen je het best gebruikt in het menu Hulpmiddelen. Zo dien je bij de Arduino Due te kiezen of je de schetsen via de programmeerpoort of de ‘native’ usb-poort uploadt. Maar daarna werkt alles exact hetzelfde als bij de standaard ondersteunde bordjes.

Extra kernen in het bordbeheer

De kernen die je standaard in het bordbeheer vindt, zijn niet de enige mogelijke. De Arduino IDE biedt ook een eenvoudige manier om dit lijstje uit te breiden. Klik je in het menu Bestand op Voorkeuren, dan zie je onderaan een tekstveld Additionele Board Beheer URLs. Hier kun je een url voor extra bordondersteuning invullen. Als je meerdere url’s nodig hebt, scheid ze dan door een komma of klik op het icoontje naast het tekstveld en vul de url’s in het grotere tekstveld dat dan verschijnt, elk op een nieuwe regel.

Maar waar vind je welke url’s je hier dient in te vullen? Meestal vermeldt de documentatie van het bordje waarvoor je ondersteuning wilt toevoegen de juiste url. Indien dat niet het geval is, kijk dan of je je bordje vindt op de pagina met thirdparty-url’s voor extra bordondersteuning op de GitHub-website van Arduino.

Ondersteuning voor ESP8266 en ESP32

Op die pagina met url’s voor extra bordondersteuning vind je de url’s om ondersteuning voor de ESP8266 en ESP32 toe te voegen, respectievelijk. Voeg beide url’s toe in de voorkeuren van Arduino IDE als je deze bordjes vaak in je Arduino-projecten gebruikt. Bevestig daarna je wijzigingen in de instellingen met OK.

Open nu het bordbeheer opnieuw. Arduino IDE laadt dan de url’s in die je zojuist hebt toegevoegd en vindt daarin informatie over de extra Arduino-kernen die het beschikbaar moet stellen. Onderaan de lijst verschijnen nu de kernen esp32 van Espressif Systems en esp8266 van ESP8266 Community. Installeer je deze kernen, dan zijn de ondersteunde bordjes daarna beschikbaar in de lijst in het menu Hulpmiddelen / Board. Kies je bordje, kies de instellingen zoals de poort en uploadsnelheid en je kunt je schets naar je bordje uploaden.

©PXimport

Let op: het is niet zo dat elk bordje dat een ESP8266- of ESP32-microcontroller bevat door deze Arduino-kernen ondersteund wordt. Enkel de in de beschrijving van de kern vermelde bordjes en 100% daarmee compatibele bordjes zijn ondersteund. Zo dien je voor de M5Stack met ESP32 de url https://m5stack.com/download/package_m5stack_index.json te gebruiken en daarna ook nog enkele andere installatie-instructies te volgen.

Als je een Arduino-kern voor je bordje geïnstalleerd hebt, dan werkt de standaard Arduino-code op je bordje en meestal ook de standaardbibliotheken van Arduino en de bestaande voorbeeldschetsen. Een kern voegt vaak ook extra voorbeeldschetsen en bibliotheken toe die specifieke functionaliteit van het bordje gebruiken. Bekijk die voorbeeldschetsen (in het menu Bestand / Voorbeelden) zeker om je vertrouwd te maken met hoe je je bordje met Arduino-code programmeert.

Third-party Arduino-bibliotheken ondersteunen niet altijd alternatieve bordjes. Soms gaan ze immers uit van de pin-out op een officieel Arduino-bordje. Kijk daarom in de beschrijving van een Arduino-bibliotheek altijd na of ze jouw ESP8266- of ESP32-module ondersteunt.

Daarnaast vind je in het bibliotheekbeheer ook een heleboel bibliotheken die specifiek voor de ESP8266 of ESP32 geschreven zijn. Zo vind je er ESP32 BLE Arduino om je toegang te geven tot de Bluetooth Low Energy-functionaliteit van de ESP32.

▼ Volgende artikel
Sony brengt tv-afdeling onder in nieuw bedrijf met TCL
© Sony
Huis

Sony brengt tv-afdeling onder in nieuw bedrijf met TCL

Sony heeft aangekondigd dat het een gezamenlijke onderneming met tv-merk TCL start om Sony's televisieproductie in onder te brengen. TCL heeft een meerderheidsbelang in deze *joint venture*.

Nieuw op ID: het complete plaatje

Misschien valt het je op dat er vanaf nu ook berichten over games, films en series op onze site verschijnen. Dat is een bewuste stap. Wij geloven dat technologie niet stopt bij hardware; het gaat uiteindelijk om wat je ermee beleeft. Daarom combineren we onze expertise in tech nu met het laatste nieuws over entertainment. Dat doen we met de gezichten die mensen kennen van Power Unlimited, dé experts op het gebied van gaming en streaming. Zo helpen we je niet alleen aan de beste tv, smartphone of laptop, maar vertellen we je ook direct wat je erop moet kijken of spelen. Je vindt hier dus voortaan de ideale mix van hardware én content.

Dat kondigden de bedrijven gisteren aan. Het is de bedoeling dat de deal eind maart volledig rond is en dat het nieuwe bedrijf in april 2027 opgestart is. Het moet wel nog goedgekeurd worden door diverse marktautoriteiten om er zeker van te zijn dat de bedrijven geen monopolypositie krijgen.

Als de deal straks rond is, gaat het nieuwe bedrijf van Sony en het Chinese TCL straks Sony Bravia-televisies en andere thuisentertainmentproducten produceren en verkopen. TCL heeft daarbij een meerderheidsbelang van 51 procent.

TCL maakte voor deze deal al tv's, maar dit zijn televisies die over het algemeen worden gezien als budgetmodellen, terwijl Sony's televisies meer als high-end worden gezien. TCL zette echter al steeds vaker in op de high-end markt. Sony blijft zijn technologie en merknaam inzetten voor de producten, terwijl TCL zo efficiënt mogelijk met de kosten omgaat.

De samenwerking is opvallend, omdat Sony's televisiedivisie een belangrijke pijler van het bedrijf is. Sony maakt echter niet zijn eigen panelen, terwijl dit in China steeds goedkoper kan worden gedaan. In die zin kan TCL Sony daar enorm mee helpen. Daarbij moet gezegd worden dat een dergelijke 'joint venture' vaker voorkomt, maar dat het bedrijf wat een meerderheidsbelang heeft uiteindelijk soms als volledige eigenaar uit de bus komt. Daar is nu in ieder geval nog geen sprake van.

▼ Volgende artikel
Zo optimaliseer je de Zoek mijn iPhone-functie
Huis

Zo optimaliseer je de Zoek mijn iPhone-functie

Heb je ooit wel eens meegemaakt dat je iPhone de huidige locatie nogal slordig aangaf? Dat kan vervelend zijn voor apps die een precieze locatie nodig hebben, en al helemaal als je op zoek bent naar je verloren of gestolen toestel. Met deze tips haal je het maximum uit Zoek mijn iPhone.

Altijd online

 De Zoek mijn-app gebruikt een combinatie van gps, wifi, triangulatie met behulp van zendmasten en bluetooth-signalen om de exacte locatie van je iPhone in realtime te bepalen. Het apparaat moet verbonden zijn met internet, via wifi of mobiele data. Zonder actieve verbinding kan de iPhone geen locatie-updates versturen en niet daadwerkelijk communiceren met het Zoek mijn-netwerk. Gebruik bij voorkeur wifi. Als dat niet beschikbaar is, schakel dan mobiele data in. Daarnaast verhoogt een actieve bluetooth-verbinding de nauwkeurigheid van Zoek mijn iPhone.

Door ook de bluetooth-verbinding te activeren, wordt de Zoek mijn-functie nauwkeuriger.

Exacte locatie

Als gps uitstaat, geeft de iPhone geen realtime positie door. Voor optimale nauwkeurigheid ga je naar Instellingen / Privacy en beveiliging / Locatievoorzieningen. Zoek in de applijst naar Zoek mijn en kies Bij gebruik van de app. Wanneer je alleen Locatievoorzieningen hebt ingeschakeld, zal je iPhone alleen de ‘geschatte’ locatie doorgeven. Voor meer nauwkeurigheid moet je daarnaast de optie Exacte locatie activeren. Met alleen een ‘geschatte locatie’ krijg je vaak een brede blauwe cirkel op de kaart te zien, terwijl Exacte locatie het toestel tot op enkele meters nauwkeurig kan lokaliseren. Apple onderscheidt beide opties bewust, omdat sommige apps slechts bij benadering hoeven te weten waar je bent, maar voor Zoek mijn wil je uiteraard maximale precisie.

Zorg dat de locatie tot op enkele meters nauwkeurig wordt doorgegeven.

Stuur laatste locatie

Stuur laatste locatie is een functie op de iPhone die automatisch de laatst bekende locatie van het apparaat naar Apple stuurt, vlak voordat de batterij leeg raakt of voordat het toestel wordt uitgeschakeld. Zo weet je waar het apparaat op dat moment was. Om deze functie te activeren, open je opnieuw de Instellingen en ga je bovenaan naar (Je naam) / Zoek mijn / Zoek mijn iPhone en vervolgens schakel je de optie Stuur laatste locatie in.

Op deze manier onthoudt Apple de laatste locatie van je iPhone voordat die werd uitgeschakeld.