Tuya RGBW led controller ir ESPhome?

www
Odpovědět
tiimsvk
Pokročilý
Pokročilý
Příspěvky: 191
Registrován: 06. květen 2021, 07:03
Dal poděkování: 15 poděkování
Dostal poděkování: 23 poděkování

Tuya RGBW led controller ir ESPhome?

Příspěvek od tiimsvk »

Ahojte skúšal niekto tento modul konvertovať do esphome?
názov je IR24 RGBW
viď obrazok?
20221110_160134.jpg

Uživatelský avatar
Lion®
Administrátor fóra
Administrátor fóra
Příspěvky: 789
Registrován: 28. září 2020, 14:07
Bydliště: podkrkonoší
Dal poděkování: 93 poděkování
Dostal poděkování: 73 poděkování
Kontaktovat uživatele:

Re: Tuya RGBW led controller ir ESPhome?

Příspěvek od Lion® »

tiimsvk píše: 10. listopad 2022, 16:04 Ahojte skúšal niekto tento modul konvertovať do esphome?
názov je IR24 RGBW
viď obrazok?
20221110_160134.jpg
vyfoť to ještě z druhé strany ...
________________
🍻 Jdeme na pivo?
Oficiální sada s Raspberry Pi 4B/4GB, černá +Argon NEO Raspberry Pi 4 Case
Patriot Burst 2.5" SATA SSD 120GB + AXAGON EE25-XA6 ALINE box

Galerie realizací

tiimsvk
Pokročilý
Pokročilý
Příspěvky: 191
Registrován: 06. květen 2021, 07:03
Dal poděkování: 15 poděkování
Dostal poděkování: 23 poděkování

Re: Tuya RGBW led controller ir ESPhome?

Příspěvek od tiimsvk »

Zajtra odfotim ale ak si spomínam tak tam nič nebolo. Ako keby sa to nedalo tak odpalim a supnem esp8266 len sa budem muset hrat s ir kodami aby fungoval diaľkový

tiimsvk
Pokročilý
Pokročilý
Příspěvky: 191
Registrován: 06. květen 2021, 07:03
Dal poděkování: 15 poděkování
Dostal poděkování: 23 poděkování

Re: Tuya RGBW led controller ir ESPhome?

Příspěvek od tiimsvk »

Tak nakoniec výsledok mojej snahy:

Modul osadený priamo na doske bol TW-03, ktorý nie je možné flashovať.
Takže modul som odletoval a naletoval som esp07 na pôvodné miesto, problém je pin GPIO15, RST, EN, GPIO0 a GPIO02, tieto je potrebné doplniť o 10k resistory s pripojením na GND alebo VCC podľa schémy zapojenia ESP07,
IR vstup je potrebné odletovať a pripojiť na GPIO13 priamo (GPIO15 kde bol pôvodné nefunguje dobre)

Výsledok je taký, že prvé spustenie fungovalo všetko ako malo, ale nejakým zázrakom sa mi podarilo zoskratovať celý obvod a mohol som ho hodiť rovno de smetí nakoľko sa odpalilo všetko ESP, mofsety, ir dioda a aj LDO.

Ale nič nevadí
- vyrobil som jednoduchý plošák kde som doplnil LDO 7805C z 12V na 5V doplnil potrebné kondenzátory podľa datasheetu.
- priletoval 4x N-mofset pre klaždý kanál samostatne (napr IRFZ44N - podľa voltov a prúdu pre led pásy) s doplnením 10k resistoru z gatu na GND a do logiky som pridal ešte ochranný resistor 220ohm.
- ESP07 osadil na adapter s ldo ams1117 3.3
- Pridal IR receiver modul a hotovo.
- namapaoval všetky kódy z dialového ovladača a bolo

YAML:
poznámka: mám tam doplnený aj ir transmiter modul nakoľko celý ovladáč je položený pri klimatizácii a chcel by som doplniť aj ovládanie GREE klimatizácie :)

