mcp23017: - id: "mcp23xxx_hub1_IN" address: 0x20 - id: "mcp23xxx_hub2_IN" address: 0x22 - id: "mcp23xxx_hub3_IN" address: 0x24 binary_sensor: ################## #mcp23xxx_hub1_IN# ################## # Wejście 1 — single: halogeny wejście, triple: wyłącz lampy, long: wyłącz wentylatory - platform: gpio name: "hub1_in0" id: hub1_in0 pin: mcp23xxx: mcp23xxx_hub1_IN number: 0 mode: INPUT inverted: True on_multi_click: - timing: - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: hub1_out15 - timing: - ON for at most 350ms - OFF for at most 350ms - ON for at most 350ms - OFF for at most 350ms - ON for at most 350ms - OFF for at least 350ms then: - script.execute: off_all_lights - timing: - ON for at least 350ms then: - script.execute: off_all_fans # Wejście 3 — brak automatyzacji w Node-RED - platform: gpio name: "hub1_in1" id: hub1_in1 pin: mcp23xxx: mcp23xxx_hub1_IN number: 1 mode: INPUT inverted: True # Wejście 2 — single: hub1_out14, triple: WLED korytarz kinkiety - platform: gpio name: "hub1_in2" id: hub1_in2 pin: mcp23xxx: mcp23xxx_hub1_IN number: 2 mode: INPUT inverted: True on_multi_click: - timing: - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: hub1_out14 - timing: - ON for at most 350ms - OFF for at most 350ms - ON for at most 350ms - OFF for at most 350ms - ON for at most 350ms - OFF for at least 350ms then: - script.execute: wled_korytarz_kinkiety_toggle # Sypialnia 3 — single: turn_on hub2_out12+hub2_out1, double: toggle hub2_out12+hub2_out1 - platform: gpio name: "hub1_in3" id: hub1_in3 pin: mcp23xxx: mcp23xxx_hub1_IN number: 3 mode: INPUT inverted: True on_multi_click: - timing: - ON for at most 350ms - OFF for at least 350ms then: - light.turn_on: hub2_out12 - light.turn_on: hub2_out1 - timing: - ON for at most 350ms - OFF for at most 350ms - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: hub2_out12 - light.toggle: hub2_out1 # Sypialnia 1 — single: sypialnia LED - platform: gpio name: "hub1_in4" id: hub1_in4 pin: mcp23xxx: mcp23xxx_hub1_IN number: 4 mode: INPUT inverted: True on_multi_click: - timing: - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: sypialnia_led # Sypialnia 2 — single: hub2_out7 - platform: gpio name: "hub1_in5" id: hub1_in5 pin: mcp23xxx: mcp23xxx_hub1_IN number: 5 mode: INPUT inverted: True on_multi_click: - timing: - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: hub2_out7 # Sypialnia Łóżko Prawa Strona — single: hub2_out1, double: hub2_out12+hub2_out1, long: wyłącz wszystkie - platform: gpio name: "hub1_in6" id: hub1_in6 pin: mcp23xxx: mcp23xxx_hub1_IN number: 6 mode: INPUT inverted: True on_multi_click: - timing: - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: hub2_out1 - timing: - ON for at most 350ms - OFF for at most 350ms - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: hub2_out12 - light.toggle: hub2_out1 - timing: - ON for at least 350ms then: - script.execute: off_all_lights - script.execute: off_all_fans # Sypialnia Łóżko Lewa Strona — single: hub2_out12, double: hub2_out12+hub2_out1, long: wyłącz wszystkie - platform: gpio name: "hub1_in7" id: hub1_in7 pin: mcp23xxx: mcp23xxx_hub1_IN number: 7 mode: INPUT inverted: True on_multi_click: - timing: - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: hub2_out12 - timing: - ON for at most 350ms - OFF for at most 350ms - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: hub2_out12 - light.toggle: hub2_out1 - timing: - ON for at least 350ms then: - script.execute: off_all_lights - script.execute: off_all_fans # Niebieski Pokój Lewy — single: hub2_out10, double: hub1_out7 - platform: gpio name: "hub1_in8" id: hub1_in8 pin: mcp23xxx: mcp23xxx_hub1_IN number: 8 mode: INPUT inverted: True on_multi_click: - timing: - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: hub2_out10 - timing: - ON for at most 350ms - OFF for at most 350ms - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: hub1_out7 # Niebieski Pokój Prawy — bezpośredni toggle pokój dla gości LED (bez gestów) - platform: gpio name: "hub1_in9" id: hub1_in9 pin: mcp23xxx: mcp23xxx_hub1_IN number: 9 mode: INPUT inverted: True on_click: min_length: 50ms max_length: 1000ms then: - light.toggle: pokoj_dla_gosci_led # Nie podpięte - platform: gpio name: "hub1_in10" id: hub1_in10 pin: mcp23xxx: mcp23xxx_hub1_IN number: 10 mode: INPUT inverted: True - platform: gpio name: "hub1_in11" id: hub1_in11 pin: mcp23xxx: mcp23xxx_hub1_IN number: 11 mode: INPUT inverted: True - platform: gpio name: "hub1_in12" id: hub1_in12 pin: mcp23xxx: mcp23xxx_hub1_IN number: 12 mode: INPUT inverted: True - platform: gpio name: "hub1_in13" id: hub1_in13 pin: mcp23xxx: mcp23xxx_hub1_IN number: 13 mode: INPUT inverted: True - platform: gpio name: "hub1_in14" id: hub1_in14 pin: mcp23xxx: mcp23xxx_hub1_IN number: 14 mode: INPUT inverted: True - platform: gpio name: "hub1_in15" id: hub1_in15 pin: mcp23xxx: mcp23xxx_hub1_IN number: 15 mode: INPUT inverted: True ################## #mcp23xxx_hub2_IN# ################## # Korytarz 2 — single: hub1_out15 - platform: gpio name: "hub2_in0" id: hub2_in0 pin: mcp23xxx: mcp23xxx_hub2_IN number: 0 mode: INPUT inverted: True on_multi_click: - timing: - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: hub1_out15 # Korytarz 3 — single: WLED korytarz kinkiety, long: wyłącz wszystkie - platform: gpio name: "hub2_in1" id: hub2_in1 pin: mcp23xxx: mcp23xxx_hub2_IN number: 1 mode: INPUT inverted: True on_multi_click: - timing: - ON for at most 350ms - OFF for at least 350ms then: - script.execute: wled_korytarz_kinkiety_toggle - timing: - ON for at least 350ms then: - script.execute: off_all_lights - script.execute: off_all_fans # Korytarz 1 — single: hub1_out14, long: wyłącz wszystkie - platform: gpio name: "hub2_in2" id: hub2_in2 pin: mcp23xxx: mcp23xxx_hub2_IN number: 2 mode: INPUT inverted: True on_multi_click: - timing: - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: hub1_out14 - timing: - ON for at least 350ms then: - script.execute: off_all_lights - script.execute: off_all_fans # Mały Korytarz — brak automatyzacji w Node-RED - platform: gpio name: "hub2_in3" id: hub2_in3 pin: mcp23xxx: mcp23xxx_hub2_IN number: 3 mode: INPUT inverted: True # Garderoba Mała — single: hub2_out14, double: hub3_out2 (wentylator) - platform: gpio name: "hub2_in4" id: hub2_in4 pin: mcp23xxx: mcp23xxx_hub2_IN number: 4 mode: INPUT inverted: True on_multi_click: - timing: - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: hub2_out14 - timing: - ON for at most 350ms - OFF for at most 350ms - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: hub3_out2 # Kuchnia 3_1 — single: hub1_out8 - platform: gpio name: "hub2_in5" id: hub2_in5 pin: mcp23xxx: mcp23xxx_hub2_IN number: 5 mode: INPUT inverted: True on_multi_click: - timing: - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: hub1_out8 # Kuchnia 3_2 — single: jadalnia LED - platform: gpio name: "hub2_in6" id: hub2_in6 pin: mcp23xxx: mcp23xxx_hub2_IN number: 6 mode: INPUT inverted: True on_multi_click: - timing: - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: jadalnia_led # Kuchnia 2_1 — single: hub1_out3, triple: wyłącz lampy, long: wyłącz wentylatory - platform: gpio name: "hub2_in7" id: hub2_in7 pin: mcp23xxx: mcp23xxx_hub2_IN number: 7 mode: INPUT inverted: True on_multi_click: - timing: - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: hub1_out3 - timing: - ON for at most 350ms - OFF for at most 350ms - ON for at most 350ms - OFF for at most 350ms - ON for at most 350ms - OFF for at least 350ms then: - script.execute: off_all_lights - timing: - ON for at least 350ms then: - script.execute: off_all_fans # Kuchnia 2_2 — single: kuchnia łezka LED - platform: gpio name: "hub2_in8" id: hub2_in8 pin: mcp23xxx: mcp23xxx_hub2_IN number: 8 mode: INPUT inverted: True on_multi_click: - timing: - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: kuchnia_lezka_led # Kuchnia 1_1 — single: hub2_out11, double: WLED salon wentylator - platform: gpio name: "hub2_in9" id: hub2_in9 pin: mcp23xxx: mcp23xxx_hub2_IN number: 9 mode: INPUT inverted: True on_multi_click: - timing: - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: hub2_out11 - timing: - ON for at most 350ms - OFF for at most 350ms - ON for at most 350ms - OFF for at least 350ms then: - script.execute: wled_salon_wentylator_toggle # Kuchnia 1_2 — single: WLED komin+salon kinkiety toggle, double: WLED komin on, long: WLED komin on - platform: gpio name: "hub2_in10" id: hub2_in10 pin: mcp23xxx: mcp23xxx_hub2_IN number: 10 mode: INPUT inverted: True on_multi_click: - timing: - ON for at most 350ms - OFF for at least 350ms then: - script.execute: wled_komin_toggle - script.execute: wled_salon_kinkiety_toggle - timing: - ON for at most 350ms - OFF for at most 350ms - ON for at most 350ms - OFF for at least 350ms then: - script.execute: wled_komin_on - timing: - ON for at least 350ms then: - script.execute: wled_komin_on # Schody 3 — single: WLED oczka taras + skrzynia + tunel + zwis schody toggle - platform: gpio name: "hub2_in11" id: hub2_in11 pin: mcp23xxx: mcp23xxx_hub2_IN number: 11 mode: INPUT inverted: True on_multi_click: - timing: - ON for at most 350ms - OFF for at least 350ms then: - script.execute: wled_schody_all_toggle # Schody 1 — single: hub2_out11 - platform: gpio name: "hub2_in12" id: hub2_in12 pin: mcp23xxx: mcp23xxx_hub2_IN number: 12 mode: INPUT inverted: True on_multi_click: - timing: - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: hub2_out11 # Schody 2 — single: WLED salon kinkiety toggle, double: WLED salon kinkiety off, long: WLED komin toggle - platform: gpio name: "hub2_in13" id: hub2_in13 pin: mcp23xxx: mcp23xxx_hub2_IN number: 13 mode: INPUT inverted: True on_multi_click: - timing: - ON for at most 350ms - OFF for at least 350ms then: - script.execute: wled_salon_kinkiety_toggle - timing: - ON for at most 350ms - OFF for at most 350ms - ON for at most 350ms - OFF for at least 350ms then: - script.execute: wled_salon_kinkiety_off - timing: - ON for at least 350ms then: - script.execute: wled_komin_toggle # Nie podpięte - platform: gpio name: "hub2_in14" id: hub2_in14 pin: mcp23xxx: mcp23xxx_hub2_IN number: 14 mode: INPUT inverted: True - platform: gpio name: "hub2_in15" id: hub2_in15 pin: mcp23xxx: mcp23xxx_hub2_IN number: 15 mode: INPUT inverted: True ################## #mcp23xxx_hub3_IN# ################## # Garderoba Duża Lewy — single: hub1_out7 - platform: gpio name: "hub3_in0" id: hub3_in0 pin: mcp23xxx: mcp23xxx_hub3_IN number: 0 mode: INPUT inverted: True on_multi_click: - timing: - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: hub1_out7 # Garderoba Duża Prawy — single: hub1_out7 - platform: gpio name: "hub3_in1" id: hub3_in1 pin: mcp23xxx: mcp23xxx_hub3_IN number: 1 mode: INPUT inverted: True on_multi_click: - timing: - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: hub1_out7 # SPA Lewy — single: hub2_out13, triple: hub1_out4 (wentylator) - platform: gpio name: "hub3_in2" id: hub3_in2 pin: mcp23xxx: mcp23xxx_hub3_IN number: 2 mode: INPUT inverted: True on_multi_click: - timing: - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: hub2_out13 - timing: - ON for at most 350ms - OFF for at most 350ms - ON for at most 350ms - OFF for at most 350ms - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: hub1_out4 # SPA Prawy — single: hub1_out4+hub1_out10, triple: SPA Ledy - platform: gpio name: "hub3_in3" id: hub3_in3 pin: mcp23xxx: mcp23xxx_hub3_IN number: 3 mode: INPUT inverted: True on_multi_click: - timing: - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: hub1_out4 - light.toggle: hub1_out10 - timing: - ON for at most 350ms - OFF for at most 350ms - ON for at most 350ms - OFF for at most 350ms - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: spa_ledy # Biała Łazienka Ściana — single: hub2_out0, double: biała łazienka wanna LED, long: hub2_out8 (wentylator) - platform: gpio name: "hub3_in4" id: hub3_in4 pin: mcp23xxx: mcp23xxx_hub3_IN number: 4 mode: INPUT inverted: True on_multi_click: - timing: - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: hub2_out0 - timing: - ON for at most 350ms - OFF for at most 350ms - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: biala_lazienka_wanna_led - timing: - ON for at least 350ms then: - light.toggle: hub2_out8 # Małe WC Lustro Prawy — bezpośredni toggle hub2_out2 + WLED wc_led + hub2_out5 (wentylator) - platform: gpio name: "hub3_in5" id: hub3_in5 pin: mcp23xxx: mcp23xxx_hub3_IN number: 5 mode: INPUT inverted: True on_click: min_length: 50ms max_length: 1000ms then: - light.toggle: hub2_out2 - light.toggle: hub2_out5 - script.execute: wled_wc_led_toggle # Małe WC Lustro Lewy — bezpośredni toggle hub1_out9 - platform: gpio name: "hub3_in6" id: hub3_in6 pin: mcp23xxx: mcp23xxx_hub3_IN number: 6 mode: INPUT inverted: True on_click: min_length: 50ms max_length: 1000ms then: - light.toggle: hub1_out9 # Biała Łazienka Skos — single: hub2_out4 - platform: gpio name: "hub3_in7" id: hub3_in7 pin: mcp23xxx: mcp23xxx_hub3_IN number: 7 mode: INPUT inverted: True on_multi_click: - timing: - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: hub2_out4 # SPA Lustro Lewy — single: hub1_out5 - platform: gpio name: "hub3_in8" id: hub3_in8 pin: mcp23xxx: mcp23xxx_hub3_IN number: 8 mode: INPUT inverted: True on_multi_click: - timing: - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: hub1_out5 # SPA Lustro Prawy — single: hub1_out1 - platform: gpio name: "hub3_in9" id: hub3_in9 pin: mcp23xxx: mcp23xxx_hub3_IN number: 9 mode: INPUT inverted: True on_multi_click: - timing: - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: hub1_out1 # Biuro Skos — single: hub1_out2, double: serwer LED wyłącz - platform: gpio name: "hub3_in10" id: hub3_in10 pin: mcp23xxx: mcp23xxx_hub3_IN number: 10 mode: INPUT inverted: True on_multi_click: - timing: - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: hub1_out2 - timing: - ON for at most 350ms - OFF for at most 350ms - ON for at most 350ms - OFF for at least 350ms then: - light.turn_off: serwer_led # Serwer Prawy — single: serwer LED, double: hub1_out2, triple: hub3_out2 (wentylator) - platform: gpio name: "hub3_in11" id: hub3_in11 pin: mcp23xxx: mcp23xxx_hub3_IN number: 11 mode: INPUT inverted: True on_multi_click: - timing: - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: serwer_led - timing: - ON for at most 350ms - OFF for at most 350ms - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: hub1_out2 - timing: - ON for at most 350ms - OFF for at most 350ms - ON for at most 350ms - OFF for at most 350ms - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: hub3_out2 # Serwer Lewy — single: hub1_out14, triple: wyłącz lampy, long: wyłącz wentylatory - platform: gpio name: "hub3_in12" id: hub3_in12 pin: mcp23xxx: mcp23xxx_hub3_IN number: 12 mode: INPUT inverted: True on_multi_click: - timing: - ON for at most 350ms - OFF for at least 350ms then: - light.toggle: hub1_out14 - timing: - ON for at most 350ms - OFF for at most 350ms - ON for at most 350ms - OFF for at most 350ms - ON for at most 350ms - OFF for at least 350ms then: - script.execute: off_all_lights - timing: - ON for at least 350ms then: - script.execute: off_all_fans # Nie podpięte - platform: gpio name: "hub3_in13" id: hub3_in13 pin: mcp23xxx: mcp23xxx_hub3_IN number: 13 mode: INPUT inverted: True - platform: gpio name: "hub3_in14" id: hub3_in14 pin: mcp23xxx: mcp23xxx_hub3_IN number: 14 mode: INPUT inverted: True - platform: gpio name: "hub3_in15" id: hub3_in15 pin: mcp23xxx: mcp23xxx_hub3_IN number: 15 mode: INPUT inverted: True