5091 Commits

Author SHA1 Message Date
Jacob Crabill
ffefd458be UAVCAN: Optical Flow: Bug fix (missing integration_timespan field in optical_flow topic). (#13257) 2019-10-25 13:21:03 +02:00
Beat Küng
02833c6075 px4io: add support for test_motor
And fix some IO bugs:
- PX4IO_P_STATUS_FLAGS_RAW_PWM was never cleared. This meant that after a
  'pwm test' command, normal mixing was not possible anymore.
  Fixed by remembering when we are in test mode and not sending
  PX4IO_PAGE_CONTROLS during that time. PX4IO_P_STATUS_FLAGS_RAW_PWM is
  cleared when PX4IO_PAGE_CONTROLS are received.
- when entering test mode w/o specifying all channels, the other channels
  were not set at all, which means they could still be set to values from
  a previous test call.
  This is fixed by setting all channels to disarmed when entering/leaving
  test mode.
2019-10-24 09:27:29 +02:00
Beat Küng
eb6a9bd488 px4io: add missing lock()/unlock() in ioctl 2019-10-24 09:27:29 +02:00
mcsauder
7389bf1759 Add rangefinder dependency to the CM8JL65 driver CMakeList and organize #includes. 2019-10-24 01:50:49 -04:00
Daniel Agar
35398e05ca
perf counter cleanup (mostly intervals)
Some of these perf counters were useful during initial development, but realistically aren't needed anymore, some are redundant when we can now see the average interval from `work_queue status` and some of them simply aren't worth the cost at higher rates.
2019-10-21 18:54:17 -04:00
Daniel Agar
6a0f5249f8
sensors: split out analog battery handling to new standalone battery_status module 2019-10-21 13:40:23 -04:00
Beat Küng
529da7b33e MIXERIOCLOADBUF ioctl: remove unnecessary string length restriction
mixer.cpp ensures the string is null-terminated (buffer length is 2048).
2019-10-21 09:42:08 +02:00
Beat Küng
a8f6622831 OutputModuleInterface::updateOutputs return bool to control actuator_outputs pub
Required for pwm_out_sim: only publish actuator_outputs when we get
actuator_controls. Otherwise lockstep startup does not work.
The issue was there before but hidden, due to a long poll timeout.

Works with HIL too.
2019-10-21 09:42:08 +02:00
Beat Küng
0871802568 mixer_module: add support for test_motor (motor_test CLI command) 2019-10-21 09:42:08 +02:00
Beat Küng
349469cf75 refactor pwm_out_sim: use mixer_module and run on work queue
Tested with SITL + HITL
2019-10-21 09:42:08 +02:00
Julian Oes
f9ddbd7e2a mpu6000: remove factory test for fmu-v2 2019-10-18 15:00:41 -04:00
Nicolas de Palezieux
40bb209fd2 dshot telemetry: enable telemetry publishing for setups with only one ESC 2019-10-17 11:13:38 +02:00
Beat Küng
2296c9acfa uavcan_virtual_can_driver: fix invalid use of px4_sem_getvalue
sem_getvalue returns 0 on success, -1 on error, and never a value > 0.
2019-10-16 18:29:26 +02:00
modaltb
1e1549a169 Add support for Bosch BMP388 barometer 2019-10-15 23:33:49 -04:00
David Sidrane
c44e4b9578 imu/mpu6000: support ICM20689 rev 4 ID 2019-10-14 15:17:43 -04:00
Travis Bottalico
5324c37d04 Add support for voxlpm (I2C power monitor) 2019-10-14 11:08:56 -04:00
Beat Küng
182efaa757 dshot: reduce static buffer size
And handle failures of up_dshot_init().

On Omnibus: reduces memory usage if dshot is enabled by ~1.0KB.
The buffer is roughly 1KB in size.
2019-10-11 08:14:17 +02:00
Beat Küng
e78250ab8d dshot telemetry: retrieve & print ESC info with 'dshot esc_info' CLI command 2019-10-11 08:14:17 +02:00
Beat Küng
26648ad0b9 dshot: add support to send commands via CLI
This enables the possibility to permanently reverse motor directions :)
2019-10-11 08:14:17 +02:00
Beat Küng
65f3c7f93d dshot: add telemetry and publish esc_status message 2019-10-11 08:14:17 +02:00
Beat Küng
4c4ce09005 esc_status: trim the message and remove unused fields 2019-10-11 08:14:17 +02:00
Beat Küng
69c10dcaac dshot: move implementation to a separate directory & library
So that the static memory overhead is not added to targets w/o dshot
2019-10-11 08:14:17 +02:00
Beat Küng
a161be6ec8 dshot: add dshot driver
Supports all DShot modes, but no telemetry yet.
It includes the modes and capture configuration from FMU so that it serves
as drop-in replacement.
2019-10-11 08:14:17 +02:00
Beat Küng
f3eea85bef MOT_ORDERING, MC_AIRMODE: move param def to mixer_module and 'Mixer Output' group 2019-10-11 08:14:17 +02:00
Beat Küng
2a492a8e47 fmu: remove unused include and variable 2019-10-11 08:14:17 +02:00
Igor Mišić
5bd9659301 stm32 timers: add dshot implementation 2019-10-11 08:14:17 +02:00
Jacob Dahl
5842c0c2fb UAVCAN: add battery support (uavcan::equipment::power::BatteryInfo) 2019-10-02 13:08:43 -04:00
Daniel Agar
26364d44c9
px4_work_queue: command line status output and shutdown empty queues
* adds a work_queue systemcmd that will bring a tree view of all active work queues and work items
 * WorkQueues now track attached WorkItems and will shutdown when the last WorkItem is detached