EDIT1:
- upravil som celkovo kód kde som odstranil na pine 16 ir transmitter nakoľko sa mi nepodarilo vyhotoviť stabilné esp8266 hold všetky funkčné piny sú už obsadené a pre ir transmitter nezostal žiaden funkčný (skúšal som aj GPIO15, TX, GPIO16, GPIO0, a GPIO02) -> ak máte niekto spojaznený esp8266 so 6 funkčnými vystupmi tak to by veľmi pomohlo, je tu problém hlavne v tom, že sa nejedná o logicke O/I ale o rozny rozsah a to robi problém pri odosielani prikazu alebo spustení/ota update samotného esp8266
- ďalej upravil som výstup bieleho kanála nakoľko

Kód: Vybrat vše

   on_press:
      then:
        - light.turn_on:
            id: ${device_name}
            red: 0%
            green: 0%
            blue: 0%
            white: 100%
            effect: None
         
nefungoval odosielal stále príkaz so zapnutými všetkými kanalmi pomohla až zmena na :

Kód: Vybrat vše

    on_press:
      then:
        - light.turn_on:
    
            id: ${device_name}
            brightness: 100%
            color_brightness: 0%
            effect: None
Prečo je tomu tak to neviem.

Kód: Vybrat vše

#-------------------------------------------
# SUBTITUTIONS
# basic definitions and description of the device
#-------------------------------------------
substitutions:
  device_name: led_rgbw
  friendly_name: Led-rgbw
  created_by: StudioTiiM 2022 
  device_description: "Convert tuya Led RGBW modul IR-24RGBW change TW-03 no flashed module to ESP07 and mapping simple ir reciever 24 buttons"
  device_description2: "Add input cpacitance 1000uF 25V and M4 protect diode, Convert voltage L7805CV and ams1117 3.3 out 104 ceramic capacitance and 16V 100uF electrolitic capacitance, esp8266 adapter, ir reciver and transmiter modules, 4x D452A N-mofset 103 resistor Gate to GND and 220ohm protect resistor to logic"

#-------------------------------------------
# Define pins
  status_led_pin: GPIO02
  ir_reciever_pin: GPIO13
#  ir_transmitter_pin: GPIO16
  red_pin: GPIO12
  blue_pin: GPIO14
  white_pin: GPIO05
  green_pin: GPIO04
#-------------------------------------------

#-------------------------------------------
# ESP MAIN SETTINGS
#-------------------------------------------

esphome:
  name: led-rgbw

esp8266:
  board: esp01_1m

logger:

api:
            
ota:
  password: !secret ota_pass

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password
  manual_ip:
    static_ip: 192.168.31.234
    gateway: 192.168.31.1
    subnet: 255.255.255.0

  ap:
    ssid: "$friendly_name Hotspot"
    password: !secret api_pass

captive_portal:

#-------------------------------------------
# SENSORS
#-------------------------------------------
sensor:
#-------------------------------------------
# Wifi signal component
#-------------------------------------------
  - platform: wifi_signal
    name: "${friendly_name} Signal"
    update_interval: 320s

#-------------------------------------------
# REMOTE RECEIVER MODULE
#-------------------------------------------
remote_receiver:
  pin:
    number: ${ir_reciever_pin}
    inverted: True
  dump: nec

