La comunità di Arduino, che sviluppa una serie di schede open source basate su microcontrollori, ha pubblicato il rilascio dell'ambiente di sviluppo integrato Arduino IDE 2.3, che offre un'interfaccia per scrivere codice, compilarlo, caricare firmware sull'hardware e interagire con le schede durante il processo di debug. Lo sviluppo del firmware avviene su una versione leggermente semplificata di C++ con il framework Wiring. Il codice dell'interfaccia dell'ambiente di sviluppo è scritto in TypeScript (JavaScript tipizzato), mentre il backend è implementato in Go. I codici sorgente vengono distribuiti sotto la licenza AGPLv3. Sono stati preparati pacchetti pronti per Linux, Windows e macOS.
La branch Arduino IDE 2.x è costruita sulla base dell'editor di codice Eclipse Theia e utilizza la piattaforma Electron per la costruzione dell'interfaccia utente (la branch Arduino IDE 1.x era un prodotto autonomo, scritto in Java). La logica relativa alla compilazione, al debug e al caricamento dei firmware è stata spostata in un processo in background separato, arduino-cli. Tra le funzionalità dell'IDE ci sono: supporto per il protocollo LSP (Language Server Protocol), completamento automatico adattivo per nomi di funzioni e variabili, strumenti per la navigazione nel codice, supporto per temi, integrazione con Git, supporto per la memorizzazione dei progetti su Arduino Cloud e monitoraggio della porta seriale (Serial Monitor).

Nella nuova versione, il debugger integrato è stato retrocesso alla categoria delle funzionalità stabili, supportando il debug in modalità live e la possibilità di utilizzare punti di interruzione. Il debugger si basa su un framework standard, il che consente di aggiungere facilmente il supporto per il debug di qualsiasi scheda e di utilizzare l'interfaccia standard di Arduino IDE durante il debug. Attualmente, il supporto per il debug è implementato per tutte le schede Arduino basate sul kernel Mbed, come GIGA R1 WiFi, Portenta H7, Opta, Nano BLE e Nano RP2040 Connect. Il supporto per il debug delle schede basate sul kernel Renesas, come UNO R4 e Portenta C33, è previsto per essere aggiunto a breve, dopo di che la funzionalità di debug sarà disponibile anche per le schede Arduino-ESP32.
Fonte: opennet.ru
