I have a Super beacon as a hedgehog connected via USB with this configuration:
However, using both the ROS interface and the Python interface, I only receive position updates when it isn't actively tracking—for example, it doesn't have a connection to other beacons or is too close to the modem. In the Dashboard software, this issue does not happen and the Hedgehog's position updates multiple times per second. Python example code:
Or with the ROS node:
The second number after "timestamp" is the time since the last position was received. You can see that there is sometimes multiple seconds between position updates, but then it switched to 8Hz after I unplugged the modem (and thus it couldn't actively determine its location).
My colleague will later comment on ROS, etc. A few comments and recommendations:
- Have you achieved perfect tracking in the Dashboard before integration with ROS?
- "Multiple seconds" delay between updates can have various reasons. One of the most obvious ones is the lack of tracking due to non-line of sight
- Thus, the recommendation is very simple: achieve perfect tracking and only then move to integration. If you have tracking in the Dashboard in the same conditions and when switching to ROS you have difficulties, ROS-related comments that may follow, are applicable. In the majority of cases, the answer is more mundane - lack of tracking due to various reasons.
Another quick comment:
- It may be that you have two connections at the same time from your beacon: to the Dashboard and to your ROS. Would this be possible?
I have a Super beacon as a hedgehog connected via USB with this configuration:
However, using both the ROS interface and the Python interface, I only receive position updates when it isn't actively tracking—for example, it doesn't have a connection to other beacons or is too close to the modem. In the Dashboard software, this issue does not happen and the Hedgehog's position updates multiple times per second. Python example code:
Or with the ROS node:
The second number after "timestamp" is the time since the last position was received. You can see that there is sometimes multiple seconds between position updates, but then it switched to 8Hz after I unplugged the modem (and thus it couldn't actively determine its location).
- Have you achieved perfect tracking in the Dashboard before integration with ROS?
- "Multiple seconds" delay between updates can have various reasons. One of the most obvious ones is the lack of tracking due to non-line of sight
- Thus, the recommendation is very simple: achieve perfect tracking and only then move to integration. If you have tracking in the Dashboard in the same conditions and when switching to ROS you have difficulties, ROS-related comments that may follow, are applicable. In the majority of cases, the answer is more mundane - lack of tracking due to various reasons.
Yes. In fact, I get perfect tracking in the dashboard at the same time I have bad tracking in ROS.
- It may be that you have two connections at the same time from your beacon: to the Dashboard and to your ROS. Would this be possible?
This problem occurred with both the modem and hedgehog connected to the same computer, with the Dashboard software connected to the modem and ROS connected to the hedgehog (the Dashboard automatically connected to the modem because it was plugged in first and I manually specified the hedgehog to the ROS node). I used long USB cords to separate the devices to reduce interference. I will try again tomorrow with separate computers.
Also to note:
This occurs when using the sample Python code provided in the "Download the latest SW pack" link. The problem is not just with ROS integration
This problem is just now surfacing that I've updated to software v7.306. I was running v6.(something, I don't remember) previously.
I will try a full factory reset tomorrow and try again.