Using socketcan on QT
-
I'm currently using your CAN example and socket can to read CAN frames. I notices I get the same time stamp for 2 or 3 (sometimes more) consecutive messages, So I found out it was because this is "software" timestamp and not "hardware". I found out because I asked Peak and they clear this for me, so when I call:
"candump -tA -H can0"
the -H gets the correct time stamp, although from 1970 but that's OK.
My question is how can I set QT so that it uses the hardware timestamp?
Thanks,
Kind regards,
Jorge Garza -
Hi @Garza,
that's currently not possible. You may want to comment and vote on QTBUG-55295 to get that implemented.
Regards
Edit: Of course you can also use the
peakcan
plugin together with Peak's own driver on Linux, where this should already work as expected. -
@Garza you can try to patch the socketcan plugin locally and recompile QtSerialBus.
An official solution is not that easy, as all the plugins need to be adjusted. I don't expect that to happen anytime soon. As always: Patches welcome.
Regards
-
@Garza said in Using socketcan on QT:
how can I do that?
https://wiki.qt.io/Building_Qt_5_from_Git
But don't build whole Qt, just QtSerialBus module. -
@Garza You can clone the modules you need as described in the link I gave you: https://wiki.qt.io/Building_Qt_5_from_Git