#-------------------------------------------
# BINARY SENSORS
#-------------------------------------------
binary_sensor:
#-------------------------------------------
# IR Remote mapping codes 24 buttons
#-------------------------------------------
# Basic settings
#-------------------------------------------
  # On
  - platform: remote_receiver
    name: "Remote ON"
    nec:
      address: 0xEF00
      command: 0xFC03
    on_press:
      then:
        - light.turn_on:
            id: ${device_name}
            red: 100%
            green: 100%
            blue: 100%
            white: 100%
            effect: None
  # Off
  - platform: remote_receiver
    name: "Remote OFF"
    nec:
      address: 0xEF00
      command: 0xFD02
    on_press:
      then:
        - light.turn_off: ${device_name}
  # brightness up
  - platform: remote_receiver
    name: "Remote BRIGHTUP"
    nec:
      address: 0xEF00
      command: 0xFF00
    on_press:
      then:
        - light.dim_relative:
            id: ${device_name}
            relative_brightness: 5%
  # brightness down
  - platform: remote_receiver
    name: "Remote BRIGHTDOWN"
    nec:
      address: 0xEF00
      command: 0xFE01
    on_press:
      then:
        - light.dim_relative:
            id: ${device_name}
            relative_brightness: -5%

#-------------------------------------------
# Channal settings
#-------------------------------------------
  # Red channal
  - platform: remote_receiver
    name: "Remote RED"
    nec:
      address: 0xEF00
      command: 0xFB04
    on_press:
      then:
        - light.turn_on:
            id: ${device_name}
            red: 100%
            green: 0%
            blue: 0%
            white: 0%
            effect: None
  # Green channal
  - platform: remote_receiver
    name: "Remote GREEN"
    nec:
      address: 0xEF00
      command: 0xFA05  
    on_press:
      then:
        - light.turn_on:
            id: ${device_name}
            red: 0%
            green: 100%
            blue: 0%
            white: 0%
            effect: None
  # Blue channal
  - platform: remote_receiver
    name: "Remote BLUE"
    nec:
      address: 0xEF00
      command: 0xF906  
    on_press:
      then:
        - light.turn_on:
            id: ${device_name}
            red: 0%
            green: 0%
            blue: 100%
            white: 0%
            effect: None
  # White channal
  - platform: remote_receiver
    name: "Remote WHITE"
    nec:
      address: 0xEF00
      command: 0xF807   
    on_press:
      then:
        - light.turn_on:
    
            id: ${device_name}
            brightness: 100%
            color_brightness: 0%
            effect: None

#-------------------------------------------
# Color settings
#-------------------------------------------
  # Fire color
  - platform: remote_receiver
    name: "Remote Fire color"
    nec:
      address: 0xEF00
      command: 0xF708    
    on_press:
      then:
        - light.turn_on:
            id: ${device_name}
            red: 100%
            green: 25%
            blue: 0%
            white: 0%
            effect: None
  # Orange color
  - platform: remote_receiver
    name: "Remote Orange color"
    nec:
      address: 0xEF00
      command: 0xF30C  
    on_press:
      then:
        - light.turn_on:
            id: ${device_name}
            red: 100%
            green: 50%
            blue: 0%
            white: 0%
            effect: None
  # Gold color
  - platform: remote_receiver
    name: "Remote Gold color"
    nec:
      address: 0xEF00
      command: 0xEF10
    on_press:
      then:
        - light.turn_on:
            id: ${device_name}
            red: 100%
            green: 75%
            blue: 0%
            white: 0%
            effect: None
  # Yellow color
  - platform: remote_receiver
    name: "Remote Yellow color"
    nec:
      address: 0xEF00
      command: 0xEB14
    on_press:
      then:
        - light.turn_on:
            id: ${device_name}
            red: 100%
            green: 100%
            blue: 0%
            white: 0%
            effect: None
  # Applegreen color
  - platform: remote_receiver
    name: "Remote Applegreen color"
    nec:
      address: 0xEF00
      command: 0xF609
    on_press:
      then:
        - light.turn_on:
            id: ${device_name}
            red: 0%
            green: 100%
            blue: 25%
            white: 0%
            effect: None
  # Aqua color
  - platform: remote_receiver
    name: "Remote Aqua color"
    nec:
      address: 0xEF00
      command: 0xF20D
    on_press:
      then:
        - light.turn_on:
            id: ${device_name}
            red: 0%
            green: 100%
            blue: 100%
            white: 0%
            effect: None
  # Turquoise color
  - platform: remote_receiver
    name: "Remote Turquoise color"
    nec:
      address: 0xEF00
      command: 0xEE11
    on_press:
      then:
        - light.turn_on:
            id: ${device_name}
            red: 0%
            green: 100%
            blue: 75%
            white: 0%
            effect: None
  # Jade color
  - platform: remote_receiver
    name: "Remote Jade color"
    nec:
      address: 0xEF00
      command: 0xEA15
    on_press:
      then:
        - light.turn_on:
            id: ${device_name}
            red: 0%
            green: 100%
            blue: 50%
            white: 0%
            effect: None
  # Azure color
  - platform: remote_receiver
    name: "Remote Azure color"
    nec:
      address: 0xEF00
      command: 0xF50A
    on_press:
      then:
        - light.turn_on:
            id: ${device_name}
            red: 0%
            green: 50%
            blue: 100%
            white: 0%
            effect: None
  # Purple color
  - platform: remote_receiver
    name: "Remote Purple color"
    nec:
      address: 0xEF00
      command: 0xF10E
    on_press:
      then:
        - light.turn_on:
            id: ${device_name}
            red: 25%
            green: 0%
            blue: 100%
            white: 0%
            effect: None
  # Ruby color
  - platform: remote_receiver
    name: "Remote Ruby color"
    nec:
      address: 0xEF00
      command: 0xED12
    on_press:
      then:
        - light.turn_on:
            id: ${device_name}
            red: 50%
            green: 0%
            blue: 100%
            white: 0%
            effect: None
  # pink color
  - platform: remote_receiver
    name: "Remote Pink color"
    nec:
      address: 0xEF00
      command: 0xE916
    on_press:
      then:
        - light.turn_on:
            id: ${device_name}
            red: 100%
            green: 0%
            blue: 100%
            white: 0%
            effect: None

