Commit Graph

1809 Commits

Author SHA1 Message Date
Julian Oes 428c2f72bd mavlink: always acknowledge a param write
This change has two effects:
1. We always acknowledge a param write no matter if the value was
   actually changed or not. This is according to the spec:
   https://mavlink.io/en/services/parameter.html#write-parameters
2. This fixes the bug where int32 parameters were not actually acked
   because the memory of the param value was casted directly to float
   and then compared. In the case of a int32 parameter set from 0 to 1
   it would mean that the cast to float of the memory representation
   was still 0 and therefore it was assumed to be "no change" and the
   ack was omitted.
2018-11-01 00:06:22 +01:00
Mara Bos 10c20b38ad Fix many format strings.
Fixes these invalid format strings:
- A `%d` for a pointer (replaced it by `%p`)
- A 0x%08x (and a 0x%0x8!) for a pointer (replaced by %p)
- 2 cases of `%d` for a `ssize_t` (replaced it by `%zi`)
- 1 case of a %u for an `int` (replaced by %i)
- 3 cases of %d for a `long` (replaced by %ld)
- 19 cases of `%d`, `%i`, `%u` or `%lu` for a `size_t` (replaced it by `%zu`)
- An unused formatting argument (removed it)
- A missing `%d` (added it)
- A missing `%s` (added it)
- 2 cases of `%llu` for a `uint64_t` (replaced it by `"%" PRIu64`)
- 6 cases of giving a string directly as format string (replaced it by `("%s", string)`)
- 2 cases of %*-s, which should probably have been %-*s.
  (Looks like NuttX accepts (the invalid) %*-s, but other platforms don't.)
- A %04x for a `uint32_t` (replaced by "%04" PRIx32)
2018-10-27 12:44:51 +02:00
Paul Riseborough 6a3692cf6b mavlink: publish GPS antenna heading offset as NAN 2018-10-17 09:48:38 -04:00
TSC21 3228e494bd radio_status: change 'fixed' field name to 'fix' so it does not clash with 'fixed' floating-point notation on the IDL generation 2018-10-08 10:58:45 +02:00
Beat Küng 92a1594430 mavlink config: remove Iridium option
The user does not need to configure this, so we can hide it from the UI.
2018-10-08 08:24:44 +02:00
Beat Küng e2a32aab76 mavlink_main: add support for autopilot_version.uid2 2018-10-03 10:30:10 +02:00
Beat Küng 403f909e3a mavlink_receiver: simplify sleeptime calculation 2018-10-02 14:14:10 +02:00
Beat Küng 0e1e0b997d mavlink_receiver: reduce s_variance_m_s for HIL GPS message from 1 to 0.1
1 was too high to pass the EKF2 test (EKF2_REQ_SACC which is 0.5 by default)
and thus switching into position mode in HIL was not possible.
2018-09-29 09:17:53 -04:00
Julien Lecoeur cb3d86a609 Add support for mavlink message DEBUG_FLOAT_ARRAY 2018-09-27 12:33:12 -04:00
Beat Küng b5e552924a serial drivers/modules: add yaml config files 2018-09-25 07:53:29 +02:00
Beat Küng ced37fdf30 mavlink_main: use px4_get_parameter_value for baudrate, datarate and mode 2018-09-25 07:53:29 +02:00
MaEtUgR 2c7c876c38 mavlink_receiver: parse all 18 channels from rc_override 2018-09-21 16:26:27 +02:00
MaEtUgR 4f0e090e88 drv_rc_input: replace useless rc_input_values define 2018-09-21 16:26:27 +02:00
garfieldG f14125c160 Mavlink NuttX network support (#10200) 2018-09-18 23:29:58 -04:00
Oleg Kalachev 9887c463fd mavlink_receiver: fill some missing fields in OPTICAL_FLOW_RAD handler 2018-09-18 09:53:35 +02:00
TSC21 095cdeb4b0 add a local frame of reference field to vehicle_odometry 2018-09-18 09:52:33 +02:00
TSC21 1cfaccfd7b mavlink_receiver: use typedef dcmf for DCM matrices 2018-09-18 09:52:33 +02:00
TSC21 746250d86d use static_assert over covariance matrices URT array size 2018-09-18 09:52:33 +02:00
TSC21 7db57bedb7 assert over the covariance matrices URT size matching 2018-09-18 09:52:33 +02:00
TSC21 8325724079 general fixes on VIO data access 2018-09-18 09:52:33 +02:00
TSC21 440ebfde02 remove att_pos_mocap uORB topics 2018-09-18 09:52:33 +02:00
TSC21 2f5b16a5d3 mavlink_receiver: odometry handler: simplify quaternion init 2018-09-18 09:52:33 +02:00
TSC21 183a63cce9 purge vehicle_vision_position alias 2018-09-18 09:52:33 +02:00
TSC21 7303005373 mavlink_receiver: add ODOMETRY handler; use new visual_odometry uORB msg and aliases 2018-09-18 09:52:33 +02:00
TSC21 4816adcdee mavlink_receiver: remove attitude_quatertion_cov and local_position_ned_cov handlers 2018-09-18 09:52:33 +02:00
Roman Bapst f361749d70 mavlink temporary workarounds for dronekit: added parameters to disable (#10422)
hash check and heartbeat forwarding

- hash check disabling: for systems where a companion link forwards messages
to QGC (e.g. via LTE) parameter streaming will be stopped as soon as QGC
sends the request to stop the stream. If the companion side for some reason
still requires the stream to be active we need to disable QGC from stopping
the stream. Normally dronekit should be responsible for filtering out the
request from QGC but apparently this is not possible.

- disable heartbeat forwarding: dronekit does seem to get confused if
heartbeats from another system other than the autopilot get forwarded to it.
Example: Sending messages from QGC via the autopilot to dronekit running on
companion computer.

Signed-off-by: Roman <bapstroman@gmail.com>
2018-09-17 13:24:20 -04:00
Dion Gonano 7691990a50 Pass through horizontal and vertial covariances 2018-09-16 21:30:20 -04:00
Lukas Woodtli 3d29e2e76f Fix some test code related leaks (#10488)
These leaks are not critical but the address-sanitizer complains.
And it's better programming practice anyway.

Signed-off-by: Lukas Woodtli <woodtli.lukas@gmail.com>
2018-09-16 17:38:50 -04:00
Daniel Agar 7e12815f81 Mavlink add RADIO_STATUS timeout and reset 2018-09-02 19:48:10 +02:00
Daniel Agar 930ac8d4fe Mavlink set telemetry_status type properly for Sik radios
- remove radio_status type since there's no type support in mavlink
2018-09-02 19:48:10 +02:00
Daniel Agar 5207c420c3 generic position controller status/feedback message 2018-08-31 14:43:51 -04:00
Roman 844671ed6d mavlink: moved to ModuleParams
Signed-off-by: Roman <bapstroman@gmail.com>
2018-08-30 11:13:24 -04:00
Beat Küng b6b935026a mavlink: switch back from _mavlink_timesync.sync_stamp to hrt_absolute_time
- the timestamp is only used for logging and log analysis. For that it's
  important to have the timestamp when a setpoint becomes active.
- there was a consistent problem with the position_setpoint_triplet
  timestamp, where the timestamp was just bogus. Timesync seems to work
  correctly though. Might be a problem on the sender side?
  For example here:
  https://logs.px4.io/plot_app?log=41918a7d-4c1d-464d-9abe-aef2c0818d92
2018-08-22 08:31:37 +02:00
Daniel Agar 485c5db21e Mavlink implement GPS2_RAW for 2nd GPS 2018-08-19 16:49:44 +02:00
Daniel Agar 36403e9025 Mavlink expand telemetry_status and split radio_status 2018-08-16 17:32:15 +02:00
Daniel Agar ce18225710 cmake px4_add_module add unity build support
- a unity build is a single compilation unit per module
2018-08-16 09:47:29 +02:00
Alexis Paques 6b8ea8e543 Mavlink SET_ACTUATOR_CONTROL_TARGET support group_mlx (#7477)
- Allow to use the 4 groups from Mavlink
 - Allow an Offboard control of the Gimball, Gripper or servoes.
 - Fixes issue #7440

Signed-off-by: Alexis Paques <alexis.paques@gmail.com>
2018-08-12 10:08:50 -04:00
TSC21 e6bd9bdeeb fix radio_status timestamp init 2018-08-09 13:40:48 +02:00
TSC21 e932030d88 add timestamp field to uORB msgs; sync timestamp whenever possible 2018-08-09 13:40:48 +02:00
Beat Küng 55db10d9e2 mavlink_ulog: clear potential existing ulog_stream messages on start
- the uorb behavior got recently changed so that we now need to clear
  any potential existing messages when we start log streaming.
- ulog_stream_ack should also not use a queue, since the ack is done
  synchonous between mavlink and the logger.
2018-08-08 21:12:04 +02:00
Beat Küng 5363aff879 fixes for integration and unit tests
Move ros logs dir so that .ulg files are not in the same directory
(mission_test.py:: get_last_log() fails otherwise)
2018-08-08 21:09:39 +02:00
Beat Küng c0cac0594e file paths: add PX4_STORAGEDIR & use it where appropriate 2018-08-08 21:09:39 +02:00
Alessandro Simovic 337133e9fa use double LAT/LONG fields instead of float params for storing ROI settings 2018-08-06 16:17:11 +02:00
Alessandro Simovic 1448285b1c mavlink_mission: respect integer MAV_CMD in ROI settings as well
Otherwise the conversion from mavlink_mission_item to mission_item
will cause the latitude and longitude of the ROI to be off by a factor of 1e7
in the case of INT mode.
2018-08-06 16:17:11 +02:00
Bob-F 082ef85773 handled a document issue and the case of absent test_data directory 2018-08-06 13:32:36 +02:00
Bob-F f2e3c0b6e9 Replaced a NULL with nullptr to fix an issue in make clang-tidy-quiet 2018-08-06 13:32:36 +02:00
Bob-F a9bb274001 Renamed mavlink wifi interface name and enabled land_detector 2018-08-06 13:32:36 +02:00
Bob-F 627ea3b23e update according to pull request review comments 2018-08-06 13:32:36 +02:00
Bob-F 7c62fe885d Fixed an issue of documentation inconsistency 2018-08-06 13:32:36 +02:00
Bob-F adf411fdd8 Fixed style issue with Astyle 3.1 2018-08-06 13:32:36 +02:00