HOWTO: Günstige W-Lan RGB Controller Lösung (<35€) - Magic-UFO Wifi controller LD382

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • freeride24
    Smart Home'r
    • 28.08.2015
    • 32

    HOWTO: Günstige W-Lan RGB Controller Lösung (<35€) - Magic-UFO Wifi controller LD382

    Sicherung da offizielles Loxone Froum geschlossen wird!
    Basierend auf: http://forum.loxone.com/dede/softwar...asung-35a.html
    Da im Original-Thread verschiedene Lösungen diskutiert wurden habe ich mich entschlossen hier diejenige für den "Magic-UFO Wifi controller" LD382 / LD382A in PicoC zu sichern.
    Hallo Forum,

    mit Interesse habe ich hier schon eine ganze Weile mitgelesen.
    Daher habe ich mich entschlossen ebenfalls ein Magic Ufo zu bestellen und zusammen mit einem RGB- und einem warmweissen LED-Streifen zu testen.
    Doch leider funktioniert das Script V0.3 bei mir nicht (mehr), denn offensichtlich habe ich eine "neue" Version des Magic Ufo ("LD382 NEW" oder "LD382A, FW 1.0.6") erhalten.

    Ich musste das Script daher entsprechend anpassen, so dass es für mich aktuell funktioniert.
    Leider habe ich kaum brauchbare Dokumentation zum "LD382 NEW" gefunden. Daher entstand die V0.4 hauptsächlich unter dem Motto: "try and error".
    Wesentlich zur Lösung beigetragen hat dabei die Info von "herrmannj" zum wifilight https://github.com/herrmannj/wifilight.
    Habe das Script nur wenige Stunden in meiner Testumgebung am Laufen, daher also ohne jede Funktionsgarantie!!!

    Code:
    //RGBW Lichtsteuerung mit Magic-UFO Wifi controller
    //Version 0.1 by N1ghth4wk
    //Version 0.2 by RL
    //Version 0.3 by Iksi
    //Version 0.4 by Freeride24, Mod for new version of Magic-UFO Wifi controller -> LD382A ab FW1.0.6
    
    char szBuffer[128];
    unsigned char intro, R, G, B, W, K, cs;
    float iA, iR, iG, iB, iW, iK; //Eingangswerte in Gleitpunkt
    float sA, sW, sK; //gespeicherte Variablen von letzen Senden
    char isON, ON;
    char cnt;                                                                     //???
    
    isON = 0;
    intro = 0x31;
    
    while(TRUE)
        {
    //von Eingängen gelesen
      //iA = getinput(0);                                                         //V0.4, Freeride24: Eingang iA in iW getauscht
      //iW = getinput(1);                                                         //V0.4, Freeride24: Eingang iW in iA getauscht
      iW = getinput(0);
      iA = getinput(1);
      iK = getinput(2);
      if ((iA!=sA) || (iW!=sW) || (iK!=sK)) {
        sA = iA;
        sW = iW;
        sK = iK;    
     
        iB = iA / 1000000;
        B = (int)iB;
        iA = iA - (float)B * 1000000;
        iG = iA / 1000;
        G = (int)iG;
        iR = iA - (float)G * 1000;
        R = (int)iR;
     
        iR = iR * 2.55;
        iG = iG * 2.55;
        iB = iB * 2.55;
        iW = iW * 2.55;
    
        B = (int)iB;
        G = (int)iG;
        R = (int)iR;
        W = (int)iW;
    
        if ((B==0) && (G==0 ) && (R==0 )) {    
            iB = W * iK / 100;
            B = (int)iB;
            G = B;
            R = B;
        }
        if ((B!=0) || (G!=0 ) || (R!=0 ) || (W!=0 )) {
          ON = 1;
          //cs = intro + R + G + B + W + 0 + 0;                                    //V0.4, Freeride24: LD382
          cs = intro + R + G + B + W + 0 + 0x0F;                                //V0.4, Freeride24: LD382A ab FW1.0.6      
          STREAM* stream = stream_create("/dev/tcp/192.168.xxx.xxx/5577",0,0);
          //sprintf(szBuffer,"%c%c%c%c%c%c%c%c", intro, R, G, B, W, 0, 0, cs);    //V0.4, Freeride24: LD382
          sprintf(szBuffer,"%c%c%c%c%c%c%c%c", intro, R, G, B, W, 0, 0x0F, cs);    //V0.4, Freeride24: LD382A ab FW1.0.6
          stream_write(stream,szBuffer,8);
          stream_flush(stream);
          stream_close(stream);
          sleep(10);
        } else {
          ON = 0;
        }
        
        if (ON != isON) {
          isON = ON;
          if (ON) {
            //sprintf(szBuffer,"%c%c%c", 0x71, 0x23, 0x94);                        //V0.4, Freeride24: LD382
            sprintf(szBuffer,"%c%c%c%c", 0x71, 0x23, 0x0F, 0xA3);                //V0.4, Freeride24: LD382A ab FW1.0.6
          } else {
            //sprintf(szBuffer,"%c%c%c", 0x71, 0x24, 0x95);                     //V0.4, Freeride24: LD382
            sprintf(szBuffer,"%c%c%c%c", 0x71, 0x24, 0x0F, 0xA4);                //V0.4, Freeride24: LD382A ab FW1.0.6
          }
          STREAM* stream2 = stream_create("/dev/tcp/192.168.xxx.xxx/5577",0,0);
          //stream_write(stream2,szBuffer,3);                                    //V0.4, Freeride24: LD382
          stream_write(stream2,szBuffer,4);                                        //V0.4, Freeride24: LD382A ab FW1.0.6
          stream_flush(stream2);
          stream_close(stream2);
          sleep(10);
        }
            
    
      }
        
      sleep(10);
    }
    Ausserdem musste ich die Inputs 0 & 1 im Script tauschen, da bei mir AQ1 = Dimmer für warmweiss und AQ2 = RGB-Werte sind (wäre auch in der Lichtsteuerung gegangen). AQ3 ist der Ausgang für Misch-Weiss (RGB).

    Evtl. hilft es ja dem ein oder Andern.

    Viel Erfolg beim Testen,
    Freeride24
    Klicke auf die Grafik für eine vergrößerte Ansicht

