import cantoools
can_db = cantools.database.load_file(path)
above snippet shows error
"signal_xx" over lapping in message "node_xx"
please suggest other ways to parse this info.
path ---> CAN BASE J1939
import cantoools
can_db = cantools.database.load_file(path)
above snippet shows error
"signal_xx" over lapping in message "node_xx"
please suggest other ways to parse this info.
path ---> CAN BASE J1939
You're parsing it correctly but there's an issue with the DBC file itself. You can use CANdb++ like Robert suggested (it installs automatically alongside any Vector software install like CANalyzer) or just open the DBC file in a text editor. You're looking for a message where signals overlap. Each signal has a start bit and number of bits defined so somewhere there's a conflict.
I am not familiar with the cantools project, but the message seems pretty explicit to me.
It means that in the DBC, there is a frame named
node_xx
with at least 2 signals which are overlapping. This means that there are one or several bits which are used by more than one signal.The DBC file seems malformed!
You could download the de-facto standard candb++ from VECTOR, while not being a free software, it can be downloaded for free. That software should be able to report some warnings or errors if there are signals overlapping.