usbtoggle/README.md
2026-08-13 13:20:17 +02:00

1.5 KiB

USB Toggle

ESP8266 (Wemos D1 Mini) firmware om een relais te schakelen via seriële USB.

Dit project is tot stand gekomen met vibecoding.

Gebruik

Sluit aan via USB en stuur commando's:

./relay 1   # relais aan
./relay 0   # relais uit
./relay id  # toont module-ID (chip-ID, uniek per chip, onafhankelijk van USB-poort)
./relay 1 /dev/cu.usbserial-XXXX   # poort expliciet opgeven (alleen als auto-detect faalt)

Zonder poortargument zoekt het script de module zelf: het probeert alle CH340-poorten met het id-commando en gebruikt de eerste die ID usbtoggle-relay antwoordt — waar de module ook is aangesloten.

Linux

Het script draait ongewijzigd op Linux. Vereisten:

# Fedora / RHEL
sudo dnf install python3-pyserial
# Debian / Ubuntu
sudo apt install python3-serial

De seriële poort is op Linux meestal /dev/ttyUSB0 en eigendom van root:dialout. De gebruiker moet in de dialout-groep zitten, anders weigert het script de poort te openen:

sudo usermod -aG dialout $USER
# opnieuw inloggen om de groep actief te maken

De poortnaam is verder niet relevant: de auto-detectie vindt de module zonder dat een pad opgegeven hoeft te worden.

Pinnen

Component GPIO
Relais (shield IN) 5 (D1)
LED LED_BUILTIN

Relais-IN zit op D1 (GPIO5): GPIO0 is bewust vermeden (boot-strapping pin — laag houden kan het board in flash-modus laten booten bij reset).

Build & Flash

pio run --target upload --upload-port /dev/cu.usbserial-2110