After adding a sonar I thought the altitude hold at lower altitudes would be good ( I wasn't even expecting perfect) but now the quad just starts descending at a slow rate (seems like as the battery drains it just settles-not sure if its related to the batteries) until touchdown in about 30 seconds. None of the posts I have seen are definitive on how to set up altitude hold for the non engineering types. If there was some kind of guide that directed me to the parameters etc. that are related to the altitude hold that would be a good start. Each post I have seen has a different attempted solution with very few saying they have solved the problem and have excellent altitude hold. It seems to me that the altitude hold is the basic most important feature that is required for most all other features. Until this works the other features are unusable. A simple step by step setup, defining the parameters that control the altitude hold would be a huge benefit. Maybe someone has got their altitude hold to work and has a list of parameters that were necessarily adjusted to make it stable.
What firmware do you fly? Arducopter 2.9.1?
Looks like there was a change in the Altitude Hold Mode for firmware 2.9.1.
The limits for changing the altitude in Altitude hold mode are much narrower than in previous versions.
Make sure your throttle stick is in center position!
Try to add some altitude when the copter starts to descending.
Try also to increase the alt hold gain.
I'm still using 2.8 firmware. I would like to get the altitude hold to at least work a little bit before going to a whole new firmware and starting over. I have tried tuning thr_alt and thr_rate parameters per the altitude hold docs I could find. The thing that bothers me is with all the posts about altitude hold it seems only a very few have gotten it to work well. Does yours work? If so do you have a list of the thr_alt and thr_rate parameters you used on 2.8? Does moving the throttle to a higher position once you have activated altitude hold have any effect?
I tried ALTITUDE_HOLD with sonar using 2.8 firmware, no experience without sonar.
I recommend switching to 2.9.1 firmware.
Altitude hold without sonar is very stable in 2.9.1 using default parameters...
Thanks-if 2.9.1 works very well now and the altitude hold is good I may build up my nerve and try it!
I'm experiencing exactly the same problem using the latest firmware and sonar. Loiter works nicely but the quad slowly descends on altitude hold. The logs seem to indicate it knows it's descending. It's been a very puzzling problem. We've even gone to the extent of changing the code to rely solely on sonar (because previously it was mixing baro alt) below a certain height but it hasn't really had any effect on this problem.
That's bad news if you are using 2.9.1. I was hoping for some improvement in altitude hold since most functions rely heavily on it working properly. With my quad it seems that it may be related to not compensating for the battery voltage dropping. After going to altitude hold and leaving the throttle where it was to loiter, when I switch back to stable it seems to continue to drop at the same rate which could only be the battery voltage since that is the only thing that is changing. I believe I saw somewhere that one of the parameters is supposed to compensate for this, but it doesn't seem as if it is working. I also am checking to see if my throttle for hover is outside of the dead zone as some of the posts suggest that the quad will drop if below the dead zone and will climb if above the dead zone. The thing that bothers me is that the naza, from all accounts, is rock solid in altitude hold and I believe that they don't even use sonar. Before I can use any other features, this has to work.
Sonar is not recommended for altitude hold (nor is it necessary, since the built-in baro does such a good job under most conditions). It should only be used below 5m for terrain following, if required. Sonar sensors are notoriously noisy, so we recommend that you make the modifications discussed at the bottom of the sonar page in the manual here.
In general, if you have a sonar sensor we recommend it be disabled (checkbox in the MP hardware setup page) unless you are specifically doing terrain following.
At this point I am just trying to get either the barometer or the sonar to work. I am having the same issue with the barometer (losing altitude slowly/steadily until ground contact). I added the sonar after a couple of months to see if that would improve the function. I installed the sonar modifications that are suggested and on the bench the sonar seems very accurate. I also have the apm in the enclosure so it should be covered ok. Since both functions seems to act the same I am looking for something that is common to both and the only thing I can see that might be common is a voltage drop. I have noticed that if I switch to altitude hold while slightly climbing, it will hold altitude for period of time before starting its slow descent.
Harley: If you're using 2.9.1, remember that the altitude is "fly by wire" meaning that the throttle controls the height, not the motor speed directly. It should be in the middle (50% +-10%) to maintain altitude. If yours is there and it's still not maintaining altitude, there may indeed be a battery/power issue.
At this point I am still on 2.8 firmware. I am going to try 2.9.1 and see if there is any change. I was a little reluctant to go to new firmware until it had been used for awhile and debugged, but most posts indicate that it is better than the 2.8. My quad may be little overpowered and I will check the throttle position today if the weather is good. Am I correct that if I am below the dead zone the copter may keep descending?
2.9.1 is much better. We fly with it every day. Yes, if you are below deadzone, it will descend.
Thanks Chris. Is there any way to compensate for being below or above the dead zone without mechanical changes (motors,props etc)? Can it be done in the software or parameter settings?