I have been running the copter version 3.1.5 in my quad for quite long time now and been happy with it in all aspects, but recently I felt the need to have a second GPS unit + I would like to play with the optical flow sensor so I decide to upgrade to firmware version 3.2.1.
Everything was going well until I decide to test my radio failsafe.
The way that I have it set is as follow:
I use Taranis Radio + X8R receiver. X8R receiver allows me to set failsafe to a user-determined state on lost signal. So in case that I run out of range or for any reason my radio goes off, the receiver will send a signal to pixhawk to set Yaw / Roll / Pitch to center position and Throttle to 50% and channel 5(flight mode) to RTL position.
Additionally channel 6 in the taranis is where I have pitch control of my camera and it is also set to a determined position so I can have my camera pointed to desire position in case that I lost signal.
Regarding to flight modes, I have one 3-position switch set to Stabilize / Alt Hold / Loiter, and one another switch set to RTL.
Well, everything works fine in version 3.1.5.
In version 3.2.1 it doesn’t work. In the flight logs I can see that the receiver set the channel 5 to a value of 1700(RTL flight mode) and the pixhawk sees that but for some reason it doesn’t trigger RTL.
Also, I use the RC10 to control the pitch servo in my camera gimbal and as I said before it’s also set to a pre-determined position in case of signal lost, and it also doesn’t work with firmware version 3.2.1
Once I downgrade back to 3.1.5 everything is working again.
To make things a bit worst, after that I found out that RTL didn’t work I decided to make a simple test, I was hovering in loiter and I added a small input in the YAW and holding the stick in that position I turned off my radio. Guess what happened? The copter kept spinning until I powered the radio again, so I understand that the pixhawk hold the last signal received. What would happen if I was flying forward and let’s say that I didn’t turned off my radio, let’s say that I’m flying far and for some reason I lost signal? Well, probably the copter would keep flying forward until it crashes in somewhere or something.
My QUAD is very light and small but what about this guy (http://diydrones.com/forum/topics/no-rtl-after-radio-failsafe-log-included) flying a 17Kg X8. I’m not 100% sure what happened in his case but I suspect it could be the problem described here.
I wish we could have the attention of developer to clarify why this changes has been made and how can we get those lost functionalities back in the next release 3.3
Please if you upgraded from 3.1.5 to 3.2.1 and you had a RTL triggered in a similar way that I have, please test it before you have to actually use it. Also if you could post your findings here, it would be awesome.
If I’m not misunderstanding all this situation we have to advise people and also find a solution.
For last but not least, I would like to say that I truly admire this open source project and I would like to say thank you to everyone that contributed, and I’m happy that today I had the opportunity to maybe help by in some way.
rc3_1_5-RTL radio off.BIN - in this log the RTL worked when I turned off my radio.
rc3_2_1-RTL radio off.BIN - in this log the RTL didn't work when I turned off my radio.
Obs.: This post does not apply to people that have configured failsafe in any different way than the one specified here. I haven’t test the other failsafe setups in 3.2.1 version.