OpenMarine

Full Version: CAN connection not showing in SignalK (Extended CAN Frame support issue?)
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hardware: RPI 4B
Openplotter V3
Openplotter-can V3.2.21
Connected Devices:
- Shipmodule MiniPlex 3Wi (connected via TCP, likely not relevant to this issue)
- Victron SmartShunt & SmartSolar (connected via VE.Direct->USB cable, likely not relevant to this issue)
- WS500 Alternator Regulator (sometimes removed for troubleshooting, only powered on when engine running)
- REC-BMS connected via RS485-CAN-HAT.

Synopsis: REC BMS CAN data seems to show up in 'candump' but not in SignalK deltas.

Details: I've got a REC Active BMS hooked up to a Waveshare RS485-CAN-HAT via the CANH and CANL wires. I'm able to set up the CAN device in Openplotter's Can Bus 3.2.21, and it says it's set up a connection with SignalK. Within SignalK I see that 'can0' is connected, however there are no deltas. 

Possible cause: When I start the engine, the WS500 regulator comes on. At that time I get additional CAN sentences in 'candump' and these new ones show up in SignalK. The only difference I can see between the sentences that show up and the ones that don't are the length of the TX identifier. Ones from the REC-BMS that don't show up have a 3-digit identifier, whereas the ones that do show up have an 8-digit identifier. I think the REC ABMS is using a 'standard' CAN frame length whereas NMEA 2000 requires an "extended" frame. At least that might explain why the tx-identifier is a different length. In looking at canboatjs and the pgn descriptions, it seems like SignalK can only work with the "extended" frames. Has anyone else run into this issue?
hello grazzam

i also get these short identifiiers string on my can bus. allways wondered from where there are.

can0 1CEFFFE4 [8] 66 99 FF 0F 10 27 00 00
can0 1CEFFFE4 [8] 66 99 1C 20 9C 18 00 00
can0 305 [8] 00 00 00 00 00 00 00 00
can0 307 [8] 12 34 56 78 56 49 43 00
can0 0DF11264 [8] 57 32 34 FF 7F 00 00 FD
can0 0DF11964 [8] 57 32 34 F2 FF 4B 00 FF
can0 0DF50B64 [8] FF B3 02 00 00 00 00 FF
can0 0DF50B64 [8] FF B3 02 00 00 00 00 FF

with "candump can0 | candump2analyzer | analyzer" they look unknown:

2023-04-18-00:46:46.533 0 5 3 0 Unknown single-frame addressed: Data = Unhandled value 1
2023-04-18-00:46:46.534 0 7 3 0 Unknown single-frame addressed: Data = Unhandled value 18939459174544403

maybe these are originated from the victron venus system on my canbus.
next time on the boat i will put this offline for an test.

good night.

holger
Hi holger,
Interesting, yes I wonder what devices those shorter identifiers are related to. In a quick search I wasn't able to determine whether Victron uses 11-bit (standard) or 29-bit (extended) identifiers, but then again the differences between VE.CAN, VE.BMS, and VE.BUS connections seriously confuse me.

