Warning #1: Compass calibration and reducing interference is far more important than with 2.9.1b
Warning #2: GPS glitches can cause sudden and aggressive position changes while in loiter mode. You may wish to reduce the Loiter PID P to 0.5 (from 1.0) to reduce aggressiveness (see image below of where this gain can be found in mission planner).
Warning #3: optical flow is not supported but will be back in the next release (AC-3.0.2 or AC-3.1.0).
Warning #4: loiter turns does not maintain altitude. This bug will be fixed in AC-3.0.2.
Warning #5: This release has only been lightly tested on Traditional Helicopters.
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 (get it here)
2. Click on the MissionPlanner's Hardware, Install Firmware screen. The version numbers should appear as "ArduCopter-3.0.1", then click the appropriate frame icon and it should upgrade as per usual.
3. Reduce the Loiter and Alt Hold PIDs if you have modified them from the defaults. The modified PID values for the 3DR frame can be seen in the image below.
Note: Nav parameters have been combined with Loiter so do not be concerned if you can't find them.
5. Try out the new version in stabilize mode first, then alt-hold, then loiter and finally RTL and Auto.
Numerous How-To videos are available:
Special Thanks to Marco, DaveC and the large number of testers on the pre-release thread who put 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.
Do you have the log where you did your tune?
I would like to have a look at the Auto Tune tests. It gives me a much better idea about how the frame handles the various rate and position commands.
I am not an authority, but the main problem is the cpu on the board most likely cannot address an increased or larger flash memory.To keep costs down the manuf purposely set these limits to minimize parts and complexity and ultimately costs. the cpu prolly only has so many address lines and most likely cant read any more anyway.
Unfortunately what appeared like lots of memory has become little. Its the 640k should be enough for everyone problem, originally it was but time caught up with that.
Which loggings are to be enabled when we do the autotune? Is it best to do it with only the minimal defaults or with IMU and INAV enabled?
Just have the minimum enabled, Autotune has it's own logs that are enabled with Autotune. Those logs have everything I need to examine the quality of the tune you get.
I'm ready and willing to test the patch.
I don't believe this is being caused by the PID gains. it is just that the new gains are significantly better than the originals and mean the angular reaction is faster than before.
I think the underlying cause of this problem is that your desired position is not being moved smoothly along your curve. This is causing small oscillations in your position error and therefore your velocity request. The small oscillations in your velocity request are differentiated, and therefore amplified, in the feed forward component of the desired acceleration calculation and are then directly converted to angular oscillations.
I can see all this pretty clearly in the NTUN logs. I thought that it might be some sort of feedback from the roll pitch angle via the acceleration back into the position and causing an oscillation that way. But looking closely at the logs the disturbances happen even when there are no roll pitch changes.
You will need to provide a flash log Raefa. But I suspect you are not using ACRO the way it is supposed to be used.
I managed to connect the cli using 3DR radio by connecting within 30s after applying power on the APM. It's with 3.0.1
Ty, I'll try.
I did the autotune over again, since I didn't have the log from last time. Here's the new autotune log attached, then the log of the quick flight with the new PIDs (although no SplineNav, because it's now nighttime here and I didn't want to go far or fast).
Interestingly, the roll and pitch PIDs are nearly the same this time, even though the frame and payload is exactly the same as before. But the autotune completed really quickly this time, whereas it took the entire battery last time, so maybe last time the difference in the values it got for pitch and roll could have been due to the battery voltage difference?
Anyway, I agree with you that the oscillations in SplineNav position error are an issue, although that could probably only be fixed with a faster update rate, running on a faster CPU.
However, there must be something more to it as well, because I get similar jitters (although not as severe) when flying around in stabilize mode as well, as long as I start exceeding about 45 to 50 kph or so.
Sorry, yeah, that's confusing. I haven't used DR on my quad in acro. I have used it a bit on my APM controlled helis, and Octos. I've used it more on airplanes, back in the day.
I thought the standard resolution for PPM was 1uS, ( I should have written uS, not mS). This is not the same thing as digital steps in the the A/D conversion, which I think is what you're talking about? Every channel in the PPM stream is allocated 2mS of space, and typically they use 1mS of that (ie: 1000uS). I'm pretty sure the timing resolution is 1uS. So you get 500uS per side, and if using 50% DR, you'd have 250uS per side. Still seems like more than enough to me. Especially when you consider these are control commands, which are used by the APM to hit target rates. So servo slop, etc, don't come into it. And if you're talking about centering, don't forget those inputs have deadband. So you should have no problem returning to center.
I've never seen a servo with tighter than 4uS deadband anyway. 4uS deadband into 2000uS total, one could say you only have 500 unique positions. But really it's even less than that as we typically use only 1000uS of range. So 250 unique positions. It's even worse with standard servos with about 8uS of deadband, which would leave you with only 125 steps. That's less than 70 per side!
I'm not sure about all this. I could be wrong. Or you drank the high resolution cool-aid. ;) If I'm wrong feel free to set me straight.
No, I haven't, mainly because I don't have a good selection. I have 4 3S 2200 batteries (kinda small) and I have 8 4S 5000 batteries that give me about 20 minutes of flight time which is nice.