Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add 1FC9 binding logs for Vasco and ClimaRad #159

Open
wants to merge 7 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions src/ramses_tx/parsers.py
Original file line number Diff line number Diff line change
Expand Up @@ -1294,6 +1294,7 @@ def _parser(seqx: str) -> list[str]:
if seqx[:2] not in (
"21", # HVAC, Nuaire
"63", # HVAC
"65", # HVAC, ClimaRad
"66", # HVAC, Vasco
"67", # HVAC
"6C", # HVAC
Expand Down
32 changes: 32 additions & 0 deletions tests/tests/bindings/hvac/rem_fan_climarad.log
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
####################################################################################################
# Climarad Remote binding to a PIV
# - Supplicant, REM: Climarad 4-button remote (VMN-07LM01)
# - Respondent, FAN: Climarad MiniBox FAN (VMC-07RP01)



####################################################################################################
# 1. For reference, 10E0s (if any), oem_code='65' (Note: REM/FAN won't RP|10E0):
2024-10-16T21:32:07.084793 073 I --- 29:123150 63:262142 --:------ 10E0 029 000001C8410D0165FFFFFFFFFFFF0D0407DF564D4E2D30374C4D303100 # {'description': 'VMN-07LM01', 'manufacturer_sub_id': 'C8', 'product_id': '41', 'date_1': '2015-04-13', 'date_2': '0000-00-00', 'oem_code': '65'} # ClimaRad 4-button remote
2024-10-16T18:43:52.761437 087 I --- 29:099029 63:262142 --:------ 10E0 029 000001C81D150765FFFFFFFFFFFFFFFFFFFF564D432D30375250303100 # {'description': 'VMC-07RP01', 'manufacturer_sub_id': 'C8', 'product_id': '1D', 'date_1': '0000-00-00', 'date_2': '0000-00-00', 'oem_code': '65'} # ClimaRad MiniBox Fan



####################################################################################################
# 2. The handshake (NB: FAN|W|1FC9|00):
2024-11-09T09:56:31.417079 064 I --- 29:123150 63:262142 --:------ 1FC9 018 0022F175E10E6510E075E10E001FC975E10E # {'phase': 'offer', 'bindings': [['00', '22F1', '29:123150'], ['65', '10E0', '29:123150'], ['00', '1FC9', '29:123150']]}
2024-11-07T13:01:37.338144 090 W --- 29:099029 29:123150 --:------ 1FC9 006 0031D97582D5 # {'phase': 'accept', 'bindings': [['00', '31D9', '29:099029']]}
2024-11-07T13:01:37.355235 092 I --- 29:123150 29:099029 --:------ 1FC9 001 00 # {'phase': 'confirm', 'bindings': [['00']]}

# It appears the subsequent/spontaneous REM|I|10E0 *is required* for a successful bind (otherwise the FAN will RQ|10E0, see below):
2024-10-16T21:32:07.084793 073 I --- 29:123150 63:262142 --:------ 10E0 029 000001C8410D0165FFFFFFFFFFFF0D0407DF564D4E2D30374C4D303100 # {'description': 'VMN-07LM01', 'manufacturer_sub_id': 'C8', 'product_id': '41', 'date_1': '2015-04-13', 'date_2': '0000-00-00', 'oem_code': '65'} # ClimaRad 4-button remote



####################################################################################################
# 3. Other notes:
# - domain IS appears to be 00:
# 31DA not seen

# 3. Other notes:
# - it is unclear if these spontaneous I|1060s are needed too (unlikely):
32 changes: 32 additions & 0 deletions tests/tests/bindings/hvac/rem_fan_vasco.log
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
####################################################################################################
# Vasco Remote binding to a PIV
# - Supplicant, REM: Vasco 4-button remote (VMN-17LMP01)
# - Respondent, FAN: Vasco D60 HRU (VMD-17RPS01)



####################################################################################################
# 1. For reference, 10E0s (if any), oem_code='66' (Note: REM/FAN won't RP|10E0):
2024-10-04 22:24:58.581000 ... I --- 29:091138 63:262142 --:------ 10E0 038 000001C8400F0166FFFFFFFFFFFF0E0207E3564D4E2D31374C4D503031000000000000000000 # {'description': 'VMN-17LMP01', 'manufacturer_sub_id': 'C8', 'product_id': '40', 'date_1': '2019-02-14', 'date_2': '0000-00-00', 'oem_code': '66'} # Vasco 4-button remote
2024-10-15T21:01:19.293000 083 I --- 32:022222 63:262142 --:------ 10E0 030 000001C83A190F66FFFFFFFFFFFFFFFFFFFF564D442D3137525053303100 # {'description': 'VMD-17RPS01', 'manufacturer_sub_id': 'C8', 'product_id': '3A', 'date_1': '0000-00-00', 'date_2': '0000-00-00', 'oem_code': '66'} # Vasco D60 HRU



####################################################################################################
# 2. The handshake (NB: FAN|W|1FC9|00):
2024-11-07T14:39:29.639500 072 I --- 29:091138 --:------ 29:091138 1FC9 024 0022F17564020022F37564026610E0756402001FC9756402 # {'phase': 'offer', 'bindings': [['00', '22F1', '29:091138'], ['00', '22F3', '29:091138'], ['66', '10E0', '29:091138'], ['00', '1FC9', '29:091138']]}
2024-11-07T14:39:29.687203 083 W --- 32:022222 29:091138 --:------ 1FC9 012 0031D98056CE0031DA8056CE # {'phase': 'accept', 'bindings': [['00', '31D9', '32:022222'], ['00', '31DA', '32:022222']]}
2024-11-07T14:39:29.693284 071 I --- 29:091138 32:022222 --:------ 1FC9 001 00 # {'phase': 'confirm', 'bindings': [['00']]}

# It appears the subsequent/spontaneous REM|I|10E0 *is required* for a successful bind (otherwise the FAN will RQ|10E0, see below):
2024-10-04 22:24:58.581000 ... I --- 29:091138 63:262142 --:------ 10E0 038 000001C8400F0166FFFFFFFFFFFF0E0207E3564D4E2D31374C4D503031000000000000000000 # {'description': 'VMN-17LMP01', 'manufacturer_sub_id': 'C8', 'product_id': '40', 'date_1': '2019-02-14', 'date_2': '0000-00-00', 'oem_code': '66'} # Vasco 4-button remote



####################################################################################################
# 3. Other notes:
# - domain IS appears to be 00:
# 2024-10-15T12:46:03.623447 082 I --- 32:022222 --:------ 32:022222 31DA 030 00EF007FFFEFEF058506EE0773051FA800EF0232320000EF00051902EE00

# 3. Other notes:
# - it is unclear if these spontaneous I|1060s are needed too (unlikely):
52 changes: 52 additions & 0 deletions tests/tests/bindings/hvac/rem_fan_ventura.log
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
####################################################################################################
# ClimaRad Remote binding to a PIV
# - Supplicant, REM: ClimaRad 4-button remote faked (VMN-07LM01)
# - Respondent, FAN: ClimaRad VenturaV1x HRU (VMD-07RPS13)



####################################################################################################
# 1. For reference, 10E0s (if any), oem_code='65' (Note: REM/FAN won't RP|10E0):
2024-10-16T21:32:07.084793 073 I --- 29:123150 63:262142 --:------ 10E0 029 000001C8410D0165FFFFFFFFFFFF0D0407DF564D4E2D30374C4D303100 # {'description': 'VMN-07LM01', 'manufacturer_sub_id': 'C8', 'product_id': '41', 'date_1': '2015-04-13', 'date_2': '0000-00-00', 'oem_code': '65'} # ClimaRad 4-button remote
2024-10-09T11:50:24.287879 123 I --- 37:153226 63:262142 --:------ 10E0 038 000001C8830C0A65FEFFFFFFFFFF110C07E4564D442D30375250533133000000000000000000 # {'description': 'VMD-07RPS13', 'manufacturer_sub_id': 'C8', 'product_id': '83', 'date_1': '2020-12-17', 'date_2': '0000-00-00', 'oem_code': '65'} # ClimaRad VenturaV1x



####################################################################################################
# 2. The handshake - faked in ramses_rf (NB: FAN|W|1FC9|00):
# actual remote 1FC9 packet gets no response. Ventura is known to only bind to a CO2 sensor
2024-11-09T18:33:29.744238 ... I --- 29:123160 --:------ 29:123160 1FC9 018 0022F175E1180010E075E118001FC975E118
# extended 1FC9. Added 1298 and 22F4, got response from HRU
2024-11-09T18:32:41.837359 000 I --- 29:123160 --:------ 29:123160 1FC9 024 00129875E1180022F175E1180022F475E118001FC975E118 # {}
2024-11-09T18:32:43.058046 075 W --- 37:153226 29:123160 --:------ 1FC9 012 0031D996568A00230996568A # {'phase': 'accept', 'bindings': [['00', '31D9', '37:153226'], ['00', '2309', '37:153226']]} # 2309 reports a constant , set?
2024-11-09T18:32:47.032998 000 I --- 29:123160 37:153226 --:------ 1FC9 001 00 # {'phase': 'confirm', 'bindings': [['00']]}

2024-11-09T18:33:29.744238 000 I --- 29:123160 --:------ 29:123160 1FC9 024 00129875E1180022F175E1180022F475E118001FC975E118 # {'phase': 'offer', 'bindings': [['00', '22F1', '29:123160'], ['00', '10E0', '29:123160'], ['00', '1FC9', '29:123160']]}
2024-11-09T18:33:29.759645 ... W --- 37:153226 29:123160 --:------ 1FC9 012 0031D996568A00230996568A # {'phase': 'accept', 'bindings': [['00', '31D9', '37:153226'], ['00', '2309', '37:153226']]} # 2309 reports a constant , set?
2024-11-09T18:33:29.763814 ... I --- 29:123160 37:153226 --:------ 1FC9 001 00 # {'phase': 'confirm', 'bindings': [['00']]}

# no errors in ramses_cc
2024-11-11T14:36:41.725043 000 I --- 29:123160 --:------ 29:123160 1FC9 024 00129875E1180022F175E1180022F475E118001FC975E118 # {'phase': 'offer', 'bindings': [['00', '22F1', '29:123160'], ['00', '10E0', '29:123160'], ['00', '1FC9', '29:123160']]}
2024-11-11T14:36:41.741511 075 W --- 37:153226 29:123160 --:------ 1FC9 012 0031D996568A00230996568A # {'phase': 'accept', 'bindings': [['00', '31D9', '37:153226'], ['00', '2309', '37:153226']]} # 2309 reports a constant , set?
2024-11-11T14:36:41.745628 ... I --- 29:123160 37:153226 --:------ 1FC9 006 001FC975E118 # {'phase': 'confirm', 'bindings': [['00', '1FC9', '29:123160']]} # made up by ramses_rf, config was "21"

# A subsequent/spontaneous REM|I|10E0 *is required* for a successful bind???:
2024-10-16T21:32:07.084793 073 I --- 29:123150 63:262142 --:------ 10E0 029 000001C8410D0165FFFFFFFFFFFF0D0407DF564D4E2D30374C4D303100 # {'description': 'VMN-07LM01', 'manufacturer_sub_id': 'C8', 'product_id': '41', 'date_1': '2015-04-13', 'date_2': '0000-00-00', 'oem_code': '65'} # ClimaRad 4-button remote



####################################################################################################
# 3. Other notes:
# - domain IS appears to be EF:
066 I --- 37:153226 --:------ 37:153226 31DA 030 00 EF0001F600EF064C7FFF07F5073EBE09001F0000000000008500850000
# 4. ramses_cc.bind_device action
data:
device_id: "29:123160"
offer:
"10E0": "65"
1FC9: "00" # or "21" as in orcon?
22F1: "00"
# confirm: reports an error in ramses_cc
# 1FC9: "00"
device_info:
" I --- 29:123160 63:262142 --:------ 10E0 029 000001C8410D0165FFFFFFFFFFFF0D0407DF564D4E2D30374C4D303100"
18 changes: 15 additions & 3 deletions tests/tests/parsers/code_1fc9.log
Original file line number Diff line number Diff line change
Expand Up @@ -102,12 +102,24 @@
2022-08-17T19:32:34.825700 ... W --- 32:155617 37:155617 --:------ 1FC9 012 0031D9825FE10031DA825FE1 # {'phase': 'accept', 'bindings': [['00', '31D9', '32:155617'], ['00', '31DA', '32:155617']]}
2022-08-17T19:32:35.418914 ... I --- 37:155617 32:155617 --:------ 1FC9 001 00 # {'phase': 'confirm', 'bindings': [['00']]}

# Vasco remote (22F1/3) binding to a D60 HRU FAN (31D9/A)
# Vasco remote binding to a D60 HRU FAN (31D9/A) - oem_code 66 (vasco)
2024-11-07T14:39:29.639500 072 I --- 29:091138 --:------ 29:091138 1FC9 024 0022F17564020022F37564026610E0756402001FC9756402 # {'phase': 'offer', 'bindings': [['00', '22F1', '29:091138'], ['00', '22F3', '29:091138'], ['66', '10E0', '29:091138'], ['00', '1FC9', '29:091138']]}
2024-11-07T14:39:29.687203 083 W --- 32:022222 29:091138 --:------ 1FC9 012 0031D98056CE0031DA8056CE # {'phase': 'accept', 'bindings': [['00', '31D9', '32:022222'], ['00', '31DA', '32:022222']]}
2024-11-07T14:39:29.693284 071 I --- 29:091138 32:022222 --:------ 1FC9 001 00 # {'phase': 'confirm', 'bindings': [['00']]}

# ClimaRad remote (31D9) binding to a ClimaRad MiniBox FAN (31D9)
2024-11-07T19:32:38.578052 ... I --- 29:123160 --:------ 29:123160 1FC9 012 0031D975E118001FC975E118 # {'phase': 'offer', 'bindings': [['00', '31D9', '29:123160'], ['00', '1FC9', '29:123160']]}
# ClimaRad remote binding to a ClimaRad MiniBox FAN (31D9) - oem_code 65 (climarad)
2024-11-09T09:56:31.417079 064 I --- 29:123150 63:262142 --:------ 1FC9 018 0022F175E10E6510E075E10E001FC975E10E # {'phase': 'offer', 'bindings': [['00', '22F1', '29:123150'], ['65', '10E0', '29:123150'], ['00', '1FC9', '29:123150']]}
# also seen in log, same remote
# 2024-11-07T19:32:38.578052 ... I --- 29:123150 --:------ 29:123150 1FC9 012 0031D975E118001FC975E118 # {'phase': 'offer', 'bindings': [['00', '31D9', '29:123160'], ['00', '1FC9', '29:123160']]}
2024-11-07T13:01:37.338144 090 W --- 29:099029 29:123150 --:------ 1FC9 006 0031D97582D5 # {'phase': 'accept', 'bindings': [['00', '31D9', '29:099029']]}
2024-11-07T13:01:37.355235 092 I --- 29:123150 29:099029 --:------ 1FC9 001 00 # {'phase': 'confirm', 'bindings': [['00']]}

# ClimaRad faked remote binding to Ventura V1X (adapted from MiniBox binding, added 1298 and 22F4)
2024-11-09T18:32:41.837359 000 I --- 29:123160 --:------ 29:123160 1FC9 024 00129875E1180022F175E1180022F475E118001FC975E118 # {'phase': 'offer', 'bindings': [['00', '1298', '29:123160'], ['00', '22F1', '29:123160'], ['00', '22F4', '29:123160'], ['00', '1FC9', '29:123160']]}
2024-11-09T18:32:42.036189 079 W --- 37:153226 29:123160 --:------ 1FC9 012 0031D996568A00230996568A # {'phase': 'accept', 'bindings': [['00', '31D9', '37:153226'], ['00', '2309', '37:153226']]} # 2309 reports a constant , set?
2024-11-09T18:32:42.045171 ... I --- 29:123160 37:153226 --:------ 1FC9 001 00 # {'phase': 'confirm', 'bindings': [['00']]}
# copied ClimaRad REM packet, gets 'accept' reply, but still can't control via 22F1/22F4, should follow up with 10E0?
2024-11-09T18:33:29.744238 ... I --- 29:123160 --:------ 29:123160 1FC9 018 0022F175E1180010E075E118001FC975E118 # {'phase': 'offer', 'bindings': [['00', '22F1', '29:123160'], ['00', '10E0', '29:123160'], ['00', '1FC9', '29:123160']]}
2024-11-09T18:33:29.759645 ... W --- 37:153226 29:123160 --:------ 1FC9 012 0031D996568A00230996568A # {'phase': 'accept', 'bindings': [['00', '31D9', '37:153226'], ['00', '2309', '37:153226']]} # 2309 reports a constant , set?
2024-11-09T18:33:29.763814 ... I --- 29:123160 37:153226 --:------ 1FC9 001 00 # {'phase': 'confirm', 'bindings': [['00']]}
2024-11-11T14:36:41.745628 ... I --- 29:123160 37:153226 --:------ 1FC9 006 001FC975E118 # {'phase': 'confirm', 'bindings': [['00', '1FC9', '29:123160']]} # made up by ramses_rf, config was "21"
Loading