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

VMBDALI support missing #32

Closed
dverhelst opened this issue Mar 22, 2022 · 27 comments
Closed

VMBDALI support missing #32

dverhelst opened this issue Mar 22, 2022 · 27 comments

Comments

@dverhelst
Copy link

Hi,

Is it possible to support the VMBDALI module introduced through the original repository ?
It is the only thing missing for me at this point to fully use HA for my entire home.
The lights are to be supported as dimmers.
My coding skills are absent, but I would be happy to support through testing vigorously!

@Cereal2nd
Copy link
Owner

The first step is that
https://github.com/StefCoene/moduleprotocol

needs to be updated, i asked stef to do this

@dverhelst
Copy link
Author

Perfect. Let me know how I can help!

@Cereal2nd
Copy link
Owner

can you send us your velbuslink file?

that would help

@dverhelst
Copy link
Author

@Cereal2nd , can I send this to you privately ? Would only the VMBDALI entities suffice?

@dverhelst
Copy link
Author

Seems to be there now ! StefCoene/moduleprotocol@1bcdc61

@Cereal2nd
Copy link
Owner

yes it is, but now we need to implement/test is there a way we can login onto your bus so we can run some scans/debug info?

@dverhelst
Copy link
Author

Unfortunately not, but I would be very willing to run many things for you and provide you with the output.

@Cereal2nd
Copy link
Owner

can you clone the master branch of this repo?
setup the package and run the examples/read_bus.py tool and provide me the output?

@dverhelst
Copy link
Author

@Cereal2nd , attached you can find the output of read_bus.py and load_modules.py.

Relevant output from switching a Dali light on+off :

DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=a0, rtr=False, command=234, data=b'ea 08 00 00 33 0a 00 00')
DEBUG:velbus-packet:Received {"name": "TempSensorStatusMessage", "priority": 251, "address": 160, "rtr": false, "data": "", "local_control": 0, "status_mode": "run", "status_str": "run", "auto_send": 8, "mode": "safe", "mode_str": "safe", "cool": 0, "heater": 0, "boost": 0, "pump": 0, "alarm1": 0, "alarm2": 0, "alarm3": 0, "alarm4": 0, "current_temp": 25.5, "target_temp": 5.0, "sleep_timer": 0, "_status_str": "run"}
DEBUG:velbus-protocol:RX: RawMessage(priority=f8, address=a6, rtr=False, command=0, data=b'00 01 00 00')
DEBUG:velbus-packet:Received {"name": "PushButtonStatusMessage", "priority": 248, "address": 166, "rtr": false, "data": "", "closed": [1], "opened": [], "closed_long": []}
DEBUG:root:Trimming leading garbage from buffer content: b'000000000ff8a604000001004e04' becomes b'0ff8a604000001004e04'
DEBUG:velbus-protocol:RX: RawMessage(priority=f8, address=a6, rtr=False, command=0, data=b'00 00 01 00')
DEBUG:velbus-packet:Received {"name": "PushButtonStatusMessage", "priority": 248, "address": 166, "rtr": false, "data": "", "closed": [], "opened": [1], "closed_long": []}
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=a6, rtr=False, command=245, data=b'f5 01')
DEBUG:velbus-packet:Received {"name": "ClearLedMessage", "priority": 251, "address": 166, "rtr": false, "data": "", "leds": [1]}
DEBUG:root:Trimming leading garbage from buffer content: b'0000000000000ffba602f5085104' becomes b'0ffba602f5085104'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=a6, rtr=False, command=245, data=b'f5 08')
DEBUG:velbus-packet:Received {"name": "ClearLedMessage", "priority": 251, "address": 166, "rtr": false, "data": "", "leds": [4]}
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=a6, rtr=False, command=245, data=b'f5 10')
DEBUG:velbus-packet:Received {"name": "ClearLedMessage", "priority": 251, "address": 166, "rtr": false, "data": "", "leds": [5]}
DEBUG:root:Trimming leading garbage from buffer content: b'0000000000000ff8020400060000' becomes b'0ff8020400060000'
DEBUG:velbus-protocol:RX: RawMessage(priority=f8, address=02, rtr=False, command=0, data=b'00 06 00 00')
DEBUG:velbus-packet:Received {"name": "PushButtonStatusMessage", "priority": 248, "address": 2, "rtr": false, "data": "", "closed": [2, 3], "opened": [], "closed_long": []}
ERROR:asyncio:Task exception was never retrieved
future: <Task finished name='Task-203' coro=<VelbusProtocol._process_message() done, defined at /home/dieter/GIT/velbus-aio/velbusaio/protocol.py:167> exception=KeyError('Channels')>
Traceback (most recent call last):
  File "/home/dieter/GIT/velbus-aio/velbusaio/protocol.py", line 169, in _process_message
    await self._message_received_callback(msg)
  File "/home/dieter/GIT/velbus-aio/velbusaio/controller.py", line 55, in _on_message_received
    await self._handler.handle(msg)
  File "/home/dieter/GIT/velbus-aio/velbusaio/handler.py", line 86, in handle
    await (self._velbus.get_module(msg.address)).on_message(msg)
  File "/home/dieter/GIT/velbus-aio/velbusaio/module.py", line 262, in on_message
    for channel_types in self._data["Channels"]:
