Daniel Agar
91dcfb7ab2
PX4 sensor driver helpers
2019-01-18 10:39:15 -05:00
bresch
a2e9d9ffce
AutoSmoothVel - Handle NAN in velocity and position properly
2019-01-17 17:55:37 +01:00
Beat Küng
ef54bff4ed
vmount: avoid reading uninitialized value
...
matrix::Quatf() calls sinf(), which caused a valgrind warning
2019-01-17 09:39:30 +01:00
Beat Küng
85e59c210d
mc_pos_control: fix uninitialized member _old_landing_gear_position
2019-01-17 09:39:30 +01:00
Matthias Grob
7b9cfac767
mc_pos_control: change use avoidance to handle data loss during mission
...
There were accidents because when missions lead through an obstacle
and it should be avoided but the setpoints from the external obstacle
avoidance module are suddenly missing the mission is continued into the
obstacle which results in a crash.
2019-01-16 19:13:05 +01:00
Matthias Grob
a563092742
mc_pos_control: add Loiter/Hold mode to possible failsafe commands
2019-01-16 19:13:05 +01:00
Matthias Grob
b018a6088d
mc_pos_control: refactor OA setpoints out of PositionControl calls
2019-01-16 19:13:05 +01:00
Daniel Agar
c319ea7189
boards sync fmu-v2 sensors start with fmu-v3
2019-01-15 23:52:46 -08:00
Daniel Agar
fef65bf5c8
ROMFS split rc.board into defaults, sensors, and extras
2019-01-15 23:52:46 -08:00
Beat Küng
d8ab059ff3
cm8jl65: add comment which CRC is used
2019-01-15 09:19:52 +01:00
Claudio Micheli
8a313ffc26
Applied code-review suggestions.
...
- Removed blocking serial.
- Added passing variables by reference to parser.
- Removed commented code.
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2019-01-15 09:17:24 +01:00
Claudio Micheli
d1da46ef46
Added generic UART configuration.
...
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2019-01-15 09:17:24 +01:00
Claudio Micheli
ca0cd27c6b
Formatted code.
...
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2019-01-15 09:17:24 +01:00
Claudio Micheli
7124cbf3af
Fixed CI broken build. Made TELEM2 default port.
...
Device port can be set via SENS_EN_CM8JL65 parameter:
SENS_EN_CM8JL65 = 0 -> Disabled
SENS_EN_CM8JL65 = 1 -> Enabled on TELEM2
SENS_EN_CM8JL65 = 2 -> Enabled on TELEM1
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2019-01-15 09:17:24 +01:00
Claudio Micheli
e4381bfc87
Added sensor enable/disable parameter (SENS_EN_CM8JL65).
...
Disabled by default.
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2019-01-15 09:17:24 +01:00
Claudio Micheli
46c5a79b57
Renamed files according to distance sensor hardware.
...
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2019-01-15 09:17:24 +01:00
Claudio Micheli
aee6a83fe0
Code Cleanup. Added configuration notes.
...
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2019-01-15 09:17:24 +01:00
Claudio Micheli
c5fece6568
Redefined reading strategy from serial to get the latest available data.
...
First "stable" version of the driver.
TODO: - Cleanup the code
- Bench test (compare data with IMU)
- Flight Test
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2019-01-15 09:17:24 +01:00
Claudio Micheli
39ed84b5cd
Debugging printf.
...
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2019-01-15 09:17:24 +01:00
Claudio Micheli
5d70ac7fd9
Removed dismissed folder.
...
TODO : Adjust work_queue rescheduling (to always have a 10Hz cycle)
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2019-01-15 09:17:24 +01:00
Claudio Micheli
b0ac8fe963
Removed blocking "while" cycle to access serial port.
...
Serial is now cycled with work_queue rescheduling if some bytes are missing.
TODO: - Fix occasional sensor spikes (can be identified with crc)
- Clean up the code
- disable debug printf
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2019-01-15 09:17:24 +01:00
Claudio Micheli
93b3cf241b
Renamed driver folder.
...
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2019-01-15 09:17:24 +01:00
Claudio Micheli
dd300dca0a
Solved frequency rate issue. Now driver publish at ~10Hz.
...
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2019-01-15 09:17:24 +01:00
Claudio Micheli
4b7be38e67
Added uORB publishing.
...
TODO: Need to fix driver cycling.
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2019-01-15 09:17:24 +01:00
Claudio Micheli
700fd5652d
Added parsing function. Everything works OK.
...
TODO:
- Clean up the code
- Add uORB publishing messages
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2019-01-15 09:17:24 +01:00
Claudio Micheli
591e8fde5d
Initial commit. Integrated new distance sensor hardware.
...
TODO: Parsing the data
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2019-01-15 09:17:24 +01:00
Daniel Agar
63097bd8a1
mavlink sort message defaults and float literal consistency
2019-01-14 14:46:13 -05:00
Matthias Grob
1e14b10dee
simulator_mavlink: take care of battery percentage rounding errors
...
In 5bb9babc206068e9ee67e1489433be94482a402f I made MAVLink send a
rounded up integer instead of rounded down. This makes sense in practice
because the low battery reactions happen exactly when the reported number
switches in the UI. But here we want to provoke an exact 50% in the UI so
we stop counting at 49.9%, it get's rounded up and we see the expected
result.
2019-01-14 19:30:36 +01:00
Matthias Grob
a89e550f3c
simulator_mavlink: switch battery max and min to fix simultion
...
In 3e6e1f5c2b042accca72346273fc1755dd7670fa the simulated battery
percentage was reversed. I'm assuming because of the possibly
missleading variable name. Now I'm fixing it by switching the
maximum and minimum voltage such that the name is not misleading anymore
but it still works as expected.
2019-01-14 19:30:36 +01:00
bresch
766f911005
beta75 - Reduce MC_YAWRATE_P to avoid oscillations when battery is fully charged
2019-01-14 18:38:31 +01:00
bresch
118848d261
beta75 - Adjust PWM_MIN and set number of cells
2019-01-14 18:38:31 +01:00
Jacob Dahl
29f034c53e
mpu9250 fix hardfaults if attempting to start an already running driver ( #11190 )
...
* removed bus options that were essentially duplicates, causing hardfaults if attempting to start an already running driver. Changed NULL to nullptr. Removed bus options that were unused
* removed condition from if statement that was unnecessary
* fixed style
2019-01-14 09:59:36 -05:00
Beat Küng
4bc59092f4
lockstep_scheduler cmake: spaces -> tabs
2019-01-14 11:08:48 +01:00
Beat Küng
2a47715385
refactor lockstep_scheduler: fix class member naming convention
2019-01-14 11:08:48 +01:00
Beat Küng
828e31d3a9
lockstep_scheduler: optimize performance
...
- use a linked-list instead of std::vector. Insertion and removal are now
O(1)
- avoid malloc and use a thread_local instance of TimedWait.
It gets destroyed when the thread exits, so we have to add protection
in case a thread exits too quickly. This in turn requires a fix to the
unit-tests.
2019-01-14 11:08:48 +01:00
Beat Küng
b6ba7b655a
sitl_run.sh: fix for debugger & valgrind invocation: use eval
...
Because $sitl_command contains quotes
2019-01-14 11:08:48 +01:00
Beat Küng
beac53d775
cdev_platform: remove unused code (sim_delay)
2019-01-14 11:08:48 +01:00
Beat Küng
ecbe2a3e0b
drv_hrt posix: improve performance for hrt_absolute_time()
...
Previously hrt_absolute_time() was at around 5% of the total CPU usage, now
it's around 0.35%.
2019-01-14 11:08:48 +01:00
Beat Küng
ccefc640ac
drv_hrt posix: remove unused code and remove locking from hrt_absolute_time
2019-01-14 11:08:48 +01:00
Beat Küng
5f0e6d70c5
lockstep_scheduler: use a static lock in usleep_until
...
less function calls
2019-01-14 11:08:48 +01:00
Beat Küng
e8cbc49f7a
lockstep_scheduler: remove timed_waits_iterator_invalidated_
...
Not required, since the lock is held during the whole loop iteration.
2019-01-14 11:08:48 +01:00
Beat Küng
8cdb65eed9
lockstep_scheduler: simplify LockstepScheduler::cond_timedwait & reduce locking
...
- the loop is not needed
- we optimize for the fast case and lock only if really needed
2019-01-14 11:08:48 +01:00
Beat Küng
318499f56e
lockstep_scheduler: inline get_absolute_time()
...
This is a small method that is used a lot.
2019-01-14 11:08:48 +01:00
Daniel Agar
29a0950753
Update submodule mavlink v2.0 to latest Sat Jan 12 07:37:26 EST 2019
...
- mavlink v2.0 in PX4/Firmware (4787cabae6fcf55ef0f8bf19b0009de593c844db): 90d9b285e0
- mavlink v2.0 current upstream: 339abb5f4c
- Changes: 90d9b285e0...339abb5f4c
2019-01-12 10:20:02 -05:00
Daniel Agar
45d7165eb3
fw_pos_control_l1 skip wind > max airspeed logic if airspeed invalid
...
- cleanup airspeed validity check logic
2019-01-12 14:19:53 +01:00
Julian Oes
2e3fa30c83
sitl_gazebo: update to revision that doesn't abort on timeout ( #11196 )
...
* this should fix the CI failures where we intermittently saw SIGABRT. (fixes #11144 )
2019-01-11 10:23:16 -05:00
Jacob Dahl
f6175605cd
px4_fmu-v4 init: Do not start mavlink stream on ttyS0 for the TealOne airframe
...
* We have RAM problems and can't afford 4 mavlink instances. This only adds logic the rc.board for the fmu-v4 that only has an effect for SYS_AUTOSTART = 4250 (TealOne airframe).
2019-01-11 10:21:51 -05:00
Daniel Agar
92ca26b111
mpu9250 fix code style
2019-01-09 10:27:19 -05:00
Florian Olbrich
fb386580b8
Fixed failure notices on mpu9250 startup by adding back device probing on I2C interface init.
2019-01-09 09:54:45 -05:00
Florian Olbrich
280a60c86f
Fixed unreliable ICM20948 detection.
...
Fixed ICM20948 magnetometer only option.
Specified bus for internal mpu9250 on Pixhawk 2.1 to avoid premature detection of
other device.
2019-01-09 09:54:45 -05:00