ESP8266 vs ESP32

  • Which ESP is the right choice, what are the differences.

    Welcher ESP ist die richtige Wahl, wo liegen die Unterschiede.

    However, it should be noted that a maximum of 490 LEDs can be addressed with both of them via UDP (Hyperion, EnigmaLight).

    With more than 490 LEDs you have to use another protocol (tpm2net or DMX E1.31) or split it between several ESPs.


    ESP32 is also available with Ethernet interface, ESP32-Ethernet-Kit V1.2, Olimex ESP32-POE.

    ESP32 WLED Sound Reactive with FFT (Fast Fourier Transform) effects.

    By using FFT, more effects are available, which also achieve a better effect.


    So there is one thing that speaks for the ESP32. ;)



    Zu beachten ist aber bei beiden das über UDP (Hyperion, EnigmaLight) max. 490 LED angesprochen werden können.

    Bei mehr als 490 LED muss man ein andere Protocol (tpm2net oder DMX E1.31) verwenden oder auf mehrere ESP aufteilen.


    ESP32 gibt es auch mit Ethernet Schnittstelle, ESP32-Ethernet-Kit V1.2, Olimex ESP32-POE.

    ESP32 WLED Sound Reactive mit FFT (Fast Fourier-Transformation) Effekten.

    Durch die Nutzung von FFT stehen mehr Effekte zur Verfügung, die auch eine bessere Wirkung erzielen.


    Es spricht also einges für den ESP32. ;)


    regards pclin

    gruß pclin

    Dreambox ONE / TWO

    dreamOS OE2.6

    Amlogic S922X - 53.000 DMIPS - 2 GB RAM - 16 GB Flash - Twin-DVB-S2X Tuner - HDR10 - HLG
    -
    AudioDSP: miniDSP 2x4HD - Lautsprecher ELAC
    LG OLED65BX9LB (PicCap, hyperion.NG webOS)

    FireTV 4K max

    -
    hyperion (classic) & Plugin HyperionControl | hyperion-ng 2.0.14-beta.1 (dreamOS)
    Hyperion-ng (Debian bullseye)
    -
    6 x Wemos D1 mini - WLED - SK6812 RGBW-NW 60 LEDs/m
    5-Port HDMI Switch - FeinTech VSP01201 - Grabber Macrosilicon


    snoozer_likelinux_manvtkns.gif


    Ambilight for ever

    Edited once, last by pclin ().

  • pclin

    Changed the title of the thread from “ESP8266 vs. ESP32” to “ESP8266 vs ESP32”.
  • Einstellungen WLED, Verschaltung LED Stripe (deutsch)

    Settings WLED, interconnection LED Stripe (english Post #3)


    ESP mit WLED Software ist eine optimale Lösung für die LED Ansteuerung.

    WLED bietet sehr viele Optionen , Farben, Effekte, Steuerung und kann von verschiedenen Geräten (RPI, PC, Dreambox usw.) und Software (Hyperion, EnigmaLight, LEDfx usw.) angesteuert werden.


    Bei den aktuellen WLED Versionen gibt es jetzt Versionen für ESP8266 und ESP32.

    Den Stripe TYP und PIN kann man jetzt in der WLED WebUI einstellen (siehe Screenshot)!


    Fertige Release Binärdatei gibt es für alle unterstützten LED Stripes. Nur wenn man keine .bin für seine Stripes dort findet, oder etwas spezielles möchte, muss man den Sketch selbst Kompilieren.


    Flashen geht für mich am besten mit esptool.py es gibt auch noch einige andere Möglichkeiten, die sind im WLED-Wiki beschrieben.

    Wer lieber ein GUI basiertes flashen mag kann den NodeMCU PyFlasher verwenden.


    Nach dem Flashen ist der ESP im AP Modus.

    Man kann sich also per Wlan direkt mit ihm verbinden.

    Das geht per PC (Browser) oder APP.


    passwort: wled1234


    Als erstes ESP ins eigene Wlan bringen.

    SSID und Wlan Passwort eingeben.

    Ich lasse sonst alles auf DHCP, Optional Statische Einstellung.


    Nachdem man das gemacht hat speichern.

    Hat man DHCP gewählt geht man dann in seinen Router und schaut nach welche IP Vergeben wurde.

    Ich aktiviere dann im Router 'Diesem Netzwerkgerät immer die gleiche IPv4-Adresse zuweisen.'

    Jetzt kann man also den WLED immer unter der IP Adresse erreichen, alternativ mit dem Hostnamen.


    Als erstes sollte man jetzt, am besten im Browser, die IP Adresse oder Hostname eingeben.

    In 'LED Preferences' macht man jetzt die Grundeinstellungen.

    Hardware setup

    Stripe Typ, GPIO Color Order und Anzahl (Lenght:) eingeben.


    Achtung!

    Default steht 'Enable automatic brightness limiter:' auf Ein und ein Wert von 850mA, mehr kann ein ESP nicht liefern!


    'LED voltage (Max. current for a single LED):'

    Hier gibt es Voreinstellungen, am besten ermittelt man aber den Wert aus den Datasheets des Verwendeten LED Typen.

    Ich werde versuchen hier eine Liste zu erstellen. Für die Werte übernehmme ich keine Verantwortung, und Garantie das Sie stimmen, ich habe die aus Datasheets, die sind aber nicht immer aussagekräftig und es gibt teils auch verschiedene Versionen, oder es ist für mich nicht zu 100% ersichtlich was gemeint ist.


    APA102 25 mA

    LPD8806 20mA

    SK6812 49 mA

    WS2801 50 mA

    WS2812b 35mA


    Hat man den Wert eingestellt berechnet WLED den max. Wert.

    Unter 'Recommended power supply for brightest white:' kann man diesen ablesen.

    Am besten lässt man 'Enable automatic brightness limiter:' auf Ein und stellt bei 'Maximum Current:' den von WLED ermittelten Wert in mA ein.


    Achtung!

    der Wert darf nie größer als die Angaben von eurem Netzteil sein. Am besten bleibt man leicht drunter.

    Das Netzteil sollte möglichst nicht mehr als 5 V liefern, am besten sind einstellbare Netzteile!

    Ab 5,2 Volt kann es Probleme mit Blitzen der LED's geben, und wenn man den ESP auch mit dem Strom des Netzteils betreibt kann es zu 'merkwürdigen ' Effekten kommen.


    Beispiel: Netzteil hat 5V 10 Ampere dann stellt man max. 9900 mA ein.


    Bei einem RGBW Stripe (SK6812) schaltet man noch 'LEDs are 4-channel type (RGBW):' Ein

    Jetzt kommt ein neuer Eintrag, 'Auto-calculate white channel from RGB:'

    Wenn die LED's später eingeschaltet sind kann man dann schauen was einem am besten gefällt bzw.passt.

    Ich verwende 'Dual'

    Damit hat man die wichtigsten Einstellungen gemacht und geht auf Save.


    Weitere Einstellungen kann man dann noch machen wenn die LED's angeschlossen sind.

    ESP Stromlos machen. Bis jetzt hatte ich nur den USB Anschluss am ESP zur Stromversorgung.

    Jetzt werden die LED's am ESP angeschlossen.


    PIN Belegung (Default)

    ESP8266

    D3 = CLK

    D4 = DATA


    ESP32

    G2 = Data (GPIO2)


    GND = GND vom Netzteil der Stripes

    VIN = 5V vom Netzteil der Stripes


    Im Anhang seht ihr die Belegung für unterschiedliche ESP's und könnt die GPIO die ihr einstellen möchtet ablesen.


    Bei Verwendung des IR Moduls kann man GPIO 0 nicht verwenden!

    'IR GPIO' 0 IR Modus eingeschaltet, -1 deaktiviert


    Verwendet man weiterhin USB (Stromversorgung, Steuerung) VIN nicht belegen!

    Gemeinsamer Ground muss immer verwendet werden!


    Steuerung per USB geht Default mit Baud rate: 115200 das ist für die meisten LED Stripes nicht ausreichend, bei einigen Boards geht auch eine höhere Baudrate, das muss man selber austesten. Über Wlan hat man da praktisch keine Einschränkungen.

    Am besten schaut man wie ins Data Sheet der Stripes für den optimalen Wert, zu wenig ist genauso schlecht wie zu viel.

    Für SK6812 RGBW ist 800Khz (800.000) der Optimale Wert.


    Jetzt kann man das Netzteil der Stripes einschalten bzw. Stecker einstecken.

    Hat man alles richtig gemacht werden die LED's sofort leuchten.


    Jetzt überprüft man wieder im Browser/App die Farbreihenfolge und Richtung.

    Man geht in 'Colors' oder 'PC Mode' wählt Rot, Grün, Blau die LED's sollten in der gewählten Farbe leuchten.

    Wenn nicht geht man wider in 'LED Preferences' und stellt bei 'Color order:' den ermittelten Wert ein.

    War Rot OK und Grün und Blau vertauscht wählt man dann RBG


    Muss man die Laufrichtung ändern stellt man dann bei 'Reverse LED order (rotate 180):' ein

    Mit 'Save' speichern.


    Wenn man die Farbreihenfolge und Richtung in WLED einstellt kann in EnigmaLight, Hyperion, LEDfx oder welches Program auch immer ihr verwendet alles auf Default eingestellt bleiben und ihr habt immer die richtigen Einstellungen, das macht vieles einfacher.


    Bei 'Time & Macros' schalte ich 'Get time from NTP server:' ein, und stelle die 'Time zone:' so das die Uhrzeit stimmt ein.


    Jetzt kann man noch andere Einstellungen vornehmen (Optional)

    Schaut euch später einfach mal alle anderen Möglichkeiten an.


    Enigmalight/Hyperion einstellen und starten.

    Die LED's solllten jetzt passend zum TV leuchten.


    In WLED LED Preferences gibt den Punkt Transitions, dort für Ambilight alle Haken entfernen, für Effekte ist Transitions nicht schlecht.


    Über das ? oben Links kommt ihr auch immer zu Erklärungen, wenn auch auf english.


    WLED-Wiki

    Das deutsche Wiki gibt es hier, ist aber nicht mehr aktuell.


    gruß pclin

  • Settings WLED, wiring LED Stripe (english)


    The current WLED versions now have versions for ESP8266 and ESP32.

    The Stripe TYPE and PIN can now be set in the WLED WebUI (see screenshot)!


    Ready release binary files are available for all supported LED stripes. Only if you can't find a .bin for your stripes there, or if you want something special, you have to compile the sketch yourself.


    For me, flashing works best with esptool.py, there are also a few other options that are described in the WLED Wiki.

    If you prefer to flash a GUI based flash, you can use the NodeMCU PyFlasher.


    After flashing, the ESP is in AP mode.

    So you can connect directly to it via WiFi.

    This can be done via PC (browser) or APP.


    password: wled1234


    First bring ESP into your own WiFi.

    Enter SSID and WiFi password.

    I leave everything else on DHCP, optional static setting.


    After doing that, save.


    If you have selected DHCP, go into your router and look for which IP has been assigned.

    Then activate 'Always assign the same IPv4 address to this network device' in the router.

    So now you can always reach the WLED under the IP address, alternatively with the hostname.


    The first thing you should do now, preferably in the browser, is enter the IP address or hostname.


    In 'LED Preferences' you now make the basic settings.


    Hardware setup


    Enter stripe type, GPIO color order and number (Length:).


    Caution!

    The default is 'Enable automatic brightness limiter:' on and a value of 850mA, that's all an ESP can deliver!


    'LED voltage (Max. current for a single LED):'

    There are default settings here, but it is best to determine the value from the data sheets for the LED types used.


    I'll try to make a list here. I take no responsibility for the values, and I guarantee that they are correct, I have them from data sheets, but they are not always meaningful and there are sometimes different versions, or it is not 100% clear to me what is meant.


    APA102 25 mA

    LPD8806 20mA

    SK6812 49 mA

    WS2801 50 mA

    WS2812b 35mA


    Once the value has been set, WLED calculates the maximum value.

    This can be read under 'Recommended power supply for brightest white:'.

    It is best to leave 'Enable automatic brightness limiter:' on and set the value determined by WLED in mA for 'Maximum Current:'.


    Caution!

    the value must never be greater than the specifications of your power supply. It's best to stay slightly below.

    If possible, the power pack should not deliver more than 5 V, adjustable power packs are best!

    From 5.2 volts there can be problems with the flashing of the LEDs, and if you also operate the ESP with the current from the power pack, 'strange' effects can occur.


    Example: power pack has 5V 10 amps, then set max. 9900 mA.


    With an RGBW stripe (SK6812) you also switch on 'LEDs are 4-channel type (RGBW):'

    Now there is a new entry, 'Auto-calculate white channel from RGB:'

    When the LEDs are switched on later, you can then see what you like best or what suits you best.

    I use 'Dual'


    So you have made the most important settings and go to Save.


    You can make further settings when the LEDs are connected.


    De-energize ESP. Until now I only had the USB connection on the ESP for power supply.

    Now the LEDs are connected to the ESP.


    PIN assignment (default)


    ESP8266

    D3 = CLK

    D4 = DATA


    ESP32

    G2 = Data (GPIO2)


    GND = GND from the Stripes power supply

    VIN = 5V from the Stripes power supply


    In Post #2 you can see the assignment for different ESP's and you can read the GPIO that you want to set.


    When using the IR module, GPIO 0 cannot be used!


    If you continue to use USB (power supply, control) do not use VIN!


    Common ground must always be used!


    Control via USB works with the default baudrate: 115200, which is not sufficient for most LED strips. A higher baudrate is also possible with some boards, you have to test it yourself. There are practically no restrictions on WiFi.


    The best thing to do is look at the Stripes data sheet for the optimal value, too little is just as bad as too much.

    For SK6812 RGBW, 800Khz (800,000) is the optimal value.


    Now you can switch on the power supply of the Stripes or plug in the plug.

    If you have done everything right, the LEDs will light up immediately.


    Now check the color sequence and direction again in the browser/app.

    Go to 'Colors' or 'PC Mode' select Red, Green, Blue the LED's should light up in the chosen colour.

    If not, go back to 'LED Preferences' and set the determined value for 'Color order:'.

    If red was OK and green and blue were swapped, then select RBG


    If you have to change the running direction, set 'Reverse LED order (rotate 180):'

    Save with 'Save'.


    If you set the color order and direction in WLED you can leave everything on default in EnigmaLight, Hyperion, LEDfx or whatever program you use and you always have the right settings, that makes a lot of things easier.


    Under 'Time & Macros' I turn on 'Get time from NTP server:' and set the 'Time zone:' so that the time is correct.


    Now you can make other settings (optional)

    Check out all the other options later.


    Set up and start Enigmalight/Hyperion.

    The LEDs should now light up to match the TV.


    In WLED LED Preferences there is a Transitions item, remove all the check marks there for Ambilight, Transitions is not bad for effects.


    About the ? You always get explanations at the top left, albeit in English.


    WLED Wiki

    The German wiki is available here, but is no longer up-to-date.


    regards pclin

    Dreambox ONE / TWO

    dreamOS OE2.6

    Amlogic S922X - 53.000 DMIPS - 2 GB RAM - 16 GB Flash - Twin-DVB-S2X Tuner - HDR10 - HLG
    -
    AudioDSP: miniDSP 2x4HD - Lautsprecher ELAC
    LG OLED65BX9LB (PicCap, hyperion.NG webOS)

    FireTV 4K max

    -
    hyperion (classic) & Plugin HyperionControl | hyperion-ng 2.0.14-beta.1 (dreamOS)
    Hyperion-ng (Debian bullseye)
    -
    6 x Wemos D1 mini - WLED - SK6812 RGBW-NW 60 LEDs/m
    5-Port HDMI Switch - FeinTech VSP01201 - Grabber Macrosilicon


    snoozer_likelinux_manvtkns.gif


    Ambilight for ever

    Edited once, last by pclin ().

  • Frage zur Installation der LEDs an den ESP


    Verstehe ich das richtig, man kann den ( ich besitze einen ESB 8266 ) per USB Netzteil ( altes Handynetzteil ) betreiben und es reicht bei den APA102 einfach den D3 und D4 mit den LEDs zu verbinden? (und den Strom seperat über ein Netzteil zuzuführen sofern man den Ground verbindet?


    Auf deinem Screenshoot des ESP 8266 hast du S3 und S2 markiert,

    Im Text steht D3 und D4 ( kann es sein, dass Du dich da mit den Seiten vertan hast, weil das Foto des ESP 8266 von UNTEN zeigt )

    Edited once, last by oneone: Ein Beitrag von oneone mit diesem Beitrag zusammengefügt. ().

  • Ja verstehst du richtig.


    In WLED kann man GPIO und Stripe-Typ konfigurieren, die Bilder sind noch aus der Zeit als es fest vorgegeben war.

    GPIO sind aber auch abhängig von den Einstellugen für Button und IR.


    gruß pclin

  • Hab alles so gemacht wie beschrieben. ESP flashen alles gut. Network steht.

    Die Gpio waren Default auf Data GPIO2 eingestellt das habe ich auf GPIO 4 geändert und den GPIO 3 für Clock. Das mit den Leds verbunden und für die APA102 die 35ma eingestellt. Anzahl ist 300.


    Aber wenn ich die Leds anstecke eist einfach nur ein teilweise verwaschener Weißton zu sehen. Eine Farbänderung über die Gui wird nicht umgesetzt.


    Was sein kann ist, dass ich keine APA102 habe, da bin ich mir nicht mehr sicher ( ist ne weile her ) aber egal was ich einstelle an LEDS das Bild bleibt weiss, also die Leds. Die Verbindung zu hyperion hab ich unter diesen Umständen erst garnicht eingerichtet.


    Was läuft da falsch

  • Wieso GPIO 3 und GPIO 4 ?

    Schau dir das Bild nochmal an und vergleiche.

    Üblich wäre eigentlich GPIO 0 und GPIO 2

    D3 - GPIO 0 - Clock

    D4 - GPIO 2 - Data


    Bist du dir sicher das du die Kabel an den richtigen Pins angeschlossen hast?


    gruß pclin

    Dreambox ONE / TWO

    dreamOS OE2.6

    Amlogic S922X - 53.000 DMIPS - 2 GB RAM - 16 GB Flash - Twin-DVB-S2X Tuner - HDR10 - HLG
    -
    AudioDSP: miniDSP 2x4HD - Lautsprecher ELAC
    LG OLED65BX9LB (PicCap, hyperion.NG webOS)

    FireTV 4K max

    -
    hyperion (classic) & Plugin HyperionControl | hyperion-ng 2.0.14-beta.1 (dreamOS)
    Hyperion-ng (Debian bullseye)
    -
    6 x Wemos D1 mini - WLED - SK6812 RGBW-NW 60 LEDs/m
    5-Port HDMI Switch - FeinTech VSP01201 - Grabber Macrosilicon


    snoozer_likelinux_manvtkns.gif


    Ambilight for ever

  • Okay Fehler Nummer eins ich habe die Beschriftung D2,D3 als GPIO 2 und GPIO3 gelesen.

    Richtig formuliert wäre als das Data GPIO 2 der Beschriftete D4 ist.

    Auf den Apas ist Data DI, was das grüne Kabel ist.

    Das Blaue ist Clock, das müßte dann auf GPIO NULL, das wäre dann D3.

    Wenn ich das ins Wled eingeben will sagt er mir PIN Conflict between L10/BTQ


    hier die Fotos um Missverständnissen vorzubeugen


    Ich habe jetzt schon mal vorsorglich nen ESP32 bestellt. Die Dinger kosten ja nix und da das blaue Licht des ESP nicht imme leuchtet obwohl ich ihn via Netzwerk erreiche, ist mir das Ding nicht ganz geheuer.

    Da Du pclin in einem anderen threat geschrieben hast, der ESP32 wäre leistungsfähiger und ich immerhin 5 m APA102 an einem LG77CX laufen habe, denke ich das dieser vielleicht auch dafür besser geeignet ist.

    Wäre trotzdem sschön du könntest nochmals drüber schauen und mir sagen wo zur Hölle der Fehler liegt....??

    ( Vorausgesetzt der ESP8266 ist NICHT defekt )

  • Wenn du Bitton oder IR aktiviert hast musst du gegeben falls die GPIO ändern.

    Wenn du keine Buttons oder IR verwendest dann wie im Screenshot einstellen.

    Grundsätzlich kannst du das nach belieben einstellen, es darf nur nichts doppelt belegt sein.

    -1 sagt der PIN wird nicht verwendet.


    gruß pclin

  • Ich habe nichts weiter in Verwendung und an diesen Einstellungen der Buttons zum Beispiel alles auf Default gelassen.

    Sollte das Default kein -1 gesetzt sein, dann werde ich das heute Abend korrigieren.

    Wenn das aber vorgegeben ist, hab ich keine Ahnung wo ich zu Dumm bin zwei Kabel aufzustecken???

    ich sehe aber gerade beim Vergleich der beiden Screenshoot ( Deinem und Meinem ) das die Length von 300 nicht im Setup steht, sondern 1. Das würde auch so manches erklären....

    Danke für Deine schnelle Hilfe.

    Setz mich heute Abend gleich hin, wenn ich zu Hause bin

  • Wenn Buttons oder IR verwendet werden wird meistens

    GPIO 13 (D7) für DATA und GPIO 14 (D5) für CLOCK verwendet.


    Sobald ein Zahl in Rot angezeigt wird ist das ein Zeichen das der GPIO anderweitig konfiguriert ist.


    Ja bei Length musst du noch die Anzahl der LED eintragen, daran wird es aber nicht liegen du musst 2 GPIO gleich belegt haben sonst würde kein Rot angezeigt.


    Insgesamt kann man mit ESP8266 sogar max. 3 Stripes mit unterschiedlichen GPIO's betreiben, es geht sogar unterschiedliche Stripe Typen, LED Anzahl und Farbreihenfolgen.


    gruß pclin

  • Danke für die Ausführliche Erläuterung.

    Wie gesagt ich habe bewußt NICHTS weiter eingeschaltet, weil ich auch nichts verwenden möchte außer Ambilight über ESP.

    Aber wenn Default wie bei deinem Screenshoot IR GPIO gesetzt ist, dann wird genau das der Fehler bei mir sein.

    Ich berichte wenn ich das heute Abend nochmal alles sauber überprüft habe.

  • Hi,


    versteh ich das jetzt richtig das der raspberry pi die Daten per Wlan an den Wemos schickt?


    Bedeutet auf dem Pi läuft Hyperion mit dem Grabber und schickt die Ansteuerung der LEDS über Wlan an WLED? Dann könnte ich ja am Denon meinen 2. HDMI Out nutzen ohne einen Splitter hinter dem Fernseher zu machen

    • Official Post

    Verstehst du richtig Hyperion sendet die Daten zum ESP (WLED) per LAN (ESP32 gibt es auch mit LAN Buchse) oder Wlan.

    Beim RPI kannst du LAN oder Wlan nutzen.


    Verwendest du den Grabber auf dem PI?

    Weil sonst würde es ja ein externer Grabber sein der die Daten über z.B. USB an den PI auf dem Hyperion läuft sendet.

    Da du vom 2. HDMI Out schreibst gehe ich von einem externen HDMI zu USB Grabber aus.


    Wenn du ohne Splitter arbeiten möchtest und den 2. HDMI am Denon nutzen möchtest geht das hat aber Einschränkungen.

    Ob die Einschränkungen für dich relevant sind kann man erst sagen wenn du uns mitteilst was du alles nutzt, 4K, HDCP, HDR usw.


    gruß pclin

  • Hi,


    mein pi ist einzig und allein für Hyperion also nur zum Grabben mit diesem Grabber https://www.berrybase.de/usb-hdmi-video-grabber-1080p


    Gibt es da eine Latenz bei der Übertragung?


    Ich hätte noch ein Feintech VSP01202 hier, werde dann wohl einfach mal beides ausprobieren.


    Zuspieler sind eigentlich alle 4k tauglich, HDR wäre nett muss aber nicht unbedingt sein


    Gruß

    • Official Post

    Auf dem PI läuft Hyperion das verarbeitet die Bilder die dein Grabber liefert. ;)


    Der Berrybase Grabber kann 4K am Eingang am 2 Hdmi Out vom Denon funktioniert das ganz gut.

    Lies aber auch mal hier im Thread, da nutzt ein User auch den Grabber und verwendet den 2 HDMI Ausgang.


    gruß pclin

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!