Hi,
We are trying to read CAN messages of Toyota Prius 2017 and translate into human readable using cantools package which uses the toyota_prius_2017_ptgenerated.dbc file in opendbc folder.
Cantools.decode throws an error saying IPAS steering commands are overlapping.
Can the dbc file be edited to remove the error by rearranging the bits?
Will the ECU be able to read messages provided by cantools.encode based on the rearranged signals?
Could you suggest any other way to read CAN messages besides using cantools and dbc file?
Below is the Overlapping content of the Steering IPAS from dbc:
BO 359 STEERING_IPASCOMMA: 8 IPAS
SG STATE : 7|4@0+ (1,0) [0|15] "" XXX
SG ANGLE : 3|12@0- (1.5,0) [-510|510] "deg" XXX
SG SET_MEX10 : 23|8@0+ (1,0) [0|255] "" XXX
SG SET_MEX00 : 31|8@0+ (1,0) [0|255] "" XXX
SG DIRECTIONCMD : 38|2@0+ (1,0) [0|3] "" XXX
SG SET_MEX40 : 47|8@0+ (1,0) [0|255] "" XXX
SG SET_MEX00 : 55|8@0+ (1,0) [0|255] "" XXX
SG CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX
You need to use Cabana and define the 2017 Prius IPAS specific DBC. Toyota does have more torque than Honda/Acura I believe. You need to modify the endians on your dbc file.
Hi, We are trying to read CAN messages of Toyota Prius 2017 and translate into human readable using cantools package which uses the toyota_prius_2017_ptgenerated.dbc file in opendbc folder. Cantools.decode throws an error saying IPAS steering commands are overlapping. Can the dbc file be edited to remove the error by rearranging the bits? Will the ECU be able to read messages provided by cantools.encode based on the rearranged signals? Could you suggest any other way to read CAN messages besides using cantools and dbc file? Below is the Overlapping content of the Steering IPAS from dbc: BO 359 STEERING_IPASCOMMA: 8 IPAS SG STATE : 7|4@0+ (1,0) [0|15] "" XXX SG ANGLE : 3|12@0- (1.5,0) [-510|510] "deg" XXX SG SET_MEX10 : 23|8@0+ (1,0) [0|255] "" XXX SG SET_MEX00 : 31|8@0+ (1,0) [0|255] "" XXX SG DIRECTIONCMD : 38|2@0+ (1,0) [0|3] "" XXX SG SET_MEX40 : 47|8@0+ (1,0) [0|255] "" XXX SG SET_MEX00 : 55|8@0+ (1,0) [0|255] "" XXX SG CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX