Commit Graph

365 Commits

Author SHA1 Message Date
Mohammed Kabir 92457bcafd mavlink : implement full ping protocol and link latency reporting 2018-05-15 18:57:34 +02:00
Thomas Stastny 71170dce0a mavlink: HIGHRES_IMU set diff_pressure in fields_updated (#9296) 2018-04-16 11:43:52 -04:00
Daniel Agar 3b5b12e1d1 move baro and magnetometer data out of sensor_combined 2018-04-11 23:26:58 -04:00
Mohammed Kabir 28f9b38919 mavlink : fix pointer for main_mode and sub_mode 2018-04-11 22:03:12 +02:00
Oleg Kalachev 1b1617b5a0 Add new mode AUTO_PRECLAND 2018-04-11 14:50:07 -04:00
acfloria 41de588a73 Move HIGH_LATENCY2 stream to separate file and update some comments" 2018-04-11 15:15:28 +02:00
acfloria fb1bb7a769 Move the SimpleAnalyzer to a separate file 2018-04-11 15:15:28 +02:00
acfloria 53fdbb6c04 Remove unnecessary newlines 2018-04-11 15:15:28 +02:00
acfloria 2a5c7efd8d Mavlink: Use filtered update rate for HIGH_LATENCY2 stream instead of main loop delay 2018-04-11 15:15:28 +02:00
acfloria b95d65df53 Commander: Fix bug when changing to high latency telemetry
Due to the old heartbeat of the high latency telemetry when activating it after flying sufficiently long in normal telemetry it is first detected as lost until the first message is sent.
By updating the heartbeat to the current time on switching this issue is avoided.

Also includes a small style fix for the HIGH_LATENCY2 stream
2018-04-11 15:15:28 +02:00
acfloria f5a66782e5 Reduce required stack for HIGH_LATENCY2 2018-04-11 15:15:28 +02:00
acfloria 32815dc1d3 Only generate the HIGH_LATENCY2 message if transmitting is allowed 2018-04-11 15:15:28 +02:00
acfloria e01763a7c7 Set the HIGH_LATENCY2 stream to a constant rate 2018-04-11 15:15:28 +02:00
acfloria 17a157b9da Adopt high latency switching to new MAV_CMD design 2018-04-11 15:15:28 +02:00
acfloria ce1b908714 Adopt mavlink stream to new HIGH_LATENCY2 definition 2018-04-11 15:15:28 +02:00
acfloria 78950f2b39 Fix format and remove ets driver from fmu-v2 build 2018-04-11 15:15:28 +02:00
acfloria cbe75188e9 Add the HighLatency2 mavlink stream 2018-04-11 15:15:28 +02:00
acfloria 75ed9b002b Add the SimpleAnalyzer to generate messages for MAVLink streams 2018-04-11 15:15:28 +02:00
Daniel Agar f145b65cbb mavlink static streams_list array 2018-04-03 18:37:51 -04:00
Daniel Agar e395b3578f delete unused ARMING_STATE_ARMED_ERROR state 2018-03-29 10:25:56 -04:00
Daniel Agar d40d165b4b mavlink delete deprecated HIL_CONTROLS 2018-03-28 15:37:57 -04:00
Daniel Agar 3db287ba67 mavlink messages delete unnecessary timestamps and cleanup 2018-03-28 15:37:57 -04:00
Daniel Agar deb5cbcc82 mavlink GLOBAL_POSITION_INT use vehicle_local_position for altitude 2018-03-28 15:37:57 -04:00
Daniel Agar 6af989e8c0 mavlink VFR_HUD use vehicle_local_position for altitude 2018-03-28 15:37:57 -04:00
Daniel Agar 354181be24 mavlink update ALTITUDE message to always use vehicle_local_position 2018-03-28 15:37:57 -04:00
Daniel Agar 29b3950747 move geo and geo_lookup to PX4/ecl 2018-03-26 23:16:55 -04:00
Daniel Agar ad2b96b523 mavlink move to matrix lib 2018-03-22 07:46:16 +01:00
AlexKlimaj 83d01a7c76 Updated batt_smbus. Expanded battery_status.msg. Fixed mavlink_messages.cpp temperature. (#8991)
* Updated and expanded batt_smbus to work with bq40z50-R2. Expanded battery_status.msg. Fixed mavlink_messages.cpp temperature, added commented out expanded battery_status.msg parameters for future mavlink expansion.

* Changed errx to PX4_ERR

* Added PX4_ERR returns
2018-03-06 10:42:20 +01:00
Matthias Grob 5bb9babc20 Mavlink: round battery percentage up instead of down 2018-03-02 16:18:52 +01:00
Julian Oes 3917eb2d00 mavlink: don't send wrong time
This prevents the autopilot from sending an invalid unix timestamp.
Usually, if no time is set yet by a GPS, the date is somehow set
to 2000-01-01, therefore we can ignore anything earlier than 2001.
2018-02-23 16:14:02 +01:00
Daniel Agar 2c7d45064e mavlink EXTENDED_SYS_STATE initialize landed and vtol state 2018-02-19 15:28:47 +01:00
Vasily Evseenko 135162522a Don't use ADSB messages with undefined fields in navigator (#8900)
Don't use ADSB messages with undefined fields in navigator
2018-02-18 11:08:40 +01:00
Lorenz Meier 6227139df1 MAVLink app: Make debug messages a compile time check
The debug messages are too verbose to be run in a production vehicle and inherently were something that should only be run in SITL / debug sessions on hardware. Switching the flag to the PX4_DEBUG() macro does not only make this more explicit, but also saves a lot of flash space that otherwise was consumed by the strings.
2018-01-13 22:02:57 -05:00
Julian Oes 14cc9e9919 mavlink_messages: fix length of NAV_CONTROLLER msg
This was caught in an unrelated review.
2018-01-05 19:53:41 +01:00
ChristophTobler 3ffc1fd25b Stream scaled IMU for Snapdragon Flight using VISLAM
This is temporary (and for Snapdragon Flight + VISLAM only) until there is a proper solution to get unfiltered IMU data for VIOs etc.
2018-01-05 18:45:50 +01:00
Lorenz Meier 1f4bad0624 MAVLink: Harden home position usage
This should ensure that the home position / altitude is only being used when valid.
2018-01-02 16:52:10 +01:00
Daniel Agar c56b0a0e7c Mavlink only stream HOME_POSITION if valid (#8440) 2017-12-10 02:31:42 -05:00
Daniel Agar b4755297ec delete control_state and cleanup vehicle_attitude (#7882) 2017-09-21 16:24:53 -04:00
Hancheol Choi 43667b240e mavlink fix incorrect attitude_sp subscription in HIGH_LATENCY (#7928) 2017-09-07 09:32:42 -04:00
Julien Lecoeur b0c57fd65b Return bool in added MavlinkStream*::send() 2017-08-30 14:45:02 +01:00
Julien Lecoeur 12353f4da7 Add support for mavlink message DEBUG_VECT 2017-08-30 14:45:02 +01:00
Julien Lecoeur eeb966d375 Add support for mavlink message DEBUG 2017-08-30 14:45:02 +01:00
José Roberto de Souza 66170d1c01 mavlink: Do not miss a vehicle_command
If 2 or more vehicle_command are queued a call to update() will
return the oldest vehicle_command and set the _cmd_time to the
timestamp of the last vehicle_command queued losing it.
Using update_if_changed() fix this causing all item being consumed
one at each call of send().
2017-08-28 08:28:57 +02:00
Daniel Agar b70b8288b9 px4_includes cleanup incomplete list 2017-08-20 20:42:42 +02:00
José Roberto de Souza 925efe990d Initialize all outgoing vehicle_command_ack_s and vehicle_command_s
This will initialize those structs with zero in all fields not set
and all fields set will only be change once to the final value not
wasting CPU time zeroing it.

This will guarantee that no non-unitialized structs will have
a trash value on from_external causing it to be sent to the
MAVLink channel without need it.
2017-08-08 21:46:30 +02:00
José Roberto de Souza 7c268f4fa1 mavlink: Safely avoid send the same vehicle_command and vehicle_command_ack back
The previous approach was checking system id and component id but it
will not work in 100% of cases as external devices can send MAVLink
message with the right system id but with broadcast component id.
2017-08-08 21:46:30 +02:00
Lorenz Meier dc4faa81de MAVLink: Only initialize where required 2017-07-29 16:12:41 +02:00
Lorenz Meier 6b17db35b0 MAVLink: Fix vibration message timestamp 2017-07-29 16:12:41 +02:00
Lorenz Meier 07ced9895c MAVLink: Improve message handling / tracking
The message handling was not obeying action focused messages and high-rate messages properly before. With this change update rates track the desired rates closely. Critical high-rate messages such as ADS-B are queued additionally to guarantee that all received packets are being correctly forwarded.
2017-07-29 16:12:41 +02:00
Lorenz Meier 286c3d41d3 MAVLink app: Send GPS uncertainty via MAVLink 2
This is needed by some consumers like transponders.
2017-07-23 00:16:00 +02:00