ESP8266 Adapter mit On-Board Spannungsversorgung zum Einbau in Projekt

  • Zusätzlich zu meiner Idee eines Programmieradapters hatte joh.raspi die Idee, eine abgespeckte Version des Adapters für die ESP8266-07 und ESP8266-12(E) zu entwickeln.


    Die Vorgaben waren:


    - möglichst kompakter Aufbau, um den Adapter auf einem Breadboard nutzen zu können
    - dadurch minimalistische externe Beschaltung
    - Adaption des Rastermasses 2,0mm auf gängige 2,54mm
    - Zugriff auf alle GPIOs und auf die 3,3V Versorgungsspannung


    Heraus gekommen ist ein wirklich sehr kompakter Adapter, der lediglich die 3,3V Spannungsversorgung und zwei Taster zur Programmierung und Reset beinhaltet. Damit ist es nun möglich, über einen 3,3V USB-TTL-Adapter eine Programmierung vorzunehmen und den ESP8266 danach mitsamt dem Adapter in eine Schaltung zu integrieren. Über JP1 wird die 5V Spannung angelegt. An JP2 kann diese bei Bedarf für weitere Schaltungen "angezapft" werden.


    Wer ein Exemplar dieser Platine benötigt, darf sich gerne bei mir melden. Wegen der sehr überschaubaren Anzahl an Bauteilen, kann ich diese bei Bedarf auch gleich auflöten.


    joh.raspi hat aufbauend darauf noch eine weitere Version entwickelt. Fotos kann ich leider noch nicht hoch laden, da die Platinen noch nicht geliefert wurden.

  • Ja servus Neueinsteiger,
    ein nettes Teil hast Du da wieder gebastelt. Allerdings verstehe ich


    ...
    ... über einen 3,3V USB-TTL-Adapter eine Programmierung vorzunehmen und den ESP8266 danach mitsamt dem Adapter ...
    ...


    nicht so recht ... wie ist das gemeint?
    Dass man z.B. die rs232 eines RPi am Chip anschliesst?
    Für den Anschluss eines "normalen" Laptops benötigt man dann aber doch noch einen Pegelwandler, oder?


    Jedenfalls saubere Arbeit :thumbs1:


    -ds-

  • Vielen Dank für die Blumen.
    Die gewünschten Features waren so, wie oben geschrieben. Ein USB-TTL Adapter war nicht vorgesehen, da er die Platine unnötig vergrößert hätte und im Betrieb nicht benötigt wird. Ich würde folgendes machen:


    1) ESP mit Steckerleiste auf die Adapterplatine setzen (nicht löten, nur stecken)
    2) Diese auf den Programmierer setzen
    3) ESP nach dem Flashen herunternehmen und direkt auf die hier vorgestellte Platine löten
    4) Platine incl. der 3,3V Spannungsversorgung in entsprechendes Projekt einsetzen (durch das 2,54mm Raster sollte das relativ komfortabel möglich sein)


    Wer den Programmieradapter nicht hat (habe übrigens noch ein paar Platinen übrig), der muss mit einem Spannungswandler arbeiten und RX und TX entsprechend von 5V auf 3,3V bringen. Die Versorgungsspannung für den ESP ist ja auf der Rückseite angebracht und kann bei Bedarf angezapft werden. Oder aber, wie von Dir vorgschlagen, den RasPi nehmen. Denn ich nehme mal an, dass der wirklich nur 3,3V an RX und TX anliegen hat?!


    Da der ESP im Normalfall während des Betriebes nicht programmiert werden muss, reicht die Spannungsversorgung als externe Beschaltung aus. Selbst die beiden Taster sind ja nur optional.

  • Hi Leute,


    Wenn man mich schon zwei mal erwähnt muss ich fast auch noch kurz was dazu schreiben. :)


    Die von Neueinsteiger erwähnte Version von mir findet ihr hier.
    https://github.com/8n1/ESP8266-Breakout-Adapter
    Die Features sind die gleichen, hab eigentlich nur das Layout komplett überarbeitet und einen schönen Schaltplan gezeichnet.


    Ausserdem haben wir(eigentlich ist es Neueinsteiger aufgefallen) festgestellt das das verwendet ESP-12 Eagle Package nicht ganz der Realität entspricht. Die Pin-Löcher vom ESP-12(E) passten nicht exakt zum Package was das sockeln sehr schwer bis unmöglich gemacht hätte. Die Version mit dem überarbeiteten Package liegt im Verzeichnis "esp12e-package-test".


    Ich attach auch mal ein Bild vom Schaltplan und vom Layout (ohne Massefläche damit man die Leiterbahnen besser erkennen kann).
    https://raw.githubusercontent.…reakout%20Adapter_sch.png


    PS: sry für den recht großen Schaltplan, hatte mich etwas mit den Einstellungen vertan :^^:


    Schöne Grüße,
    Joh

  • Neueinsteiger & joh.raspi : Ich finde das Projekt super, habe aber kaum noch Zeit mich damit ausgiebig zu beschäftigen. Habt Ihr nicht Lust das als open source Projekt als Bausatz bei mir anzubieten? Ich schreibe extra keine PN, da ich denke, wenn open source, dann richtig. Ich würde die Produktion der Leiterplatte und die Zusammenstellung der Teile sicherstellen, Ihr könntet die Dokumentation machen. Ich könnte das auch irgendwie nachbauen und dann anbieten, finde, dass das aber nicht der richtige Weg wäre.

  • Hi,


    Die (meine :D ) Platine sieht doch gar nicht schlecht aus. So fürs erste mal. :)
    Besonders die Rückseite gefällt mir irgendwie richtig gut, auch wenn der Bestückungsdruck fehlt. Ich glaub den hab ich im falschen Layer platziert.
    Bestückungsdruck auf der Vorderseite ist auch nicht optimal, man kann aber dennoch alles lesen. Der Bestückungsdruck der Taster ist aber auch übrig.
    Die Qualität der Platine im allgemeinen ist zumindest auf den Fotos wirklich super. Genaueres wenn ich sie dann bekommen hab. :geek:


    [hr]
    raspiprojekt Klar, gerne klingt spannend. Und danke das du fragst.
    Wenn ich das Board genau inspiziert und getestet habe komme ich darauf zurück. Wird aber noch ein paar Tage dauern.
    Da ich das Projekt von Neueinsteiger übernommen habe wirst du dich mit mir alleine als Dokumentator zufrieden geben müssen. ;)


    Johannes

    DON'T PANIC!

    Edited once, last by joh.raspi ().

  • Bin gespannt was Deine Tests ergeben. Hast Du eine Webseite für das Projekt? Ich bekomme nächste Woche ein paar Espruino Pico, das ist ein ähnliches Projekt. Dort ist ein Javainterpreter drauf und man steckt das kleine Ding direkt in den USB-Port und kann es Programmieren. Danach läuft es selbstständig. Hat ein paar GPIOs und Schnittstellen, was mir da noch nicht ganz so gefällt ist der Preis von 30 Euro. Vielleicht können wir da gemeinsam (Neueinsteiger sollten wir dabei aber auch nicht vergessen) was an den Start bringen, was für den Bastler günstiger ist. Als Anregung kannst ja mal schauen: espruino.com

  • Neueinsteiger  
    :thumbs1: Platinen heute eingetroffen - Qualität absolut professionell (wirklich super!) - vielen Dank nochmal ! :danke_ATDE:


    Bis zum ersten Einsatz dauert's noch a bisserl - ich melde mich. :)


    Gruß natürlich auch an joh.raspi und ds,
    mmi

  • Ja hey alda frange :)
    noch kein Hitzeopfer geworden? Bei Euch ist es ja fast noch krasser als bei uns, oder?


    ...
    Gruß natürlich auch an joh.raspi und ds,
    ...


    na dann willkommen im Club ;)
    Ich hab' die Platinen gestern bekommen ... jetzt spiele ich mich dann erst mal mit den 8-pin Modulen. Aber dazu möchte ich mir das LUA-Zeugs auch noch anschauen (da hab' ich aktuell gar keinen Plan dazu).


    Grüsse aus dem tropischen Süden,
    -ds-

  • Hi


    Kenn ich :) Ist aber nicht mit dem ESP vergleichbar, wie ich finde. Das Teil hat ja nicht mal wlan :(
    Es gibt aber ein offizielles Adapterboard mit dem sich ein ESP nachrüsten lässt. http://www.espruino.com/ESP8266
    Ich glaub aber nicht das sich das Board gut verkaufen wird. Es gibt auch so gut wie keine Community da drum.
    Schau dir z.B. mal die google trends an:
    https://www.google.at/trends/e…ino&cmpt=q&tz=Etc%2FGMT-2
    Das das nur am Preis liegt glaub ich nicht.


    Aber um erhlich zu sein bin ich mir auch nicht so sicher ob mein Breakout Adapter in der jetztigen Form so ideal ist. Der verbaute Spannungswandler(LT1117) ist zum Beispiel alles andere als effizient. Ein halbwegs effizienter Batteriebetrieb ist nur möglich wenn man den On-Board Spannungswandlers durch einen externen ersetzt.


    Für die nächste Version ist deshalb ein effizienterer Spannungswandler geplant. Ich hätte dann auch vorgehabt den Shutdown Pin des Wandlers herauszuführen so dass man das Board wenn man es (z.B. vorübergehend) nicht braucht komplett abschalten kann.


    Sehr gut gefallen mir die Wanlder auf dem ESP Board("Thing") von Sparkfun und dem ("Huzzah") von Adafruit.
    https://www.sparkfun.com/products/13231
    https://www.adafruit.com/products/2471


    Das sind überhaupt zwei sehr interssante Boards!


    Sonst gibts da unter anderem noch das NodeMCU Devkit. Das hat zwar auch nur einen 1117 Spannungswandler verbaut ist aber was ich gesehen habe sonst am beliebtesten. Vermutlich weil es das einzige der 3 erwähnten ist das komplett gebrauchsfertig daherkommt. Also ganz ähnlich zu einem Arduino Board (zb. Nano).
    Bei den anderen braucht man zum (initialen) flashen und programmieren noch einen USB-Seriell Wandler,... oder einen Pi. :)


    Das schöne an meinem Board ist aber das nur das nötigste verbaut ist (ähnlich dem Huzzah), was es eben sehr flexibel einsatzbar macht.


    PS: Eine Webseite gibt es nicht. Ich wüsste auch nicht wozu, ist ja nur ein Breakout Board. Aber es gibt ja diesen Thread. :)
    Wenn ich das Board habe werde ich aber auch auf Github kurz was dazu schreiben.

    DON'T PANIC!

    Edited once, last by joh.raspi ().

  • Hallöle joh.raspi,


    ...
    ... Der verbaute Spannungswandler(LT1117) ist zum Beispiel alles andere als effizient.
    ...


    aber was willst Du alternativ nehmen? Ich suche derzeit auch nach einem entsprechendem Wandler (für meine aktuelle 18650er Akku-Geschichte), aber in dem Moment, in dem Du mehr als 100 mA ziehst, geht der dropout hoch und du brauchst eine entsprechende Eingangsspannung. Ich hatte einen Baustein von Maxim entdeckt ... aber der liegt preislich schon fast jenseits von Gut und Böse und ist auch nicht unbegrenzt belastbar.


    Die Platinen sind jedenfalls Klasse und ich kämpfe mich derzeit mit der Integration in die Arduino-IDE rum.
    Aber dazu mach' ich nachher mal einen neuen Thread auf.


    cheers,
    -ds-

  • Also soweit ich weiß hat z.B. Neueinsteiger diese Step-Up Module hier für sich entdeckt und nutzt die mit 2 eneloops in seinem Briefkastenprojekt
    Die sind was er geschrieben hat in diesem setup auch erstaunilch sparsam. Bin nicht ganz sicher aber er hatte was von 120µA im leerlauf erwähnt.


    Ich hab mir z.B. mal testweise einen LTC1763-3-3 besorgt. Das ist ein LDO mit 30µA quiescent current und 300mV dropout @500mA und einem Einganspannungsbereich von 20V eigentlich bis auf den recht hohen Preis echt genial. Auch Schutzfeatures wie eine Reverse Battery Protection bringt der mit. Den werd ich auch in meiner Wetterstation einsetzen.
    http://www.linear.com/product/LT1763


    Sonst haben sie auf dem "Huzzah" einen SPX3819 http://www.exar.com/power-mana…ators/linear-ldos/spx3819
    und auf dem "Thing" einen AP2112 http://www.diodes.com/datasheets/AP2112.pdf verbaut.


    Irgendwo hab ich auch noch ein paar andere gesehen und auf die Seite getan, muss ich mal raussuchen.


    Das abwägen fällt mir aber (mangels fachkenntis) sehr schwer. Ich werd aber demnächst mal eine kleine Tabelle mit Reglern zusammenstellen die mir bisher so untergekommen sind(besonders im zusammenspiel mit dem esp).


    Ich hab zwar auch schon Boards gesehen die einen Regler mit nur 300mA maximaler Strombelastbarkeit verbaut haben, find das aber Quatsch. 500mA sollte der Regler schon liefern können ohne einzubrechen.


    Falls sonst noch wer was interessantes entdeckt hat immer her damit :)

    DON'T PANIC!

  • Quote from dreamshader


    Ja hey alda frange
    noch kein Hitzeopfer geworden? Bei Euch ist es ja fast noch krasser als bei uns, oder?


    "frangen" halten überall die Rekorde! :lol:



    Der verbaute Spannungswandler(LT1117) ist zum Beispiel alles andere als effizient.


    Das hatten wir (vor gefühlten 10 Jahren ;) ) im anderen thread schon mal diskutiert. Problem war, daß der Spannungsregler auch bei sehr niedrigen Strömen von nur wenigen mA zuverlässig regeln sollte. Lt. Datenblatt war das bei keinem der damaligen Auswahl garantiert, aber noch sind bei weitem nicht alle Spannungsregler dieser Welt begutachtet. :)


    Für die nächste Version ist deshalb ein effizienterer Spannungswandler geplant.


    Viel Erfolg bei der Suche - ich lasse mich mal überraschen, was Deine bekannt gute Spürnase noch rausholt! :s


    Gruß, mmi

  • Hi,


    Die Platinen sind heute heil bei mir angekommen :)
    Hab sie natürlich gleich gründlich inspiziert und bin soweit mehr als begeistert.
    Die Qualität der Platinen ist 1A und es ist eigentlich alles ganz genau so geworden wie ich mir das vorgestellt hab. Wirklich super!


    Dann noch bevor ich den ersten fertig verlötet hab zur sicherheit noch alle Kontakte mit dem Multimeter durchgepiepst... PASST AUCH ALLES! :)


    Dann noch schnell eine kleine Schaltung auf dem Breadboard aufgebaut und folgendes getestet:
    * Spannungsregler liefert 3.3V (CHECK)
    * ESP Modul bootet wie gewünscht (CHECK)
    * Firmware über Taster flashen (CHECK)
    * Mit AP verbinden (CHECK)
    * LED über GPIO blinken lassen (CHECK)


    Hat also bisher alles auf anhieb geklappt. :) Einfach super! :thumbs1:
    Weitere Tests und ein paar Bilder folgen morgen.


    [hr]
    EDIT: So, hier mal die ersten Bilder: (Leider schlechte quali darum vorerst nicht vergrößerbar)
    [Blocked Image: http://i.imgur.com/9VqCqtyl.jpg] [Blocked Image: http://i.imgur.com/3yzftaIl.jpg]
    [Blocked Image: http://i.imgur.com/avqsGlol.jpg]
    [hr]


    An dieser Stelle nochmal ein dickes fettes DANKESCHÖN an Neueinsteiger für alles. Vielen Dank! :bravo2:


    Johannes

    DON'T PANIC!

    Edited once, last by joh.raspi ().

  • Hi Leute,


    die nächsten Breakout Adapter sind fertig (gezeichnet). :)


    Bezüglich LDO hab ich mich jetzt einerseits für den AS1363 und andererseits für den SP3819 entschieden.
    Da die beiden aber nicht Pinkompatibel sind hab ich jetzt einfach zwei verschiedene Varianten des Adapters gemacht,
    bis auf den LDO sind aber beide genau gleich.
    Der SPX ist wie ich finde besonders wegen der hohen Eingangsspannung interessant, vom AS erhoff ich mir gerade
    im Lipo-betrieb eine bessere Ausnutzung der Akkus.
    Interessant wird auch wie gut sich die beiden Varianten mit 3x AA im direktvergleich schlagen werden.


    Die wichtigsten unterschiede der LDOs:
    LDO - Maximale Eingangspannung, Eigenverbrauch, Dropout Spannung, Preis
    * AS1363 - 5.5V, 40µA, 150mV(-320mV), 1,40€ (nur bei größeren Händlern ehältlich)
    * SPX3819 - 16V, 90µA, 340mV(-550mV), 0.3€ (gibts sehr günstig im 10er Pack bei ebay)


    Beim ESP Modul bin ich jetzt wieder vom ESP-12E auf den ESP-12 umgestiegen, zumindest was den eagle footprint angeht. Es sollte
    zwar auch noch möglich sein einen ESP-12E zu verbauen, auf die zusätzliche Leiste hab ich aber diesmal verzichtet.
    Stattdessen gibt es jetzt einen UART Progammierheader über den auch Reset und GPIO 0 abgreifbar sind sowie eine zusätzliche Pinleiste die ich einfach mal "Sensor Header" genannt habe und die für alles mögliche genutzt werden kann.


    Ausserdem gibt es noch ein paar weitere Features die ich ganz praktisch finde und es in meinen Augen zu einem besseren
    bzw. flexibler einsetzbarem "Huzzah" machen, zu dem es recht ähnlich ist.


    Besonders der fest verbaute Pullup für den LDO Enable Pin auf dem Huzzah ist für (meine) "Ultra Low (Standby) Power" ESP Projekte eher störend.
    Denn wenn man das Board über den Enable Pin um Strom zu sparen abschalten möchte(EN auf LOW) kämpft man immer gegen
    den 10K Pullup und das sind bei 4.2V immerhin 0.42mA.


    Hier mal alle Features des neuen Adapters:
    * Reset und Flash Taster
    * UART Programmier Header (Mit Reset und GPIO0)
    * DeepSleep Lötjumper - Verbindet Pin8 mit Pin32 und ermöglicht das automatische aufwachen aus dem Tiefschlaf
    * "Sensor Header" - Für z.B. 1x I2C (mit optionalen Pullups) oder einem DS18B20 oder... (Pinout: 3V3, GPIO12, GPIO14, GND)
    * On-board LED - Hängt wahlweise direkt am LDO Ausgang oder am GPIO13 (per Lötbrücke einstellbar)
    * Enable Pin vom LDO herausgeführt - Wahlweise mit Pullup oder Pulldown Widerstand beschaltbar
    * 2x Befestigungslöcher (2.0mm)
    * Bis auf den Sensor Header Lochraster und Breadboardkompatibel


    Eagle files sind angehängt werden aber auch gleich mal hier verfügbar sein:
    https://github.com/8n1/ESP8266-Breakout-Adapter


    Vom SPX Adapter hab ich neben dem Schaltplan auch noch zwei oshpark Renderings angehängt.
    Ich had die dort (oshpark) auch gleich mal "geteilt":
    AS Adapter: https://oshpark.com/shared_projects/2IkxaFPm
    SPX Adapter: https://oshpark.com/shared_projects/jsl8ZcFp


    Die fertigung der Platinen hat für mich aber netterweise wieder Neueinsteiger übernommen.
    Da ich die Platinen aber noch nicht bekommen habe, was noch etwas dauern kann,
    kann ich nicht versprechen dass sie elektrisch in Ordnung sind!
    Bin was das betrifft aber sehr zuversichtlich. ;)



    Falls wer Fragen hat immer her damit.


    Joh

  • Sehr geile Platine :thumbs1:


    Was mich allerdings ein wenig verwirrt sind die Nummerierungen der Löcher/Pins (SPX):
    Oben rechts Tx und Rx sind noch klar, aber danach geht ESP-Pin#5 auf rechts daneben Pin#1... Wieso heißt der Breadboard-Pin nicht auch 5 ?
    Auf der linken Seite ist das leider auch verwirrend: Breadboard-Pin#5 geht auf ESP-Pin#16 und unten auf 'Sensor-Header'-Pin#14 :-/ Ebenfalls links geht Breadboard-Pin#6 auf ESP-Pin#14 und dann auf 'Sensor-Header'-Pin#12


    Was hast du dir dabei gedacht? Gibts da ne Logik? :X


    Und was für Werte müssen all die Widerstände usw haben? Müssen es überhaupt so viele sein?
    Wenn ich die Partlist exportiere wird mir R1 und R2 mit 0 ohm angezeigt

  • Hi,


    Thx ;)


    Die "innere" Nummerierung ist die GPIO Bezeichnung wie sie auch auf dem Modul angegeben ist:
    http://img.banggood.com/images…SKU188843/SKU188843-5.jpg
    Die äussere Bezeichnung entspricht dem NodeMCU I/O Index:
    https://github.com/nodemcu/nod…demcu_api_en#new_gpio_map


    Achte einfach nicht darauf wo die scheinbar hingehen sondern schau was danebene steht. :)
    Ich finde das eigentlich ganz ok so. Oder ist das wirklich so verwirrend? :^^:


    Alle widerstände brauchst du nicht, hängt aber stark vom Anwendgsfall an.
    Statt den beiden 0 Ohm Widerständen könnte man auch eine Lötbrücke setzen.
    Wenn du die beiden Pins aber aus irgendeinem Grund brauchst könntest du die auch mit einem 4.7K-10K Widerstand bestücken.



    Edit: Stell mal den Schaltplan und das Layout nebeneinander, klick dann im Schaltplan auf "show"(oder tipp es ein) und wähle einen Pin bzw. ein Signal aus. Dann siehst du sofort wie das verläuft.
    Sieht bei einem klick auf z.b. GPIO14 dann wie im angehängten Screenshot aus. So prüf ich das ganze auch immer.
    *Einen kleinen Schönheitsfehler im Schaltplan hab ich aber noch gefunden: die Pin Header für 3V3 und GND sind beim Sensor Header vertauscht.*