De Arduino-gemeenschap, die een serie open ontwikkelplaten op basis van microcontrollers ontwikkelt, heeft de release bekendgemaakt van de geïntegreerde ontwikkelomgeving Arduino IDE 2.3, die een interface biedt voor het schrijven van code, compileren, uploaden van firmware naar hardware en interactie met de platen tijdens het debuggen. Het ontwikkelen van firmware gebeurt in een licht afgeslankte versie van C++ met het Wiring-framework. De code van de ontwikkelomgeving is geschreven in TypeScript (getypeerde JavaScript), en de backend is geïmplementeerd in Go. De bronbestanden worden verspreid onder de AGPLv3-licentie. Voorgeconfigureerde pakketten zijn beschikbaar voor Linux, Windows en macOS.
De Arduino IDE 2.x tak is gemaakt op basis van de Eclipse Theia code-editor en gebruikt het Electron-platform voor de gebruikersinterface (de Arduino IDE 1.x tak was een zelfstandige product, geschreven in Java). De logica met betrekking tot compilatie, debugging en upload van firmware is verplaatst naar een aparte achtergrondproces arduino-cli. Tot de mogelijkheden van de IDE behoren: ondersteuning voor het LSP-protocol (Language Server Protocol), adaptieve autocompletion van functienamen en variabelen, navigatietools voor de code, ondersteuning voor thema's, integratie met Git, ondersteuning voor het opslaan van projecten in de Arduino Cloud, en monitoring van de seriële poort (Serial Monitor).

In de nieuwe versie is de ingebouwde debugger, die debugging in live-modus en het gebruik van breakpoints ondersteunt, naar de stabiele mogelijkheden overgezet. De debugger is gebaseerd op een standaard framework, wat het gemakkelijk maakt om ondersteuning voor debugging aan toe te voegen voor elke plaat en om de standaardinterface van de Arduino IDE te gebruiken bij het debuggen. Momenteel is debugging-ondersteuning geïmplementeerd voor alle Arduino-platen op basis van de Mbed-kern, zoals GIGA R1 WiFi, Portenta H7, Opta, Nano BLE en Nano RP2040 Connect. Er zijn plannen om binnenkort debugging-ondersteuning toe te voegen voor platen op basis van de Renesas-kern, zoals UNO R4 en Portenta C33, waarna debugging ook beschikbaar zal zijn voor Arduino-ESP32-platen.
Bron: opennet.ru
