Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

arm-status and flight-mode flicker #11

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open

arm-status and flight-mode flicker #11

wants to merge 1 commit into from

Conversation

ghost
Copy link

@ghost ghost commented Oct 20, 2015

With the latest Ardupilot firmware(Copter3.3 and Plane3.4) running on Flight Control. If we Connect the FC to GCS, and FC with OSD plug on. The arm-status and flight-mode will flicker from the output of OSD. Randy(developer of Ardupilot) explains that "in Copter-3.3 we do mavlink forwarding across the telemetry ports meaning messages from the GCS are probably reaching the OSD". I made a pitch for PlayUAVOSD. This issue also should happen on MinimOSD board, because most codes of PlayUAVOSD are borrowed from MinimOSD.

The modifications base on the suggestion of Randy:
"I think the OSD is getting confused by the heartbeat being received from the ground station (aka GCS). In Copter-3.3 we do mavlink forwarding across the telemetry ports meaning messages from the GCS are probably reaching the OSD. The way to resolve it is for the OSD to filter out the messages that are not coming from the vehicle. I think for the heartbeat that could be done using the MAV_TYPE. You'll probably find the mission planner sets the MAV_TYPE to "6" (MAV_TYPE_GCS)
Another option would be to filter by SYSID. Each MAVLink message will have a SYSID and a component ID. The vehicle is normally "1" while the GCSs are high numbers (like 255). The SYSID can be set by the user though so the perfectly correct way to do it would be for the OSD to maintain a little map of SYSID to MAV_TYPE using data collected from the heartbeats and then each time a message arrives, check if the SYSID maps to a vehicle or a GCS and throw away all the GCS ones."

…h OSD

plug on) to GCS. Only happens when the FlightControl running ArduCopter3.3 or
ArduPlane3.4.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants