I have completed the assembly and setup/calibaration of my first quadcopter,
Plan a test flight this weekend.
Failsafe action = 2.
DX8 - followed the post to calibrate the failsafe. Looks good.
On the bench, without props I noticed the motors increased in speed when I shut off the transmitter.
Now I'm worried that it will take off if I try this in the field.
I assume it is trying to climb to 10 meters before it can RTL.
Is there a method to bench test the failsafe?
If the motors spin up they are probably trying to gain altitude.
Try this: open the Serial window of Arduino and run the CLI.
There is a test called PWM. Run that to see the raw PWM output.
Turn off the radio and note what it does. It should drop below 975.
If it goes higher, well, you have problems with your radio setup.
Thanks, I will give it a try tonight.
I didn't have any success using the PWM. Values changed but did not display anything when the throttle was down or the DX8 was off.
When I used the radio calibration in mission planner configuration, the value dropped to 920 from around 1100 when I turned the radio off.
We were actually discussing this very issue on this week's dev call..the need for an easy way for people to check their failsafe and know what happens. Anyway, as Jason says..checking the radio input (either through the cli or as you have through the mission planner's radio configuration screen) is a good start to know whether it will be activated..but there's no super easy way to know exactly what action will be invoked on a failsafe (i.e. RTL or not).
Thank you for the comment.
I will practice flying for now and test it when I have more confidence.
Perhaps add a new failsafe action. Immediate landing which will decrease the motor speed until stopped.
This option may have limited use in the field but would be a good test.
It could also be good to add a "Test Failsafe" button in Mission Planner that watches for this, and tells you if you did did the failsafe. Clearly test with props off, but at lease if Mission Planner can simplify it to a button, then tell the user to turn off their Transmitter, and tell them if it worked. Give them like 30 seconds to do it. Even better if it can actually stop the APM from reacting but does verify that it at least gets the right PWM from throttle.
The way I tested (after I had some scary moments field testing) was to load a backed-up configuration into a simulator model with FlightGear. This let me test the failsafe with hardware in the loop. Granted, it isn't an exact test since you have to flash the simulator firmware instead of your actual quad firmware, but it at least let me see what happened with my radio and configuration settings in the simulator, and it let me track down an issue with the configuration.
I saw the same effect on our test quad. Motors spun up when sitting on the bench when the radio was shut off. The correct low throttle was received around 950.
When I tested in the field I first wanted to see what would happen based on the bench results as this seems to be a safety issue. APM 2.5 with firmware 2.7.3
With the copter sitting on the ground armed but with motors off I shut off the radio. The copter did climb, in a shaky manner unlike normal flying, to about 10 meters then after a second basically fell at a rapid rate to the ground. The test was on a almost indestructible frame with some extra "shock absorption" measures in case of the worst so I was not concerned about the copter which suffered no damage - but this could hurt someone accidentally turning off the radio.
Perhaps there should be a check in the loop that prevents fail safe actuation of the motors are already off. While one should not turn off the radio before powering off the copter it happens sometimes either through ignorance or a mistake.
Since the trigger for failsafe is a low throttle, it would probably need to have a bit more logic than just "motors already off", though. Currently, the danger window is the point after you land and before the APM has automatically disarmed after 15-20 seconds.
As for the weird climb, I wonder if you ran into a similar issue to what I have seen. It looks to me like the failsafe does not ignore a change in Flight Mode. Since my reciever defaults to a central position on my flight mode channel when it failsafes, it was causing the failsafe to trigger on the APM, then almost immediately changing the mode back to whatever mode was in the center position; shortly after this, the APM would disarm and shut off the motors since it saw low throttle. I opened a ticket for this behaviour, and also provided code to fix it: http://code.google.com/p/arducopter/issues/detail?id=471&can=4
What was the fail safe action you had set?
I understand "2" is to RTL.
My Fail Safe action was 2.
Regarding the check on throttle my thought was if the throttle is off prior to receiving the below 975 throttle input that failsafe should not be able to engage. This would prevent inadvertent launches. Operation would take place as normal if the throttle is engaged. This is similar tot he arming disengagement after a period of low throttle but in this case should probably be immediate.
This can happen, as noted above, after landing or could happen before take off is someone decide not to fly has already armed the copter and shuts the radio off before disarming or disconnecting power or even on the bench while setting up - I have seen too many people turn off the radio prematurely in this circumstances.
Paint me confused.
I have been able to determine that the FailSafe Action response is different from the ArduCopter and the ArduPlane. But with all the cut-n-paste and cross pollination of the information in the Wikis, knowing which one is correct for the Copter is a challenge.
But, why do I care about a fail-safe switch on the transmitter? I don't get it. As I understand it, FailSafe is what is supposed to happen when the receiver in the copter is no longer receiving a signal from the transmitter. If the copter has flown out of range, then how is the APM to know anything about the position of a fail-safe switch on the transmitter??
My requirement for fail-safe action is quite simple. I want to launch a mission that I know will take the copter out of the transmitter range. I want the mission to complete, which includes returning to the launch point - at which time the copter will be back in range of the transmitter.
ArduCopter HEXA 3DR Frame
APM 2.0 Purple Full Kit Assembled
Motor AC2836-358, 880Kv
ArduCopter ESC 20 Amp
Propellers: 12X45 EPP Style
3DR GPS uBlox LEA-6