Commit Graph
100 Commits
Author SHA1 Message Date
Lorenz Meier 4028692bfe Navigator: Limit string copy to length of target array 2017-11-13 09:59:54 +01:00
Lorenz Meier a1a002f9b6 Navigator: Add the ability to do a low-altitude RTL to avoid traffic
This is a first baseline implementation for collision avoidance with aircraft equipped with transponders. Since the drone-to-drone and drone-to-airplane system will be regulated by a standard, we do carefully avoid to do anything too fancy. This implementation allows to reduce altitude to get close to ground and land immediately or RTL. This is similar to what a human pilot would do and allows to get out of manned airspace which is at higher altitudes.
2017-10-31 09:10:32 +01:00
Lorenz Meier afc8503260 PX4IO Firmware: Fix usage of new operator in IRQ
The mixer was creating a new class in interrupt context, which is not valid use in NuttX. This change copies the mixer into the buffer and runs the mixer management section of the code outside of interrupt context in the normal task.
2017-10-30 20:03:19 +01:00
Lorenz Meier 4923d0cba3 Remove TECS from system codebase
The TECS controller belongs really into the ECL (estimation & control library) where we have collected a number of vehicle control systems. It is being replaced by a new implementation of the algorithm, contributed by Paul Riseborough.
2017-10-22 21:56:06 +02:00
Lorenz Meier 5278791f3d IST8310 driver: Fix startup / calibration order
The IST driver did not optimally check the calibration result and could trigger false positives if the mag data aligned with wrong signs
2017-10-09 19:05:46 +02:00
Lorenz Meier 1947a9a176 Devices: Update submodule to include GPS driver improvements 2017-10-07 16:18:00 +02:00
Lorenz Meier eb2c9fbef1 GPS: Remove unnecessary warning message
This warning message would often be printed during normal configuration and does not represent a good indicator for true GPS lost states. Instead the system flags should be used, which are available through the normal logging system.
2017-10-07 15:01:14 +02:00
Lorenz Meier dd7b72dfb0 MAVLink app: Fix boot-time race between receive thread and instantiation. 2017-10-07 13:56:30 +02:00
Lorenz Meier 2246b54e2b FMUv5: Increase USB buffer to increase transfer rates 2017-10-07 13:56:30 +02:00
Lorenz Meier f9c9890a49 EKF2: Add minimal stack for M7 targets 2017-09-29 10:13:51 -04:00
Lorenz Meier a945cd9fc2 Sensors: Clean up boot output (#8005)
Various sensors had too verbose or confusing boot output that would make the boot log hard to read. This patch ensures all output is consistently indicating if there is a real error or an optional sensor just not present. It also removed redundant error messages and adds an indication on which bus the sensor was probed.
2017-09-25 11:19:11 -04:00
Lorenz Meier 0780e430fd Sensors params: Adjust tube length to better default 2017-09-19 09:01:11 -07:00
Lorenz Meier 1880abdac5 Airspeed: Base sensor model on device ID from sensor 2017-09-19 09:01:11 -07:00
Lorenz Meier b59aefc989 Airspeed measurement: Add accurate models for dynamic pressure
This allows to get very accurate readings from the SDP3x sensor series from Sensirion using a complete sensor model.
2017-09-19 09:01:11 -07:00
Lorenz Meier 38f796f991 mc pos control: More sign checks 2017-09-11 02:08:22 -07:00
Lorenz Meier a6108cc951 mc_pos_control: Use proper boundary checking when taking the norm of a vector
The previous method made too optimistic assumptions about the resolution of 32 bit floating point numbers.
2017-09-11 02:08:22 -07:00
Lorenz Meier e58766c394 MC pos controller: log exceptions but rate-limit them 2017-09-11 02:08:22 -07:00
Lorenz Meier 52ba62d6c4 Navigator: Pause and unpause camera triggering on entering and exiting a mission 2017-08-20 22:47:48 +02:00
Lorenz Meier 447c167d3e Navigator: Add on_inactivation() interface.
This allows to run a command / function once when being deactivated. This avoids having flight modes which are not active run unnecessary code all the time.
2017-08-20 22:47:48 +02:00
Lorenz Meier e33a2b6c8d Simulator: Add missing parameter_update topic 2017-08-20 20:54:58 +02:00
Lorenz Meier 7223780563 Simulator: Make battery discharging configurable. 2017-08-20 20:37:31 +02:00
Lorenz Meier 891b2f640d TAPv1: Schedule sensor priority higher 2017-08-13 11:40:54 +02:00
Lorenz Meier 00b65f38aa FMUv5: Schedule work queue with higher priority 2017-08-13 11:40:54 +02:00
Lorenz Meier c2341ad7f6 FMUv4PRO: Schedule work queue with higher priority 2017-08-13 11:40:54 +02:00
Lorenz Meier 6f5499af7d FMUv4: Schedule work queue with higher priority 2017-08-13 11:40:54 +02:00
Lorenz Meier c6f9cd84d0 FMUv4: Schedule work queue with higher priority 2017-08-13 11:40:54 +02:00
Lorenz Meier b2572a5795 FMUv2: Schedule work queue with higher priority 2017-08-13 11:40:54 +02:00
Lorenz Meier fa482b4ebd Racing boards: Default FMU to task as there is plenty of RAM to do this. 2017-08-13 11:39:44 +02:00
Lorenz Meier 9af9475541 RTPS: Ignore example processes 2017-08-13 11:39:00 +02:00
Lorenz Meier 23c790650a FMUv5: Enable DDS 2017-08-13 11:38:14 +02:00
Lorenz Meier 0e661e5a84 FMUv4PRO: Enable DDS 2017-08-13 11:38:00 +02:00
Lorenz Meier 2adb9e8c4f FMUv4: config style 2017-08-13 11:37:34 +02:00
Lorenz Meier fa123db5c3 FMUv3: Enable DDS 2017-08-13 11:37:15 +02:00
Lorenz Meier 9e312e8dba Uploader: Do not show timeout for larger binaries when everything is still as expected. 2017-08-13 11:36:12 +02:00
Lorenz Meier 861879c6d3 Widen threshold for standard gyro consistency check
Without temperature compensation the default is too narrow.
2017-08-12 12:50:46 +02:00
Lorenz Meier 462f1346bd Add motor_test command to FMUv3 2017-08-09 22:12:25 +02:00
Lorenz Meier 490f40bee1 Sensors: Use temperature for airspeed validation to avoid false positives for high-performance airspeed sensors
This is required to enable new high-performance sensors which otherwise would provide incorrect readings.
2017-08-06 20:52:37 +02:00
Lorenz Meier 45f2a52a7d Sensor startup: Simplify and fix Pixhawk 2.1
This change simplifies the sensor startup and fixes the detection of airspeed sensors on Pixhawk 2.1
2017-08-06 20:52:23 +02:00
Lorenz Meier d10116e54a Update MAVLink version 2017-08-05 16:00:00 +02:00
Lorenz Meier b82975f73d UAV CAN ESC: Use new task header 2017-08-02 21:18:35 +02:00
Lorenz Meier 36b5795625 UAV CAN node main: Use new task header 2017-08-02 21:18:35 +02:00
Lorenz Meier 22d4178ebc UAVCAN: Use new task header 2017-08-02 21:18:35 +02:00
Lorenz Meier d3aaee65c0 Iridium: Use new task header 2017-08-02 21:18:35 +02:00
Lorenz Meier 144a030676 IO: Use default scheduling priorities 2017-08-02 21:18:35 +02:00
Lorenz Meier a2b23bf23a FMU: Use default scheduling priorities 2017-08-02 21:18:35 +02:00
Lorenz Meier 482a98facb MC pos control: Use default scheduling priorities 2017-08-02 21:18:35 +02:00
Lorenz Meier 727bb4886d Fixed wing: Use default scheduling priorities 2017-08-02 21:18:35 +02:00
Lorenz Meier 08e49806c8 Logger: use default scheduling priorities 2017-08-02 21:18:35 +02:00
Lorenz Meier 60c96d9dd6 Navigator: Use default scheduling priorities 2017-08-02 21:18:35 +02:00
Lorenz Meier 017a29cba1 Sensors hub: Use default scheduling priorities 2017-08-02 21:18:35 +02:00
Lorenz Meier b07dde78e3 Move scheduling priorities into px4_tasks to simplify header usage 2017-08-02 21:18:35 +02:00
Lorenz Meier b26c771ea6 MC attitude controller: Use default scheduling order 2017-08-02 21:18:35 +02:00
Lorenz Meier 5f12259dfd FW att controller: Use attitude controller scheduling order 2017-08-02 21:18:35 +02:00
Lorenz Meier cae4694d6a EKF: Use estimator scheduling order 2017-08-02 21:18:35 +02:00
Lorenz Meier 49198af6c7 FMU driver: Use default actuator output scheduling order 2017-08-02 21:18:35 +02:00
Lorenz Meier 494f7e4efb Properly document scheduling priorities 2017-08-02 21:18:35 +02:00
Lorenz Meier 501cec2469 Scheduling priorities: Formatting and sorting according to current system usage
this reflects what the system is currently using.
2017-08-02 21:18:35 +02:00
Lorenz Meier 3ca474f045 Ground rover: Use standard scheduling setup 2017-08-02 21:18:35 +02:00
Lorenz Meier d8cc38728d Multicopter attitude controller: Run at maximum priority.
This allows for a quicker update from sensors if the estimator runs at the default priority of the estimator class. If there is no direct sensor pass-through then it will wait for an estimator update.
2017-08-02 21:18:35 +02:00
Lorenz Meier 8dd96e960d Fixed wing attitude controller: Run at maximum priority.
This ensures attitude control runs first before any other system component.
2017-08-02 21:18:35 +02:00
Lorenz Meier c94e54bbab Commander: Handle HITL state in all places consistently 2017-08-02 15:12:25 +02:00
Lorenz Meier 9d49690f17 GPS simulation: Manage delays correctly
The GPS simulation now mimicks the real driver more closely and should provide even GPS delays. The delays themselves are set by the simulator, and default to 120 ms for Gazebo
2017-08-02 13:06:59 +02:00
Lorenz Meier d69c53827f HRT sim: Remove outputs that smash simulator stack 2017-08-01 20:25:38 +02:00
Lorenz Meier 587f4d8f33 jMAVSIm: Explicitely configure to 500 Hz 2017-08-01 19:50:35 +02:00
Lorenz Meier 879356c25b SITL gazebo plugin: Harden dynamics of delta quad 2017-08-01 19:50:35 +02:00
Lorenz Meier d1973a6c7f jMAVSim: Update submodule to use new timestamp API 2017-08-01 19:50:35 +02:00
Lorenz Meier 1c0dd8ba49 Simulator: Add scaling API to adjust for slow simulators
The simulation engine had the ability to pause already and properly handled load spikes, however, it was not hardened against constant drift. This addition enables it to run at a constant slower-than-realtime rate successfully.
2017-08-01 19:50:35 +02:00
Lorenz Meier cf7d4fc1a7 GPS sim: Adjust delay closer to what real u-blox devices do 2017-08-01 19:50:35 +02:00
Lorenz Meier afb40a761d Simulator: Compensate scale error, not just message drops. This makes the whole simulation a lot more stable 2017-08-01 19:50:35 +02:00
Lorenz Meier 94684899a5 Gazebo: Fix usage of timestamps 2017-08-01 19:50:35 +02:00
Lorenz Meier 292dce04aa Gazebo client: Reduce priority to avoid affecting other processes 2017-08-01 19:50:35 +02:00
Lorenz Meier 529def11e8 CMake / Clang: Increase warning level 2017-08-01 12:46:59 +02:00
Lorenz Meier ef233d29f0 VMount: use correct doube interface 2017-08-01 12:46:59 +02:00
Lorenz Meier 91c982758e GEO: Fix double promotion warning 2017-08-01 12:46:59 +02:00
Lorenz Meier 340432e2cf legacy EKF: Use correct constants 2017-08-01 12:46:59 +02:00
Lorenz Meier 576ad4b521 Sensors update: use correct constants 2017-08-01 12:46:59 +02:00
Lorenz Meier f4eaea99c5 Temp cal: Use correct constants 2017-08-01 12:46:59 +02:00
Lorenz Meier ae737d8df0 Camera trigger: use double per interface spec 2017-08-01 12:46:59 +02:00
Lorenz Meier 3c89059199 Update SITL version to fix image triggering 2017-07-31 12:26:08 +02:00
Lorenz Meier 1eb10e431f Create CODE_OF_CONDUCT.md 2017-07-30 19:18:49 +02:00
Lorenz Meier 61b0a81bf9 HITL startup: Further simplification of boot logic in commander 2017-07-29 23:06:50 +02:00
Lorenz Meier 03324e0fb1 ROMFS: Remove stale HITL config 2017-07-29 23:06:50 +02:00
Lorenz Meier 5838556742 HITL handling: Enforce the use of the activation parameter for HITL configuration 2017-07-29 23:06:50 +02:00
Lorenz Meier 8aa1382e08 ROMFS: Switch HIL to a setting orthogonal to airframes
This makes it easy to flip any airframe config over to HIL.
2017-07-29 23:06:50 +02:00
Lorenz Meier 8878be5741 MC land speed: Ensure that the difference between land speed and land detection is high enough 2017-07-29 22:25:09 +02:00
Lorenz Meier 6f249472e0 FMUv5: Ensure there is enough UART buffer space - since the board has plenty of RAM, all UARTs are treated equally 2017-07-29 16:12:41 +02:00
Lorenz Meier 235a789a47 FMUv4 configs: ensure there is enough TX buffer space 2017-07-29 16:12:41 +02:00
Lorenz Meier ad21dc3f50 Pixhawk configs: Ensure there is enough TX space on high-speed UART links 2017-07-29 16:12:41 +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 3f048e8a87 MAVLink stream: Do not override interval too much 2017-07-29 16:12:41 +02:00
Lorenz Meier af451ce638 MAVLink time sync: Better output handling 2017-07-29 16:12:41 +02:00
Lorenz Meier f0e8ebb2ac MAVLink: Remove link termination command
This is no longer required as we have a full shell available now and there is no reason to let the remote terminate the instance.
2017-07-29 16:12:41 +02:00
Lorenz Meier 37657cf99b MAVLink FTP: Use modern output printing to capture errors in system log 2017-07-29 16:12:41 +02:00
Lorenz Meier 68d70cc8c0 MAVLink: Use modern PX4 output format to enable system logging for errors. 2017-07-29 16:12:41 +02:00
Lorenz Meier 09f1373a08 MAVLink: Adjust stream rates to match real usage 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 dc8caeaedf MAVLink: Default to standard stream config 2017-07-27 10:15:53 +02:00
Lorenz Meier 9124617315 MAVLink: Always enable forwarding for companion link 2017-07-27 10:15:53 +02:00
Lorenz Meier c44322ca15 MAVLink app: Use more advanced forwarding logic 2017-07-27 10:15:53 +02:00