Page 1 of 1

DBC conversions for application-specific firmware?

Posted: Thu 7. Feb 2019, 18:57
by mellis
Hi,

I am developing application-specific firmware for PCAN-Router-Pro using the pcanrouterpro_dev.zip development package. I need to be able to read signals from specific CAN messages from one port, insert data from those signals into a different CAN message, and then transmit that new message to a different port. This would be easier if there were functions available that could unpack and pack CAN signals from the CAN messages based on a DBC file. Is there a library or source code available that can do this?

Thanks,
Matt

Re: DBC conversions for application-specific firmware?

Posted: Thu 7. Feb 2019, 22:53
by PEAK-Support
To work with SYM/DBC (signal based) information, you should use the standard firmware and our PPCAN-Editor.
The C-Source Development Tools do not support such features (for that we build the Std.Firmware).
Your work could be done with a configuration and the standard firmware.

Please also keep in mind CANdb files are only common in the automotive world, but we sell the units also to other people who do not care about a CANdb file and does not know what it is - they use J1939, CANopen, DeviceNet , NMEA2000, ISO-BUS, own protocols etc. ...so we are not able to include for all scenarios a LIB, that must be done by your own - or --> use the PPCAN Editor to solve your signal based problem.

Re: DBC conversions for application-specific firmware?

Posted: Fri 8. Feb 2019, 00:10
by mellis
Great; thanks very much for the explanation.

Do PPCAN-Editor and the standard firmware have J1939 support? The CAN messages that I need to modify are on a J1939 interface. The messages that I need to update are > 8 bytes long, and are therefore sent using the J1939 Transport Protocol. I need to be able to detect that the PGN I need to update is being transmitted using the Transport Protocol. I then need to identify the correct message packet containing the signals that I need to update, update those signals, and transmit the updated message packet.

The other requirement for my program is that I need to update the J1939 messages with signals received over a non-J1939 interface. So I need to extract signals from specific messages on the non-J1939 interface, save those signal values, and use those signal values to update the J1939 message signals.

Are there functions in the standard firmware/PPCAN_Editor to implement something like this?

Thanks,
Matt

Re: DBC conversions for application-specific firmware?

Posted: Fri 8. Feb 2019, 08:13
by PEAK-Support
The Standard Firmware could use symbol files. But J1939 is a complete Software Layer with Transport protocol (fragmented Data >8 Bytes) on TOP of CAN. We do not support J1939 in this module. As we wrote, we build our devices for CAN-Layer 2. If you need J1939 specific functions you have to build by your own.
J1939 Stacks are available - but not for free - check Google for J1939 Stack.

Re: DBC conversions for application-specific firmware?

Posted: Fri 8. Feb 2019, 17:02
by mellis
Understood - thanks for the reply.