-
-
Notifications
You must be signed in to change notification settings - Fork 20
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
0.30.2 - send_packet
service call fails with 18:000730
#85
Comments
send_packet
service call failssend_packet
service call fails with 18:000730
Sorry - I realised I missed some useful info on the HA forum post, so I'm adding a tiny bit more detail here - hope that's OK? |
The challenge here is that a evofw3 and a HGI80 behave differently, and that ramses_rf couldn't tell which of the two you had. It can now, so now we need to take the next step... |
@MuddyRock service: ramses_cc.send_packet
data:
verb: I
code: "0008"
device_id: "13:000730"
payload: "0064" You're sending to |
Aha - progress! Some further questions though:
and this was working in 0.28.
I'm almost certainly doing something else stupid, but I can't figure out what! |
I didn't write that wiki article... the chap who wrote it knows what he's doing, though. So I doubt its a mistake. |
So, it should be: service: ramses_cc.send_packet
data:
verb: I
code: "0008"
device_id: "18:000278"
payload: "00C8" Where (for others, it is only a co-incidence that this actual gateway address starts with |
Thanks for your help so far, but still no joy. Using your config as below in Home Assistant, sending to the gateway (18:000278 in my case) results in no packets appearing in the packet log. (And just to be clear, by "gateway", I'm assuming you mean the USB dongle, and not what I call the BDR controller below, which I've also seen referred to as a wireless gateway for the relay) service: ramses_cc.send_packet
data:
verb: I
code: "0008"
device_id: "18:000278"
payload: "0000" Sending works, because I can send to e.g. 13:086478 (my BDR controller) and a packet immediately appears in the log, but it's not picked up by the BDR controller which still has a red light showing. I noticed you've added a solution to the above, referencing the three address fields in the packet. Does that mean a code change is needed? |
OK, testing in 0.31.7, with an evofw3 dongle with id Starting with this logging: logger:
logs:
ramses_tx.transport: info With this service call: service: ramses_cc.send_packet
data:
device_id: "18:000730"
verb: I
code: "0008"
payload: "00C1" In the home-assistant.log, I get:
... this is as expected. However, in the packet.log, I get nothing:
... this appears to be a bug! |
Note that the (destination)
|
With this slightly different service call (note the service: ramses_cc.send_packet
data:
device_id: "18:006402"
verb: I
code: "0008"
payload: "00C2" In the home-assistant.log, I get:
... this is as expected. However, in the packet.log, I get nothing:
... this appears to be a bug! |
So the issue is: This packet has an invalid address set:
... it should look like this for the
The
... because that address set is valid for those verbs. |
OK, this is a HACK-fix: async def async_send_packet(call: ServiceCall) -> None:
...
if cmd.src.id == "18:000730" and cmd.dst.id == broker.client.hgi.id:
try:
pkt_addrs(broker.client.hgi.id + cmd._frame[16:37])
except PacketAddrSetInvalid:
cmd._addrs[1], cmd._addrs[2] = cmd._addrs[2], cmd._addrs[1]
cmd._repr = None
broker.client.send_cmd(cmd) |
* Initial config flow PoC * Import from yaml is one-off * Update device info as it becomes available and fix entry reload * Majority of config flow now implenented * Lint * Restore support for reading remote commands from known list traits * Working multi-stage serial port config Plus various other tidy-up. * known list fixes * Add missing config translations * Fix adding new entry and provide title for better messaging * Better default serial port handling * Guide user through all config on initial setup * Primary entities use device name * Set entity names via descriptions * Friendly name for controller device * Clearer label for send_packet advanced feature * Lint * remove debug code * Fix discarding legacy restore_cache config on import if not present * Remove example from schema config UI This take up too much room and make maintenance harder. * Ensure unique evohome controller device names * Extend "Controler 01:123456" device naming to all system types * Fix generated sensor entity ID This got corrected behind the scenes before but was incorrect. * Consistent approach to entity ID generation across all domains * Lint * Neaten entity descriptions Explicitly set ramses_rf_attr so we no longer need to default these. * Fix bad merge of message events regex match/search fix * bump to 0.40.x * fix #85 send_pkt fails with 18:730 as dest * Final instead of Final[str] * mypy work * bump to 0.41.7 * Add description to cache clear config options step This helps explain the new immediately clear behaviour as well as why you might want to be doing it in the first place. * initial commit * names should be restored if the schema is not restored * fix #162 * evo_control test * improve evo_control test * tweak evo_control test * add log file for tests * tweak test * tweak test * tweak test log * expose battery ESA more cleanly * use WATER_HEATER_DESCRIPTIONS (for tests) * evocontrol test - add temperature attr to namespace * tidy up * tidy up * tweak test * tidy up tests * mypy * minor tweak of test * doctweak * doctweak * move tests folder * lint * correct .gitignore * add test_setup * doctweak * working test * pre-commit * add virtual RF * tweak test * change required to make tests work * refactor test * tweak meta file * tweak tests * move test data * tweak virtual RF * tweak test data * tweak test * tweak tests * tweak test_data * tweak tests * add services tests * extend tests * bugfix async_unload_entry, and changes for tests * extend ests, mypy tests * requirements fro HA 2024.02.x * tweak manifest.json - add paho-mqtt * possible bugfix #169 * assert fro bug #163 * doctweak * use fixture * add tests * refactor, extend tests * harden service schemas * bugfix DHW_PARAMS schema * add last tests * doctweaks * requirements * isort config * meta data * lint * requirements * update requirements * add logging for config_flow * lint * bump library ver (CP) * tweak tests * mypy fix (can CP) * tweak requirements for HA 2024.3.0 --------- Co-authored-by: Trevor North <[email protected]>
EDIT: Solution
The issue is mapping between a gateways actual address (e.g.
18:137610
) and the sentinel address (i.e.18:000730
).Note that:
gwy._transport.get_extra_info(SZ_ACTIVE_HGI)
gwy._transport.get_extra_info(SZ_IS_EVOFW3)
The solution here is:
addr0
: if actual address, then substitute the sentinel address (not strictly required for evofw3)addr1
: any sentinel address substituted with the actual addressaddr2
: as aboveThe text was updated successfully, but these errors were encountered: