Don Gagne
92adbe9216
Fix compiler warnings
2014-06-29 17:47:24 -07:00
Lorenz Meier
1b491005d1
Minor cleanups on handling, make wrong reg accesses non-fatal for the transfer
2014-05-16 10:43:50 +02:00
Lorenz Meier
b903fc1ed3
px4io: Improve the documentation of the protocol header, NO FUNCTIONAL CHANGES
2014-05-16 09:50:10 +02:00
Lorenz Meier
97fb361ea9
Set an RC status flag so that we can read out the RC status in parallel to the RC data
2014-05-14 08:00:00 +02:00
Andrew Tridgell
ac52111085
px4io: support PX4IO_P_SETUP_FORCE_SAFETY_OFF
...
this allows the FMU to force the safety off on the IO board. Useful in
two cases:
1) vehicles where the safety switch is impractical or not useful
(eg. HAB planes or internal combustion motors)
2) doing ESC calibration on multi-copters
2014-04-28 11:45:20 +02:00
Lorenz Meier
9a0b2b7610
Make throttle failsafe depend on the failsafe threshold parameter. Make the parameter optional (no harm if not found).
2014-04-05 11:02:22 +02:00
Lorenz Meier
c6d98a32f8
Proper failsafe handling onboard, including throttle failsafe condition if enabled
2014-04-05 10:27:43 +02:00
Lorenz Meier
ff753b9e24
Merged master into lockdown_disable
2014-01-30 10:00:01 +01:00
Lorenz Meier
cc68d11353
Add flag to indicate proper RC mapping
2014-01-26 15:26:19 +01:00
Lorenz Meier
a737a2a406
RSSI and SBUS out config now handled as setup feature flags.
2014-01-26 13:22:26 +01:00
Lorenz Meier
57d38bc8ce
Clean up RC related metadata, put everything into the RC data page. This ensures atomic reads, makes the reads more efficient and allows for some headroom for more RC flags. The IO driver side is updated as well, however, these flags are not published yet.
2014-01-26 00:17:26 +01:00
Lorenz Meier
8ffb9e29c6
Teach IO firmware that arming and lockdown are two different things, clean up arming check
2014-01-16 10:56:15 +01:00
Lorenz Meier
cddbb0d23f
Merged master
2013-12-27 21:12:51 +01:00
Lorenz Meier
edffade8ce
Added PPM frame length feedback in IO comms and status command - allows to warn users about badly formatted PPM frames
2013-12-25 15:11:48 +01:00
Lorenz Meier
b84c9f962b
Merged master
2013-12-21 19:07:24 +01:00
Lorenz Meier
9883a346a0
First stab at implementing better RSSI based connection status estimation, still needs some work and testing
2013-12-13 18:01:55 +01:00
Andrew Tridgell
5b7d1af5d8
Merged crccheck command
2013-12-13 11:22:14 +01:00
Andrew Tridgell
6016fbe55d
Merged PX4IO crc checks and force update
2013-12-13 11:21:00 +01:00
Lorenz Meier
0ba507b640
Added support for a total of four control groups to the IO driver and IO firmware. This allows to run auxiliary payload. Cleaned up defines for RC input channel counts, this needs another sweep to then finally allow up to 16 mapped channels and up to 20-24 RAW RC channels
2013-12-08 11:25:45 +01:00
Julian Oes
ea0aa49b54
pwm info provides more information, some fixes for setting rate/min/max/disarmed
2013-10-07 16:24:49 +02:00
Jean Cyr
89d3e1db28
Implement Spektrum DSM pairing in V2
...
- Bind control for V2
- Relays and accessory power not supported on V2 hardware
2013-09-18 20:04:22 -04:00
Lorenz Meier
309ea81460
Merged fmuv2_bringup
2013-08-21 15:19:19 +02:00
Lorenz Meier
5fbee23945
Added flag to disable RC evaluation onboard of IO (raw values still forwarded)
2013-08-21 11:17:29 +02:00
Lorenz Meier
6c45d9cb5c
Fixed in-air timout, bumped protocol version
2013-08-17 15:47:13 +02:00
Julian Oes
56575eb068
Merge remote-tracking branch 'px4/new_state_machine_drton' into fmuv2_bringup_new_state_machine_drton
...
Conflicts:
src/drivers/blinkm/blinkm.cpp
src/drivers/px4io/px4io.cpp
src/modules/commander/state_machine_helper.c
src/modules/px4iofirmware/protocol.h
src/modules/px4iofirmware/registers.c
src/modules/systemlib/systemlib.h
src/systemcmds/reboot/reboot.c
2013-08-15 14:04:46 +02:00
Lorenz Meier
dd3033fa6f
Symbol cleanup for servo vs. battery voltage
2013-07-26 15:16:48 +02:00
Lorenz Meier
bf2ff98856
Merged master
2013-07-15 15:02:45 +02:00
px4dev
dca9019f75
Merge branch 'master' of https://github.com/PX4/Firmware into fmuv2_bringup
2013-07-14 13:04:44 -07:00
Jean Cyr
897b541b12
General cleanup of /dev/px4io and /dev/px4fmu
...
- Use distinct common symbols for px4io and px4fmu device files, and use
instead of hardcoded filenames
- Use common symbols defining px4io bits consistently between px4fmu and
px4io builds.
2013-07-09 20:37:00 -04:00
px4dev
8fa226c909
Tweak protocol register assignments and add new registers to accommodate differences in IOv2.
2013-07-06 23:59:35 -07:00
px4dev
87a4f1507a
Move the common definitions for the PX4IO serial protocol into the shared header.
2013-07-06 00:16:37 -07:00
Jean Cyr
3f9f2018e2
Support binding DSM2 and DSMX satellite receivers
...
The px4io bind command allows you to put a DSM satellite receiver into
bind mode. Since this feature requires that
the dsm VCC line (red wire) be cut and routed through relay one, it is
not enabled by default in order not to
affect those not using a DSM satellite receiver or wising to use relay
one for other purposes.
NOTE: Binding DSM2 satellites in 11-bit mode is not supported due to
potential bug in some DSM2 receiver streams
when in 11-bit mode. Furthermore the px4io software folds 11 bit data
down to 10 bits so there is no resolution
advantage to to 11-bit mode.
To enable the feature the RC_RL1_DSM_VCC parameter must be set to a non
zero value from the console, or using
QGroundControl:
param set RC_RL1_DSM_VCC 1
From the console you can initiate DSM bind mode with:
uorb start
param set RC_RL1_DSM_VCC 1
px4io start
px4io bind dsm2
For binding a DSMX satellite to a DSMX transmitter you would instead
use:
px4io bind dsmx
Your receiver module should start a rapid flash and you can follow the
normal binding sequence of your
transmitter.
Note: The value of parameter RC_RL1_DSM_VCC defaults to 0, so none of
this will have any effect on an unmodified
DSM receiver connection. For this feature to work, the power wire (red)
must be cut and each side connected to a
terminal on relay1 of the px4io board.
This has been tested using Spektrum as well as Hobby King 'Orange' DSM
satellite receivers.
Both px4fmu and px4io images are updated.
2013-07-05 20:51:29 -04:00
px4dev
43210413a9
More test work on the px4io side of the serial interface.
2013-07-04 23:17:55 -07:00
px4dev
90c458cb61
Checkpoint: interface abstraction for px4io driver
2013-06-25 23:08:34 -07:00
Julian Oes
23858a6726
Added functionality to enable PWM output for stupid ESCs even when safety is not off, arming button functionality remains as is
2013-06-19 22:59:40 +02:00
Julian Oes
202792294a
Merge remote-tracking branch 'upstream/io_fixes' into new_state_machine
...
Conflicts:
src/drivers/px4io/px4io.cpp
src/modules/commander/commander.c
src/modules/commander/state_machine_helper.c
src/modules/commander/state_machine_helper.h
src/modules/px4iofirmware/mixer.cpp
src/modules/uORB/topics/actuator_controls.h
src/modules/uORB/topics/vehicle_status.h
2013-06-18 15:35:26 +02:00
Julian Oes
cc452834c0
First try to prevent motors from stopping when armed
2013-06-18 00:30:10 +02:00
Lorenz Meier
c3a8f177b6
Software version check fixes
2013-06-12 12:58:17 +02:00
Lorenz Meier
eb76d116cc
Minor state machine improvements and fixes for IO safety / in-air restart handling
2013-06-12 12:30:42 +02:00
Lorenz Meier
9444def5f8
Merge branch 'master' into fmuv2_bringup
2013-06-10 15:01:44 +02:00
Lorenz Meier
2876bc72f9
Slightly reworked IO internal failsafe, added command to activate it (px4io failsafe), does not parse commandline arguments yet
2013-05-28 17:46:24 +02:00
px4dev
308ec6001a
Add serial read-length handling.
2013-05-22 22:09:00 +02:00
px4dev
437d9e4180
Merge branch 'fmuv2_bringup' into fmuv2_bringup_io2
2013-05-22 21:39:30 +02:00
Lorenz Meier
79f9b61aff
Fixed led patterns to be up to the latest specs
2013-05-12 20:05:20 +02:00
Lorenz Meier
26efba2ff3
New blink patterns for safety switch, removed GPS lock indicator
2013-05-09 17:38:12 +02:00
Andrew Tridgell
44015d6915
px4io: return raw ADC value for current
...
we don't know how to scale it as we have no info on what sensor is
attached. As we are returning a uint16_t it is better to let the FMU
sort it out or we'll just lose precision.
2013-05-04 19:18:47 +10:00
px4dev
e67022f874
Serial interface for IOv2
2013-04-28 18:14:46 -07:00
Lorenz Meier
f57439b90e
Moved all drivers to new world, PX4IO completely in new world
2013-04-28 01:30:14 +02:00