Tutorial: ESP8266/ESP32 Addon (Wifi LED Controller UDP)

  • Tag Scilor,
    darf ich mal vorsichtig nach dem aktuellen Status fragen ?
    Ich bin schon ziemlich neugierig auf die neuen Features.

    Bitte nicht als drängeln verstehen, lass dir soviel zeit wie du brauchst... gut Ding will Weile..
    aber du weißt ja, hier sitzen ein paar todesmutige Tester....

    bisdahin
    Frohe Ostern...
    booStar

  • Tutorial: ESP8266/ESP32 Addon (Wifi LED Controller UDP)? Schau mal ob du hier fündig wirst!

  • Ich habe leider zur Zeit viel um die Ohren, vielleicht komme ich aber über die Feiertag mal zu was.

    Ebenso frohe Ostern.

  • Abend,

    bei mir funktionieren jetzt auch die LEDs mit dem Node. :D

    Bei der colorOrder ist mir etwas bein ein RGB Test aufgefallen. In den Configs für Hyperion habe ich brg eingetragen. In der Config.h habe ich auch brg eingetragen. Die Farben waren leider vertauscht.

    Ich musste in der Config.h rgb eintragen, damit es passt.


  • Abend,

    bei mir funktionieren jetzt auch die LEDs mit dem Node. :D

    Bei der colorOrder ist mir etwas bein ein RGB Test aufgefallen. In den Configs für Hyperion habe ich brg eingetragen. In der Config.h habe ich auch brg eingetragen. Die Farben waren leider vertauscht.

    Ich musste in der Config.h rgb eintragen, damit es passt.


    Ich würde es genau anders herum machen. Hyperion nicht ändern, nur im Node. Das hat den Vorteil, dass du in der App die richtigen Farben hast, wenn du dich direkt mit Node verbindest.

  • Nun hab ich auch meine Hyperion Leuchte welche vorher mit einem extra Pi2 + grabber lief auf dem ESP umgerüstet.
    Solange man nur die Übertragung über udp nutzt und auch die Farbe und Effekte über die 2. Hyperionconfig laufen lässt ist alles gut.
    Allerdings scheint die Steuerung über App noch etwas problematisch zu sein, da das ESP manchmal überhaupt nicht reagiert oder bei dem Versuch die Farbe zu wählen wärend der Pi über udp sendet ist komplett vorbei und man muss den Strom trennen.
    Ist das NodeMCU eigentlich empfindlich für oftes vom Strom trennen wie der Pi?


    Edit:
    Wie hoch ist eigentlich die Menge der übertragenen Daten?
    Und zurzeit verwende ich einen Pi3 (wlan) für Kodi und Hyperion welcher die Daten an den ESP sendet und an einen Pi1 (lan) welcher nochmal 3 Zonen über Pi Blaster steuert. Wäre es hier sinvoller wegen der Bandbreite Hyperion für den ESP auch auf den Pi1 laufen zu lassen?

    Auch wenn es jetzt nicht zum Thema gehört: ist es schädlich für einen Pi wenn der versucht Transistoren zu schalten obwohl das 12v Netzteil für die LEDs aus ist?

    Edited once, last by Kaahanu (March 29, 2016 at 5:18 PM).

  • Hi,
    ich hätte da auch mal eine Frage zur Leistung des NodeMucs,
    ich wollte den Node zum testen (nur Rainbow, ohne RPI) für einen 5m Streifen (300 APA102 ) nutzen
    bei 251 konfigurierten LEDs klappts mit dem Node nicht mehr, bei " static const uint8_t ledCount = 250;" ist noch alles in Ordnung.

    Ein Netzteilthema kann ich ausschließen, da es an einem Raspberry problemlos funktioniert... eine Idee?

    Edited once, last by BooStar (March 29, 2016 at 8:27 PM).

  • Hello again,

    also natürlich funktionieren 251 LEDs auch nicht mit hyperion + NodeMuc, das hatte ich gestern noch kurz gegen geprüft.
    Mir ist aber eben noch was aufgefallen, ich hatte die LEDs an D1 und D2 angegeschlossen, jetzt habe ich eben gesehen das der Node auch SPI-Ports hat:

    //edit:
    Hier sieht mans besser : http://www.cnx-software.com/wp-content/upl…v1.0_pinout.jpg

    Macht es evtl Sinn die LEDs lieber an D5 für Clock und Data an den MOSI (wenn ich ihn den finden sollte D7) vom Node zu hängen?
    Oder ist da egal ?

    Edited once, last by BooStar (March 30, 2016 at 12:07 PM).


  • 1) Während der ESP Daten über UDP bekommt, ist er gut ausgelastet. Daten über UDP überlagern bisher die App Steuerung gewollt. Abstürze hatte ich noch nicht erlebt.
    Könntest du ggbfs. den ESP an den Rechner stecken und die Serielle Ausgabe mitloggen (wegen Absturz)
    2) Den kannst du trennen wie du willst, beim PI liegt es nur an der Software (beim Schreiben auf der SD darf der Strom nicht getrennt werden). Der Pi lässt sich auch auf readonly konfigurieren.
    3) Das habe ich noch nicht gemessen, liegt aber auch an der eingestellten Datenrate von Hyperion
    4) Ich mache so viel wie möglich über Kabel. Das musst du selbst abschätzen.
    5) Nein, das ist unbedenklich.



    Hi,
    ich hätte da auch mal eine Frage zur Leistung des NodeMucs,
    ich wollte den Node zum testen (nur Rainbow, ohne RPI) für einen 5m Streifen (300 APA102 ) nutzen
    bei 251 konfigurierten LEDs klappts mit dem Node nicht mehr, bei " static const uint8_t ledCount = 250;" ist noch alles in Ordnung.

    Ein Netzteilthema kann ich ausschließen, da es an einem Raspberry problemlos funktioniert... eine Idee?


    Ich hätte jetzt 254 als Grenzwert erwartet, ändere mal den Datentyp auf unit16_t statt uint8_t.
    Der Rainbow Effekt wird dann gar nicht angezeigt?


    Hello again,

    also natürlich funktionieren 251 LEDs auch nicht mit hyperion + NodeMuc, das hatte ich gestern noch kurz gegen geprüft.
    Mir ist aber eben noch was aufgefallen, ich hatte die LEDs an D1 und D2 angegeschlossen, jetzt habe ich eben gesehen das der Node auch SPI-Ports hat:

    //edit:
    Hier sieht mans besser : http://www.cnx-software.com/wp-content/upl…v1.0_pinout.jpg

    Macht es evtl Sinn die LEDs lieber an D5 für Clock und Data an den MOSI (wenn ich ihn den finden sollte D7) vom Node zu hängen?
    Oder ist da egal ?


    SPI kann man verwenden, ist ggbfs. etwas performanter bei sehr vielen LEDs.

  • Hi..
    wie versprochen teste ichs dann mal...

    nach dem ich Die LinkedList - Library hinzugefügt hab, hängst jetzt hier:

  • Ich suche noch nach einer Möglichkeit die unterschiedlichen ESP/NodeMCU Boards per Compiler (#ifdef) zu Unterscheiden, damit ich auch die Pins etwas einschränken kann, die in der Konfiguration sichbar sind.

    Es fehlen auch noch die clockless LEDs und etwas JavaScript zum ausblenden des ein oder anderen Feldes, wenn es nicht benötigt wird.

    Und wie gesagt, Konfiguration wird noch nicht verwendet, da ich zunächst noch die Wifi-Host Funktionalität einbauen möchte (inkl. eines kleinem Fallback Mechanismus) um den ESP auch ohne valide Wifi-Zugangsdaten per Handy konfigurieren zu können.

  • Hi scilor,

    leider bin ich noch nicht zum testen gekommen, wahrscheinlich am Wochenende.
    Hört sich aber groß an was du vor hast ;)

    Leider kann ich dir da programmiertechnisch nicht weiterhelfen, ich kann mir nur vorstellen was ein #ifdef ist.

    Quote

    Es fehlen auch noch die clockless LEDs und etwas JavaScript zum ausblenden des ein oder anderen Feldes, wenn es nicht benötigt wird.


    Meinst du das packt der kleine Node noch alles? Nicht das die Abstürze perfomance bedingt sind.Dann ist mir persönlich eine einfache config.h lieber...

    Quote

    Und wie gesagt, Konfiguration wird noch nicht verwendet,


    Das heißt also die config wird noch nicht aus dem WebIf generiert, sondern nach wie vor aus der config.h gezogen, so zu sagen?

    Quote

    da ich zunächst noch die Wifi-Host Funktionalität einbauen möchte (inkl. eines kleinem Fallback Mechanismus) um den ESP auch ohne valide Wifi-Zugangsdaten per Handy konfigurieren zu können.


    Ja, also ich ab so was ja schon mal gesehen, den Sketch hatte ich oben schon mal gepostet.
    Das lief das so, das der ESP einen AccessPoint (z.B.: 192.168.4.1) aufmacht. Da kommt man dann auf die Konfigurationsseite um die Einstellungen vorzunehmen, wie z.B. WiFi, IP, LEDs usw...
    Leider war das ziemlich instabil, aber meinst du sowas mit Fallback ?.... wobei ein Fallback wohl am einfachsten wäre, wenn man einfach wieder den Sketch auf den ESP pumpt.

    BTW: Das WebIf zur Konfiguration bekommt man nur einmal zu sehen, oder hält der Node das WebIf dauerhaft offen? Dann bräuchte man ggf. eine Möglichkeit zur Authentifizierung.
    Nicht das mir die lieben W-Lan Gäste meine LED-Config zerschießen...

    Naja .. du siehst schon... da sind einige Ideen/Bedenken im Raum, aber bevor ich den aktuellen Sketch nicht getestet habe, sind das eher Vermutungen.

    Gruß BooStar

    Edited once, last by BooStar (April 1, 2016 at 12:14 PM).

  • Hey Scilor,

    das klingt klasse, vielen Dank für Deine Bemühungen!
    Vielleicht kannst Du etwas Code vom Projekt "The Light Clock" ausborgen. Code ist in deren GitHub Repo.

    Hier wird der ESP direkt nach dem Flashen der Firmware als Access Point eingerichtet. Verbindet man sich mit diesem neuem WLAN, kommt man zur Konfigurationsseite, wo man die Zugangsdaten des eigenen WLAN eingibt. Ab dann ist der ESP ganz normal im eigenen Netz erreichbar.

    BTW: So eine LightClock hängt seit 2 Wochen in meinem Wohnzimmer, sieht echt gut aus. Wenn man jetzt noch die Möglichkeit hätte, Dein NodeMCU Addon direkt in den Code mit hineinzubasteln, und dann z.B. per Browser zwischen Uhrmodus und Ambilightmodus umschalten könnte, das wäre einfach traumhaft... :rolleyes: :D

    Grüße,

    El Mare

    Edited once, last by El Mare (April 1, 2016 at 2:53 PM).

  • Servus,

    kann ich den Node irgendwie per Android App (Hyperion) ansteuern, wenn der Raspberry PI (Server) ausgeschaltet ist?

    Ich habe das schon mit der App getestet, aber es funktioniert nicht. Laut App bin ich mit den Node verbunden. Es kommt die Meldung "Server Synchronized".

    Danke

  • Servus,

    ich bringe die LEDs einfach nicht zum laufen. Mein Setup besteht bisher aus einem einzelnen RaspberryPi mit Hyperion (Aktuelles Image von Sigi28). Hinzu soll nun eine Deckenbeleuchtung mit 320 LEDs, angesteuert über den forwarder und dem NodeMCU. Das flashen des Node hat funktioniert, ich kann auch über den Browser darauf zugreifen.

    Probleme habe ich beim Starten der zweiten Hyperion-Instanz auf dem Raspberry. Das ist mir auch nach langer Recherche noch unklar. Ich habe eine zweite Config ( /etc/hyperion.config2.json ) angelegt und die Configs nach dem ersten Thread konfiguriert. Wie genau muss ich vorgehen, um diese nun korrekt zu starten? Wenn ich per " hyperiond /etc/hyperion.config2.json " die Instanz öffne, funktioniert es nicht.

    Die modifizierte Hyperionversion aus dem ersten Thread habe ich nicht verwendet. Ich nehme aber an, man braucht die in der aktuellen Hyperion Version nicht mehr, oder?

    Vielen Dank für eure Hilfe! Fehlende Infos reiche ich gerne nach.

Participate now!

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