Closed PeterBowman closed 4 years ago
First attempt at https://github.com/roboticslab-uc3m/yarp-devices/commit/0867506dd34dd541fe324f451c1b0a283b7feadf, not tested.
Note to self: expose simultaneous CAN reads/writes?
We may feel somewhat constrained by the ICanBusErrors
interface in that it allows to expose only a subset of available CAN status items (not so surprisingly). See https://github.com/roboticslab-uc3m/yarp-devices/issues/231 regarding more sophisticated tools; I'm marking this as blocked for said reason.
Actually blocked by https://github.com/roboticslab-uc3m/yarp-devices/issues/160, which targets streaming CAN data through YARP ports.
Since remote connection to active YARP ports streaming CAN data is desired, keep in mind the following issue raised at https://github.com/roboticslab-uc3m/yarp-devices/issues/160#issuecomment-577650352 regarding lost packets and YARP carriers.
I'm closing this as invalid. Bus-off state is now monitored as described in https://github.com/roboticslab-uc3m/yarp-devices/issues/242, CAN bus load is streamed via YARP port thanks to https://github.com/roboticslab-uc3m/yarp-devices/issues/160, and everything GUI-related will be discussed at https://github.com/roboticslab-uc3m/yarp-devices/issues/224.
YARP provides an
ICanBusErrors
interface to access several CAN network-related parameters stored in aCanErrors
structure. It is yet to determine their purpose since no documentation is available, but here they are:txCanErrors
rxCanErrors
busoff
rxCanFifoOvr
txCanFifoOvr
txBufferOvr
rxBufferOvr
The
ICanBusErrors
interface would need to be implemented by CAN devices, currently CanBusHico and CanBusPeak. In this way, CanBusControlboard could check the network state periodically and watch for RX/TX overruns, network errors and, most interestingly, bus load (having the new PDO implementation in mind as detailed in https://github.com/roboticslab-uc3m/yarp-devices/issues/223).Perhaps those parameters are not suitable for the goal of this issue. It is, however, a starting point I'd like to explore. All relevant parameters (per CAN bus) would be presented to users via GUI app (https://github.com/roboticslab-uc3m/yarp-devices/issues/224).