Daniel Agar
bb1177d504
sensor_calibration: refactor and centralize calibration slot logic
...
- centralize logic for selecting a preferred calibration slot
- automatically use existing calibration slot if it exists, otherwise
find first available slot, with a preference for a requested index
- existing commander calibration methods rewrite all calibration slots
to match current sensor ordering
2022-01-12 16:16:26 -05:00
Julian Oes
860b23dd17
tunes: add tune to power off
...
This is used by the ATL Mantis EDU to help the user realize when the
drone is powered off.
2022-01-10 23:04:10 -05:00
Daniel Agar
cc1fee525a
lib/sensor_calibration: handle calibration slot change on parameter update
2022-01-10 17:16:50 -05:00
Daniel Agar
ab547bb982
sensors/vehicle_angular_velocity: RPM notch don't fully disable if first harmonic frequency drops below minimum frequency
...
- keep higher frequency harmonics enabled per ESC
- cleanup timestamp handling (timeouts, etc)
2022-01-10 14:51:29 -05:00
Daniel Agar
b58922a5d7
sensors/vehicle_angular_velocity: notch filters automatically reset on sufficient parameter change
2022-01-10 14:51:29 -05:00
Daniel Agar
7d632254be
NotchFilter push initialization/reset into filter
...
- this simplifies the reset by allowing a notch filter to reset as
needed
- improves cascade initialization, on reset each filter will reset
properly from the previous
2022-01-10 14:51:29 -05:00
Daniel Agar
e731fcdbc0
sensors (accel/gyro/mag) determine if external with device id
2022-01-10 10:31:07 -05:00
Daniel Agar
78b3d22471
lib/mixer_module: consume output_limit library
2022-01-10 11:59:55 +01:00
Daniel Agar
aec97e0020
sensors: minor IMU bias saving updates
...
- sensors/vehicle_imu: reset learned cal on any calibration change
during parameter update
- sensors/vehicle_imu: cleanup logic estimated bias -> calibration offset
saving
- don't invalidate saved calibration (the point is to keep the last valid)
- remove old debug code, etc
- sensors/vehicle_imu: notify parameter changes if accel or gyro
calibration has changed
- lib/sensor_calibration: add calibrated() and calibration_index()
getters, keep Accelerometer/Gyroscope/Magnetometer in sync
2022-01-07 09:40:51 -05:00
PX4 BuildBot
a89f21d566
Update world_magnetic_model to latest Tue Jan 4 11:14:11 UTC 2022
2022-01-04 09:12:45 -05:00
Daniel Agar
673d4544d1
parameters: verify param backup after export
2022-01-02 10:46:34 -05:00
Daniel Agar
8e26b33009
tinybson: file write error add more detail
2022-01-02 10:46:34 -05:00
Daniel Agar
80ef6e19df
tinybson: explicitly append int32 or int64
2022-01-02 10:46:34 -05:00
Daniel Agar
9cbb5c9920
parameters: fix export shutdown locking
...
- in NuttX bchlib keeps a sector sized buffer that might not be written
out to RAMTRON until the file is closed
2022-01-02 10:46:34 -05:00
Daniel Agar
1b6700592b
parameters: require valid BSON document size
2021-12-30 16:36:23 -05:00
Daniel Agar
236794235a
parameters: export empty BSON document even if there are no parameters to save
...
- otherwise a 'param reset_all' won't be saved until a parameter is changed
2021-12-27 09:17:00 -05:00
Daniel Agar
33d7b42040
parameters: import quietly retry if there's no data (as a precuation)
2021-12-27 09:17:00 -05:00
Daniel Agar
20d3e6f4e1
parameters: add simple BSON verification pass after export
2021-12-27 09:17:00 -05:00
Beat Küng
28c4d0b7df
mixer_module: add unit tests
2021-12-24 20:06:13 -05:00
Beat Küng
4c80adfaf1
control_allocator: implement trim + slew rate limits configuration
2021-12-24 20:06:13 -05:00
Beat Küng
d1abdd0f8d
output drivers: add option to generate a separate output range reversing param
...
Makes it a bit easier to configure. Reversing by setting MIN > MAX is still
supported.
2021-12-24 20:06:13 -05:00
Beat Küng
1901edf13c
actuator_motors.msg: add reversible flags & implement in mixer_module
2021-12-24 20:06:13 -05:00
Beat Küng
20d96f3bd9
metadata: fix BOARD_WITH_IO detection
...
Wasn't correctly updated during a rebase.
2021-12-24 20:06:13 -05:00
Daniel Agar
3f3836afa8
parameters: simplify import mark_unsaved and don't fail bson decode unnecessarily
2021-12-24 14:32:40 -05:00
Daniel Agar
d1cd4904dc
parameters: param_value_is_default avoid locking if value unchanged
2021-12-24 14:32:40 -05:00
Daniel Agar
c0b8f2952c
parameters: param_get_default_value avoid locking if value is static default
2021-12-24 14:32:40 -05:00
Daniel Agar
27a113ecab
parameters: param_get avoid locking if value is static default
2021-12-24 14:32:40 -05:00
Daniel Agar
cd8ce4d01e
parameters: remove obsolete perf_end
2021-12-24 14:32:40 -05:00
Daniel Agar
38731662c6
parameters use bitset for mark_unsaved
2021-12-24 14:32:40 -05:00
Daniel Agar
00eae055ac
lib/sensor_calibration: don't save uninitialized priority parameter immediately
2021-12-23 17:49:11 -05:00
Daniel Agar
e694fa906b
tinybson: add more error output on node name overflow
2021-12-23 17:45:50 -05:00
Beat Küng
f6ced71d26
pps_capture: make it configurable via output functions
2021-12-17 07:56:08 +01:00
Daniel Agar
ecc2ca7f98
mathlib: int16_t negate explicitly handle both INT16_MIN and INT16_MAX
...
- technically negating INT16_MAX doesn't need special handling, but
this ensures any simple saturation logic downstream works by default
2021-12-15 12:45:58 -05:00
Daniel Agar
d59d16a6cd
drivers/accelerometer: adjust int16_t clipping threshold slightly
...
- consider data clipped/saturated if it's INT16_MIN/INT16_MAX or within 1
- this accommodates rotated data (|INT16_MIN| = INT16_MAX + 1) and sensors that may re-use the lowest bit for other purposes (sync indicator, etc)
2021-12-15 12:45:58 -05:00
Silvan Fuhrer
e9b9176ce2
param translation: fix for FW_GPSF_LT and FW_GPSF_R
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-12-14 08:27:04 +01:00
Jukka Laitinen
ce6147f570
uORB: Remove transfer of memory allocation ownership to CDev
...
- Allocate and free the node name in uORBDeviceNode.
- Add protected build support by de-allocating the name with kmm_free, when
running in kernel side. strdup allocates from the kernel heap in NuttX kernel
space.
- Remove the CDev::unregister_driver_and_memory(), it is no longer used
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2021-12-13 22:52:36 -05:00
Jukka Laitinen
25c10eb124
cdev: build & link fixes for NuttX protected build
...
- Always link to nuttx_fs for register/unregister_driver calls
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2021-12-13 22:52:36 -05:00
bresch
67a893ac6d
WelfordMean: remove unnecessary case for first sample
...
setting the mean to the sample value and then adding 0 is the same as
setting the mean to zero and then add the sample value divided by 1
2021-12-13 11:42:48 -05:00
bresch
5468841aa5
WelfordMean: add unit test
2021-12-13 11:42:48 -05:00
Beat Küng
80300c36b4
parameter units: add 'A' (Ampere)
2021-12-10 09:03:08 -05:00
Thomas Debrunner
ade4a1930c
trajectory-planning: Added option for PositionSmoothing library with single target waypoint that disables L1 guidance
2021-12-09 20:51:39 -05:00
Matthias Grob
495f1c9165
battery: don't initialize _source without constructor
2021-12-07 21:06:51 +01:00
Matthias Grob
68e2940f58
math: support max of three values additional to min and use it everywhere
2021-12-07 21:06:51 +01:00
Matthias Grob
e8676fe87a
BATTERY_STATUS: improve filling cell voltage
...
according to review comment
2021-12-07 21:06:51 +01:00
Matthias Grob
b41e345a5b
battery: correct updateBatteryStatus() description
2021-12-07 21:06:51 +01:00
Matthias Grob
fdc40880d0
battery: separate out publishing from updating
...
to allow smart battery drivers to use the battery class and
filling in additional information in case it makes sense.
2021-12-07 21:06:51 +01:00
Matthias Grob
e70d70468a
battery: pass voltage and current by setter
2021-12-07 21:06:51 +01:00
Matthias Grob
39641494da
battery: pass connected flag in by setter
2021-12-07 21:06:51 +01:00
Matthias Grob
38d23f5345
battery: pass priority in by setter
2021-12-07 21:06:51 +01:00
Matthias Grob
f9fc9a9af6
battery: pass source in by constructor
2021-12-07 21:06:51 +01:00