Visual Studio Code har blitt den foretrukne IDE-en for mange utviklere, og med god grunn. Med riktig oppsett blir VS Code et kraftfullt verktøy for embedded-utvikling som overgår mange tradisjonelle alternativer. La oss se på hvordan du optimaliserer VS Code for Arduino, ESP32, MicroPython og annen embedded-utvikling.
Hva du trenger:
- PC/Mac med VS Code installert
- USB-kabel for din mikrokontroller
- Embedded-utviklingskort (Arduino, ESP32, Raspberry Pi Pico)
- Stabil internettforbindelse for nedlasting av extensions
PlatformIO: Hjertet av embedded-utvikling i VS Code
PlatformIO er uten tvil den viktigste extension for embedded-utvikling. Denne kraftige plattformen støtter over 800 utviklingskort og håndterer alt fra kompilering til debugging.
Installasjon av PlatformIO
- Åpne VS Code og gå til Extensions (Ctrl+Shift+X)
- Søk etter «PlatformIO IDE» og installer den offisielle extension
- Start VS Code på nytt når installasjonen er ferdig
- PlatformIO-ikonet skal nå være synlig i Activity Bar til venstre
Første oppstart av PlatformIO kan ta noen minutter da det laster ned nødvendige verktøy og compilere i bakgrunnen. Dette er normalt.
Opprette ditt første PlatformIO-prosjekt
Klikk på PlatformIO-ikonet og velg «Create New Project». Her velger du korttype (for eksempel ESP32 Dev Module), framework (Arduino, ESP-IDF, eller Zephyr), og prosjektmappe. PlatformIO genererer automatisk en platformio.ini-fil som inneholder all konfigurasjon for prosjektet.
Tips: Bruk PlatformIO’s innebygde Library Manager i stedet for å kopiere biblioteker manuelt. Dette sikrer riktige versjoner og avhengigheter. Åpne den med Ctrl+Shift+P og søk etter «PlatformIO: Library Manager».
Arduino Extension: Enkel overgang fra Arduino IDE
For de som kommer fra Arduino IDE, tilbyr Microsoft en dedikert Arduino-extension som gir en mer kjent arbeidsflyt.
Installasjon og konfigurasjon
- Installer «Arduino» extension fra Microsoft
- Åpne Command Palette (Ctrl+Shift+P) og søk «Arduino: Initialize»
- Velg Arduino-installasjonsmappen hvis den ikke oppdages automatisk
- Konfigurer board og port i statuslinjen nederst i VS Code
Arduino-extension integrerer godt med eksisterende Arduino-biblioteker og skisser, men mangler noen av de avanserte funksjonene til PlatformIO.
MicroPython-støtte for moderne embedded Python
MicroPython har blitt stadig mer populært for rask prototyping på ESP32 og Raspberry Pi Pico. Flere extensions gjør MicroPython-utvikling smidig i VS Code.
Anbefalt MicroPython-oppsett
Installer «MicroPico» extension som gir excellent støtte for Raspberry Pi Pico, eller «Pymakr» for ESP32-basert MicroPython-utvikling. Begge tilbyr REPL-integrasjon, filsynkronisering og autocompletion.
For optimal arbeidsflyt, konfigurer en virtuell Python-environment med pip install esptool eller pip install adafruit-ampy for filoverføring til mikrokontrolleren.
Tips: Bruk VS Code’s innebygde terminal (Ctrl+`) for å kjøre MicroPython-kommandoer direkte. Dette er mer effektivt enn å bytte mellom vinduer.
Debugging: Fra print-statements til ekte debugging
En av VS Code’s største styrker er den kraftige debugging-støtten. PlatformIO tilbyr ekte hardware-debugging for mange mikrokontrollere med riktig debugger-hardware.
Oppsett av debugging
For ESP32-kort med innebygd JTAG (som ESP32-S3), legg til følgende i platformio.ini:
debug_tool = esp-builtin
debug_init_break = tbreak setup
For Arduino Uno og lignende, bruk GDB-stubbing eller en ekstern debugger som ST-Link for STM32-kort. PlatformIO konfigurerer automatisk debugging-miljøet basert på valgt verktøy.
Sett breakpoints ved å klikke i venstre marg av editoren, og start debugging med F5. VS Code viser variabler, call stack og lar deg steppe gjennom koden linje for linje.
Seriell monitor og terminalintegrasjon
Både PlatformIO og Arduino-extension tilbyr innebygd seriell monitor, men med forskjellige styrker.
PlatformIO Serial Monitor
Åpne med Ctrl+Shift+P og søk «PlatformIO: Serial Monitor». Denne støtter flere samtidige tilkoblinger og avansert filtering av meldinger. Baudrate settes automatisk basert på koden din, eller kan overstyres i platformio.ini.
Arduino Serial Monitor
Tilgjengelig via Command Palette eller statuslinjen. Enklere interface, men integrerer godt med Arduino-skisser og -biblioteker.
Tips: For avansert seriell analyse, installer «Serial Monitor» extension som tilbyr plotting av numeriske data og logging til fil. Perfekt for sensordataanalyse.
Optimalisering av arbeidsflyt
Konfigurer VS Code-settings for optimal embedded-utvikling:
- Aktiver «Auto Save» for å unngå tap av kode under eksperimentering
- Installer «Error Lens» for inline visning av kompileringsfeil
- Bruk «GitLens» for versjonskontroll av embedded-prosjekter
- Konfigurer «C/C++» extension for bedre IntelliSense i Arduino/PlatformIO-prosjekter
RoboNordic har et bredt utvalg av utviklingskort og sensorer som fungerer utmerket med dette oppsettet – fra Arduino Nano til ESP32-devkits.
Vanlige feil og løsninger
- PlatformIO kompilerer ikke: Sjekk at firewall ikke blokkerer nedlasting av toolchains. Windows Defender kan noen ganger forårsake problemer.
- Seriell port ikke funnet: Installer riktige USB-drivere for ditt kort. CH340- og CP2102-drivere mangler ofte på nye installasjoner.
- IntelliSense fungerer ikke: Generer compile_commands.json med PlatformIO for bedre C++ language server-støtte.
- Langsom oppstart: Deaktiver unødvendige extensions. VS Code kan bli treg med for mange aktive extensions.
- Debugging virker ikke: Kontroller at debug_tool er riktig konfigurert i platformio.ini og at nødvendig hardware er tilkoblet.
Med dette oppsettet har du et kraftfullt utviklingsmiljø som støtter alt fra enkel Arduino-programmering til avansert ESP32-utvikling med MicroPython. VS Code’s fleksibilitet kombinert med PlatformIO’s bredde gjør dette til en uslåelig kombinasjon for moderne embedded-utvikling.

