Nabend, mit welchem Tool programmiert und flasht ihr esp2866-module (NodeMCU, also über usb)? Alles was ich bisher gefunden habe, ist dass ich mir die Arduino IDE installieren muss. Gibt es keine möglichkeit ein Addon oder so in AtmelStudio zu installieren? Würde ungern extra nur dafür die Arduino IDE installieren. Frank
Das Atmel Studio untestützt nur Atmel Mikrocontroller. Der ESP8266 ist von Espressif und enthält eine CPU von Tensilica. Wenn Du Dir die Doku zum entsprechenden SDK anschaust wirst du sehen, dass es entsprechende Plugins für Eclipse gibt. Mit Arduino ist die Programmierung aber einfacher.
installier dir plattformio https://platformio.org/ (entweder mit Atom-Texteditor oder mit Microsoft Visual Code)
Hallo, habe mir jetzt Microsoft Visual Code und plattformio installiert und zunächst den blink-code erstellt
1 | #include <Arduino.h> |
2 | |
3 | void setup() { |
4 | // put your setup code here, to run once: |
5 | pinMode(13, OUTPUT); |
6 | } |
7 | |
8 | void loop() { |
9 | // put your main code here, to run repeatedly: |
10 | digitalWrite(13, HIGH); |
11 | delay(1000); |
12 | digitalWrite(13,LOW); |
13 | delay(1000); |
14 | } |
Allerdings bekomme ich den esp nicht geflasht. Verbunden habe ich den NodeMCU mit usb an COM3 mit dem PC verbunden. Bekome den output Processing nodemcuv2 (platform: espressif8266; board: nodemcuv2; framework: arduino) ------------------------------------------------------------------------ ------------------------------------------------------------------------ ------------------------------------------------------------------------ - Verbose mode can be enabled via `-v, --verbose` option CONFIGURATION: https://docs.platformio.org/page/boards/espressif8266/nodemcuv2.html PLATFORM: Espressif 8266 > NodeMCU 1.0 (ESP-12E Module) HARDWARE: ESP8266 80MHz 80KB RAM (4MB Flash) Library Dependency Finder -> LDF MODES: FINDER(chain) COMPATIBILITY(soft) Collected 26 compatible libraries Scanning dependencies... No dependencies Retrieving maximum program size .pioenvs\nodemcuv2\firmware.elf Checking size .pioenvs\nodemcuv2\firmware.elf Memory Usage -> DATA: [=== ] 34.2% (used 28000 bytes from 81920 bytes) PROGRAM: [== ] 23.7% (used 247912 bytes from 1044464 bytes) Configuring upload protocol... Looking for upload port... Auto-detected: COM3 Uploading .pioenvs\nodemcuv2\firmware.bin warning: espcomm_sync failed error: espcomm_open failed error: espcomm_upload_mem failed *** [upload] Error 2 Aber das bisschen brauch schon 247912 bytes? Das finde ich eigentlich ganz schön viel. Mal schaun wie weit ich da mit meinem Programm komme
Dieses Problem habe ich hinbekommen. hatte noch einen Arduino am PC angeschlossen, welcher am COM3 hing. konnte ich nicht flashen. Aber dann ist mir ein neues Problem aufgekommen. Und zwar den serial Monitor Dazu lasse ich mir im Code (anstelle von die LED blinken) "HIGH" und "LOW" ausgeben. Wenn ich PlatformIO: Serial Monitor anklicke, bekomme ich folgende Meldung > Executing task in folder ESP_1: C:\Users\.platformio\penv\Scripts\platformio.exe device monitor < could not open port '/dev/ttyUSB1': could not open port '/dev/ttyUSB1': WindowsError(3, 'Das System kann den angegebenen Pfad nicht finden.') The terminal process terminated with exit code: 1 Wenn ich Debugg starte, bekomme ich ein Error > Executing task in folder ESP_1: C:\Users\.platformio\penv\Scripts\platformio.exe debug < Error: Currently, PlatformIO does not support debugging for `NodeMCU 1.0 (ESP-12E Module)`. Please contact support@pioplus.com or visit < https://docs.platformio.org/page/plus/debugging.html > The terminal process terminated with exit code: 1 Dort ist der Fehler eigentlich klar beschrieben ( also das kein debugging unterstützt wird). Aber im Internet gibt es Beispiele, wo die es benutzen. Einige male, wurde eine android.json angepasst. Diese existiert in meinem Projekt allerdings gar nicht.
Frank schrieb: > could not open port '/dev/ttyUSB1': could not open port '/dev/ttyUSB1': > WindowsError(3, 'Das System kann den angegebenen Pfad nicht finden.') Das ist auch für Linux. Du hast nach eigenem bekunden COM3 und nicht dev...
Du musst vmtl. einiges in der "platformio.ini" für dein Projekt anpassen. "upload_port = COM3" für den Comport deines Nodemcu. "upload_speed = 115200" , ist vmtl. default "upload_resetmethod = nodemcu" stellt ein, ob dein Board per DTR-Gewackel einen reset-auslösen kann, und wie. Wenn du "board = nodemcuv2" gesetzt hast, sollte das auch default sein. ähnlich: "monitor_port = COM3" für den Seriellen Monitor. /dev/ttyUSB1 wäre für Linux... "monitor_speed = 115200", oder was du in deinem Sketch konfiguriert hast. Wegen dem Speicherplatz-Bedarf: Da ist ja auch das ganze Wlan-drumherum mit dabei, das wird jedesmal mitkompiliert und hochgeladen. Du kannst mit platformio statt platform = espressif8266 framework = arduino auch z.B. mit framework = esp8266-nonos-sdk "auf dem blankem Metall" arbeiten, da hast du mehr Kontrolle über das, was am Schluss im Chip landet. Aber auch weniger Easy-to-use vorbereitete Libraries.
Stefanus F. schrieb: > Das Atmel Studio untestützt nur Atmel Mikrocontroller. Der ESP8266 ist > von Espressif und enthält eine CPU von Tensilica. Wenn Du Dir die Doku > zum entsprechenden SDK anschaust wirst du sehen, dass es entsprechende > Plugins für Eclipse gibt. > > Mit Arduino ist die Programmierung aber einfacher. Falsch. esp-idf bietet das Flashen mit einem Befehl an, zudem ist das ganze aufgebaut auf FreeRTOS und sehr angenehm zu programmieren. Debuggen ist auch kinderleicht. Macht das mal einfach mit Arduino. Kannst du vergessen. Genauso wie die Nutzung einer anständigen IDE, so kannst du einfach in eclipse ein Projekt einbinden und fertig aus...
Frank schrieb: > Aber das bisschen brauch schon 247912 bytes? Das finde ich eigentlich > ganz schön viel. Mal schaun wie weit ich da mit meinem Programm komme Das ist normal, der größte Teil davon ist der von Espressiv bereitgestellte Firmwarekern in binärer Form. Da kenn man halt nichts weglassen auch wenn Funktionen für das eigene Projekt nicht benötigt werden. Mit dem schreiben eigener Programme wächst der Speicherbedarf dann in üblichen Größenordnungen. Sascha
Frank schrieb: > Aber das bisschen brauch schon 247912 bytes? Das finde ich eigentlich > ganz schön viel. Ca. 250 Kilobytes gehen für die Basis Firmware des Chipherstellers drauf, da sind die ganzen WLAN spezifischen Funktionen drin. Mache Dir keine Sorgen, den Rest bekommt man nicht so schnell voll. > /dev/ttyUSB1 So benennt Linux die USB-UART Adapter. Unter Windows heissen die Ports COMx. Das musst du irgendwo einstellen. Bezüglich des Debuggings: Soweit ich weiß hat der ESP8266 keine Debugging Schnittstelle. Du kannst nur Texte auf dem seriellen port ausgeben. Die unterstützten Plattformen von PIO kannst du hier sehen: https://docs.platformio.org/en/latest/plus/debugging.html
Platformio schrieb: > Du musst vmtl. einiges in der "platformio.ini" für dein Projekt > anpassen. Danke für den Hinweis. Das hat mir sehr geholfen Platformio schrieb: > Wegen dem Speicherplatz-Bedarf: Da ist ja auch das ganze Wlan-drumherum > mit dabei, das wird jedesmal mitkompiliert und hochgeladen. > > Du kannst mit platformio statt > > platform = espressif8266 > framework = arduino > > auch z.B. mit > framework = esp8266-nonos-sdk > > "auf dem blankem Metall" arbeiten, da hast du mehr Kontrolle über das, > was am Schluss im Chip landet. Aber auch weniger Easy-to-use > vorbereitete Libraries. Das werde ich später in Angriff nehmen :)
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.