瀏覽代碼

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 月之前
父節點
當前提交
4464b618df
共有 3 個文件被更改,包括 121 次插入3 次删除
  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)