Browse Source

Merge pull request 'feat/MultisyncX401S' (#1) from timo/netz39-ir-blaster:feat/MultisyncX401S into main

Reviewed-on: https://git.n39.eu/teuserer/netz39-ir-blaster/pulls/1
timo 8 months ago
parent
commit
4464b618df
3 changed files with 121 additions and 3 deletions
  1. 13 1
      README.md
  2. 95 2
      config.yaml
  3. 13 0
      scripts/crack_MultisyncX401S_4digit_PIN.py

+ 13 - 1
README.md

@@ -37,4 +37,16 @@ http://ir-blaster.n39.eu
   * OK (0x2FD847B)
   * Lauter (0x2FD58A7)
   * Leiser (0x2FD7887)
-  * On/Off (0x2FD48B7)
+  * On/Off (0x2FD48B7)
+
+## Multisync X401S
+  * Taste 0
+  * Taste 1
+  * Taste 2
+  * Taste 3
+  * Taste 4
+  * Taste 5
+  * Taste 6
+  * Taste 7
+  * Taste 8
+  * Taste 9

+ 95 - 2
config.yaml

@@ -57,12 +57,105 @@ button:
     on_press:
       - remote_transmitter.transmit_pronto:
           data: "0000 006D 0018 0000 002E 0013 002E 0013 000E 0034 002D 0013 002E 0013 000E 0034 000D 0034 000D 0034 000D 0034 000D 0034 000D 0034 002E 0117 002E 0013 002E 0013 000E 0034 002E 0013 002E 0013 000E 0034 000D 0034 000D 0034 000D 0034 000D 0034 000D 0034 002E 0181 06C3"
- 
+  - platform: template
+    name: "MultisyncX401S Taste 0"
+    on_press:
+      - remote_transmitter.transmit_raw:
+          code: [7910, -4019, 448, -546, 449, -545, 448, -1540, 448, -545, 449, -1540, 448, -1540, 449, -1540, 453, -1534, 448, -4030, 456, -537, 451, -1536, 450, -545, 449, -545, 450, -1538, 449, -547, 447, -546, 448, -545, 450]
+          repeat:
+            times: 5
+            wait_time: 16ms
+          carrier_frequency: 38kHz
+  - platform: template
+    name: "MultisyncX401S Taste 1"
+    on_press:
+      - remote_transmitter.transmit_raw:
+          code: [7903, -4024, 453, -542, 450, -521, 470, -1545, 443, -547, 448, -1538, 450, -1539, 449, -1543, 445, -1539, 448, -4030, 447, -551, 444, -544, 449, -545, 449, -1541, 447, -547, 447, -547, 447, -545, 449, -546, 451]
+          repeat:
+            times: 5
+            wait_time: 16ms
+          carrier_frequency: 38kHz
+  - platform: template
+    name: "MultisyncX401S Taste 2"
+    on_press:
+      - remote_transmitter.transmit_raw:
+          code: [7901, -4024, 454, -546, 445, -543, 449, -1539, 449, -527, 469, -1537, 451, -1538, 448, -1545, 443, -1542, 445, -4029, 448, -1540, 448, -546, 449, -544, 450, -1539, 453, -541, 451, -542, 449, -546, 450, -543, 450]
+          repeat:
+            times: 5
+            wait_time: 16ms
+          carrier_frequency: 38kHz
+  - platform: template
+    name: "MultisyncX401S Taste 3"
+    on_press:
+      - remote_transmitter.transmit_raw:
+          code: [7957, -3970, 502, -493, 501, -493, 502, -1491, 500, -494, 497, -1491, 496, -1487, 501, -1486, 511, -1477, 500, -3977, 501, -493, 502, -1487, 503, -490, 501, -1487, 501, -494, 500, -492, 502, -493, 501, -493, 501]
+          repeat:
+            times: 5
+            wait_time: 16ms
+          carrier_frequency: 38kHz
+  - platform: template
+    name: "MultisyncX401S Taste 4"
+    on_press:
+      - remote_transmitter.transmit_raw:
+          code: [7905, -4023, 475, -522, 445, -547, 447, -1540, 448, -546, 448, -1541, 447, -1541, 472, -1516, 472, -1518, 445, -4028, 449, -1540, 474, -1514, 448, -546, 448, -1545, 469, -520, 476, -517, 449, -546, 448, -546, 472]
+          repeat:
+            times: 5
+            wait_time: 16ms
+          carrier_frequency: 38kHz
+  - platform: template
+    name: "MultisyncX401S Taste 5"
+    on_press:
+      - remote_transmitter.transmit_raw:
+          code: [7901, -4021, 473, -520, 449, -545, 474, -1514, 449, -546, 451, -1537, 453, -1534, 454, -1535, 448, -1540, 448, -4028, 449, -546, 448, -545, 449, -1539, 449, -1539, 449, -545, 449, -545, 449, -546, 448, -545, 449]
+          repeat:
+            times: 5
+            wait_time: 16ms
+          carrier_frequency: 38kHz
+  - platform: template
+    name: "MultisyncX401S Taste 6"
+    on_press:
+      - remote_transmitter.transmit_raw:
+          code: [7903, -4024, 450, -544, 449, -544, 477, -1512, 451, -545, 473, -1513, 449, -1538, 451, -1538, 450, -1538, 449, -4027, 451, -1538, 449, -545, 452, -1536, 472, -1515, 449, -546, 455, -538, 449, -545, 450, -545, 450]
+          repeat:
+            times: 5
+            wait_time: 16ms
+          carrier_frequency: 38kHz
+  - platform: template
+    name: "MultisyncX401S Taste 7"
+    on_press:
+      - remote_transmitter.transmit_raw:
+          code: [7903, -4024, 448, -546, 448, -549, 446, -1543, 444, -546, 448, -1540, 448, -1540, 448, -1543, 451, -1538, 444, -4028, 449, -545, 453, -1541, 444, -1539, 448, -1541, 447, -531, 463, -546, 448, -545, 449, -546, 453]
+          repeat:
+            times: 5
+            wait_time: 16ms
+          carrier_frequency: 38kHz
+  - platform: template
+    name: "MultisyncX401S Taste 8"
+    on_press:
+      - remote_transmitter.transmit_raw:
+          code: [7904, -4024, 448, -546, 449, -547, 446, -1539, 449, -546, 448, -1544, 446, -1539, 447, -1540, 449, -1540, 447, -4031, 450, -1540, 444, -1540, 448, -1539, 449, -1540, 448, -547, 447, -547, 448, -544, 449, -545, 449]
+          repeat:
+            times: 5
+            wait_time: 16ms
+          carrier_frequency: 38kHz
+  - platform: template
+    name: "MultisyncX401S Taste 9"
+    on_press:
+      - remote_transmitter.transmit_raw:
+          code: [7904, -4024, 449, -545, 448, -545, 450, -1540, 447, -546, 449, -1539, 448, -1547, 442, -1539, 448, -1540, 526, -3951, 448, -546, 448, -548, 446, -545, 449, -546, 448, -1541, 449, -547, 445, -549, 445, -545, 450]
+          repeat:
+            times: 5
+            wait_time: 16ms
+          carrier_frequency: 38kHz
+
+
 remote_receiver:
   pin: 
     number: GPIO2
     inverted: True
+    mode: INPUT_PULLUP
   dump: all
+# Change to dump: all to see all protocols, use dump: raw to see raw codes
 
 remote_transmitter:
   pin: GPIO04
@@ -75,4 +168,4 @@ sensor:
     name: Uptime Sensor
   - platform: wifi_signal
     name: "WiFi Signal Sensor"
-    update_interval: 60s
+    update_interval: 60s

+ 13 - 0
scripts/crack_MultisyncX401S_4digit_PIN.py

@@ -0,0 +1,13 @@
+import requests
+import time
+from tqdm import tqdm
+
+url = "http://ir-blaster.n39.eu/button/multisyncx401s_taste_%s/press"
+
+for i in tqdm(range(0000, 10000)):
+    num_str = f"{i:04d}"
+    print(f"Sending: {num_str}")
+    for digit in num_str:
+        requests.post(url % digit)
+        time.sleep(0.35)
+    time.sleep(0.35)