#-------------------------------------------
# Effect settings
#-------------------------------------------
  # Effect Flash
  - platform: remote_receiver
    name: "Remote FLASH"
    nec:
      address: 0xEF00
      command: 0xF40B
    on_press:
      then:
        - light.turn_on:
             id: ${device_name}
             effect: "Flash"
  # Effect Strobe
  - platform: remote_receiver
    name: "Remote STROBE"
    nec:
      address: 0xEF00
      command: 0xF00F
    on_press:
      then:
        - light.turn_on:
             id: ${device_name}
             effect: "Strobe"
  # Effect Fade
  - platform: remote_receiver
    name: "Remote Fade"
    nec:
      address: 0xEF00
      command: 0xEC13
    on_press:
      then:
        - light.turn_on:
             id: ${device_name}
             effect: "Fade"
  # Effect Smooth
  - platform: remote_receiver
    name: "Remote STROBE"
    nec:
      address: 0xEF00
      command: 0xE817
    on_press:
      then:
        - light.turn_on:
             id: ${device_name}
             effect: "Smooth"

#-------------------------------------------
# STATUS LED
# blue - on board led
#-------------------------------------------
status_led:
  pin: 
    number: ${status_led_pin}
    inverted: True

#-------------------------------------------
# LIGHTS
#-------------------------------------------
light:
  - platform: rgbw
    name: ${friendly_name} Light
    id: ${device_name}
    red: red_channel
    green: green_channel
    blue: blue_channel
    white: white_channel
    effects:
      # Flash effect
      - strobe:
          name: Flash
      # Strobe effect
      - strobe:
          name: Strobe
          colors:
            - state: True
              brightness: 100%
              white: 0%
              red: 100%
              blue: 0%
              green: 0%
              duration: 150ms
            - state: False
              duration: 100ms

            - state: True
              brightness: 100%
              white: 0%
              red: 100%
              blue: 0%
              green: 0%
              duration: 150ms
            - state: False
              duration: 100ms

            - state: True
              brightness: 100%
              white: 0%
              red: 0%
              blue: 100%
              green: 0%
              duration: 150ms
            - state: False
              duration: 100ms

            - state: True
              brightness: 100%
              white: 0%
              red: 0%
              blue: 100%
              green: 0%
              duration: 150ms
            - state: False
              duration: 100ms
            
            - state: True
              brightness: 100%
              white: 0%
              red: 0%
              blue: 0%
              green: 100%
              duration: 150ms
            - state: False
              duration: 100ms
              
            - state: True
              brightness: 100%
              white: 0%
              red: 0%
              blue: 0%
              green: 100%
              duration: 150ms
            - state: False
              duration: 100ms
      # Fade effect
      - random:
          name: "Fade"
          transition_length: 1s
          update_interval: 1s
      # Smooth effect
      - random:
          name: "Smooth"
          transition_length: 4s
          update_interval: 5s