KeyError: 'Channels'
DEBUG:root:Trimming leading garbage from buffer content: b'000000000ff8090400010000eb04' becomes b'0ff8090400010000eb04'
DEBUG:velbus-protocol:RX: RawMessage(priority=f8, address=09, rtr=False, command=0, data=b'00 01 00 00')
WARNING:velbus-packet:UNKNOWN module, you should initialize a full new velbus scan: packet=01:00:00, address=9, modules=dict_keys([1, 2, 3, 4, 5, 16, 17, 18, 19, 20, 21, 32, 33, 34, 35, 36, 37, 144, 160, 176, 161, 177, 163, 179, 164, 180, 165, 181, 166, 182, 167, 183, 168, 169, 192, 193, 184, 194, 210, 195, 211, 196, 212, 197, 213, 198, 214, 199, 215, 200, 216, 201, 217, 224, 240, 250])
DEBUG:velbus-protocol:RX: RawMessage(priority=f8, address=0a, rtr=False, command=0, data=b'00 08 00 00')
WARNING:velbus-packet:UNKNOWN module, you should initialize a full new velbus scan: packet=08:00:00, address=10, modules=dict_keys([1, 2, 3, 4, 5, 16, 17, 18, 19, 20, 21, 32, 33, 34, 35, 36, 37, 144, 160, 176, 161, 177, 163, 179, 164, 180, 165, 181, 166, 182, 167, 183, 168, 169, 192, 193, 184, 194, 210, 195, 211, 196, 212, 197, 213, 198, 214, 199, 215, 200, 216, 201, 217, 224, 240, 250])
DEBUG:root:Trimming leading garbage from buffer content: b'000000000ffbc102f540fe040000' becomes b'0ffbc102f540fe040000'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=c1, rtr=False, command=245, data=b'f5 40')
DEBUG:velbus-packet:Received {"name": "ClearLedMessage", "priority": 251, "address": 193, "rtr": false, "data": "", "leds": [7]}
DEBUG:root:Trimming leading garbage from buffer content: b'00000ffbc102f580be0400000000' becomes b'0ffbc102f580be0400000000'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=c1, rtr=False, command=245, data=b'f5 80')
DEBUG:velbus-packet:Received {"name": "ClearLedMessage", "priority": 251, "address": 193, "rtr": false, "data": "", "leds": [8]}
DEBUG:root:Trimming leading garbage from buffer content: b'000000000ffbc802f50136040000' becomes b'0ffbc802f50136040000'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=c8, rtr=False, command=245, data=b'f5 01')
DEBUG:velbus-packet:Received {"name": "ClearLedMessage", "priority": 251, "address": 200, "rtr": false, "data": "", "leds": [1]}
DEBUG:root:Trimming leading garbage from buffer content: b'00000ffbc802f502350400000000' becomes b'0ffbc802f502350400000000'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=c8, rtr=False, command=245, data=b'f5 02')
DEBUG:velbus-packet:Received {"name": "ClearLedMessage", "priority": 251, "address": 200, "rtr": false, "data": "", "leds": [2]}
DEBUG:root:Trimming leading garbage from buffer content: b'000000000ffbc502f50139040000' becomes b'0ffbc502f50139040000'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=c5, rtr=False, command=245, data=b'f5 01')
DEBUG:velbus-packet:Received {"name": "ClearLedMessage", "priority": 251, "address": 197, "rtr": false, "data": "", "leds": [1]}
DEBUG:root:Trimming leading garbage from buffer content: b'00000ffba802f501560400000000' becomes b'0ffba802f501560400000000'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=a8, rtr=False, command=245, data=b'f5 01')
DEBUG:velbus-packet:Received {"name": "ClearLedMessage", "priority": 251, "address": 168, "rtr": false, "data": "", "leds": [1]}
DEBUG:root:Trimming leading garbage from buffer content: b'000000000ffba802f50156040000' becomes b'0ffba802f50156040000'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=a8, rtr=False, command=245, data=b'f5 01')
DEBUG:velbus-packet:Received {"name": "ClearLedMessage", "priority": 251, "address": 168, "rtr": false, "data": "", "leds": [1]}
DEBUG:root:Trimming leading garbage from buffer content: b'00000ffba102f608550400000000' becomes b'0ffba102f608550400000000'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=a1, rtr=False, command=246, data=b'f6 08')
DEBUG:velbus-packet:Received {"name": "SetLedMessage", "priority": 251, "address": 161, "rtr": false, "data": "", "leds": [4]}
DEBUG:root:Trimming leading garbage from buffer content: b'000000000ffba002f60856040000' becomes b'0ffba002f60856040000'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=a0, rtr=False, command=246, data=b'f6 08')
DEBUG:velbus-packet:Received {"name": "SetLedMessage", "priority": 251, "address": 160, "rtr": false, "data": "", "leds": [4]}
DEBUG:root:Trimming leading garbage from buffer content: b'00000ffba602f601570400000000' becomes b'0ffba602f601570400000000'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=a6, rtr=False, command=246, data=b'f6 01')
DEBUG:velbus-packet:Received {"name": "SetLedMessage", "priority": 251, "address": 166, "rtr": false, "data": "", "leds": [1]}
DEBUG:root:Trimming leading garbage from buffer content: b'000000000ffba602f60850040000' becomes b'0ffba602f60850040000'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=a6, rtr=False, command=246, data=b'f6 08')
DEBUG:velbus-packet:Received {"name": "SetLedMessage", "priority": 251, "address": 166, "rtr": false, "data": "", "leds": [4]}
DEBUG:root:Trimming leading garbage from buffer content: b'00000ffba602f610480400000000' becomes b'0ffba602f610480400000000'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=a6, rtr=False, command=246, data=b'f6 10')
DEBUG:velbus-packet:Received {"name": "SetLedMessage", "priority": 251, "address": 166, "rtr": false, "data": "", "leds": [5]}
DEBUG:root:Trimming leading garbage from buffer content: b'000000000ffba602f680d8040000' becomes b'0ffba602f680d8040000'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=a6, rtr=False, command=246, data=b'f6 80')
DEBUG:velbus-packet:Received {"name": "SetLedMessage", "priority": 251, "address": 166, "rtr": false, "data": "", "leds": [8]}
DEBUG:root:Trimming leading garbage from buffer content: b'00000ffb0103a54cfe0304000000' becomes b'0ffb0103a54cfe0304000000'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=01, rtr=False, command=165, data=b'a5 4c fe')
WARNING:velbus-packet:NOT FOUND IN command_registry: addr=1 cmd=165 packet=4c:fe
DEBUG:root:Trimming leading garbage from buffer content: b'0000000ffbe008ed903fff0000c1' becomes b'0ffbe008ed903fff0000c1'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=e0, rtr=False, command=237, data=b'ed 90 3f ff 00 00 c1 0a')
DEBUG:velbus-packet:Received {"name": "ModuleStatusMessage", "priority": 251, "address": 224, "rtr": false, "data": "", "closed": [5, 8], "led_on": [1, 2, 3, 4, 5, 6], "led_slow_blinking": [1, 2, 3, 4, 5, 6, 7, 8], "led_fast_blinking": []}
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=e0, rtr=False, command=234, data=b'ea 08 00 00 35 0e 00 00')
DEBUG:velbus-packet:Received {"name": "TempSensorStatusMessage", "priority": 251, "address": 224, "rtr": false, "data": "", "local_control": 0, "status_mode": "run", "status_str": "run", "auto_send": 8, "mode": "safe", "mode_str": "safe", "cool": 0, "heater": 0, "boost": 0, "pump": 0, "alarm1": 0, "alarm2": 0, "alarm3": 0, "alarm4": 0, "current_temp": 26.5, "target_temp": 7.0, "sleep_timer": 0, "_status_str": "run"}
DEBUG:velbus-protocol:RX: RawMessage(priority=f8, address=a6, rtr=False, command=0, data=b'00 01 00 00')
DEBUG:velbus-packet:Received {"name": "PushButtonStatusMessage", "priority": 248, "address": 166, "rtr": false, "data": "", "closed": [1], "opened": [], "closed_long": []}
DEBUG:root:Trimming leading garbage from buffer content: b'000000000ffbc508ed903f810000' becomes b'0ffbc508ed903f810000'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=c5, rtr=False, command=237, data=b'ed 90 3f 81 00 00 c1 0a')
DEBUG:velbus-packet:Received {"name": "ModuleStatusMessage", "priority": 251, "address": 197, "rtr": false, "data": "", "closed": [5, 8], "led_on": [1, 2, 3, 4, 5, 6], "led_slow_blinking": [1, 8], "led_fast_blinking": []}
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=c5, rtr=False, command=234, data=b'ea 08 00 00 33 0a 00 00')
DEBUG:velbus-packet:Received {"name": "TempSensorStatusMessage", "priority": 251, "address": 197, "rtr": false, "data": "", "local_control": 0, "status_mode": "run", "status_str": "run", "auto_send": 8, "mode": "safe", "mode_str": "safe", "cool": 0, "heater": 0, "boost": 0, "pump": 0, "alarm1": 0, "alarm2": 0, "alarm3": 0, "alarm4": 0, "current_temp": 25.5, "target_temp": 5.0, "sleep_timer": 0, "_status_str": "run"}
DEBUG:velbus-protocol:RX: RawMessage(priority=f8, address=a6, rtr=False, command=0, data=b'00 00 01 00')
DEBUG:velbus-packet:Received {"name": "PushButtonStatusMessage", "priority": 248, "address": 166, "rtr": false, "data": "", "closed": [], "opened": [1], "closed_long": []}
DEBUG:root:Trimming leading garbage from buffer content: b'000000000ffba602f60157040000' becomes b'0ffba602f60157040000'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=a6, rtr=False, command=246, data=b'f6 01')
DEBUG:velbus-packet:Received {"name": "SetLedMessage", "priority": 251, "address": 166, "rtr": false, "data": "", "leds": [1]}
DEBUG:root:Trimming leading garbage from buffer content: b'00000ffba602f608500400000000' becomes b'0ffba602f608500400000000'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=a6, rtr=False, command=246, data=b'f6 08')
DEBUG:velbus-packet:Received {"name": "SetLedMessage", "priority": 251, "address": 166, "rtr": false, "data": "", "leds": [4]}
DEBUG:root:Trimming leading garbage from buffer content: b'000000000ffba602f61048040000' becomes b'0ffba602f61048040000'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=a6, rtr=False, command=246, data=b'f6 10')
DEBUG:velbus-packet:Received {"name": "SetLedMessage", "priority": 251, "address": 166, "rtr": false, "data": "", "leds": [5]}
DEBUG:root:Trimming leading garbage from buffer content: b'00000ff8020400000600ed040000' becomes b'0ff8020400000600ed040000'
DEBUG:velbus-protocol:RX: RawMessage(priority=f8, address=02, rtr=False, command=0, data=b'00 00 06 00')
DEBUG:velbus-packet:Received {"name": "PushButtonStatusMessage", "priority": 248, "address": 2, "rtr": false, "data": "", "closed": [], "opened": [2, 3], "closed_long": []}
ERROR:asyncio:Task exception was never retrieved
future: <Task finished name='Task-229' coro=<VelbusProtocol._process_message() done, defined at /home/dieter/GIT/velbus-aio/velbusaio/protocol.py:167> exception=KeyError('Channels')>
Traceback (most recent call last):
  File "/home/dieter/GIT/velbus-aio/velbusaio/protocol.py", line 169, in _process_message
    await self._message_received_callback(msg)
  File "/home/dieter/GIT/velbus-aio/velbusaio/controller.py", line 55, in _on_message_received
    await self._handler.handle(msg)
  File "/home/dieter/GIT/velbus-aio/velbusaio/handler.py", line 86, in handle
    await (self._velbus.get_module(msg.address)).on_message(msg)
  File "/home/dieter/GIT/velbus-aio/velbusaio/module.py", line 262, in on_message
    for channel_types in self._data["Channels"]:
