1

I am making a CAN simulator for GPS trackers, they only record CAN data and doesn't send ACK. Is it possible to send CAN data with raspberry, using mcp2515/tja1050, without any device on bus that would trigger ACK?

3 Answers3

1

This will usually generate a continuous retransmit.

Some devices have a "one-shot" transmit mode when just sends the CAN frame and does not attempt a retransmission. If you transmitter has this mode you can do what you describe, otherwise you will get a lot of retransmissions.

janm
  • 17,976
  • 1
  • 43
  • 61
1

No it isn't possible, you need at least 2 nodes that are actively participating in the communication. This can however be fixed by just providing another CAN controller on the bus, which doesn't have to do anything intelligent except the ACK part.

For development/debug/test purposes you can however put your own node in "loopback mode", meaning it will speak to itself. Can be handy if you have to proper hardware available yet.

Lundin
  • 195,001
  • 40
  • 254
  • 396
1

You can try to set the controlmode presume-ack to on.

Assuming you are using the ip command for creating your can sockets that would be something like

ip link set <DEVICE> type can presume-ack on

This will ignore missing ACKs. However I am not sure whether this works with all controllers.

MSpiller
  • 3,500
  • 2
  • 12
  • 24