Bricolage du week end

Bonjour,

petit bricolage du week end
tour du plafond et de la porte de chambre de ma fille
un petit ESP01 sous esphome pour piloter l’ensemble


bandeaux 12v WS2815 - 60leds/m
700 leds au plafond
280 leds a la porte
3 alims 12v/12A

l’ESP01 pilote un relais qui démarre les alims 12v quand on allume
et 2 GPIO sont utilisés pour piloter ‹ porte › et ‹ plafond ›

les fils qui vont du sol au plafond pour alimenter le bandeau en 12v et un fil signal doivent être blindés et de bonne qualité pour ne pas avoir de parasites
je suis assez déçu de la colle des bandeaux qui me semble de mauvaise qualité
a mon avis je vais être obligé de recoller pas mal de zones a la colle chaude
sinon, le rendu est top

maintenant l’amélioration a faire est d’essayer d’ajouter un récepteur IR et de le piloter avec une télécommande, elles ont l’air standard et pilotent un peu tout ce qui a des leds, il me reste un GPIO sur l’ESP, à tester

Hello,

Pourquoi ne pas avoir utilisé wled avec un esp ?
Ca s’intègre directement dans HA et plein d’effets de dispo + sound reactive possible … etc

Welcome to WLED - WLED Project

@+

alors c’est simple !
je viens de découvrir le projet
je n’ai pas eu envie de me lancer la dedans tout de suite
mais
pourquoi pas, après tout, il y a juste le module esp a reprogrammer !
par contre je ne suis pas certain sur l’esp01 ils semblaient plutôt sur du wemos/ESP32 dans ce projet

et pour ce projet j’ai utilisé la librairie ‹ neopixelbus › dans esphome qui me semblait plus réactive et mieux fonctionner que ‹ fastled ›

Oui, esp32 , mais ça vaut le coup :+1:

Et pour l’install, c’est très simple.
Tu ouvres ce site et tu branche ton esp32
Install WLED

@+

Wled c’est top :smiley:
Tu regrettera pas, les effects et possibilité son juste génial.
la liste d’effects dispo:
https://kno.wled.ge/features/effects/

Palette de couleur:
https://kno.wled.ge/features/palettes/

Salut,
WLed marche sans soucis sur ESP01, ça a beau être une petit module la puce reste une ESP8266.
Bon après faut quand même gérer 1000 leds dans ton cas, 150W :face_with_spiral_eyes:
C’est un firmware qui est dédié pour le type d’installation que tu as faite, il y a beaucoup d’effets plus ou moins complexent qui peuvent avoir un bon rendu.

oui j’ai vu des cas où cela fonctionnait sur le net mais ce n’est pas ce qui est privilégié !
il me reste quelques morceaux, je vais faire des tests avec
merci pour les conseils

Hello

WLED c’est le top du top
super user friendly
sacrément bien interfacé avec HA ou son interface web…

Je viens de faire un test wled avec un morceau restant, c’est vrai que c’est top !
gestion relais intégré
gestion de la télécommande ir intégré
pilotage de 2 bandeaux
tout çà avec un, ESP01 !
je ne vais pas tarder a remplacer mon pilotage par esphome !

mais juste une question, je n’ai pas trouvé
est il possible de créer un effet personnalisé du genre :
j’ai fait un réveil luminothérapie
qui démarre sur du rouge à 10%lum et augmente progressivement vers le blanc et 100%lum

sous esphome, j’ai fait un script qui fonctionne très bien mais comment faire un équivalent ici ?

Bonjour Steph96,

Qu’est-ce que tu as utilisé comme code ?
Je me bat avec un ESP01 de une carte 1 relai et une 2 relais, pas moyen de les déclencher.
J’ai lu des post sur le forum international, j’ai testé par mal de configuration sans résultat.

J’ai des ESP01 qui tournent sous Jeedom sans souci, c’est pour cela que je teste avant de basculer sous HA

bonsoir,

oui l’ESP01 est assez susceptible au niveau de ses E/S

voilà le code esphome :

esphome:
  name: "deco02-ch2"
#  platform: ESP8266
#  board: esp01_1m

esp8266:
  board: esp01_1m


# Enable logging
logger:

# Enable Home Assistant API
api:

ota:
  password: "xxx"

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password
#  use_address: 192.168.20.109
  manual_ip:
    static_ip: 192.168.20.87
    gateway: 192.168.20.1
    dns1: 192.168.20.1
    subnet: 255.255.255.0

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Est01-Test-Wifi Fallback Hotspot"
    password: "xxx"

captive_portal:



globals:
  - id: niv_bright
    type: float
    restore_value: no
    initial_value: '10'
  - id: niv_red
    type: float
    restore_value: no
    initial_value: '0'
  - id: niv_green
    type: float
    restore_value: no
    initial_value: '0'
  - id: niv_blue
    type: float
    restore_value: no
    initial_value: '0'


#################################
##### SCRIPTS
#################################
script:
  - id: reveil_progressif
    mode: restart
    then:
      - light.turn_on:
          id: neopixel_plafond
          brightness: !lambda 'return id(niv_bright) / 100;'
          red: 100%
          green: 0%
          blue: 0%
      - repeat:
          count: 1500
          then:
           - light.turn_on:
                id: neopixel_plafond
                brightness: !lambda 'return id(niv_bright) / 100;'
                red: 100%
                green: !lambda 'return id(niv_green) / 100;'
                blue: !lambda 'return id(niv_blue) / 100;'
           - lambda: 'id(niv_bright) = id(niv_bright) + 0.06;'
           - lambda: 'id(niv_green) = id(niv_green) + 0.0833;'
           - if:
                condition:
                 - lambda: 'return ( id(niv_green) ) > 100;'
                then:
                 - lambda: 'id(niv_blue) = id(niv_blue) + 0.333;'
                 - lambda: 'id(niv_green) = 100;'
           - delay: 1s


  - id: reset_variables
    mode: single
    then:
      - lambda: 'id(niv_bright) = 10;'
      - lambda: 'id(niv_red) = 0;'
      - lambda: 'id(niv_green) = 0;'
      - lambda: 'id(niv_blue) = 0;'



  - id: traitement_relais
    mode: restart
    then:

#     - if:
#        condition:
#          or:
#            - light.is_on: neopixel_plafond
#            - light.is_on: neopixel_porte
#        then:
#            - switch.turn_on: relais_alims
#            - logger.log: "allume les relais"

     - if:
        condition:
          and:
            - light.is_off: neopixel_plafond
            - light.is_off: neopixel_porte
        then:
            - switch.turn_off: relais_alims
            - logger.log: "eteins les relais"


sensor:
  - platform: wifi_signal
    name: deco02-ch2 Wifi signal
    id: deco02_ch2_wifi_signal
    update_interval: 60s
    entity_category: "diagnostic"
  - platform: copy # Reports the WiFi signal strength in %
    source_id: deco02_ch2_wifi_signal
    name: deco02-ch2 Wifi signal Percent
    filters:
      - lambda: return min(max(2 * (x + 100.0), 0.0), 100.0);
    unit_of_measurement: "%"
    entity_category: "diagnostic"

  - platform: uptime
    name: deco02-ch2 Uptime



switch:
  - platform: gpio
    id: relais_alims
    pin: GPIO0
    inverted: false

  - platform: template
    name: "Lumière réveil ch2"
    id: lumiere_reveil_ch2

    turn_on_action:
      then:
        - script.execute: reset_variables
        - script.execute: reveil_progressif


  - platform: template
    name: "arrêt réveil ch2"
    id: arret_reveil_ch2
    turn_on_action:
      then:
        - script.stop: reveil_progressif
        - script.execute: reset_variables
        - light.turn_off:
            id: neopixel_plafond