KeyError: 'Channels'
DEBUG:root:Trimming leading garbage from buffer content: b'00000ff8090400000100eb040000' becomes b'0ff8090400000100eb040000'
DEBUG:velbus-protocol:RX: RawMessage(priority=f8, address=09, rtr=False, command=0, data=b'00 00 01 00')
WARNING:velbus-packet:UNKNOWN module, you should initialize a full new velbus scan: packet=00:01:00, address=9, modules=dict_keys([1, 2, 3, 4, 5, 16, 17, 18, 19, 20, 21, 32, 33, 34, 35, 36, 37, 144, 160, 176, 161, 177, 163, 179, 164, 180, 165, 181, 166, 182, 167, 183, 168, 169, 192, 193, 184, 194, 210, 195, 211, 196, 212, 197, 213, 198, 214, 199, 215, 200, 216, 201, 217, 224, 240, 250])
DEBUG:root:Trimming leading garbage from buffer content: b'00000ff80a0400000800e3040000' becomes b'0ff80a0400000800e3040000'
DEBUG:velbus-protocol:RX: RawMessage(priority=f8, address=0a, rtr=False, command=0, data=b'00 00 08 00')
WARNING:velbus-packet:UNKNOWN module, you should initialize a full new velbus scan: packet=00:08:00, address=10, modules=dict_keys([1, 2, 3, 4, 5, 16, 17, 18, 19, 20, 21, 32, 33, 34, 35, 36, 37, 144, 160, 176, 161, 177, 163, 179, 164, 180, 165, 181, 166, 182, 167, 183, 168, 169, 192, 193, 184, 194, 210, 195, 211, 196, 212, 197, 213, 198, 214, 199, 215, 200, 216, 201, 217, 224, 240, 250])
DEBUG:root:Trimming leading garbage from buffer content: b'00000ffbc102f540fe0400000000' becomes b'0ffbc102f540fe0400000000'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=c1, rtr=False, command=245, data=b'f5 40')
DEBUG:velbus-packet:Received {"name": "ClearLedMessage", "priority": 251, "address": 193, "rtr": false, "data": "", "leds": [7]}
DEBUG:root:Trimming leading garbage from buffer content: b'000000000ffbc102f580be040000' becomes b'0ffbc102f580be040000'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=c1, rtr=False, command=245, data=b'f5 80')
DEBUG:velbus-packet:Received {"name": "ClearLedMessage", "priority": 251, "address": 193, "rtr": false, "data": "", "leds": [8]}
DEBUG:root:Trimming leading garbage from buffer content: b'00000ffbc802f501360400000000' becomes b'0ffbc802f501360400000000'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=c8, rtr=False, command=245, data=b'f5 01')
DEBUG:velbus-packet:Received {"name": "ClearLedMessage", "priority": 251, "address": 200, "rtr": false, "data": "", "leds": [1]}
DEBUG:root:Trimming leading garbage from buffer content: b'000000000ffbc802f50235040000' becomes b'0ffbc802f50235040000'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=c8, rtr=False, command=245, data=b'f5 02')
DEBUG:velbus-packet:Received {"name": "ClearLedMessage", "priority": 251, "address": 200, "rtr": false, "data": "", "leds": [2]}
DEBUG:root:Trimming leading garbage from buffer content: b'00000ffbc502f501390400000000' becomes b'0ffbc502f501390400000000'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=c5, rtr=False, command=245, data=b'f5 01')
DEBUG:velbus-packet:Received {"name": "ClearLedMessage", "priority": 251, "address": 197, "rtr": false, "data": "", "leds": [1]}
DEBUG:root:Trimming leading garbage from buffer content: b'000000000ffba802f50156040000' becomes b'0ffba802f50156040000'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=a8, rtr=False, command=245, data=b'f5 01')
DEBUG:velbus-packet:Received {"name": "ClearLedMessage", "priority": 251, "address": 168, "rtr": false, "data": "", "leds": [1]}
DEBUG:root:Trimming leading garbage from buffer content: b'00000ffba802f501560400000000' becomes b'0ffba802f501560400000000'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=a8, rtr=False, command=245, data=b'f5 01')
DEBUG:velbus-packet:Received {"name": "ClearLedMessage", "priority": 251, "address": 168, "rtr": false, "data": "", "leds": [1]}
DEBUG:root:Trimming leading garbage from buffer content: b'000000000ffba102f50856040000' becomes b'0ffba102f50856040000'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=a1, rtr=False, command=245, data=b'f5 08')
DEBUG:velbus-packet:Received {"name": "ClearLedMessage", "priority": 251, "address": 161, "rtr": false, "data": "", "leds": [4]}
DEBUG:root:Trimming leading garbage from buffer content: b'00000ffba002f508570400000000' becomes b'0ffba002f508570400000000'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=a0, rtr=False, command=245, data=b'f5 08')
DEBUG:velbus-packet:Received {"name": "ClearLedMessage", "priority": 251, "address": 160, "rtr": false, "data": "", "leds": [4]}
DEBUG:root:Trimming leading garbage from buffer content: b'000000000ffba602f50158040000' becomes b'0ffba602f50158040000'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=a6, rtr=False, command=245, data=b'f5 01')
DEBUG:velbus-packet:Received {"name": "ClearLedMessage", "priority": 251, "address": 166, "rtr": false, "data": "", "leds": [1]}
DEBUG:root:Trimming leading garbage from buffer content: b'00000ffba602f508510400000000' becomes b'0ffba602f508510400000000'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=a6, rtr=False, command=245, data=b'f5 08')
DEBUG:velbus-packet:Received {"name": "ClearLedMessage", "priority": 251, "address": 166, "rtr": false, "data": "", "leds": [4]}
DEBUG:root:Trimming leading garbage from buffer content: b'000000000ffba602f51049040000' becomes b'0ffba602f51049040000'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=a6, rtr=False, command=245, data=b'f5 10')
DEBUG:velbus-packet:Received {"name": "ClearLedMessage", "priority": 251, "address": 166, "rtr": false, "data": "", "leds": [5]}
DEBUG:root:Trimming leading garbage from buffer content: b'00000ffba602f580d90400000000' becomes b'0ffba602f580d90400000000'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=a6, rtr=False, command=245, data=b'f5 80')
DEBUG:velbus-packet:Received {"name": "ClearLedMessage", "priority": 251, "address": 166, "rtr": false, "data": "", "leds": [8]}
DEBUG:root:Trimming leading garbage from buffer content: b'000000000ffb0103a55100fc0400' becomes b'0ffb0103a55100fc0400'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=01, rtr=False, command=165, data=b'a5 51 00')
WARNING:velbus-packet:NOT FOUND IN command_registry: addr=1 cmd=165 packet=51:00
DEBUG:root:Trimming leading garbage from buffer content: b'000ffba008ed902fd40000c10a03' becomes b'0ffba008ed902fd40000c10a03'
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=a0, rtr=False, command=237, data=b'ed 90 2f d4 00 00 c1 0a')
DEBUG:velbus-packet:Received {"name": "ModuleStatusMessage", "priority": 251, "address": 160, "rtr": false, "data": "", "closed": [5, 8], "led_on": [1, 2, 3, 4, 6], "led_slow_blinking": [3, 5, 7, 8], "led_fast_blinking": []}
DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=a0, rtr=False, command=234, data=b'ea 08 00 00 33 0a 00 00')
DEBUG:velbus-packet:Received {"name": "TempSensorStatusMessage", "priority": 251, "address": 160, "rtr": false, "data": "", "local_control": 0, "status_mode": "run", "status_str": "run", "auto_send": 8, "mode": "safe", "mode_str": "safe", "cool": 0, "heater": 0, "boost": 0, "pump": 0, "alarm1": 0, "alarm2": 0, "alarm3": 0, "alarm4": 0, "current_temp": 25.5, "target_temp": 5.0, "sleep_timer": 0, "_status_str": "run"}