2019-10-02 12:23:17 -04:00
Daniel Agar
27f459c14e
px4io: move to uORB::Publication<> 2019-10-01 12:24:27 -04:00
Daniel Agar
2989ce981c rc_input: move to uORB::PublicationMulti<> 2019-09-30 18:41:23 -04:00
dvornikov-aa
ad728cc0c7 sf1xx: Fix max distance for SF/LW20/b 2019-09-30 20:10:57 +01:00
Daniel Agar
34b03d5659 frsky_telemetry: move to uORB::Subscription 2019-09-30 10:28:03 +02:00
Daniel Agar
030e22c724 adc test shorten 2019-09-29 20:29:34 -04:00
Daniel Agar
c8e59c4e39 parameter_update use uORB::Subscription consistently 2019-09-29 10:49:03 -04:00
Daniel Agar
fdefaf1ad3 lights/blinkm: move to uORB::Subscription 2019-09-28 18:34:20 -04:00
Daniel Agar
ec061a7cfd
telemetry/bst: move to uORB::Subscription 2019-09-28 18:19:38 -04:00
Daniel Agar
637d52c74f frsky_telemetry: increase stack by 60 bytes 2019-09-27 11:37:29 -04:00
mcsauder
4f71c4e123 Change #defines to static constexpr types in LidateLite.h, updated the docs link in ll40ls.cpp, and shortened comments to allow uniform indentation in LidarLiteI2C.h. 2019-09-27 07:55:53 +01:00
mcsauder
9023030931 LidarLite driver minor comment updates/formatting and change instances of OK to PX4_OK. 2019-09-27 07:55:53 +01:00
mcsauder
7b16c3482d Refactor the ll40ls namespace driver methods to more closely match the cm8jl65, mappydot, leddar_one, and other distance sensor driver implementations. 2019-09-27 07:55:53 +01:00
Daniel Agar
88fb6f7b8e
cm8jl65: move to PX4Rangefinder and cleanup
* cm8jl65 split out header and main
* cm8jl65: move to PX4Rangefinder
* PX4Rangefinder: move signal_quality handling to PX4Rangefinder
2019-09-25 12:52:45 -04:00
Mark Sauder
4a6742c3e6 Deprecate the non-functioning HC_SR04 driver. (#13021) 2019-09-25 10:34:50 +02:00
mcsauder
cdbe4a3ee8 Refactor the terraranger driver. 2019-09-22 12:23:25 -04:00
Daniel Agar
be61d93d64 tfmini split out header and main 2019-09-17 21:50:59 -04:00
Daniel Agar
9b7ef7141f tfmini cleanup and use PX4Rangefinder 2019-09-17 21:50:59 -04:00
Nico van Duijn
18eaeb564d PMW3901 improvements (#12977)
* PMW3901: use frame count and quality metric

* PMW3901: set qual to 0 for unsuccessful SPI reads

* PMW3901: improve comment for collect_time

* PMW3901: set qual to zero for huge flow values
2019-09-17 10:54:56 -04:00
Nico van Duijn
a26865c279 drivers: set CM8JL65 signal_quality invalid beyond bounds 2019-09-13 10:42:10 -04:00
mcsauder
e4509486e8 Correct a typo and create a #define for the LeddarOne FOV. 2019-09-06 11:59:29 +02:00
mcsauder
aea139bc1b Correct the LeddarOne FOV and deprecate the unneeded _distance_sensor_topic after migrating to PX4RangeFinder. 2019-09-06 11:59:29 +02:00
mcsauder
ddd9a97d42 Modify the LeddarOne driver class to utilize the PX4RangeFinder library. 2019-09-06 11:59:29 +02:00