Mavlink port forwarding and use of component ID in ardupilot

146 views
Skip to first unread message

Glenn Gregory

unread,
May 20, 2015, 9:38:59 PM5/20/15
to drones-...@googlegroups.com
I just wanted to start a discussion about how mavlink ports are handled when we have multiple mavlink devices onboard.

Someone on diydrones who is using the teensy FrSky telemetry hack has reported issues where the data they are receiving on the Taranis is changing. Second post on this blog.
They are using a Storm32 gimbal connected to a pixhawk via mavlink on Serial2, the Teensy is on Serial4 and Radio on Serial1. So I believe the Teensy is recieving both sets of mavlink data (Storm32 and UAV). The simple fix for this is for Teensy code to filter for only one System ID, or move to onboard FrSky driver. Although I believe this brings up some bigger issues as we start to see more Mavlink enabled sub-systems onboard.


My questions are:
1. Shouldn't sub-systems on a vehicle use the same System ID as the vehicle but have a different Component ID? I believe ArduPilot uses Component ID it just isn't a parameter yet?
2. Is there currently a method to route mavlink messages (maybe via serial manager)? For example in the above situation, messages from Storm32 (system/component ID) on Serial 2 forward to Serial 1 only, and MAV (system/component ID) messages forward to Serial1 and Serial4.
 
The current situation also shows the Storm32 gimbal as a vehicle in Mission Planner (I have not checked this myself, only from discussion). So you see two 'vehicles' in MP, the MAV and Storm32. I believe this is because the Storm32 has a unique System ID so is treated as a new vehicle by MP. This implementation by MP seems correct to me, the issue is Storm32 shouldn't have a unique System ID?

These issues will be valid for other sub-systems as well. I wonder if OSD devices would have the same problem? Although they probably filter for System ID.

Reply all
Reply to author
Forward
0 new messages