110 Commits

Author SHA1 Message Date
Julian Oes
bb09646b41 ROMFS: allow the output config to be skipped
This is required for the ATL Mantis-EDU.
2022-01-10 23:04:10 -05:00
Julian Oes
7c0165ea0c ROMFS: avoid setting none params 2021-12-02 11:40:26 -05:00
Beat Küng
c1e5e666f0 pwm_out, dshot: add dynamic mixing support 2021-10-18 18:45:19 -04:00
Daniel Agar
089c962d92 px4io: moving mixing to FMU side
Using mixers on the IO side had a remote benefit of being able to
override all control surfaces with a radio remote on a fixed wing.
This ended up not being used that much and since the original design
10 years ago (2011) we have been able to convince ourselves that the
overall system stability is at a level where this marginal benefit,
which is not present on multicopters, is not worth the hazzle.

Co-authored-by: Beat Küng <beat-kueng@gmx.net>
Co-authored-by: Daniel Agar <daniel@agar.ca>
2021-09-25 19:15:05 -04:00
Beat Küng
1ee423e3c8 pwm_out, dshot: remove mode_* handling and capture ioctl's
They now use all unused pins, whereas camera_capture, camera_trigger and
pwm_input modules start before to reserve their pins.
2021-09-08 16:10:24 -04:00
Matthias Grob
acf848ba99 PWM: Draft implementation to respect PWM_OUT when loading defaults 2021-07-02 12:48:04 +02:00
Lorenz Meier
d35ce21594 PWM out: Ensure correct loading on single-bank targets 2021-03-17 22:03:18 +01:00
Lorenz Meier
935cc05c47 FMU PWM OUT: Start driver in interface 2021-03-17 22:03:18 +01:00
Lorenz Meier
891b231215 Ensure that AUX mixer is loaded when 2nd bank is present 2021-03-17 22:03:18 +01:00
Daniel Agar
e7722b11eb pwm_out multi-instance support
PX4 uses banks of 8 outputs as a logical structure. Boards that have
more outputs than 8 get multiple instances. This is an arbitrary choice
that helps with overall structure and enables the mixing of different
device classes (like FMU, IO or UAVCAN).
2021-03-17 22:03:18 +01:00
Beat Küng
7e33d03470 drivers: remove tap_esc
- it's not used anymore
- it would need a refactoring to use mixer_module
2021-02-25 09:28:37 -05:00
Daniel Agar
fb2a199621 delete unmaintaned mkblctrl driver 2021-02-14 10:38:15 +01:00
Daniel Agar
d1a3590aac PWM: transition PWM_{MIN,MAX,DISARMED,RATE} -> PWM_MAIN 2021-02-01 08:53:33 +01:00
Daniel Agar
318c7e83b3 support up to PWM 14
- generate PWM_MAIN 1-14
 - generate PWM_AUX 1-8
 - generate PWM_EXTRA 1-8
 - px4io and pwm_out directly read configuration parameters
    - only available and active physical outputs are actually shown for configuration
 - overall saves flash despite adding many new parameters
2021-01-30 15:55:53 +01:00
Ricardo Marques
e817fb83f5 pwm_extra: Add PWM_EXTRA parameters.
Signed-off-by: Ricardo Marques <marques.ricardo17@gmail.com>
2021-01-18 15:43:28 +01:00
Ricardo Marques
7a8203bf19 Enable third mixer when using UAVCAN for main mixer. 2021-01-18 15:43:28 +01:00
Daniel Agar
f7452bff4d ROMFS: startup remove bootlog.txt 2020-11-16 09:19:35 -05:00
Daniel Agar
9767a73619 ROMFS: silently compare optional parameters
- not all build configurations have these parameters/modules
2020-11-11 08:03:48 +01:00
David Sidrane
b9319b3843 ROMFS:Use . for (source) and ${R} for pathing
init.d-posix:rcS Quiet Shell check warning
2020-10-15 17:11:08 -04:00
Daniel Agar
08bf71b73d
drivers/tone_alarm and tune_control small improvements/cleanup
- drivers/tone_alarm: move to ModuleBase and purge CDev (/dev/tone_alarm0)
 - drivers/tone_alarm: only run on tune_control publication (or scheduled note) rather than continuously
 - drivers/tone_alarm: use HRT to schedule tone stop (prevents potential disruption)
 - msg/tune_control: add tune_id numbering
 - systemcmds/tune_control: add "error" special case tune_id
 - move all tune_control publication to new uORB::PublicationQueued<>
 - start tone_alarm immediately after board defaults are loaded to fix potential startup issues
 - for SITL (or other boards with no TONE output) print common messages (startup, error, etc)
2020-10-05 21:39:26 -04:00
David Sidrane
185ffe9e13 nsh scripting:source (.) cmd supported 2020-09-16 21:32:04 -04:00
Daniel Agar
ca81175b07 rename drivers/px4fmu -> drivers/pwm_out
- split out header
2020-03-31 19:12:31 -04:00
Beat Küng
2b360bfd48 rcS: fixes for SYS_USE_IO=0
rc.io is called from 2 places in rc.interface:
- if [ $OUTPUT_MODE = io -o $OUTPUT_MODE = uavcan_esc ]:
  - 'set OUTPUT_MODE io' is only set within USE_IO=yes, so removing
    the check in rc.io has no effect.
  - in case of UAVCAN, we also want the IO for RC, now covered in the next
    case.
