diff options
author | Lorenz Meier <lm@inf.ethz.ch> | 2014-07-18 11:19:37 +0200 |
---|---|---|
committer | Lorenz Meier <lm@inf.ethz.ch> | 2014-07-18 11:19:37 +0200 |
commit | 5c8c58a1e6a2977b4a2f6d81928d4bfc64c87649 (patch) | |
tree | fa042ebd0fb2e56d14b9a1625fc7f79c8a57294b /src | |
parent | 903b482378516f26ef0faa4d658597e0af2fb35d (diff) | |
download | px4-firmware-5c8c58a1e6a2977b4a2f6d81928d4bfc64c87649.tar.gz px4-firmware-5c8c58a1e6a2977b4a2f6d81928d4bfc64c87649.tar.bz2 px4-firmware-5c8c58a1e6a2977b4a2f6d81928d4bfc64c87649.zip |
pwm system command: Allow to force failsave (forcefail command)
Diffstat (limited to 'src')
-rw-r--r-- | src/systemcmds/pwm/pwm.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/systemcmds/pwm/pwm.c b/src/systemcmds/pwm/pwm.c index e0e6ca537..77d8ef8db 100644 --- a/src/systemcmds/pwm/pwm.c +++ b/src/systemcmds/pwm/pwm.c @@ -635,7 +635,23 @@ pwm_main(int argc, char *argv[]) } exit(0); + } else if (!strcmp(argv[1], "forcefail")) { + + if (argc < 3) { + errx(1, "arg missing [on|off]"); + } else { + + if (!strcmp(argv[2], "on")) { + /* force failsafe */ + ret = ioctl(fd, PWM_SERVO_SET_FORCE_FAILSAFE, 1); + } else { + /* force failsafe */ + ret = ioctl(fd, PWM_SERVO_SET_FORCE_FAILSAFE, 0); + } + } + } + usage("specify arm|disarm|rate|failsafe|disarmed|min|max|test|info"); return 0; } |