read_bus.out.txt
load_modules.out.txt

@Cereal2nd
Copy link
Owner

@dverhelst, can you check with the latest dev?
niobos did a lot of work on implementing the dali module

@dverhelst
Copy link
Author

Awesome @Cereal2nd and @niobos !
Attached you can find outputs of read_bus.py and load_modules.py. I switched a few lights on/off during the read_bus run. Hope this helps!

read_bus.out.txt
load_modules.out.txt

@niobos
Copy link
Collaborator

niobos commented Oct 17, 2022

You will need to remove the cached memory of the DALI module, and re-run the read_bus/load_module commands. The location depends on your setup, but it will probably be /home/dieter/.velbuscache/1.p

@dverhelst
Copy link
Author

Oops, didn't know, but will forever take it into account.
Here you go, 2 fresh files with a lot of DALI movement.
read_bus.out.txt
load_modules.out.txt

@niobos
Copy link
Collaborator

niobos commented Oct 17, 2022

The output looks good. To get this into Home Assistant, this repo needs a release, and the Home Assistant a version bump to use that release.

@Cereal2nd
Copy link
Owner

This is seen in one of the files need to investigate if this is related to the PR.
the load_modules.py is not finishing, we will need to increase the timeout for your install, so we can not confirm yet that it worked

DEBUG:velbus-protocol:RX: RawMessage(priority=fb, address=e0, rtr=False, command=242, data=b'f2 09 ff ff ff ff')
ERROR:asyncio:Task exception was never retrieved
future: <Task finished name='Task-1501' coro=<VelbusProtocol._process_message() done, defined at /home/dieter/GIT/velbus-aio/velbusaio/protocol.py:167> exception=ParserError('ChannelNamePart3Message needs exactly one bit set in channel byte')>
Traceback (most recent call last):
  File "/home/dieter/GIT/velbus-aio/velbusaio/protocol.py", line 169, in _process_message
    await self._message_received_callback(msg)
  File "/home/dieter/GIT/velbus-aio/velbusaio/controller.py", line 55, in _on_message_received
    await self._handler.handle(msg)
  File "/home/dieter/GIT/velbus-aio/velbusaio/handler.py", line 93, in handle
    msg.populate(priority, address, rtr, data)
  File "/home/dieter/GIT/velbus-aio/velbusaio/messages/channel_name_part3.py", line 35, in populate
    self.needs_one_channel(channels)
  File "/home/dieter/GIT/velbus-aio/velbusaio/message.py", line 235, in needs_one_channel
    self.parser_error("needs exactly one bit set in channel byte")
  File "/home/dieter/GIT/velbus-aio/velbusaio/message.py", line 134, in parser_error
    raise ParserError(self.__class__.__name__ + " " + message)
velbusaio.message.ParserError: ChannelNamePart3Message needs exactly one bit set in channel byte

@niobos
Copy link
Collaborator

niobos commented Oct 17, 2022

Based on the previous output, I concluded that the DALI module has address 1, so I ignored this Traceback.

@Cereal2nd
Copy link
Owner

@dverhelst what module is at address=e0?

@dverhelst
Copy link
Author

That would be a VMBGP2-2 but with outdated firmware which I'm updating right now ( it's the latest addition to the bus ). Same as C8 which has been updated to the latest firmware already.

@Cereal2nd
Copy link
Owner

@dverhelst can you run a new load_modules but let it run a lot longer, we do not have all the data in there

@dverhelst
Copy link
Author

Here you go!
load_modules.out.txt

@Cereal2nd
Copy link
Owner

this looks great

@niobos i'll release a new version so you can make the PR in hass

@niobos
Copy link
Collaborator

niobos commented Oct 17, 2022

Will you do the version bump PR?

@Cereal2nd
Copy link
Owner

@niobos you can do it, you did all the work

@niobos
Copy link
Collaborator

niobos commented Oct 18, 2022

For reference: home-assistant/core#80510

@Cereal2nd
Copy link
Owner

@ dverhelst today a new RC was released for hass, would you be able to check it out?
to see how the vmbdali reacts?

@dverhelst
Copy link
Author

@Cereal2nd , I ran a quick test from the dev-branch last Friday and all looked quite ok !
There was 'something' with the status of the lights sometimes not being reflected back, but I plan to test some more over the weekend.
I was very happy to see all the lights functioning well!

@Cereal2nd
Copy link
Owner

ok, then we close this ticket, if something else pops-up we can alwasy create a new one

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants