Commit Graph
40 Commits
Author SHA1 Message Date
Anton Babushkin 40c56ab61e Corrected bug in px4io driver that lead to hang of FMU-IO communication 2013-08-06 21:10:41 +02:00
Julian Oes bcdedd9a35 Changed location of lots of flags and conditions, needs testing and more work 2013-07-16 18:56:31 +02:00
Julian Oes 1b38cf715d Renamed actuator_safety back to actuator_armed, compiling but untested 2013-07-15 22:15:15 +02:00
Lorenz Meier bf2ff98856 Merged master 2013-07-15 15:02:45 +02:00
Jean Cyr 39b3fc8d32 Don't leave RX in bind mode on console open fail
Don't leave RX in bind mode in the unlikely eventuality that console
open fails
2013-07-11 10:36:17 -04: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
Julian Oes 88389ea255 Merge branch 'master' into new_state_machine
compiling again
Conflicts:
	src/modules/fixedwing_att_control/fixedwing_att_control_att.c
	src/modules/fixedwing_att_control/fixedwing_att_control_rate.c
	src/modules/fixedwing_pos_control/fixedwing_pos_control_main.c
	src/modules/mavlink/orb_listener.c
	src/modules/multirotor_att_control/multirotor_attitude_control.c
	src/modules/multirotor_att_control/multirotor_rate_control.c
	src/modules/systemlib/pid/pid.c
	src/modules/systemlib/pid/pid.h
	src/modules/uORB/objects_common.cpp
2013-07-08 10:31:32 +02:00
Jean Cyr 20103f572f Minor px4io optimization
Since this module creates the PX4IO object and that the IOCTL function
doesn't use the file descriptor parameter, there is no need to invoke
IOCTL via the filesystem since we can call it directly.
2013-07-07 20:19:27 -04:00
Jean Cyr dab652faf6 Prevent RELAY1 control via IOCTL if DSM bind feature is enabled 2013-07-07 19:04:30 -04:00
Jean Cyr 35711280df Merge remote-tracking branch 'upstream/master' 2013-07-07 14:29:30 -04: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
Julian Oes a6ba7e4485 Dropped superseded safety topic, added warning tones before arming 2013-06-25 13:15:38 +02:00
Julian Oes 9b6c9358ed First try for an ESC calibration tool 2013-06-20 01:13:49 +02: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 b5f4f1ee80 Adressed performance concern and fixed a copy paste bug 2013-06-18 10:00:42 +02:00
Julian Oes cc452834c0 First try to prevent motors from stopping when armed 2013-06-18 00:30:10 +02:00
px4dev b2ff8b5e1a Turn off logging 2013-06-16 23:02:46 -07:00
px4dev 3163d7ac09 Set the serial port speed before trying to talk to IO 2013-06-16 22:41:08 -07:00
Julian Oes 5b21362e1f Arming with IO working now 2013-06-14 16:04:23 +02:00
Julian Oes 90f5e30f2a Introduced new actuator_safety topic 2013-06-14 13:53:26 +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
Julian Oes 7f90ebf537 Merge remote-tracking branch 'upstream/master' into new_state_machine
Conflicts:
	src/examples/fixedwing_control/main.c
2013-06-12 12:24:52 +02:00
Lorenz Meier 1deced7629 Added safety status feedback, disallow arming of a rotary wing with engaged safety 2013-06-09 14:09:09 +02:00
Lorenz Meier 4e3f4b57e3 Hotfix: Allow the IO mixer loading to load larger mixers, fix up the px4io test command to allow a clean exit 2013-06-07 10:36:56 +02:00
Lorenz Meier 45fe45fefa Better error handling for too large arguments 2013-06-04 13:32:57 +02:00
Lorenz Meier 5f2571dd01 Set unknown channels to zero, since centering them is a slightly dangerous guess 2013-05-29 18:29:41 +02:00
Lorenz Meier f6570172da Set default failsafe value to 0 of mixer 2013-05-29 17:07:26 +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
Julian Oes f5c157e74d Merge remote-tracking branch 'upstream/master' into new_state_machine
Conflicts:
	src/drivers/px4io/px4io.cpp
	src/modules/commander/commander.c
	src/modules/commander/state_machine_helper.c
2013-05-17 11:24:02 +02:00
Lorenz Meier 58084685b2 Hotfix: Changed alarms back to what they originally were designed for: Traps to later see if condition was once violated. Currente status can be read through the status flags 2013-05-16 09:12:13 +02:00
Andrew Tridgell fa816d0fd6 arming: added PWM_SERVO_SET_ARM_OK and PWM_SERVO_CLEAR_ARM_OK
these new ioctls allow for the flight code to tell the IO board that
arming can proceed
2013-05-16 08:39:24 +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 d7e04a3619 px4io: fixed voltage/current output and add discharged_mah calculation
this integrates the current over time to calculate discharged_mah, and
allows the scaling of the current and the bias to be set with the
px4io command
2013-05-04 19:18:55 +10:00
Andrew Tridgell fc572906b7 px4io: ensure upload device is closed after use
this should release it for PWM use
2013-05-04 19:18:11 +10:00
Andrew Tridgell 421253e6db px4io: allow set of output rates above 400 and below 50
let the IO board decide if the rate is reasonable, and limit it there

this fixes the rates on ArduCopter, which try for 490
2013-05-04 19:17:54 +10:00
Lorenz Meier f57439b90e Moved all drivers to new world, PX4IO completely in new world 2013-04-28 01:30:14 +02:00
Lorenz Meier e6ed8268ee Moved position_estimator_mc, px4io driver and sdlog app to new style build 2013-04-27 12:59:47 +02:00