Commit Graph

25858 Commits

Author SHA1 Message Date
Daniel Agar 08cc963de3 px4iofirmware use std NAN instead of undefined 0.0f/0.0f
- closes #9277
2018-04-12 00:14:50 -04:00
Daniel Agar 1ecfb22dbc EKF2 move all orb_subscribe/unsubsribe to the constructor/destructor 2018-04-11 23:26:58 -04:00
Daniel Agar 2a58c7a28c EKF2 and replay add all consumed messages to ekf2_timestamps and refactor 2018-04-11 23:26:58 -04:00
Daniel Agar 07edec282e replay update sensor_combined fields 2018-04-11 23:26:58 -04:00
Daniel Agar 3b5b12e1d1 move baro and magnetometer data out of sensor_combined 2018-04-11 23:26:58 -04:00
Paul Riseborough 3e6ba1d541 simulator: Use baro pressure direct from simulator 2018-04-11 23:26:58 -04:00
Daniel Agar 5dc23def2a move pressure altitude from baros to sensors module 2018-04-11 23:26:58 -04:00
Daniel Agar bdf4f19867 enable -fno-math-errno as we never check errno (#9281)
- disables setting of the errno variable as required by C89/C99 on calling math library routines
2018-04-11 22:17:39 -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
Beat Küng f02ef20a23 commander: set timestamp for vehicle_command publication 2018-04-11 15:19:47 +02:00
acfloria 0caa4dc171 Mavlink: Don't use a packed struct as input for the convert_limit_safe function
- Addional small cleanup of the iridium driver and the include guards of mavlink module header files
2018-04-11 15:15:28 +02:00
acfloria 477a4e7ec8 MavlinkReceiver: Don't start MissionManager in IRIDIUM mode 2018-04-11 15:15:28 +02: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 ae807fc189 Move VEHICLE_CMD_CONTROL_HIGH_LATENCY ack to commander 2018-04-11 15:15:28 +02:00
acfloria 975d7ddcb2 IridiumSBD: Clean up MavLink message parsing 2018-04-11 15:15:28 +02:00
acfloria f1a6aecb4d IridiumSBD: Log tx buffer reset in the telemetry_status instead of a status text 2018-04-11 15:15:28 +02:00
acfloria 53fdbb6c04 Remove unnecessary newlines 2018-04-11 15:15:28 +02:00
acfloria 219980cec1 Commander: Combine telemetry variables into struct 2018-04-11 15:15:28 +02:00
acfloria 6f0d3ffe9b Mavlink: Add acknowledge for VEHICLE_CMD_CONTROL_HIGH_LATENCY 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 e9dde721f7 Commander: Remove Mavlink from CMakeFile 2018-04-11 15:15:28 +02:00
acfloria 8c0450b483 revert v2 cmake changes 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 1124a397f2 Commander: Move telemetry logic to separate functions 2018-04-11 15:15:28 +02:00
acfloria 443a4016af Commander: Improve handling and generating of VEHICLE_CMD_CONTROL_HIGH_LATENCY 2018-04-11 15:15:28 +02:00
acfloria da57dbbce0 Increase the MavLink module stack size 2018-04-11 15:15:28 +02:00
acfloria b66b997c66 IridiumSBD: Robustify state machine and fix format
- Check if changing to a non standby state if the current state is the standy state and no change is already scheduled.
- Add prefix _ to all class variables
2018-04-11 15:15:28 +02:00
acfloria 63cb895a1d MavlinkStream: Ensure that not multiple messages are sent after some time sending nothing 2018-04-11 15:15:28 +02:00
acfloria 0e89a6b8bd IridiumSBD: Do not allow stopping the driver when the device is used to prevent hardfault 2018-04-11 15:15:28 +02:00
acfloria d4f703bde8 IridiumSBD: Improve TX buffer handling
- Allow using the full buffer size (340 bytes)
- Add tx mutex for sbd session to avoid dropping message which are written during an sbd session
2018-04-11 15:15:28 +02:00
acfloria 28da1492d3 IridiumSBD: Only write to modem if new data arrived 2018-04-11 15:15:28 +02:00
acfloria 44937c3a99 Iridiumsbd driver: Publish log message when TX buffer is deleted 2018-04-11 15:15:28 +02:00
acfloria 47567c5c24 Improve IridiumSBD TX buffer handling
- Every time data is written to the iridium module all previous untransmitted data is overwritten
- The buffer is reset only on the following conditions
    - A sbd session is successfully completed
    - An incoming mavlink message would result in less than SATCOM_MIN_TX_BUF_SPACE free bytes after it is written
    - Any other incomming data would result in less than SATCOM_MIN_TX_BUF_SPACE free bytes after it is written to the buffer.
2018-04-11 15:15:28 +02:00
acfloria 6c3857a147 Remove exception for command acknowledge in mavlink transmitting 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 ebb5ec7c46 Fix bug when ISBD parameters were too large 2018-04-11 15:15:28 +02:00
acfloria edd337880d Improve message handling in mavlink IRIDIUM mode
- Do not send any mission updates as they are handled within HIGH_LATENCY2
- Always send a command acknowledge even if transmitting is not enabled
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 22e234724f Update timestamp for last sent message im mavlink stream only if the message was sent 2018-04-11 15:15:28 +02:00
acfloria 1fd8b681a0 Transmit one message over high latency telemetry on boot 2018-04-11 15:15:28 +02:00
acfloria 392af4fbb6 Small improvements for the IridiumSBD driver 2018-04-11 15:15:28 +02:00
acfloria e061b1a3a5 Do not enable hil for high latency mavlink 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 fa1586249a Fixes IridiumSBD driver bug when transmitting data 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