Skip to content

Commit ce13654

Browse files
committed
decode-config.py: adapt settings
- fix GPIO (my_gp) - fix -g/--group filter - change Tariff* (-register8/+tariff*) - add (missing) cmnd Adc (my_adc0) - add MqttLog (mqttlog_level) - add Sensor34 8 x (hx711_json_weight_change) - add SetOption71 (dds2382_model) - add SetOption72 (hardware_energy_total) - add SetOption80 (shutter_mode) - add SetOption81 (pcf8574_ports_inverted) - add Shutter* (shutter*)
1 parent 5fa7512 commit ce13654

File tree

3 files changed

+59
-10
lines changed

3 files changed

+59
-10
lines changed

tools/decode-config.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -219,7 +219,7 @@ <h3 id="filter-data">Filter data</h3>
219219
[--cmnd-indent &lt;indent&gt;] [--cmnd-groups]
220220
[--cmnd-nogroups] [--cmnd-<span class="hljs-keyword">sort</span>] [--cmnd-unsort]
221221
[-c &lt;filename&gt;] [-S] [-T json|cmnd|command]
222-
[-<span class="hljs-keyword">g</span> {Control,Devices,<span class="hljs-keyword">Display</span>,Domoticz,Internal,KNX,Light,MQTT,Management,Power,Rules,Sensor,Serial,SetOption,SonoffRF,System,<span class="hljs-keyword">Timer</span>,Wifi} [{Control,Devices,<span class="hljs-keyword">Display</span>,Domoticz,Internal,KNX,Light,MQTT,Management,Power,Rules,Sensor,Serial,SetOption,SonoffRF,System,<span class="hljs-keyword">Timer</span>,Wifi} ...]]
222+
[-g {Control,Devices,Display,Domoticz,Internal,KNX,Light,MQTT,Management,Power,Rules,Sensor,Serial,SetOption,SonoffRF,System,Timer,Wifi} [{Control,Devices,Display,Domoticz,Internal,KNX,Light,MQTT,Management,Power,Rules,Sensor,Serial,SetOption,SonoffRF,System,Timer,Wifi} ...]]
223223
[--ignore-warnings] [-<span class="hljs-keyword">h</span>] [-<span class="hljs-keyword">H</span>] [-v] [-V]
224224

225225
Backup/<span class="hljs-keyword">Restore</span> Sonoff-Tasmota configuration data. <span class="hljs-keyword">Args</span> that start with '--'
@@ -299,7 +299,7 @@ <h3 id="filter-data">Filter data</h3>
299299
(default <span class="hljs-keyword">do</span> not output <span class="hljs-keyword">on</span> backup or <span class="hljs-keyword">restore</span> usage)
300300
-T, --output-<span class="hljs-keyword">format</span> json|cmnd|command
301301
<span class="hljs-keyword">display</span> output <span class="hljs-keyword">format</span> (default: 'json')
302-
-<span class="hljs-keyword">g</span>, --group {Control,Devices,<span class="hljs-keyword">Display</span>,Domoticz,Internal,KNX,Light,MQTT,Management,Power,Rules,Sensor,Serial,SetOption,SonoffRF,System,<span class="hljs-keyword">Timer</span>,Wifi}
302+
-g, --group {Control,Devices,Display,Domoticz,Internal,Knx,Light,Management,Mqtt,Power,Rules,Sensor,Serial,Setoption,Shutter,Sonoffrf,System,Timer,Wifi}
303303
limit data processing to command groups (default <span class="hljs-keyword">no</span>
304304
filter)
305305
--ignore-warnings <span class="hljs-keyword">do</span> not <span class="hljs-keyword">exit</span> <span class="hljs-keyword">on</span> warnings. Not recommended, used <span class="hljs-keyword">by</span> your