#-------------------------------------------
# OUTPUTS
#-------------------------------------------
output:
  - platform: esp8266_pwm
    id: red_channel
    pin: ${red_pin}
  - platform: esp8266_pwm
    id: green_channel
    pin: ${green_pin}
  - platform: esp8266_pwm
    id: blue_channel
    pin: ${blue_pin}
  - platform: esp8266_pwm
    id: white_channel
    pin: ${white_pin}
 
Naposledy upravil(a) tiimsvk dne 22. listopad 2022, 09:36, celkem upraveno 1 x.

Uživatelský avatar
Pete30
Moderátor
Moderátor
Příspěvky: 1366
Registrován: 30. září 2020, 20:33
Dal poděkování: 69 poděkování
Dostal poděkování: 139 poděkování

Re: Tuya RGBW led controller ir ESPhome?

Příspěvek od Pete30 »

Jsi správný výzkumník, klobouk dolů :D
Co má shořet ať shoří a co shoří neshnije :lol: :lol: :lol:
Pokud nejsem přítomen tak jsem na rybách ;)

tiimsvk
Pokročilý
Pokročilý
Příspěvky: 191
Registrován: 06. květen 2021, 07:03
Dal poděkování: 15 poděkování
Dostal poděkování: 23 poděkování

Re: Tuya RGBW led controller ir ESPhome?

Příspěvek od tiimsvk »

Teraz riesim tento obvod od tuya
Pekne popisany tu:
https://www.elektroda.com/rtvforum/topic3798114.html
Samozrejme osadeny wb3s flashovanie bez sance ... kdletovanie ani pomocou heatgun sa mi nepodarilk bez znicenia cesticiek na plosaku.

Nakolko ale potrebujem iba jeden biely kanál tak mi to nerobi problem.

Nahradime esp07 a uvidime zase budem muset doplnit zakladne resistory pre spustenie

Pripojim kod ked bude hotový ale na esphome uz riesili tento modul takze to nebude ťažké.

bimbop
Začínající autor
Začínající autor
Příspěvky: 33
Registrován: 22. srpen 2022, 15:46
Bydliště: Frýdlant nad Ostravicí
Dal poděkování: 6 poděkování

Re: Tuya RGBW led controller ir ESPhome?

Příspěvek od bimbop »

Našel jsem tohle video ohledně flash modulu wb3s na youtube jedná se sice o wb2l ale mohlo by to jít.

tiimsvk
Pokročilý
Pokročilý
Příspěvky: 191
Registrován: 06. květen 2021, 07:03
Dal poděkování: 15 poděkování
Dostal poděkování: 23 poděkování

Re: Tuya RGBW led controller ir ESPhome?

Příspěvek od tiimsvk »

nebude to fungovať wb2l je uplne iný čip s osadením esp, WB3S je na inej architekture alebo njiečo podobné je potrebné to odletovať.

Upravil som výstupný kód pre ESP8266 v príspevku vyššie aj s nejakými otázkami ohľadne počtu pinov ale asi to dam do samostatného topicu

Odpovědět

Zpět na „ESPHome“