Is there a link to the latest UDP protocol? I’m struggling with the vs 1.0.30 which I don’t think is the latest for the latest Core+K9
Hi,
Here is the link to the WatchMon UDP Listener that we regularly update with the mapping of the messages:
https://github.com/Batrium/WatchMonUdpListener
Make sure to go directly to the Payload folder for the latest release: https://github.com/Batrium/WatchMonUdpListener/tree/master/payload
Meanwhile, the up-to-date WatchMon Toolkit Software Releases are found on our Wiki: https://wiki.batrium.com/en/software
Ah perfect thanks! I can use that git repo for what I need.
Best regards,
Ross
Hello @maxine,
Is the WatchMon UDP repository on GitHub still maintained? I notice that the latest commit is two years old and there are a few (one year+ old) issues that are not addressed.
Hello osaether,
Yes, this is maintained. But we have not updated any messages in the last two years and there are no new features other than the new CAN inverter options, which didn’t require any payload changes.
This is intentional as we’ve been limiting the payload changes. Because when we do so, it breaks a lot of people’s systems where they’ve written their own applications to listen to the data transmitted from the BMS.
Hope this has been helpful!
You said the UDP messages have not changed but the Msg_4733_TelemetryCtrLogicStatus data does not match up with the info on GitHub. I did some testing and mapped the Expansion relays and SSR’s as well as the SoC% data and have that working but not sure how much of the other data does not align. Also there are a number of messages that are not listed in the repository 3031, 5a32, 3033, 5b31, 5a31, 5932 & 5931… If you could please provide an update for Msg_4733 that would be great, this is what I have tested so far:
.bit1('hasSocLoTriggered2') // boolean index 30 - bit2
.bit1('isSocOnState2') // boolean index 30 - bit3
.bit1('hasSocHiTriggered2') // boolean index 30 - bit4
.bit1('hasSocLoTriggered1') // boolean index 30 - bit5
.bit1('isSocOnState1') // boolean index 30 - bit6
.bit1('hasSocHiTriggered1') // boolean index 30 - bit7
.bit1('reserved10') // boolean index 31 - bit0
.bit1('reserved11') // boolean index 31 - bit1
.bit1('hasSocLoTriggered4') // boolean index 31 - bit2
.bit1('isSocOnState4') // boolean index 31 - bit3
.bit1('hasSocHiTriggered4') // boolean index 31 - bit4
.bit1('hasSocLoTriggered3') // boolean index 31 - bit5
.bit1('isSocOnState3') // boolean index 31 - bit6
.bit1('hasSocHiTriggered3') // boolean index 31 - bit7
.bit1('ExpansionOutputRelay4') // boolean index 32 - bit0
.bit1('ExpansionOutputRelay3') // boolean index 32 - bit1
.bit1('ExpansionOutputRelay2') // boolean index 32 - bit2
.bit1('ExpansionOutputRelay1') // boolean index 32 - bit3
.bit1('ExpansionOutputSSR8') // boolean index 32 - bit4
.bit1('ExpansionOutputSSR7') // boolean index 32 - bit5
.bit1('ExpansionOutputSSR6') // boolean index 32 - bit6
.bit1('ExpansionOutputSSR5') // boolean index 32 - bit7
.bit1('reserved12') // boolean index 33 - bit0
.bit1('RelayA') // boolean index 33 - bit1
Hi @James,
I just wanted to implement full monitoring of my battery pack. I forked the WatchMonUDPListener (GitHub - kleini/WatchMonUdpListener: WatchMon UDP Binary Listener translates to JSON and stores to influxdb), included some fixes of other forks and try to make it now usable for me.
As stated in the previous message, the payload parsers for messages with message ID 3031, 3033,
5034, 5931, 5932, 5a31, 5a32, 5b31 are missing. I would like to add those.
Furthermore, I think it would be useful to have a ready to use container image in some container image registry. I am going to implement a GitHub Actions pipeline building that image.
Are you interested in providing me the necessary information to make the WatchMonUDPListener more usable? I read about the MQTT protocol, you’re implementing. But I think, this still might take some time for finishing. Having a fully working WatchMonUDPListener instead in place is maybe helpful. What do you think?
Kind regards,
Kleini