tools/decode-config.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -237,7 +237,7 @@ For advanced help use `-H` or `--full-help`:
237237
[--cmnd-indent <indent>] [--cmnd-groups]
238238
[--cmnd-nogroups] [--cmnd-sort] [--cmnd-unsort]
239239
[-c <filename>] [-S] [-T json|cmnd|command]
240-
[-g {Control,Devices,Display,Domoticz,Internal,KNX,Light,MQTT,Management,Power,Rules,Sensor,Serial,SetOption,SonoffRF,System,Timer,Wifi} [{Control,Devices,Display,Domoticz,Internal,KNX,Light,MQTT,Management,Power,Rules,Sensor,Serial,SetOption,SonoffRF,System,Timer,Wifi} ...]]
240+
[-g {Control,Devices,Display,Domoticz,Internal,Knx,Light,Management,Mqtt,Power,Rules,Sensor,Serial,Setoption,Shutter,Sonoffrf,System,Timer,Wifi} [{Control,Devices,Display,Domoticz,Internal,Knx,Light,Management,Mqtt,Power,Rules,Sensor,Serial,Setoption,Shutter,Sonoffrf,System,Timer,Wifi} ...]]
241241
[--ignore-warnings] [-h] [-H] [-v] [-V]
242242

243243
Backup/Restore Sonoff-Tasmota configuration data. Args that start with '--'
@@ -317,7 +317,7 @@ For advanced help use `-H` or `--full-help`:
317317
(default do not output on backup or restore usage)
318318
-T, --output-format json|cmnd|command
319319
display output format (default: 'json')
320-
-g, --group {Control,Devices,Display,Domoticz,Internal,KNX,Light,MQTT,Management,Power,Rules,Sensor,Serial,SetOption,SonoffRF,System,Timer,Wifi}
320+
-g, --group {Control,Devices,Display,Domoticz,Internal,Knx,Light,Management,Mqtt,Power,Rules,Sensor,Serial,Setoption,Shutter,Sonoffrf,System,Timer,Wifi}
321321
limit data processing to command groups (default no
322322
filter)
323323
--ignore-warnings do not exit on warnings. Not recommended, used by your

tools/decode-config.py

Lines changed: 55 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#!/usr/bin/env python
22
# -*- coding: utf-8 -*-
3-
VER = '2.3.0034'
3+
VER = '2.3.0035'
44

55
"""
66
decode-config.py - Backup/Restore Sonoff-Tasmota configuration data
@@ -43,7 +43,7 @@
4343
[--cmnd-indent <indent>] [--cmnd-groups]
4444
[--cmnd-nogroups] [--cmnd-sort] [--cmnd-unsort]
4545
[-c <filename>] [-S] [-T json|cmnd|command]
46-
[-g {Control,Devices,Display,Domoticz,Internal,KNX,Light,MQTT,Management,Power,Rules,Sensor,Serial,SetOption,SonoffRF,System,Timer,Wifi} [{Control,Devices,Display,Domoticz,Internal,KNX,Light,MQTT,Management,Power,Rules,Sensor,Serial,SetOption,SonoffRF,System,Timer,Wifi} ...]]
46+
[-g {Control,Devices,Display,Domoticz,Internal,Knx,Light,Management,Mqtt,Power,Rules,Sensor,Serial,Setoption,Shutter,Sonoffrf,System,Timer,Wifi} [{Control,Devices,Display,Domoticz,Internal,Knx,Light,Management,Mqtt,Power,Rules,Sensor,Serial,Setoption,Shutter,Sonoffrf,System,Timer,Wifi} ...]]
4747
[--ignore-warnings] [-h] [-H] [-v] [-V]
4848
4949
Backup/Restore Sonoff-Tasmota configuration data. Args that start with '--'
@@ -123,7 +123,7 @@
123123
(default do not output on backup or restore usage)
124124
-T, --output-format json|cmnd|command
125125
display output format (default: 'json')
126-
-g, --group {Control,Devices,Display,Domoticz,Internal,KNX,Light,MQTT,Management,Power,Rules,Sensor,Serial,SetOption,SonoffRF,System,Timer,Wifi}
126+
-g, --group {Control,Devices,Display,Domoticz,Internal,Knx,Light,Management,Mqtt,Power,Rules,Sensor,Serial,Setoption,Shutter,Sonoffrf,System,Timer,Wifi}
127127
limit data processing to command groups (default no
128128
filter)
129129
--ignore-warnings do not exit on warnings. Not recommended, used by your
@@ -832,6 +832,9 @@ def WebSensor(value, idx):
832832
})
833833
# ======================================================================
834834
Setting_6_4_1_8 = copy.deepcopy(Setting_6_4_1_7)
835+
Setting_6_4_1_8.update ({
836+
'my_gp': ('B', 0x484, ([17], None, ('Management', '"Gpio{} {}".format(#,$)')) ),
837+
})
835838
Setting_6_4_1_8['flag3'][0].update ({
836839
'split_interlock': ('<L', (0x3A0,1,13), (None, None, ('SetOption', '"SetOption63 {}".format($)')) ),
837840
})
@@ -908,7 +911,12 @@ def WebSensor(value, idx):
908911
'no_power_feedback': ('<L', (0x3A0,1,13), (None, None, ('SetOption', '"SetOption63 {}".format($)')) ),
909912
})
910913
# ======================================================================
911-
Setting_6_5_0_11 = copy.deepcopy(Setting_6_5_0_9)
914+
Setting_6_5_0_10 = copy.deepcopy(Setting_6_5_0_9)
915+
Setting_6_5_0_10.update ({
916+
'my_adc0': ('B', 0x495, (None, None, ('Sensor', '"Adc {}".format($)')) ),
917+
})
918+
# ======================================================================
919+
Setting_6_5_0_11 = copy.deepcopy(Setting_6_5_0_10)
912920
Setting_6_5_0_11['flag3'][0].update ({
913921
'use_underscore': ('<L', (0x3A0,1,14), (None, None, ('SetOption', '"SetOption64 {}".format($)')) ),
914922
})
@@ -1015,7 +1023,48 @@ def WebSensor(value, idx):
10151023
'energy_weekend': ('<L', (0x3A0,1,20), (None, None, ('Power', '"Tariff9 {}".format($)')) ),
10161024
})
10171025
# ======================================================================
1026+
Setting_6_6_0_13 = copy.deepcopy(Setting_6_6_0_12)
1027+
Setting_6_6_0_13['SensorBits1'][0].update ({
1028+
'hx711_json_weight_change': ('B', (0x717,1, 6), (None, None, ('Sensor', '"Sensor34 8 {}".format($)')) ),
1029+
})
1030+
# ======================================================================
1031+
Setting_6_6_0_14 = copy.deepcopy(Setting_6_6_0_13)
1032+
Setting_6_6_0_14.pop('register8_ENERGY_TARIFF1_ST',None)
1033+
Setting_6_6_0_14.pop('register8_ENERGY_TARIFF2_ST',None)
1034+
Setting_6_6_0_14.pop('register8_ENERGY_TARIFF1_DS',None)
1035+
Setting_6_6_0_14.pop('register8_ENERGY_TARIFF2_DS',None)
1036+
Setting_6_6_0_14.update ({
1037+
'register8': ('B', 0x1D6, ([16], None, ('Power', None)) ),
1038+
'tariff1_0': ('<H', 0xE30, (None, None, ('Power', '"Tariff1 {:02d}:{:02d},{:02d}:{:02d}".format(@["tariff1_0"]/60,@["tariff1_0"]%60,@["tariff1_1"]/60,@["tariff1_1"]%60)')) ),
1039+
'tariff1_1': ('<H', 0xE32, (None, None, ('Power', None)) ),
1040+
'tariff2_0': ('<H', 0xE34, (None, None, ('Power', '"Tariff2 {:02d}:{:02d},{:02d}:{:02d}".format(@["tariff2_0"]/60,@["tariff2_0"]%60,@["tariff2_1"]/60,@["tariff2_1"]%60)')) ),
1041+
'tariff2_1': ('<H', 0xE36, (None, None, ('Power', None)) ),
1042+
'mqttlog_level': ('B', 0x1E7, (None, None, ('Management', '"MqttLog {}".format($)')) ),
1043+
'pcf8574_config': ('B', 0xE88, ([8], None, ('Devices', None)) ),
1044+
'shutter_accuracy': ('B', 0x1E6, (None, None, ('Shutter', None)) ),
1045+
'shutter_opentime': ('<H', 0xE40, ([4], None, ('Shutter', '"ShutterOpenDuration{} {:.1f}".format(#,$/10)')) ),
1046+
'shutter_closetime': ('<H', 0xE48, ([4], None, ('Shutter', '"ShutterCloseDuration{} {:.1f}".format(#,$/10)')) ),
1047+
'shuttercoeff': ('<H', 0xE50, ([5,4],None, ('Shutter', None)) ),
1048+
'shutter_invert': ('B', 0xE78, ([4], None, ('Shutter', '"ShutterInvert{} {}".format(#,$)')) ),
1049+
'shutter_set50percent': ('B', 0xE7C, ([4], None, ('Shutter', '"ShutterSetHalfway{} {}".format(#,$)')) ),
1050+
'shutter_position': ('B', 0xE80, ([4], None, ('Shutter', '"ShutterPosition{} {}".format(#,$)')) ),
1051+
'shutter_startrelay': ('B', 0xE84, ([4], None, ('Shutter', '"ShutterRelay{} {}".format(#,$)')) ),
1052+
})
1053+
Setting_6_6_0_14['flag3'][0].update ({
1054+
'dds2382_model': ('<L', (0x3A0,1,21), (None, None, ('SetOption', '"SetOption71 {}".format($)')) ),
1055+
'shutter_mode': ('<L', (0x3A0,1,30), (None, None, ('SetOption', '"SetOption80 {}".format($)')) ),
1056+
'pcf8574_ports_inverted': ('<L', (0x3A0,1,31), (None, None, ('SetOption', '"SetOption81 {}".format($)')) ),
1057+
})
1058+
# ======================================================================
1059+
Setting_6_6_0_15 = copy.deepcopy(Setting_6_6_0_14)
1060+
Setting_6_6_0_15['flag3'][0].update ({
1061+
'hardware_energy_total': ('<L', (0x3A0,1,22), (None, None, ('SetOption', '"SetOption72 {}".format($)')) ),
1062+
})
1063+
# ======================================================================
10181064
Settings = [
1065+
(0x606000F,0x1000, Setting_6_6_0_15),
1066+
(0x606000E,0x1000, Setting_6_6_0_14),
1067+
(0x606000D,0x1000, Setting_6_6_0_13),
10191068
(0x606000C,0x1000, Setting_6_6_0_12),
10201069
(0x606000B,0x1000, Setting_6_6_0_11),
10211070
(0x606000A,0x1000, Setting_6_6_0_10),
@@ -1030,7 +1079,7 @@ def WebSensor(value, idx):
10301079
(0x605000F, 0xe00, Setting_6_5_0_15),
10311080
(0x605000C, 0xe00, Setting_6_5_0_12),
10321081
(0x605000B, 0xe00, Setting_6_5_0_11),
1033-
(0x605000B, 0xe00, Setting_6_5_0_11),
1082+
(0x605000A, 0xe00, Setting_6_5_0_10),
10341083
(0x6050009, 0xe00, Setting_6_5_0_9),
10351084
(0x6050007, 0xe00, Setting_6_5_0_7),
10361085
(0x6050006, 0xe00, Setting_6_5_0_6),
@@ -2162,7 +2211,7 @@ def IsFilterGroup(group):
21622211
if group is None:
21632212
return False
21642213
if group == '*':
2165-
return False
2214+
return True
21662215
if group.title() != INTERNAL.title() and group.title() not in (groupname.title() for groupname in args.filter):
21672216
return False
21682217
return True

0 commit comments

Comments
 (0)