WSL (Windows Subsystem for Linux) gir deg det beste fra to verdener – et Linux-miljø direkte i Windows. Kombinert med ESP-IDF og VSCode, gir dette en kraftig plattform for embedded utvikling. Denne guiden viser deg trinn-for-trinn hvordan du setter opp ESP-IDF i WSL2 og konfigurerer VSCode for å bruke dette effektivt.

Hva du vil lære

Denne guiden dekker:

  • Hvordan sette opp WSL2 for embedded utvikling.
  • Trinnene for å installere og konfigurere ESP-IDF.
  • Hvordan bruke VSCode for sømløs utvikling.
  • USB-håndtering for embedded prosjekter.

Sette opp Windows Subsystem Linux (WSL)

WSL er en innebygd funksjon i Windows, men det er ikke sikkert det er aktivert. Åpne et PowerShell som administrator og skriv:

1
wsl --install

Hvis dette er første gang du setter opp WSL, installeres Ubuntu som standard distribusjon. Du kan måtte starte datamaskinen på nytt for å fullføre installasjonen.

Tips: Har du allerede WSL installert? Sjekk at WSL2 er satt som standard:

1
wsl --set-default-version 2

USB-håndtering

Embedded utvikling med ESP32 innebærer ofte bruk av USB for debugging og flashing. Windows håndterer USB-enheter som standard, men for å bruke dem i WSL trenger vi å videresende USB-enhetene.

USBIPD

Du installerer lett USBIPD med å skrive følgende kommando i PowerShellet:

1
winget install usbipd

Du kan nå bruke USBIPD slik som dette:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
# List USB enheter
usbipd list

# Bind en USB enhet til USBIPD
usbipd bind --busid

# Frigjør USB enhet
usbipd unbind --busid

# Bind enheten til WSL
usbipd attach --wsl --busid

Jeg forklarer ikke mer rundt dette, for jeg anbefaler deg å bruke programmet under til å administrere USB enheter og USBIPD.

WSL USB Manager

Hvis du foretrekker et grafisk grensesnitt, kan du bruke WSL USB Manager. Dette verktøyet lar deg enkelt administrere USB-enheter visuelt.

Installere VSCode

VSCode er et kraftig verktøy for embedded utvikling. Det er ikke uten grunn at markedet for andre editorer har omtrent forsvunnet.

Installer VSCode med å skrive denne kommandoen i PowerShellet:

1
winget install vscode

Du trenger ikke installere VSCode i WSL for at den skal fungere. Faktisk trenger du bare starte VSCode fra WSL shellet med kommandoen:

1
code

Siden VSCode nå er åpent kan vi installere noen nødvendig utvidelser. Trykk Ctrl-Shift-X i VSCode vinduet og søk opp og installer disse utvidelsene:

  • Remote WSL
  • Remote Development

Enkelt?

Installere ESP-IDF

For å holde oversikt anbefaler jeg at dusamler Espressif-relaterte filer i ~/espressif/. Dersom du ønsker en annen bane, så gjør du det.

Opprette mappe for ESP-IDF og verktøy:

1
2
mkdir -p ~/espressif
cd ~/espressif

Last ned ESP-IDF. Versjon 5.4 er den siste versjonen i det jeg skriver dette så du kan jo sjekke siste versjon på Github. For å laste ned bruker du kommandoen:

1
git clone -b v5.4 --recursive https://github.com/espressif/esp-idf.git

ESP-IDF installeren er avhengig av noen tillegg, så vi installerer dem med kommandoen:

1
2
sudo apt update
sudo apt install git wget flex bison gperf python3 python3-pip python3-setuptools cmake ninja-build ccache libffi-dev libssl-dev dfu-util libusb-1.0-0

Jeg pleier sette opp noen miljøvariabler før jeg kjører install-prosessen for å legge binary verktøyene til ESP-IDF på en enkel plass.

Merk: Du må endre /home/user/expressif slik at den peker rett. Installeren har nemlig problem med variabler i variablene.

1
2
3
4
echo 'export IDF_CCACHE_ENABLE=1' >> ~/.bashrc
echo 'export IDF_TOOLS_PATH="/home/user/espressif"' >> ~/.bashrc
echo 'alias start_idf=". ~/espressif/esp-idf/export.sh"' >> ~/.bashrc
source ~/.bashrc

Den første linjen skrur på ccache slik at rekompileringer går raskere, og den siste linja lager et alias for å sette ESP-IDF miljøet. Til slutt aktiverer vi miljøendringene.

Nå kan vi kjøre installeren:

1
2
3
cd ~/espressif/esp-idf
./install.sh all
start_idf

Bekreft installasjonen ved å kjøre:

1
idf.py --version

ESP-IDF Extension for VSCode

Integrasjon mellom ESP-IDF og VSCode gjør utviklingsarbeidet sømløst. Fra et WSL shell starter du VSCode med kommandoen:

1
code

Finn ESP-IDF utvidelsen med å søke etter “ESP-IDF” i utvidelsesmenyen ( Ctrl+Shift+X). Neste skritt er å konfigurere utvidelsen og da trykker du Ctrl+Shift+P for å åpne palettet og finn ESP-IDF: Configure ESP-IDF Extension.

Velg “Use existing setup” så skal utvidelsen finne ESP-IDF vi installerte mer eller mindre av seg selv.

Oppsummering

Med denne guiden har du satt opp ESP-IDF i WSL2 og integrert det med VSCode. Du er nå klar for effektiv embedded utvikling. Trenger du flere ressurser, kan du sjekke Espressif-dokumentasjonen.

Jeg har laget en artikkel om ESP Matter som tar utgangspunkt i denne artiklen. Hvis støtte for alle store smart-hjem-enheter høres spennende ut så vil jeg anbefale deg dette som neste skritt.