2014 habe ich eine Reihe von ESP8266 gekauft und jetzt erst aus der Schublade geholt. Auf den ESPs soll nun MicroPython installiert werden. Da der ESP8266 nur 512 KBytes hat, wird ein MicroPython mit eingeschränktem Umfang geflasht (kein Dateisystem). https://micropython.org/download/esp8266-512k/ Ist es trotzdem möglich einen (kleinen) Webserver laufen zu lassen, der mir Temperatur/Feuchtigkeit eines BMP180 übermittelt?
Paul schrieb: > nur 512 KBytes Mache das lieber mit Arduino, dann hast du kein Problem mit zu wenig Speicher.
Stefan ⛄ F. schrieb: > Paul schrieb: >> nur 512 KBytes > > Mache das lieber mit Arduino, dann hast du kein Problem mit zu wenig > Speicher. Ich habe eine Frage gestellt. Wenn Du sie nicht beantworten kannst, solltest Du erst gar nicht schreiben.
Hallo, gerade gesehen, meine Antwort wird genauso unerwünscht sein... warum will man da unbedingt Python drauf haben? Aus der ArduinoIDE ist es kein Problem, da wäre sogar noch Platz für 128k Filesystem. Der BMP180 kann nur Temperator und Luftdruck, keine Feuchte. Das kann aus der Serie der BME280. Gruß aus Berlin Michael
:
Bearbeitet durch User
Du kannst auch den Speicherbaustein auf dem ESP wechseln. Sorry, wenn dir das nicht zu deiner Frage passt.
Michael U. schrieb: > Hallo, > > gerade gesehen, meine Antwort wird genauso unerwünscht sein... > > warum will man da unbedingt Python drauf haben? > Aus der ArduinoIDE ist es kein Problem, da wäre sogar noch Platz für > 128k Filesystem. > Der BMP180 kann nur Temperator und Luftdruck, keine Feuchte. > Das kann aus der Serie der BME280. > > Gruß aus Berlin > Michael Man soll die Hoffnung nicht aufgeben, vielleicht findet sich noch jemand der mir die Frage beantworten kann. Danke für den BMP189-Hinweis. Feuchtigkeit bitte durch Luftdruck ersetzen.
Hallo, Paul schrieb: > Man soll die Hoffnung nicht aufgeben, vielleicht findet sich noch jemand > der mir die Frage beantworten kann. keine Ahnung, ob es ein Forum zu MicrpPython gibt, ist für mich eher eine Frage der Resourcen. Hier sind auch noch wenige der ersten ESP8266-01 mit 512k im Einsatz. Fast immer genau für solche Sensoren oder PIR und MQTT-Anbindung. Brain 2.0 schrieb: > Du kannst auch den Speicherbaustein auf dem ESP wechseln. würde ich bei den Preisverhältnissen nicht machen. Es sollte einer der vom ESP8266 erkannten Typen sein und die genutzte Bauform ist auch recht selten. Beinchen passend biegen geht zwar, ist aber auch nicht die ideale Lösung. Ich habe es nur bei einem mal gemacht, lohnt sich einfach nicht wirklich. Gruß aus Berlin Michael
Dennis H. schrieb: > Ist in https://micropython.org/download/esp8266-512k/ > kein Webserver ? Nein. Und auch kein Filesystem wo man das Script ablegen könnte das ausgeführt werden soll.
Paul schrieb: > Ich habe eine Frage gestellt. Wenn Du sie nicht beantworten kannst, > solltest Du erst gar nicht schreiben. OK, die Antwort lautet: Es ist möglich, aber nur mit erheblichem Aufwand. Du musst dir dazu ein Modul in C programmieren und mit sehr wenig Speicher (Flash und RAM) auskommen. Es ist mühsam und wird nicht gut aussehen. Ich gehe davon aus, dass du das in absehbarer Zeit nicht hinbekommen wirst. Denn hättest du das nötige Know-How, dann hättest du diese Frage nicht gestellt. Diese unschöne Antwort wollte ich dir eigentlich ersparen, deswegen mein Versuch dich mit Arduino abzulenken, wo das wesentlich unproblematischer ist.
Ich habe keine eigene Erfahrung mit MicroPython, aber so wie ich die MicroPython-Dokumentation interpretiere, ist das wesentliche Feature, das in dem abgespeckten 512kB-Build deaktiviert ist, die Unterstützung für ein Dateisystem. Und halt alle weiteren Features, die die Verfügbarkeit eines Dateisystems erfordern. Ein wirklich minimalistischer HTTP-Server, der einfach nur die Messwerte eines Sensors zurückliefert (und auch nur im lokalen WLAN erreichbar ist, Sicherheit etc. also keine Rolle spielt etc.), dürfte dann tatsächlich möglich sein. Der Webserver-Teil scheint sogar vglw. leicht zu implementieren zu sein - in der MicroPython-Dokumentation findet sich bereits eine Beispielimplementierung für einen minimalistischen HTTP-Server, gerade mal ca. ein Dutzend Codezeilen lang, die für Deinen Zweck vermutlich nur minimal verändert werden müsste: http://docs.micropython.org/en/latest/esp8266/tutorial/network_tcp.html#simple-http-server Das Abfragen des BMP180 wäre damit vermutlich noch das grössere Problem, da bei Micropython offenbar kein fertiges Modul für diesen Sender mitgeliefert wird. Auch das dürfte allerdings kein allzu grosses Problem darstellen, denn es gibt im Netz offenbar fertige in MicroPython geschriebene Module für die Kommunikation mit diesem Sensor: https://github.com/micropython-IMU/micropython-bmp180
Nachdem ich die Micropython-Dokumentation nochmal kurz überflogen habe, fürchte ich, dass Dein Vorhaben doch nicht mit vertretbarem Aufwand umsetzbar ist. Denn aufgrund des fehlenden Dateisystems ist es bei den 512kb-Builds offenbar schlicht nicht möglich, eine "main.py"-Micropython-Datei im Flash zu speichern, die dann bei jedem Booten automatisch ausgeführt wird. Damit sind die 512kB-Builds offenbar wirklich nur geeignet, um ein Stück MicroPython-Code mal kurz per REPL-Shell direkt auszuprobieren, für jede sinnvolle Verwendung braucht man hingegen offenbar mehr als 512kB.
Dazu kommt: Versuche mal wenigstens einen Bericht zu finden, wo jemand diese 512k Version erfolgreich benutzt hat. Ich habe keinen gefunden.
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.