ArduCopter 3.0 is ready for widespread use. To make the transition easier, this time we are asking people to voluntarily upgrade from 2.9.1b for the next month or so before we make 3.0 the default firmware downloaded by the mission planner. The new version can be found in the Mission Planner's Beta firmware's link, firmware.diydrones.com, GitHub and the new Downloads Area.
Warning #1: A bug was found in the FENCE in which if you lost GPS it could lean at extreme angles as it tried to maintain an invalid position. This is fixed in AC3.0.1-rc1.
Warning #2: This release has not been fully tested on Traditional Helicopters
Warning #3: GPS glitches can cause sudden and aggressive position changes while in loiter mode. You may wish to reduce the WPNAV_ACCEL to 100 and Loiter PID to 0.2 (from 1.0) to reduce aggressiveness.
Improvements over 2.9.1b include:
WPNAV_SPEED, WPNAV_SPEED_UP, WPNAV_SPEED_DN, WPNAV_ACCEL allows configuring speeds and acceleration during missions
How to upgrade:
1. Make sure you are using Mission Planner 1.2.59 or newer.
2. Click on the MissionPlanner's Firmware screen and click the "Beta Firmwares" link on the bottom right. The version numbers should update to "ArduCopter-3.0.1rc2", then click the appropriate frame icon and it should upgrade as per usual.
Note: Nav parameters have been combined with Loiter so do not be concerned if you can't find them.
4. If you purchased an APM prior to March of 2013, update your PPM encoder to the latest firmware.
5. Try out the new version in stabilize mode first, then alt-hold, then loiter and finally RTL and Auto.
Special Thanks to Marco, DaveC and the rest of the beta testers for putting their copters at risk during the extended testing period. Some of their videos can be found here, here, here, here, here and here. Thanks also to MichaelO for the MP changes required for this release.
All feedback welcome. Please put your questions, comments (good and bad!) below.
Added by Craig:
Please watch Randy's videos on setting up and flying APM-Copter 3.0 before you go flying. They are excellent!
After reading your post again now I think I understood what you did. You actually did different than mine. Currently my system uses ONLY Tx failsafe (which sets the ch5 to RTL). I do NOT (currently) have the low throttle failsafe which is the APM failsafe actually.
So my understanding is that you activated double failsafe both your Tx and APM failsafe.
It seems pretty safe but I am not sure how it actually works. If you lose radio signal, which one do you think would do the work?
You programmed your Rx to send low throttle PWM to APM which activates its internal failsafe, then you also set the ch5 to RTL.
I would actually like Randy to comment on this.
Randy if you read this, would this double RTL failsafe work?
Alex, because there is no reliable way to detect this automatically at the PPM level.
More there are many different RC receivers on the market, we need a reliable way of detecting a failsafe in a standardized method that can be compatible with all receivers.
What magfield reading are you getting Steve? Mine varies from 120~190 here in South Africa and I also had to disable the pre-arm check...
Thought I gonna add my results here as well after installing 3.0.1-rc1. After seeing other's results I was actually surprised to get 4% with the quad facing south. Over the last few weeks I also modded the support structure a bit. I added the CD Box for protection, all Cables are shielded, the APM2 resides on Moongel dampeners and sits atop a double sided copper plate.
Perfect explanation Olivier!.. Then I was right on my previous comment when saying "APM should be able to detect a radio link failure on its own..."
Your #2 above clearly states that. Even if a Tx/Rx wouldn't have the failsafe capability, intelligent APM failsafe could still work because it is able to detect the failure through the PPM encoder.
But still one more question: You said "For cases 1 and 2, the main APM code can't differentiate actually if the receiver is dead or if a normal radio loss has been signaled by the receiver."
Why can it not differentiate if the Rx is dead or not? If the Rx is dead there should be no signal coming to PPM encoder from the Rx. If the radio signal is lost, then there would still be some signals coming from Rx.
This part I couldn't understand...
Alex, sure it can differentiate, but actually it is not reported to the APM code. In both cases the problem is reported using CH3 = 900 us at the PPM encoder output.
That's why we have a provision to change that in the future with a 800 us PPM output if a receiver channel is dead or out of tolerance. Each dead channel will be signaled with a 800 us value, and the APM will decide what to do from those informations.
Good reasoning Olivier. Thanks...
Perfect. It will get better in the future... Will be waiting for it while enjoying what the current firmware offers now:)
Olivier, I asked this to Randy but I think he is on vacation these days.
Steve (F11) mentioned that he set both (APM and Tx) failsafes at the same time. So he has low throttle PWM set signaling APM to go into failsafe state and he also set his ch5 output to RTL.
Would this double failsafe cause any issue? Which one would APM carry out?
Every time I update the new software version on my APM, I want to know what are the default PID settings, but If I execute the reset option, then ALL the values are reseted, including Gyro, accel, and so on.
Question: Is there any way to load only the default PID values of any version? If not, could be considered this option for future versions of the MP? (something like a "DEFAULT PID" button in Arducopter Pids screen)
I think should be removed the phrase "Your RC radio receiver failsafe must be configured correctly for the Throttle Failsafe to work correctly." from wiki.
Alex, low throttle failsafe will have priority over mode change.
During radio failsafe, mode changes are ignored. Only the recovery mode decided by the APM will be active.
But... There is actually a small inconsistency in the code that can change the recovery decision if you change channel 5 at the same time as throttle = 900.
This is because CH5 is observed during 3/50 second after the throttle = 900 event.
This mean that the APM will think that the CH5 "ghost" mode (set by your receiver failsafe at the same time as throttle = 900) is the right mode to decide about the right recovery decision.
For example in some rare cases this could disarm the APM during flight in this very specific and uncommon condition :
- throttle low before failsafe event (you were flying in Alt-hold or Loiter with throttle low).
- radio failsafe occurring (throttle = 900 and switching CH5 mode to acro or stabilize at the same time)
The APM will think that you were flying in acro or stabilize, and will disarm because throttle = 0.
For this reason it is better actually to not change CH5 mode when a radio failsafe do occur so that the APM can decide the best strategy without ambiguity.
This will be corrected soon, a changed CH5 value (at the same time as throttle = 900) will not have any influence on the radio failsafe recovery decision.
According to witch mode is active before the radio failsafe event do occur, the APM will do that :
Acro or Stabilize modes :
- if throttle = 0 -> disarm
- if throttle > 0 and GPS fix is available, home position is set, distance to home > waypoint radius then RTL
In all other cases : LAND.
Auto mode :
- if FS_THR_ENABLED_ALWAYS_RTL is set :
If distance to home > waypoint radius then RTL
If distance to home <= waypoint radius then LAND
- if FS_THR_ENABLED_CONTINUE_MISSION is set : do nothing
All other modes :
- if GPS fix is available, home position is set, distance to home > waypoint radius -> RTL
- other cases -> LAND