I have been testing running mavros in the provided ros kinetic docker container from modalai. I have noticed that when I run mavros, and everything connects properly, the update rate of the topics from mavros are quite low. For example, /mavros/local_position/odom is publishing at 1Hz, which I would have expected much higher, like 30-50Hz. Has anyone else seen this problem or found a fix?
m1baldwin
@m1baldwin
Best posts made by m1baldwin
Latest posts made by m1baldwin
-
Low Mavros Data Rates
-
qvio error when connecting a rostopic subscriber to /qvio
I have been testing the VOXL Cam (system image 3.3.0) and had an error show up when connecting to a rostopic listener.
I let the full voxl-* system services run, and then launch the mpa_to_ros adapter which exposes the data over ros-topic. My roscore is running on another machine on the same network. I have confirmed that voxl is correctly pointing to that rosmaster using the ROS_MASTER_URI and ROS_IP environmental variables.
On the ros-master machine, when I subscribe to the /qvio/pose or /qvio/odometry topic, I begin to see errors in the terminal running the mpa_to_ros adapter. A sample of the errors are below. I do not get any messages echoed on the terminal where I am running "rostopic echo /qvio/pose"
ERROR: allocating memory for image buffer: Cannot allocate memory
qvio_overlay frame: 82138
ERROR: allocating memory for image buffer: Cannot allocate memory
ERROR: allocating memory for image buffer: Cannot allocate memory
qvio_overlay frame: 82139
ERROR: allocating memory for image buffer: Cannot allocate memory
qvio_overlay frame: 82141
ERROR: allocating memory for image buffer: Cannot allocate memory
ERROR: allocating memory for image buffer: Cannot allocate memory
qvio_overlay frame: 82142
ERROR: allocating memory for image buffer: Cannot allocate memory
qvio_overlay frame: 82144
ERROR: received unreasonably large camera frame size
ERROR: allocating memory for image buffer: Cannot allocate memory
qvio_overlay frame: 82145
ERROR: received unreasonably large camera frame size
qvio_overlay frame: 82147
ERROR: received unreasonably large camera frame size
ERROR: received unreasonably large camera frame size
qvio_overlay frame: 82149
ERROR: received unreasonably large camera frame size
qvio_overlay frame: 82150
ERROR: received unreasonably large camera frame size
qvio_overlay frame: 82151
ERROR: received unreasonably large camera frame size
qvio_overlay frame: 82152
ERROR: received unreasonably large camera frame size
qvio_overlay frame: 82153
ERROR: received unreasonably large camera frame size
qvio_overlay frame: 82154
qvio_overlay frame: 82155 -
Quantification of QVIO performance compared to other options
Is there a paper or documentation on the overall performance of the qvio machine vision algorithm shipped with the VOXL compared to other off-the-shelf algorithms/hardware?
Examples of what I would like to compare it to:
- ROVIO
- OpenVins
- ORB SLAM v2/v3
- Intel T265 (as a tracking module/blackbox)
-
I've got a couple old Qualcomm Flight Pro boards...
that I'd like to try re-using in some research work I have coming up. Can the latest MPA and software run on the Qualcomm flight pro? Any chance there is a guide available on getting the latest and greatest installed on the flight pro? To start, I'd just like to get the software for qvio server working and generating a pose estimate for me to evaluate.
-
Does the RB5 run the same software as the VOXL Cam module?
How does the VIO software running on the RB5 compare to the software running on the VOXL Cam? Are they more or less the same, just with some customizations for the different target hardware?
-
is it possible to run the VIO processing offboard, rather than on the VOXL Cam?
Is it possible to split the VIO processing between onboard immediate processing of the image sensor stream and the actual VIO estimate happening in the cloud? Is this something the MPA supports?
-
RE: Is it possible to use the VOXL CAM with a second companion computer?
Thanks @modaltb , I appreciate your feedback. I think the usb-to-ethernet can make sense at least for proof-of-concept.
@Chad-Sweet Yes, I am aware there is already a companion computer on the VOXL Cam. In my current work, I've already got an autonomy stack implemented on-top of a custom px4 drone platform with the upboard as the companion. My first interest is to add the VOXL Cam purely as a "tracking module" to replace something like the intel t265, and integrate the odometry out of it into my existing software. This would give me a way to evaluate the VOXL Cam in the use-cases I am exploring with a drone/autonomy configuration that is known to work. From there, depending on how well it works, I might consider replacing the upboard with the VOXL Cam, but that would not be the first thing I would do, as I would have quite a bit of software to re-work/port
edit: It's good the VOXL can already run ros; I figure I could use voxl_mpa_to_ros to pass the VIO data over ROS from the VOXL to the Upboard in this PoC just to get started easily.
-
Comparison between VOXL Cam and RB5 Companion Computer
Would anyone happen to have the following comparison information between the VOXL Cam and RB5 companion computer:
-
size, weight, power, compute capacity comparison between RB5 and "VOXL + Flight core"?
-
Is the SDK and development framework for RB5 and VOXL the same or different? What is the process for porting between the two hardware platforms?
-
product roadmap for 5G-enabled VOXLs and other drones equipped with RB5?
-
-
Is it possible to use the VOXL CAM with a second companion computer?
I would like to understand if the following configuration/usage of the voxl cam is possible.
VOXL Cam VIO --> Intel Upboard (ROS) --> PX4 Flight Controller
I've already got the upboard (ros) and px4 flight controller integrated with one another. What I would like to be able to do with the VOXL Cam is get the VIO estimate as a ROS odometry message to use with the rest of my ROS software running on the upboard.
I understand that the VOXL Cam already has a voxl_mpa_to_ros software which provides the VIO estimate as both a PoseStamped and Odometry message, but I believe that is meant to run on the VOXL Cam. What would I run on the companion computer "host" to get that data? What would the electrical connection be?