Erster Erfahrungsbericht mit dem ESP8266-01:
Angekommen sind 3 Stück, zusätzlich ein CP2102 USB 5V/3.3V Konverter.
Zuerst habe ich beim CP2102 auf der Rückseite der Platine die hauchfeine "Leitung" zwischen dem 5V und GND Pads herausgekratzt, dann den 3.3V und GND-Pad mittels Tropfen Lötzinn verbunden. AN USB-Port des Laptops angesteckt, zwischen GND und VCC 3.3V gemessen, passt! Aber das Ding brauchte ich garnicht^^
Durch Code-Jack´s Empfehlung habe ich mir das ESP8266BASIC wie hier beschrieben, per Arduino-UNO am USB-Port geflashed, nach einigen Versuchen hat das auch geklappt. Die Verkabelung erfolgte "fliegend" mittels Breadboard....das Flashen klappte nicht immer auf Anhieb, Stützkondensatoren habe ich 2 verbaut.
Der ESP arbeitet, nachdem die Firmware geflashed wurde, als Accesspoint (Server) ohne weitere Zugriffs/Sicherheitseinstellungen (Passwort).
In der Drahtlosnetzverbindung von Win7 hatte ich eine neuen Teilnehmer Namens ESP. Im Browser bekommt man über die IP-Adresse 192.168.4.1/edit Zugriff auf das Webinterface.
Was folgte war das Ausprobieren einiger Beispiele, heyho, auf dem Breadboard steckte noch ein LDR, dessen Werte habe ich mir direkt mal mit dem noch freien GPIO2 ausgelesen. Eine daneben steckende LED konnte auch zum Blinken gebracht werden...so weit so gut.
Der BASIC-Editor macht was er soll, die "Sprache" ist wirklich supersimpel!
Um das mal mit aller Deutlichkeit zu sagen, nachdem die BASIC-Firmware auf dem ESP ist, erfolgt sämtliche "Programmierung" OTA (over the air) per Webbrowser, das heißt, es ist am ESP nur noch die reine Stromversorgung GND/VCC nötig!
Mit dem Handy das WLAN anwählen, im Browser die IP-Adresse eingeben und schon wird die "Website" präsentiert, dort einmal auf den Button "LED Blinken" tippen, und die LED am ESP blinkt.GEIL!!!
Durch Code-Jack´s Ausführungen zur "Stabilität" habe ich nach einigen Stunden Rumgebastel und -gefluche auch meinen Teil beizutragen...
Das ESP hängt sich bei Datenübertragungen ab und zu auf. Die blaue LED, welche bei Datenübertragungen und beim Booten ab und zu flackert, ist dauerhaft am leuchten, der ESP beendet die Funktion als AP (abgestürzt/aufgehängt) und, und das ist imho der IoT-Supergau, er resettet dann nicht mehr selbstständig....
Also "mechanisch" resetten (stromlos machen!) und neu booten. Das dauert übrigens nur einige Sekunden, bis der AP in der Liste der WLANS erscheint.
Der Reset per "Reset-Pin" funktioniert übrigens nicht?!
Da allzeit genügend "Strom" nach Ausführung etlicher User wohl das Problem zu sein scheint, habe ich ein 5V/2A Steckernetzteil per Spannungsteiler auf 3.3 V gebracht (vorsichtshalber doch Stützkondensatoren (1000µF-Elko, 100µF-Folien und einen von den "schnellen kleinen" 1µF ) . Messschaltung aufgebaut, dort habe ich bis zu 1A GEMESSEN, wenn der ESP NOCH mehr "Saft" braucht, fange ich an zu lachen...
ESP per Verlötung (nur 3.3V an VCC/CH-PD und GND/GND) ans 3.3V-Netz gehängt und beim Booten blieb er mit blauer LED hängen. Beim 2. Versuch hat er gebootet, daraufhin fingen meine Experimente mit den von Code-Jack angesprochenen "großen" Dateien an.
Dazu einfach im Webinterface im Filemanager den "Datei aufwählen"-Button klicken, auf meiner Festplatte die Mona-Lisa.jpg mit 254KB Größe auswählen, im Webinterface den Button "Upload" drücken und die blaue LED am ESP flackert. Nach ca. 2-3 Sekunden ist lt. Webinterface die Datei hochgeladen, auf Button "View" klicken, und "langsam" wird im Browser die JPG angezeigt, allerdings nur die oberen 25%, dann durchgehend leuchtende blaue LED, ESP abgestürzt, neu booten...
Nach einigen Versuchen mit kleineren jpg-Dateien, die auch wunderbar hochgeladen und im Browser angezeigt wurden (im "LED-Blink-Programm wird nur eine Zeile eingefügt: Image Mona-Lisa.jpg, genial!) habe ich dann das Filesystem zerschossen...fragt mich nicht wie, die *.bas-Programme wurden zerschossen angezeigt, die Dateien waren nicht mehr zu löschen, es kam auch im Editor die Meldung "gespeichert", aber beim anschließenden reload waren die Dateien unbrauchbar, wurden also nicht überschrieben. Neue Dateien konnten keine mehr angelegt werden. Einige andere User haben genau diese Probleme auch beschrieben.
Neu flashen hat das Problem nicht beseitigt, das Dateisystem wird beim flashen nicht "genullt", verbesserungswürdig, da sollte man eine Option anbieten! Neuerliche FORMAT-Flash per ESP-Basic-Flasher.exe mit sämtlichen angebotenen Flash-Size-Größen brachte keine Besserung, da nachts um halb zwei hab ich das Ding vom Netz genommen.
Nach einigen Stunden den ESP neu gebootet, das zerschossene Filesystem war zwar immer noch nicht zu gebrauchen, aber nach beherztem Klick auf den "View"-Button zur Anzeige der 254K großen Mona-Lisa.jpg wurde die im Browser zwar "langsam" aber vollständig angezeigt....shit happens...
Also den ESP zurück ins Tütchen mit Zettel "Filesystem defekt" und den nächsten ESP an den Arduino zum Flashen angeschlossen. Das klappte auf Anhieb, daher habe ich sofort danach den ESP mit dem CP2102 am USB-Port des Laptops verheiratet, also nur VCC/GND. Wieder einige Testdateien/Schaltungen/Uploads ausprobiert, DAS Ding läuft...bisher
Ich vermute, die "Probleme" sind vielseitiger Natur. Nach stundenlanger Recherche im Internet kristallisieren sich mehrere Punkte heraus, die einfach nur einen einzigen Schluß zulassen. Das Ding ist und bleibt ein BILLIGTEIL! Aus Billigstkomponenten aufgebaut und billigst gefertigt ist die Streuung innerhalb der Qualität imho ziemlich hoch!
Wenn man Glück hat, erwischt man einen "guten", welchen man auch noch "passend" mit Strom und Spannung versorgt. Diesem dann auch noch nicht viel Arbeit in Form von "kleinen" Datenbewegungen zugemutet, und der macht zuverlässig seine Arbeit.
Das Konzept des ESP-Basic, EINMAL zu flashen und weiterhin nur über die Programmierung im Browser over the air zu steuern finde ich super, alledings bin ich mir sicher, dass mindestens 50% der Abstürze/Hänger beim Booten auf das Basic zurückzuführen ist...
Ich habe seit 3h einen ESP (am Netzteil) laufen, der sich per SLEEP-Befehl regelmäßig jede Minute neu bootet und dessen Programm einen Wert in eine Datei schreibt. Diese Datei wird per AutoIt-Script per InetRead() "abgeholt", sobald der ESP online ist. Kleines Programm, nur einige Bytes zu bewegen, scheint zuverlässig zu funktionieren...
Der 3. ESP hängt mittlerweile am CP2102 und macht auch was er soll....