Here's an output of when I run "candump can0 | candump2analyzer | analyzer". I've included serveral seconds worth; until it seems to reach a steady state. Looks to me like it's initially trying to create new PGNs and devices from mis-interpreted data due to the shorter length sentence of the 'standard' CAN frame.
Code:
INFO 2023-04-18T00:33:09.081Z [analyzer] Assuming normal format with one line per packet
INFO 2023-04-18T00:33:09.081Z [analyzer] New PGN 0 for device 81 (heap 11183 bytes)
2023-04-18-00:33:09.081 0  81   3      0 Unknown single-frame addressed:  Data = Unhandled value 32380359818608784
INFO 2023-04-18T00:33:09.271Z [analyzer] New PGN 0 for device 85 (heap 22366 bytes)
2023-04-18-00:33:09.272 0  85   3      0 Unknown single-frame addressed:  Data = 0x1a3300640043
INFO 2023-04-18T00:33:09.472Z [analyzer] New PGN 0 for device 86 (heap 33549 bytes)
2023-04-18-00:33:09.473 0  86   3      0 Unknown single-frame addressed:  Data = 0x91fffa055d
INFO 2023-04-18T00:33:09.674Z [analyzer] New PGN 0 for device 90 (heap 44732 bytes)
2023-04-18-00:33:09.674 0  90   3      0 Unknown single-frame addressed:  Data = Unhandled value 757352439673954473
INFO 2023-04-18T00:33:09.875Z [analyzer] New PGN 0 for device 94 (heap 55915 bytes)
2023-04-18-00:33:09.876 0  94   3      0 Unknown single-frame addressed:  Data = Unhandled value 23447369689548115
2023-04-18-00:33:10.077 0  81   3      0 Unknown single-frame addressed:  Data = Unhandled value 32380359818608784
INFO 2023-04-18T00:33:10.278Z [analyzer] New PGN 0 for device 95 (heap 67098 bytes)
2023-04-18-00:33:10.279 0  95   3      0 Unknown single-frame addressed:  Data = Unhandled value 4806219530241
INFO 2023-04-18T00:33:10.480Z [analyzer] New PGN 0 for device 96 (heap 78281 bytes)
2023-04-18-00:33:10.480 0  96   3      0 Unknown single-frame addressed:  Data = Unhandled value 1
INFO 2023-04-18T00:33:10.681Z [analyzer] New PGN 0 for device 128 (heap 89464 bytes)
2023-04-18-00:33:10.681 0 128   3      0 Unknown single-frame addressed:  Data = Unhandled value 14974490201899314
INFO 2023-04-18T00:33:10.882Z [analyzer] New PGN 0 for device 129 (heap 100647 bytes)
2023-04-18-00:33:10.883 0 129   3      0 Unknown single-frame addressed:  Data = Unhandled value 1
2023-04-18-00:33:11.094 0  86   3      0 Unknown single-frame addressed:  Data = 0x91fffa055d
INFO 2023-04-18T00:33:11.285Z [analyzer] New PGN 0 for device 115 (heap 111830 bytes)
2023-04-18-00:33:11.286 0 115   3      0 Unknown single-frame addressed:  Data = Unhandled value 80784551196757353
2023-04-18-00:33:11.487 0  81   3      0 Unknown single-frame addressed:  Data = Unhandled value 32380359818608784
INFO 2023-04-18T00:33:11.688Z [analyzer] New PGN 0 for device 116 (heap 123013 bytes)
2023-04-18-00:33:11.688 0 116   3      0 Unknown single-frame addressed:  Data = Unhandled value 52
INFO 2023-04-18T00:33:11.889Z [analyzer] New PGN 0 for device 117 (heap 134196 bytes)
2023-04-18-00:33:11.890 0 117   3      0 Unknown single-frame addressed:  Data = Unhandled value 50
INFO 2023-04-18T00:33:12.091Z [analyzer] New PGN 0 for device 118 (heap 145379 bytes)
2023-04-18-00:33:12.091 0 118   3      0 Unknown single-frame addressed:  Data = Unhandled value 50
INFO 2023-04-18T00:33:12.292Z [analyzer] New PGN 0 for device 119 (heap 156562 bytes)
2023-04-18-00:33:12.292 0 119   3      0 Unknown single-frame addressed:  Data = Unhandled value 50
INFO 2023-04-18T00:33:12.493Z [analyzer] New PGN 0 for device 120 (heap 167745 bytes)
2023-04-18-00:33:12.494 0 120   3      0 Unknown single-frame addressed:  Data = Unhandled value 3710851744587
INFO 2023-04-18T00:33:12.695Z [analyzer] New PGN 0 for device 121 (heap 178928 bytes)
2023-04-18-00:33:12.695 0 121   3      0 Unknown single-frame addressed:  Data = Unhandled value 1121
2023-04-18-00:33:12.897 0  81   3      0 Unknown single-frame addressed:  Data = Unhandled value 32380359818608784
2023-04-18-00:33:13.108 0  85   3      0 Unknown single-frame addressed:  Data = 0x1a3300640043
2023-04-18-00:33:13.299 0  86   3      0 Unknown single-frame addressed:  Data = 0x91fffa055d
2023-04-18-00:33:13.501 0  90   3      0 Unknown single-frame addressed:  Data = Unhandled value 757352439673954473
2023-04-18-00:33:13.702 0  94   3      0 Unknown single-frame addressed:  Data = Unhandled value 23447369689548115
2023-04-18-00:33:13.904 0  81   3      0 Unknown single-frame addressed:  Data = Unhandled value 32380359818608784
2023-04-18-00:33:14.105 0  95   3      0 Unknown single-frame addressed:  Data = Unhandled value 4806219530241
2023-04-18-00:33:14.306 0  96   3      0 Unknown single-frame addressed:  Data = Unhandled value 1
2023-04-18-00:33:14.508 0 128   3      0 Unknown single-frame addressed:  Data = Unhandled value 14974490201899314
2023-04-18-00:33:14.709 0 129   3      0 Unknown single-frame addressed:  Data = Unhandled value 1
2023-04-18-00:33:14.910 0  86   3      0 Unknown single-frame addressed:  Data = 0x91fff9055d
2023-04-18-00:33:15.122 0 115   3      0 Unknown single-frame addressed:  Data = Unhandled value 80784551196757353
2023-04-18-00:33:15.313 0  81   3      0 Unknown single-frame addressed:  Data = Unhandled value 32380359818608784
2023-04-18-00:33:15.515 0 116   3      0 Unknown single-frame addressed:  Data = Unhandled value 52
2023-04-18-00:33:15.716 0 117   3      0 Unknown single-frame addressed:  Data = Unhandled value 50
2023-04-18-00:33:15.917 0 118   3      0 Unknown single-frame addressed:  Data = Unhandled value 50
2023-04-18-00:33:16.119 0 119   3      0 Unknown single-frame addressed:  Data = Unhandled value 50
Victron has lately updated its venus os to beta 3-32.
now every device connected via v-bus or serial will emit an new own (extended) can-ID.

By shutting the venus down, I can now confirm that my short Identifiers originate from the Venus. No more unhandled Cantraffic for Signal K to throw away.

Maybe we should notify the victron team or the Signal K slack team to this thread ;-)
I've reached out to REC BMS - they clarify that their "CAN" output
Quote:"sends 11-bit VICTRON CAN BMS protocol. It is not NMEA 2000 compatible. You can use Cerbo GX for NMEA integration"

Sounds like I was just confused about the possible ways to get CAN and NMEA 2000 into the data stream. I thought I could just use the CAN hat, but I think that gives me reason enough to look at getting a Cerbo - sounds like that may do some necessary additional converting of data. Hopefully that update you mentioned clears up some of the un-parsed data.

I've also checked with canboat - they confirmed that they do not support and do not plan to support the different protocol. There's now an issue on Github requesting they block the other messages.