Das Ecosystem von Arduino bietet viele spannende Projekte. Die Standard- IDE von Arduino bringt einen aber ziemlich an den Rand der Verzweiflung, weil sie einerseits verheimlicht, wie der aktuelle Compiler denn nun wirklich parametriert ist, und bei der Fehlersuche kommt ausser einem pauschalen „Geht irgendwie nicht“ kaum eine vernünftige Fehlermeldung, von der aktbackenen Bedienung mal ganz zu schweigen.
Deutlich mehr Spaß macht es da, seine Arduino- Projekte mit der VSCode Arduino Extension in VSCode zu machen, aber auch da liegt der Teufel im Detail. Die Installation geht ja noch einigermaßen vonstatten, auch wenn die meisten Anleitungen zusätzlich noch PlatformIO verlangen und man damit von der einen (Arduino-) Abhängigkeit in die nächste rüberwechselt, darum sei hier die Installation ohne PlatformIO empfohlen.
Es gibt aber noch mindestens zwei weitere Stolpersteine:
Die Extension erzeugt sich die initiale Konfiguration selber, sobald man das erste Mal compiliert. Klingt gut, geht aber schrecklich in die Hose, wenn man nicht definitiv ein lauffähiges (Beispiel-) Programm geladen hat. Dann gibt's so'ne Art Phantasie- Konfiguration, die auch weiterhin gültig bleibt, während man versucht, die Fehler zu finden.
Ausserdem will der Konfigurator, dass die *.ino- Datei genau so heißt wie der Ordner, in dem sie sich befindet.
In den File/Preferences/Extentions
sollte man für die Arduino- Extension den Log- Level auf Verbose
setzen, damit man im Output- Window miterleben kann, was Compiler und esptool da so alles anstellen. Ohne dies ist das Output- Window sehr langweilig…
Man ist versucht, der Einfachheit halber über die Include- Pfade bereits bestehende lokale Libraries seiner bisherigen Arduino- Installation einzubinden. Das klappt auch scheinbar, solange bis diese dann wieder andere Includes einbinden, dann weiß der Compiler scheinbar nicht mehr, wo er suchen soll.
Darum Libraries besser nochmal für VSCode über dessen Library- Manager neu installieren, das geht wohl besser.
Darum bei einem neuen Projekt: