ESP8266 RGBW Conrtoler FERTIG!

    This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

    • ESP8266 RGBW Conrtoler FERTIG!

      Hallo

      möchte euch gerne hier mein neues "projekt" vorstellen

      Es handelt sich um ein esp8266-12e der dafür eingesetz werden solle über die software pwm 4 mosfet anzusprechen und damit rot,grün,blau,weiß led-bänder zu steuern


      Kostenschätzung / Material:

      PCB 3€
      ESP8266-12e + adapter platine zum sockeln 3,5€
      Schraubklemme 2fach 2x 0,20€
      Schraubklemme 3fach 1x 0,10€
      Kondensator 470uf 10v 0,10€
      Pinleiste ( 9stück ) 0,10€
      IRF540 4x 3,2€
      Sockel für ESP8266 2mal ( 8x01 ) 0,20€
      DC-DC Converter 0,75€
      = 11,15€

      option gehäuse:
      in grau siehe foto 1,5€


      habe 20 platinen bestellt, und gebe gerne welche als bausatz ab für 3€ + versand oder mit allen teilen für 11,15€ + versand oder fertig bestückt für 15€ inkl gehäuse und software
      Files
      • layout.jpg

        (181.21 kB, downloaded 150 times, last: )
      • 3d.jpg

        (56.94 kB, downloaded 126 times, last: )
      • prototyp ohne irf540.jpg

        (239.92 kB, downloaded 146 times, last: )

      The post was edited 1 time, last by gMaN ().

    • RE: ESP8266 RGBW Conrtoler

      da es in shc noch keinen farb mischer gibt, in shc leider erstmal nur über buttons

      der controler wird wie einschaltserver im shc eingetragen


      dann könnten buttons angelegt werden für:

      rot,brün,blau,weis, usw

      im prizip wie ein schaltserver ( fraben werde im rgb-color format [ 255:255:255 ] an den esp gesendet ) so das es später auch problemlos möglich ist die farbe über einen "Frabmischer" zu ändern

      über weiter buttons, könnte man dann auch misch farben "einstellen" gelbe,orange,lila, usw...


      desweitern sind auf der platine freie gpios auf pins herraus geführt, so das man ohne probleme z.b. noch einen dht oder einen ds18b20 anschliesen könnte
      Files
      • farbmischer.jpg

        (15.02 kB, downloaded 68 times, last: )

      The post was edited 1 time, last by gMaN ().

    • RE: ESP8266 RGBW Conrtoler

      so gute nachrichten die platinen sind heute angekommen und den ersten test nach funktioniert alles wie geplant :D

      hier ein paar bilder
      Files
      • FullSizeRender.jpg

        (216.42 kB, downloaded 96 times, last: )
      • IMG_1174.JPG

        (208.93 kB, downloaded 94 times, last: )
      • IMG_1171.JPG

        (339.77 kB, downloaded 103 times, last: )
    • RE: ESP8266 RGBW Conrtoler

      gute nachrichten nun sind alle teile da die gebraucht werden

      die ersten 3 Platinen gebe ich komplet bestückt für 10€ inkl versand ab



      zur steuerung:
      In shc wir quasi ein neuer Schalt-Server eingetragen ( ip vom esp8266 )
      über Ausgänge kann man die farben einzeln schalten ( als ss Adruino Nano auswählen )

      Gpio 5 = Rot
      Gpio 7 = Blau
      Gpio 1 = Grün
      Gpio 6 = Weiß

      mischfraben kann man mittel "script" einstellen dafür braucht man ein kleines php script

      [code=php]<?php
      if(!empty($_GET[0]))
      {
      #echo"http version";
      $ip = $_GET['wo'];
      $was = $_GET[was];
      echo"$ip and $was";
      }
      if(!empty($argv[0]))
      {
      #echo"CLI version $argv[0] $argv[1]";
      $ip = $argv[1];
      $was = $argv[2];
      }
      echo senden($ip,$was);


      function senden($ip,$was)
      {
      $fp = fsockopen($ip, "9274", $errno, $errstr, 1);
      if (!$fp) {
        echo "$errstr ($errno)";
      } else {
        fwrite($fp, $was);
        // folgende Zeile optional - Antwort ausgeben
        while (!feof($fp)) return fgets($fp, 10);
        fclose($fp);
      }

      }
      ?>
      [/php]

      quick & dirty

      über skript kann man dann wie folgt farben mischen siehe screenshot
      bsp : /var/www/shc/tcp.php 192.168.0.45 5:255:255:255:000 <- für gemischtes weis ( Typ:Rot:Grün:Blau ) bitte immer 3 stellen angeben für 0 bitte 000 nutzen


      lua script für den esp:
      [code=php]
      -- RGBW LED Controler fuer SHC
      -- by Jan Goedecke
      -- v.0.1
      -- 5 = rot
      -- 7 = blau
      -- 1 = grun
      -- 6 = weis
      -- pin
      -- Alle Aus!
      pwm.setup(5,250,0)
      pwm.setup(7,250,0)
      pwm.setup(1,250,0)
      pwm.setup(6,250,0)
      tmr.stop(1)

      -- tmr 0 fuer wlan check
      tmr.alarm(0, 150, 1, function()
      if(wifi.sta.getip() == nil) then
      print("wait")
      else

      -- wenn wlan verbindung okay, ip ausgeben und tmr1 starten
      print(wifi.sta.getip())
      tmr.stop(0)
      tcp_server()
      end
      end)

      function tcp_server()
      print("SHC SS Start")
      sv=net.createServer(net.TCP, 1) -- anpassen das schneller beendet wird 1sek
      sv:listen(9274,function(c)
      c:on("receive", function(c, pl)
      print(pl) -- gibt empfangen daten in console aus!
      -- fuer rgbw befehle 5:255:255:255:100 ( 5= Typ 255=rot 255=gruen 255 = blau 100= weis 0-100)
      typ = string.sub(pl,0,1)
      if(typ == "2") then
      pin = string.sub(pl,3,3)
      befehl = string.sub(pl,5,5)

      if(befehl == "0") then
      pwm.stop(pin)
      end
      if(befehl == "1") then
      pwm.setup(pin,250,1023)
      pwm.start(pin)
      end
      end
      if(typ == "5") then
      -- werte fuer pwm
      pwm1 = 8 -- 10,23
      rgb1 = 2 -- 2,55
      --print(rgb1)
      r = string.sub(pl,3,5)
      g = string.sub(pl,7,9)
      b = string.sub(pl,11,13)
      w = string.sub(pl,15,17)

      print(r.."\n")
      print(g.."\n")
      print(b.."\n")
      print(w.."\n")

      -- rechnung fuer rot
      red = r / rgb1
      red1 = pwm1 * red
      green = g / rgb1
      green1 = pwm1 * green
      blue = b / rgb1
      blue1 = pwm1 * blue
      weis = w / rgb1
      weis1 = pwm1* weis

      --print("debug:" ..r.. ":" ..red.. ":" ..red1)
      if(weis ~= nil) then
      pwm.setup(6,250,weis1)
      pwm.start(6)
      end
      if(red1 ~= nil) then
      pwm.setup(5,250,red1)
      pwm.start(5)
      end
      if(blue1 ~= nil) then
      pwm.setup(7,250,blue1)
      pwm.start(7)
      end
      if(green1 ~= nil) then
      pwm.setup(1,250,green1)
      pwm.start(1)

      end
      end
      end)
      end)
      end

      [/php]

      edit die Weiß funktion derzeit im lua code noch auserfunktion


      eine komplet bestückte platine sende ich Agent47 für die schnell volle einbindung in SHC  :D
      Files
      • rgbw.jpg

        (124.44 kB, downloaded 135 times, last: )
      • rgb-shc.jpg

        (13.42 kB, downloaded 88 times, last: )
      • php-tcp.jpg

        (38.04 kB, downloaded 90 times, last: )

      The post was edited 1 time, last by gMaN ().

    • Mit Rücksprache mit "gMaN" werde ich eine Neue Leiterplatte machen wo ich RGB WW CW ansteuern kann und zusätzlich überlege ich noch etwas mehr drauf zu packen ZB Temp oder sogar noch ein Relay mal sehen was mir da noch alles so einfällt. werde ich am WE fertig machen und den das Script anpassen (mit einen Richtigen Script für das Shc) damit wir das mal so richtig hin bekommen.

      Gruß Jannek