dronecan / pydronecan

python DroneCAN code generation, interface and utilities
MIT License
40 stars 42 forks source link

NodeMonitor is not collecting node information #64

Open belovictor opened 4 months ago

belovictor commented 4 months ago

Hi,

While trying to utilise NodeMonitor to keep track of devices on the bus I found that it does not collect information from NodeStatus updates and doesn't call update handler. While debugging this problem (as I'm sure there are nodes and communication is ok, and everything works great in dronecan gui tool) I found that in my case _on_node_status handler is never called and I tracked it down to adding handlers in NodeMonitor init

Strangely, if I change uavcan.protocol.NodeStatus to dronecan.uavcan.protocol.NodeStatus in line 92 of node_monitor.py https://github.com/dronecan/pydronecan/blob/8dd60c5abebde41260eccebb625f2d22449af11f/dronecan/app/node_monitor.py#L92 NodeMonitor starts to receive NodeStatus messages and everything starts working. Is it a bug (which I can hardly believe) or maybe some known issue?

Best regards, Victor Belov