Name: image_230.png
Ansichten: 2166
Größe: 21,6 KB
ID: 1252 Klicke auf die Grafik für eine vergrößerte Ansicht

Name: image_231.png
Ansichten: 2173
Größe: 67,2 KB
ID: 20252



    P.S.:
    Mittlerweile konnte ich das Script schon eine ganze Weile testen. Bei mir läuft es stabil ohne Probleme.
    Allerdings hatte ich mit der neuen Loxone App Probleme, so dass sich der Controller zwischenduch nicht bedienen lies.
    Mit der alten (schwarzen) App hatte ich das Problem nicht ein einziges Mal.
    Zuletzt geändert von freeride24; 07.01.2016, 18:04.
  • Michael Rene Maurer
    LoxBus Spammer
    • 25.08.2015
    • 220

    #2
    Hallo,....

    Danke für die Rettung!

    Bräuchte noch ein paar Infos!

    Frage, kann das was?



    Danke Michael
    LG MRM

    Kommentar

    • ToB204
      Smart Home'r
      • 27.08.2015
      • 54

      #3
      Hallo Forum

      ist es möglich das Script so zu ändern, dass man zwei Warmweiß Strips damit dimmen kann?
      Bei mir im Bad sind zwei Strips die ich gerne getrennt steuern möchte und hab leider vergessen ein Dmx-Kabel zu ziehen.
      Ich kenne mich leider überhaut nicht mit PicoC aus.

      Wäre toll wenn mir jemand helfen könnte!

      Danke im Voraus
      euer Tobi

      p.s. Von mir auch noch ein großes Dankeschön für den Umzug! Echt toll was Ihr hier auf die Beine stellt!

      Kommentar

      • freeride24
        Smart Home'r
        • 28.08.2015
        • 32

        #4
        Hallo,

        @Michael:
        Kann ich nicht wirklich sagen. Der Steifen hat 2x150 (150 RGB & 150 weiß) LEDs.
        Ich hab meine Komponenten einzeln gekauft und verwende zwei 5m LED Streifen mit jeweils 300 LEDs (RGB Bauform 5050 und warmweiß Bauform 5630). Gerade die 5630 haben m.E. einen Vorteil bzgl. Lichtausbeute. Hängt eben auch davon ab was Du damit vorhat.
        Den Ufo Controller gibts beim großen Internet Kaufhaus mit A momentan zum China Preis für ~26,-€!

        @Tobi:
        Der Controller hat 4 Kanäle (R,G, B und W). Folglich kannst Du bis zu 4 Kanäle steuern. Ob das Farb- oder Weiß-Kanäle sind ist dem egal.
        Ich hab Dir mal ein modifiziertes Script für 2x WW-Streifen (neue Controller Version) angehängt. Liese sich einfach bis 4 Kanäle erweitern.
        Du musst in der Lichtsteuerung eben 2x 0-100% Dimmer einstellen und an Eingang AI1 & AI2 des Programmbausteins verbinden.
        Viel Spaß beim Testen.

        Grüße Tobias
        Angehängte Dateien

        Kommentar

        • Michael Rene Maurer
          LoxBus Spammer
          • 25.08.2015
          • 220

          #5
          Danke freeeide, es soll bei Küchenunterschränken als effektbeleuchtung montiert werden!, und für dort sollte es reichen!?
          LG MRM

          Kommentar

          • ToB204
            Smart Home'r
            • 27.08.2015
            • 54

            #6
            Danke für die schnelle Hilfe!

            Hab mein UFO noch nicht werde es gleich ausprobieren wenn er da ist.

            Das neue Forum funktioniert ja super!

            Kommentar

            • ToB204
              Smart Home'r
              • 27.08.2015
              • 54

              #7
              So hab das Gerät Heute bekommen und gleich mal angeschlossen.
              Gute Nachricht das Script funktionierte gleich auf Anhieb!
              Bloß reagiert der Ufo nicht auf jeden Befehl der App, das heißt so durchschnittlich bei jedem 10 Befehl passiert leider nichts.
              Vielleicht hat ja jemand eine Idee an was das liegen könnte. Noch mal Danke für die Hilfe!

              Euer Tobi

              Kommentar

              • Michael Rene Maurer
                LoxBus Spammer
                • 25.08.2015
                • 220

                #8
                Sagt mal bin ich zu doof! Muss ich das Programm abtipsen?, da konnte ja man reinkopieren.....

                Und könnte mir wer bitte die V 1.0.6 Firmware zukommen lassen!
                Danke.......
                Zuletzt geändert von Michael Rene Maurer; 07.09.2015, 18:38.
                LG MRM

                Kommentar

                • freeride24
                  Smart Home'r
                  • 28.08.2015
                  • 32

                  #9
                  Hallo,

                  @Tobi:
                  Prima, dass das Script funktioniert.
                  Welche App verwendest Du?
                  Mit der alten habe ich keine Probleme. Mit der neuen gibts manchmal Probleme, vor allen wenn viele Befehle schnell hintereinander gesendet werden (z.B. RGB Farbwechsel).

                  @Michael:
                  Die Firmware V1.0.6 habe ich nicht. Meine Ufo's kamen bereits im Auslieferungszustand damit.

                  Grüße Tobias

                  Kommentar


                  • Michael Rene Maurer
                    Michael Rene Maurer kommentierte
                    Kommentar bearbeiten
                    Bei meinem UFO ist die 1.0.4a oben, hab den Code in der lox, nur es tut sich nix!!!!

                    Grüße Michael

                  • freeride24
                    freeride24 kommentierte
                    Kommentar bearbeiten
                    Hast Du das Script aus Post #1 benutzt? Das hatte ich ja angepasst, dass es mit FW ab 1.0.6 funktioniert. Wenn Du es mit der 1.0.4a verwenden möchtest musst Du das Original wieder herstellen indem Du die Zeilen mit meiner Kommtierung ab FW1.0.6 wieder auskommentierst und die Zeilen darüber entsprechend aktivierst.
                    Oder Du benutzt eben gleich die V0.3 aus dem alten Forum:
                    -> http://forum.loxone.com/dede/softwar...html#post74745

                    Grüße,
                    Tobias
                    Zuletzt geändert von freeride24; 07.09.2015, 20:47.
                • Michael Rene Maurer
                  LoxBus Spammer
                  • 25.08.2015
                  • 220

                  #10
                  Hab ich schon gemacht, danke für den Hinweis!

                  Grüße Michi
                  LG MRM

                  Kommentar

                  • mest
                    Smart Home'r
                    • 27.08.2015
                    • 50

                    #11
                    Hallo,
                    wie kannich feststelen welche FW installiert ist?

                    lg Stefan

                    Kommentar

                    • ToB204
                      Smart Home'r
                      • 27.08.2015
                      • 54

                      #12
                      Hallo
                      @Stefan müsste eigentlich über die Web-Oberfläche zu sehen sein. Einfach die IP-Adresse im Browser eingegeben und mit
                      Benutzer:admin
                      Passwort: nimda
                      anmelden.
                      Bei mir geht die Web-Oberfläche aber leider nicht, scheint ein Bug in der Neuen Version zu sein.
                      @Tobias durch längeres benutzen der alten App mit dem UFO. Hab ich festgestellt, dass es auch bei mir nur bei schnell aufeinander folgenden Befehlen zum verschlucken der selbigen kommt. Nervt halt ein bisschen.

                      Gruß Tobi

                      Kommentar

                      • mest
                        Smart Home'r
                        • 27.08.2015
                        • 50

                        #13
                        @tob24
                        Danke das habe ich offenbar überlesen
                        Danke Stefan


                        Gesendet von iPhone mit Tapatalk

                        Kommentar

                        • Michael Rene Maurer
                          LoxBus Spammer
                          • 25.08.2015
                          • 220

                          #14
                          Hallo Forum!

                          Frage, kann ich mit dem Code auch einen RGB-Stripe ohne W ansteuern, oder muss da was geändert werden? Habe von Eglo einen 12V Stripe welche nur RGB hat!
                          Danke für Infos....
                          LG MRM

                          Kommentar

                          • freeride24
                            Smart Home'r
                            • 28.08.2015
                            • 32

                            #15
                            @ToB204
                            Mit der Classic App habe ich gar keine Probleme und m.E. Verschluckt sich mit der neuen App das UFO selbst.
                            Warum? Keine Ahnung! Ich benutz nur die Classic App bzw. die echten Taster über KNX zum Ein- & Ausschalten und Szenenwechsel.

                            @ Michael
                            RGB ohne W ist kein Problem.
                            Einfach den Kanal für warmweiss in der Konfig weg lassen.

                            Grüße,
                            Tobias

                            Kommentar

                            Lädt...