- Further down ('Start IO for RC input if needed.').
  This is intended to start IO for RC only, when fmu is already started.
  However the previous check '$USE_IO = yes' in rc.io prevented that.

In addition we don't start rc_input in case of $USE_IO = no.

Fixes no RC on Pixhawk 2 with SYS_USE_IO=0.
2020-03-26 10:33:27 -04: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
Beat Küng
d8ef1b59b9 ROMFS: add dshot startup support 2019-10-11 08:14:17 +02:00
BazookaJoe1900
02e861b16e enable silent compare of parameter (#12850)
Remove false errors after comparing parameters that doesn't exists.
as described in #12832
2019-10-07 09:50:11 +02:00
Beat Küng
a3c920db7d board_defaults: remove unnecessary 'set MIXER_AUX none'
On all of these boards '$USE_IO = no' will hold.
2019-07-16 08:09:22 +02:00
romain
e1d9438f79 sih: remove SYS_SIH parameter and extend SYS_HITL 2019-04-12 09:25:07 +02:00
Julian Oes
3ebf030a02 ROMFS: change shebang from #!zsh to #!/bin/sh
This was required for shellsheck.
2018-12-19 07:36:43 +00:00
David Sidrane
729d1c32d3 Rename nxphlite-v3 to NXP fmuk66-v3 (#10927) 2018-11-28 12:13:21 -05:00
Daniel Agar
abb3817d31 boards new split VENDOR_MODEL naming convention 2018-11-26 14:40:14 -08:00
Beat Küng
37338e442f NuttX shell scripts: replace operator == with =
- NuttX supports both versions
- POSIX shell only supports '='
2018-09-27 23:39:20 +02:00
mcsauder
c390d02f1c Tidy up an OUTPUT_DEV set/unset in rc.interace and rcS. 2018-09-25 07:55:03 +02:00
mcsauder
0d0fcb140c Updated rc.vtol_defaults to correct PWM_AUX behavior for VTOL airframes. Added PWM_AUX_RATE to rc.vtol_default and set parameters directly instead of environment variables. 2018-09-17 20:28:09 -04:00
bresch
740e409016 PWM - Add PWM_MIN and PWM_MAX parameters for MAIN and AUX (#10452) 2018-09-16 18:07:29 -04:00
David Sidrane
f5295d7700 rc.interface:Use tune_control 2018-08-30 19:11:17 +02:00
bresch
04c765f497 Failsafe PWM - Add PWM_MAIN/AUX_FAILx parameters to set "failsafe" values. 2018-08-28 11:23:25 -04:00
Beat Küng
5ebd0116de rc.interface: allow setting a custom MIXER_FILE 2018-08-13 21:50:14 -04:00
Beat Küng
a00f7ebf47 sitl scripts: refactor to use existing rc.vehicle_setup from NuttX 2018-08-13 21:50:14 -04:00
Beat Küng
fcd3a04b07 rc.interface: remove unnecessary fmu start for RC input
RC input is now handled via rc_input module
2018-08-13 21:50:14 -04:00
Beat Küng
9ba2e91fa1 ROMFS: avoid empty 'then else' clause, it's an error in bash
Use 'if ! <cmd>' instead.
2018-08-13 21:50:14 -04:00
mcsauder
1fe526b8eb Updated and added full stops to comments and did some comment/whitespace formatting in the startup scripts. 2018-07-31 09:06:03 +02:00
Daniel Agar
658237f36a px4fmu move RC input to new rc_input driver 2018-07-30 10:32:56 -04:00
mcsauder
ac8f44268b Added remaining two channels of PWM_AUX_DIS disarm parameter set commands, remove trailing whitespace from pwm_params_aux.c and pwm_params_main.c, gps/params.c and added block comment headers to separate sections instead of whitespace. 2018-07-30 09:36:44 +02:00
mcsauder
8da1e67050 Move OUTPUT_MODE logic from rcS to rc.interface. 2018-07-26 08:17:52 +02:00
mcsauder
ee3e34cd06 Move UART mapping comments back to top level rcS script. Deprecate PWM_ACHDIS and replace with PWM_AUX_OUT and set PWM_AUX_DIS value directly in vtol airframe config files. Replace tone_alarm instances with tune_control and default tune enums, and relocate an OUTPUT_MODE == fmu logic block in rcS. 2018-07-24 18:44:55 +02:00
mcsauder
bccda56ed3 Re-order hardware specific logic in rc.interface. 2018-07-19 10:35:18 +02:00
mcsauder
6f63553824 Move MNT_MODE_IN / MOUNT_MODE_OUT logic block to rc.interface and move dataman, send_event, and load_mon startup just below uorb and tone_alarm startup in the rcS script. 2018-07-19 10:35:18 +02:00
mcsauder
1d7dbdddca Add pwm failsafe -c argument to rc.interface, reference issue #9775. 2018-07-18 08:05:31 +02:00
mcsauder
71ceb0cfd6 Copy/paste logic in rc.interface to group MIXER and MIXER_AUX logic, alphabetize hardware list in rc.interface, alphabetize set/unset lists in rcS, and add -p argument to pwm failsafe calls per issue #9775. 2018-07-18 08:05:31 +02:00