Erster Eindruck: ESP8266 - WLAN-Modul mit rs232 Schnittstelle

  • Hallo zusammen,


    ich hatte mir vor einiger Zeit ein -> solches <- Modul als WLAN <--> RS232 Umsetzer bestellt. Am Samstag kam das Teil dann an, und ich hab's gleich mal ausprobiert.
    Da das Modul mit 3V3 Pegeln arbeitet, ist es ohne weitere Hardware direkt am RPi verwendbar.
    Im Moment bediene ich das Teil noch über minicom ... aber der Eindruck, den ich bisher habe, ist wirklich äusserst positiv.
    Das Modul hat TCP/IP-Stacks bereits "onboard" ... d.h. es unterstützt eigenständig das Netzwerk-Handling undkann sowohl TCP als auch UDP verarbeiten.
    Möglich ist das, weil es sich beim Modul nicht um einen simplen Controller sondern, wie auch beim RPi, um ein SoC handelt ... also quasi um einen eigenen Mini-Rechner.


    Sehr hilfreich ist mir dabei derzeit -> diese <- Site ...
    Aber auch auf mikrocontroller.net finden sich hilfreiche Informationen zu diesem Modul.
    Jedenfalls hat alles, was ich bisher probiert habe, auf Anhieb funktioniert.


    Vorgesehen hatte ich das Modul urpsrünglich für einen Arduino ... um ihn einfach und ohne grosse Klimmzüge netzwerkfähig zu machen.
    Aber auch am RPi kann das Teil imho durchaus Sinn machen.


    Ich halte Euch auf dem Laufenden ...
    cheers,
    -ds-

  • Kannst du mir kurze Infos geben wie du es angeschlossen hast?
    Ich habe auch am Samstag diese Modul bekommen und komme irgendwo nicht weiter.
    Benötige ich einen Pegelwandler?
    Wie hast du es angeschlossen?

  • Moin,
    das Modul ist komplett auf 3V3 ausgelegt. Allerdings kannst Du es nicht über den RPi befeuern. Lt. diversen Aussagen kann es bis zu 250 mA ziehen. Allein schon beim Umschalten in den AP-Modus geht der Stromverbrauch auf 80 mA hoch.
    Du benötigst also eine eigene Stromversorgung ( ich habe da eines dieser billigen Breadboard-Stromversorgungsteile benutzt ).


    Die mittleren vier Pins habe ich alle auf Vcc (3V3) gelegt. Mittlerweile kristallisiert sich heraus, dass der CH_PD Pin reichen sollte ...
    Vcc geht auf 3V3 der Breadboard-Stromversorgung, GND auf Masse des Stromversorgung-Boards die wiederum mit der Masse ( Pin #6 ) des RPi verbunden ist.
    URXD geht dann auf TX ( Pin #8 ) und UTXD auf RX ( Pin #10 ) des RPi.
    Mit minicom und einer Baudrate von 115200 bist Du dann über /dev/ttyAMA0 mit dem Modul verbunden und kannst Kommandos eingeben.


    So weit alles verständlich?
    cheers,
    -ds-

  • Ja soweit erst mal, muss ich testen wenn ich zuhause bin.
    Hatte am Wochenende versucht es mit einem Arduino Mega zu verbunden aber keine ergebnisse bekommen

  • Hi,
    genau das Thema, an dem ich auch grad bin. Mein letztes Projekt führt mich über das ESP8266 endlich wieder zum Raspi;-)
    Worum gehts? Also ich hab mit diesen CYPRESS PSOC Teilen http://www.cypress.com/?rID=92146 (bitte nicht als Werbung auslegen, auch wenn ich die Dinger genial finde) eine Messschieberanzeige gebastelt.
    So mit LCD und zusätzlicher UART Schnittstelle in beide Richtungen. Nun möchte ich zusätzlich den Raspi als Zentrale ankoppeln. Das geht zwar problemlos per UART direkt, aber da ich ohnehin gerne eine galvanische Trennung haben möchte, dachte ich, das wäre mal ein Project für den ESP8266.
    Hab da aber noch ein prinzipielles Problem. Ich wollte keine einfache TCP-Verbindung, wo ich dann wieder eine eigenes Programm auf dem Raps für schreiben muss.
    Was ich gerne hätte, wäre eine Browserlösung. Dazu soll ein kleiner Miniserver zusätzlich auf dem PSOC-Chip (wenn der Platz reicht) au dem Raspi laufen.
    Die Verbindung müsste dann so laufen
    Messschieber(PSoC-Chip)--UART-->ESP8277--WiFi_TCP-->HTTP_Server(PSoC_or_Raspi) <-- Browser
    Bis zum HTTP_Server bekomme ich es vlt. hin. Da gibt es einige Beispiele.
    Wo ich aber nicht weiterkomme, ist die HTTP_Seite. Die Daten sollen ja in Echtzeit im Browser abgebildet werden, das heisst ca. 20-100ms Refresh.
    Hat jemand eine Idee, wie man sowas macht? Welche Stichworte geb ich am besten bei großen G.. ein?
    @DS Du hast doch bestimmt schon ne Fritzing Komponente gebastelt? :D:bravo2:


    Allen eine ruhige Woche
    reraspi

  • Hallöle,


    Ja soweit erst mal, muss ich testen wenn ich zuhause bin.
    Hatte am Wochenende versucht es mit einem Arduino Mega zu verbunden aber keine ergebnisse bekommen


    beim Mega hast Du afaik auch eine Strombegrenzung der 3V3, wenn ich mich nicht irre. Aber zum Ausprobieren sollte es reichen ...
    ABER: beim Mega brauchst Du natürlich einen Levelshifter.
    Ich wünsch Dir jedenfalls erst mal viel Erfolg.



    Echtzeit und Raspbian geht nicht und Echtzeit und Webbrowser schon gar nicht ;) ...
    Und einen refresh kannst Du imho auch nur im Sekundentakt machen.
    Das einzige, was mir da ad hoc einfallen würde:
    entweder ein Programm mit grafischer Oberfläche, das die Daten anzeigt (und das dann z.B. mit ssh -X aufrufen)
    oder ein eigenes Plugin für den Browser schreiben (so in der Art wie ein Video-Plugin, das einen Endlos-Stream verarbeitet).
    Bei beiden dann vllt. die Daten über UDP senden ( beherrscht das Modul ja auch ).
    Sonst fällt mir da aber so auch nichts ein ...


    Ach so, ... Fritzing-Komponente habe ich noch keine gebastelt ... das lohnt sich imho nicht, wegen zwei Drähtchen ;)


    cheers,
    -ds-

  • Quote


    Und einen refresh kannst Du imho auch nur im Sekundentakt machen.


    Über Ajax mittels Javascript timeout() kannst du auch weniger als eine Sekunde refreshen.
    mit

    Code
    1. timeout(foo(),100)


    alle 100 ms z.B.
    Nur ob das Sinn macht steht auf einem anderen Blatt.

    Offizieller Schmier und Schmutzfink des Forum.
    Warum einfach wenn's auch schwer geht ?


    Kein Support per PN !
    Fragen bitte hier im Forum stellen. So hat jeder etwas davon.

    Edited once, last by Der_Imperator ().

  • Hey,


    ...
    Ist das denn wirklich eine art Minicomputer - also hat man die Möglichkeit eigene Software direkt auf dem Module laufen zu lassen wie zB einen Webserver?


    jo ... ist es. Das Board hat zwei GPIOs herausgeführt, die man zum Flashen benötigt. Dazu gibt es ein SDK, das mit VirtualBox eingesetzt wird. Das VM-Image hat als exportiertes OVA (Open Virtual Alliance oder so) ca. 1 GB und steht zum Download zur Verfügung. Das Image für die VM hat nach dem Import dann knapp 3 GB und basiert auf lubuntu.
    Es gibt wohl verschiedene SDKs ... da muss man scheinbar ein bisschen aufpassen. Bei VirtualBox wird Version 3.12 empfohlen.
    Näheres dazu gibt es bei ElectroDragon bzw. bei espressif in einem BBS ...
    Ich wühle mich da gerade ein wenig durch, deshalb kann ich im Moment auch nich nichts zu verfügbarem Speicher, Flash, ... sagen. Was ich aber schon gelesen habe ist, dass man das Modul wohl bis 4 Mbit hochtunen kann.
    Ich lasse aber die Flasherei erst mal, weil ich derzeit nur eines dieser Boards habe und damit noch länger herum spielen möchte.
    Sicherheitshalber hab' ich mir mal zwei weitere geordert ... macht in Summe 6,10 Euro.
    Einzig mit den Arduinos ist es etwas umständlich. Die werden ja über die rs232 geflasht. Also sollte man das Modul vor dem Flashen abstecken. Debug-Ausgaben sind dann natürlich über die serielle Schnittstelle auch nicht möglich. Dazu muss man dann entweder einen Mega mit mehr UARTS nehmen oder SoftSerial verwenden (das klappt aber auch super - allerdings ist, lt. diversen Aussagen im Netz, da bei 19200 Schluss).
    Ausser bei der 3V3 Variante des Pro Mini muss man beiden Arduinos ausserdem Pegelwandler verwenden.
    Ich hab's im Moment an einem Raspi laufen. Hin und wieder kommt das Modul wohl meinem WLAN in die Quere und legt den Router lahm ... aber das kommt wohl von der Rumspielerei.
    Wie gesagt: man kann per UDP oder TCP auf einen Server verbinden bzw. einen entsprechenden Server zur Verfügung stellen. Sogar mehrere Verbindungen gleichzeitig werden unterstützt.


    Nach wie vor: ich bin begeistert :thumbs1:


    //EDIT:
    Was ich noch vergessen habe: wenn sich das Modul im STA Modus mit meinem WLAN verbindet, sind auch routen passend gesetzt. Ich kann mich also vom Modul aus auch mit Servern im Internet verbinden :) ...


    cu,
    -ds-

  • Interessantes Teil, der Preis ist auch verlockend, danke für den Bericht.


    s.
    Was ich gerne hätte, wäre eine Browserlösung. Dazu soll ein kleiner Miniserver zusätzlich auf dem PSOC-Chip (wenn der Platz reicht) au dem Raspi laufen.
    Die Verbindung müsste dann so laufen
    Messschieber(PSoC-Chip)--UART-->ESP8277--WiFi_TCP-->HTTP_Server(PSoC_or_Raspi) <-- Browser
    Bis zum HTTP_Server bekomme ich es vlt. hin. Da gibt es einige Beispiele.


    Ich würde da garnicht auf einen Webserver zurückgreifen, sondern darauf hoffen das WebSocket Support in die Firmware integriert wird (evt. gibt es da ja schon Ansätze)


    Websockets sind im Prinzip einfache TCP Sockets, auf die mit modernen Browsern direkt über JavaScript zugegriffen werden kann.

  • @DS
    "... Fritzing-Komponente habe ich noch keine gebastelt ..."
    auch wieder wahr;-)


    Benny
    "... Websockets sind im Prinzip einfache TCP Sockets, auf die mit modernen Browsern direkt über JavaScript zugegriffen werden kann...."


    Genau, das wärs. Eigentlich macht nur Browser wirklich Sinn, dann muss ich keine Angst haben, wenn der nächste mit nem alten Telefon/Pad wackelt "ich hätts gern hier angezeigt..."


    Ich bleib am Ball und berichte, wenn ich was Lauffähiges habe.


    reraspi


  • Nach wie vor: ich bin begeistert :thumbs1:



    Ich bleib am Ball und berichte, wenn ich was Lauffähiges habe.


    ich werde euch löchern wenn ich meine bekomme, sollten eigentlich schon @work angekommen sein


    ich möchte "nur" :blush: NTP über wlan für die Uhrzeit bekommen weil hier DCF77 so unzuverlässig läuft.

    lasst die PIs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • endlich kommt der ESP8266 hier im board an.. ich hab drauf gewartet.. und warte gespannt auf projekte =)

  • ka.. bin doch nich so viel im board =)
    im chat wars schon vor einigen wochen thema =)



    edit:
    dreamshader mir fehlt sowohl die fachkompetenz als auch die zeit selbige zu erwerben.. ja, ich kupfer dann ab

    Edited once, last by demlak ().


  • Benny
    Könntest du mal bitte hier rein schauen und mir sagen, ob ich da richtig bin?
    http://www.esp8266.com/viewtopic.php?f=6&t=232
    danke reraspi


    Das Thema ist richtig, aber die Leute auf dem falschen Weg. Den Thread hatte ich auch schon gelesen.


    Für WebSocket müsste in den TCP Stack noch ein Handshake, UTF8 Support und Prüfsummen eingebaut werden. Ich denke das wird in Zukunft noch passieren, sobald mehr Leute das Teil in die Hände bekommen ;-)




    Alternativ geht es evt. über Umwege direkt auf die TCP Sockets zuzugreifen, dafür gab es mal eine Lösung die JavaScript und Flash nutzt, aber das ist wieder nichts für Android Endgeräte da der Flashsupport fehlt.

  • Hi,


    Ich habe den auch schon vor einiger Zeit auf Hackaday gesehen(Link zum Artikel). Hätte jetzt auch gedacht dass ihr den schon kennt.


    Hier die paar Artikel auf Hackaday die sich mit der Entwicklung beschäftigen. (Sicher einiges Interessantes dabei, Falls noch nicht bekannt.)


    New Chip Alert: The ESP8266 WiFi Module (It’s $5)
    http://hackaday.com/2014/08/26…sp8266-wifi-module-its-5/
    The Current State of ESP8266 Development
    http://hackaday.com/2014/09/06…e-of-esp8266-development/
    GCC for the ESP8266 WiFi Module
    http://hackaday.com/2014/10/02…-the-esp8266-wifi-module/
    An SDK for the ESP8266 WiFi Chip
    http://hackaday.com/2014/10/25…or-the-esp8266-wifi-chip/


    Eine Übersicht über wirklich alle Artikel zum ESP8266 auf Hackaday findet man hier: (Neben den oben erwähnten Artikeln findet man dort derzeit noch ca. 10 verschiedene Bastel Projekte welche den ESP einsetzen )
    Die bauen auch immer viele nützliche Links in ihre Artikel ein. Hackaday ist :thumbs1:


    Werde mir demnächst auch endlich mal einen oder zwei bestellen. Sehr gut gefällt mir die einfache konfiguration über die serielle Schnittstelle. :)
    Und besonders natürlich der Preis! :D


    Joh

    DON'T PANIC!

    Edited once, last by joh.raspi ().