light:
  - platform: neopixelbus
    type: RGB
    variant: WS2811
    pin: GPIO3
    num_leds: 702
    name: "NeoPixel plafond"
    id: neopixel_plafond
    on_turn_on:
       - switch.turn_on: relais_alims
    on_turn_off:
       - script.execute: traitement_relais 
    effects:
      - addressable_scan:
      - addressable_scan:
          name: Scan Effect With Custom Values
          move_interval: 100ms
          scan_width: 1
      - pulse:
      - pulse:
          name: "Fast Pulse"
          transition_length: 0.5s
          update_interval: 0.5s
      - pulse:
          name: "Slow Pulse"
          transition_length: 2s      # defaults to 1s
          update_interval: 2s
      - random:
          name: Random Effect With Custom Values
          transition_length: 5s
          update_interval: 7s
      - strobe:
      - strobe:
          name: Strobe Effect With Custom Values
          colors:
            - state: true
              brightness: 100%
              red: 100%
              green: 90%
              blue: 0%
              duration: 500ms
            - state: false
              duration: 250ms
            - state: true
              brightness: 100%
              red: 0%
              green: 100%
              blue: 0%
              duration: 500ms
      - flicker:
      - flicker:
          name: Flicker Effect With Custom Values
          alpha: 95%
          intensity: 1.5%
      - addressable_rainbow:
      - addressable_rainbow:
          name: Rainbow Effect With Custom Values
          speed: 5
          width: 10
      - addressable_color_wipe:
      - addressable_color_wipe:
          name: Color Wipe Effect With Custom Values
          colors:
            - red: 100%
              green: 100%
              blue: 100%
              num_leds: 1
            - red: 0%
              green: 0%
              blue: 0%
              num_leds: 1
          add_led_interval: 100ms
          reverse: false
      - addressable_twinkle:
      - addressable_twinkle:
          name: Twinkle Effect With Custom Values
          twinkle_probability: 5%
          progress_interval: 4ms
      - addressable_fireworks:
      - addressable_fireworks:
          name: Fireworks Effect With Custom Values
          update_interval: 32ms
          spark_probability: 10%
          use_random_color: false
          fade_out_rate: 120






  - platform: neopixelbus
    type: RGB
    variant: WS2811
    pin: GPIO2
    num_leds: 273
    name: "NeoPixel porte"
    id: neopixel_porte
    on_turn_on:
     - switch.turn_on: relais_alims
    on_turn_off:
     - script.execute: traitement_relais

    effects:
      - addressable_scan:
      - addressable_scan:
          name: Scan Effect With Custom Values
          move_interval: 100ms
          scan_width: 1
      - pulse:
      - pulse:
          name: "Fast Pulse"
          transition_length: 0.5s
          update_interval: 0.5s
      - pulse:
          name: "Slow Pulse"
          transition_length: 2s      # defaults to 1s
          update_interval: 2s
      - random:
          name: Random Effect With Custom Values
          transition_length: 5s
          update_interval: 7s
      - strobe:
      - strobe:
          name: Strobe Effect With Custom Values
          colors:
            - state: true
              brightness: 100%
              red: 100%
              green: 90%
              blue: 0%
              duration: 500ms
            - state: false
              duration: 250ms
            - state: true
              brightness: 100%
              red: 0%
              green: 100%
              blue: 0%
              duration: 500ms
      - flicker:
      - flicker:
          name: Flicker Effect With Custom Values
          alpha: 95%
          intensity: 1.5%
      - addressable_rainbow:
      - addressable_rainbow:
          name: Rainbow Effect With Custom Values
          speed: 5
          width: 10
      - addressable_color_wipe:
      - addressable_color_wipe:
          name: Color Wipe Effect With Custom Values
          colors:
            - red: 100%
              green: 100%
              blue: 100%
              num_leds: 1
            - red: 0%
              green: 0%
              blue: 0%
              num_leds: 1
          add_led_interval: 100ms
          reverse: false
      - addressable_twinkle:
      - addressable_twinkle:
          name: Twinkle Effect With Custom Values
          twinkle_probability: 5%
          progress_interval: 4ms
      - addressable_fireworks:
      - addressable_fireworks:
          name: Fireworks Effect With Custom Values
          update_interval: 32ms
          spark_probability: 10%
          use_random_color: false
          fade_out_rate: 120

attention aussi aux cartes toutes faites pour esp01 de chez ali, des fois elles fonctionnent pas, en général, je fais mes propres montages

bon courage !

et voilà le schéma utilisé :

C’est cool pour s’endormir !!!

Autrement je confirme, Wled fonctionne vraiment bien !

Merci Steph96.

Désolé pour le dérangement mais j’ai trouvé tardivement, en fait c’était tout bête, je n’étais sur le bon mode sur la carte relais, il fallait appuyer sur S1 au démarrage pour basculer de mode.