smoother ?
ok so just flown 2 missions both completed just fine and included interval photos and video.
is there any way to smooth out the motion of the drone ,it looks jerky in places ,mavic air 2 ,no wind and flown at 5mph max ,orbit was not smooth and when the drone is repositioning its very unnatural looking,normally the MA2 is as smooth as butter .is there anything else i need to do to smooth out the motion.otherwise getting on ok .
Comments
43 comments
I’m not sure if I’m having the same issue. Viewing in the app is jerky. The recorded video is perfect. It’s just when viewing on screen during the mission on Dronelink App it’s not smooth at all. I’m using my same IPad Mini 5 which I always started and refreshed before flight. Same MA2 drone. As I stated, the video comes out perfectly smooth. It’s just viewing FPV on screen. Just some info for review.
no mine is not smooth onscreen but is still jerky on my main video as well..not bad but not silky smooth like my normal MA2 footage is.i was wondering if its the virtual sticks causing it ,i tried another similar software and that is the same...i really slowed it all down but no different.
The other software also had jerky movements? Virtual stick does have inherent limitations, especially if you are in a high RF interference environment. We have an article that discusses many of these points.
Ninja_Geezer do you have any video on your problem? I've think I found a way to get virtualsticks smooth, but it would be nice to see what kind of jerkiness you mean.
Hi mats yes i will try and upload some of the jerky video in the next day or so to youtube .its the rotation of the drone on turns and in orbits very artificial .if i cant get it nice and smooth i am thinking of getting a mavic 2 pro and using litchi i know that works very well no virtual stick nonsense proper way points.
i love the way dronelink works its just the mavic air 2 limitations i believe as DJI never implemented waypoints .a bit disappointed i paid $40 for this when its not working out as i thought it would
Thanks for answering.
I found the reason why virtualstick is jerky. It's fixable, but not easy done.
Here is an example of virtualstick with air2 where is as smooth as I got it sofar. It's not perfect, but it much better compared to the original gimbal settings.
https://www.youtube.com/watch?v=cpSXHx_O0Rk&ab_channel=MatsBohlinsson
I would like to see your film, since I spent over a year fixing this :-)
Its even more important now when dji says they not going to support waypoints on future consumer drones
What was your fix?
I explained it here:
https://mavicpilots.com/threads/waypoints-vs-virtual-sticks.107525/#post-1218537
You are saying this method does not work?
Are you planning to open-source your solution (similar to our code) or releasing it as a proprietary / competitor to Dronelink?
Ahh on I'm on android. It might be that it is working on iphone.
I never managed to set it in free-mode, but if you do, good for you :-)
Nah I'm busy with work right now. My plan is to release a platform where dji-sdk is available to python-scripts. But if wont be very soon, if ever to be honest. My plan was to do a platform where most of the code is made open-source.
I never going to do anything with waypoints. I'm concentrating of more of a programming platform for open source.
Great! If you are willing to share your fix we could potentially integrate it into Dronelink to solve this issue now. Honestly, it sounds like we have a pretty similar vision, except replace python with javascript/typescript (in the case of Dronelink). Have you tried using Dronelink functions?
I havn't used dronelink. I will take a look at it!
I don't want to share anything for the moment. The way I solved things means heavy reverse engineering, far beyond what dji allows. Its still done from the app, but not through the MSDK. That's is for android. I don't know anything about iphone though.
I don't even know if we are having the same root cause,
I havn't seen any film from you app yet, where the probelm is shown.
If I ever release my app, it's key features would be things I discovered while reversing. Like faster speed in virtual sticks, more wind resistance and so on. It will never be any competetion to yours. This is a more for the modding community.
I resume this discussion because now that two MINIs (2 and SE) are finally usable with the SDK, the problem of virtual sticks and shaky movements returns.
Here is a video that helps to understand the problems.
https://www.youtube.com/watch?app=desktop&v=fRPYyuK_eLA
The author, Kilian Eisenegger, says he also calculates the wind to improve the result. He does this using the roll value.
From the github_page:
Speed Optimization
We must adapt speed depending on the distance between 2 waypoints. If the distance is for example 10m you cannot use speed = 8m/s. We must start decelerating speed when we approach the next waypoint. To go smooth we need to start deceleration at the speed/2 when we are at the distance of the speed value. We can calculate the maximum speed = distance / 5. The latency of a small drone is too high when we move only in a few seconds. Acceleration <> Deceleration <> Stop.
I ran this code and saw the same exact stuttering motion that is seen from time to time in Dronelink. In my mind, this just all the more confirms what we have concluded all along, which is there is something going on with the hardware / firmware. We have actually spent countless hours looking into this issue and tweaking it, and we have even done surveys where we put footage from Dronelink side-by-side with competing apps (that people claim are smoother), and ask them to identify which one is Dronelink, and they are unable to consistently choose the correct video (sometimes they think Dronelink is smoother, other times the other apps).
Having said that, this project uses a 20hz control loop frequency with yaw control mode set to angle, and Dronelink is currently set to a 10hz frequency and yaw control mode set to velocity. We have performed many experiments with faster control loops (all the way up to 50hz - which only works on devices with fast processors) and angle yaw control mode, and have not seen any improvements by doing so. We have even done experiments where we just send a constant rotational velocity (to isolate the possibility that the error correction code is causing issues), and the stuttering still happens.
I will make these settings (control frequency and yaw control mode) available in the next version (3.3.0) if you want to experiment yourself - after all, seeing is believing.
I agree with Jim totally. It can't be fixed, since the root cause is in the firmware.
You can easily check this:
Let the drone hover and take one of the legs and shake it (yaw)
In gps-mode the gimbal is dead stable. Not so in virtualstick mode.
I don't agree with Kilian at all.
To my knowledge I think 10Hz is the update freq from the drone. To have a higher update speed can make things worse.
One more thing though. Why some get smooth footage is because it seems to vary between drone to drone. Specially when it comes to slow yaw panning. It can help to do a compass calib.
The only solution I found is to use free gimbal mode, but that involves pretty complex hacking of the sdk, and will violate dji user agreement for developers.
Answering Jim, yes please
"I'll make these settings (control frequency and yaw control mode) available in the next version (3.3.0) if you want to experiment for yourself - after all, seeing is believing."
I would try.
I agree with Mats that the problem is in the firmware however I would like to find the best compromise of various parameters to use with Mavic Air 2 / 2s and Mini2 at least.
Mats, I remember your words written here and on mavicpilots (if I'm not mistaken) where you said to try the differences between GPS mode and Virtual stick and so I did. Actually the Virtual Stick uses some sort of FPV mode or poorly defined gimbal stabilization.
Jim, there is no better software than the other on the Virtual Sticks problem. I have made many comparisons and every time there is a problem on one at random. The variables involved are many, such as the wind, the rotation speed is not exactly the same for the different software ... therefore scientific comparisons cannot be made.
But heck, they might as well fix it in DJI.
I have probably read all the post regarding smoothness over the last year. Overall I have had very good results with my MA2. My MM doesn’t perform anywhere as good as my MA2 especially when doing Orbits or POI’s. Based on my experience using both drones, a smaller, lighter and less powerful drone like the Mini’s don’t work as well even in light winds. I’ve heard others saying that litchi and other apps don’t have this issue but when asked for a video showing the smoothness I’ve never seen someone provide a video link to prove it. Since Jim has tried both apps and they can identify which is which I believe it’s an issue as he stated especially with smaller drones like the Mini’s. Not all but most of the issues I’ve seen have been due to higher winds, drone speed to fast and possibly rotation rate settings which can effect the smoothness. Not sure if it will ever be perfectly smooth while trying to keep it centered on a POI.
Just some thoughts. Good luck, Mike….
These options will be in 3.3.0. If you want to see them in the web right now, you can go here.
New engagement parameters in plan settings ...
New rotation mode option, in Path and Orbit properties panes:
You won't be able to test them in the native app until the first beta build for 3.3.0 comes out in Testflight / Google Play. Should be a day or two.
Thank you very much Jim. I prepared a plan for testing where I mix two paths and one orbit (spiral).
I go around two manufacts in two different ways: spiral and waypoints with pathing straights but corner radius of 30.
I will try with different modes (heading or default velocity) and different control loop speeds ( 10Hz default and 20Hz of faster it depends how my device responds).
The rotation rate is 15°/s - R.A/Deceleration is 5°/s - Speed max 5Km/h
Agree with comments about its the aircraft not the software, I tried every software I could get my hands on a year ago when I had my MA2 and TBH all the same results .I tried every speed going down to really slow its still jerky so I gave up ,I now have the Air2s so will maybe have another go later in the year .but great work and perseverance on the project ,dronelink is the best out there as its so configurable .
Nice. If you continue adding all these amazing function/ features my brain won’t be able to handle it. Lol…
I'm adding my notes from another thread, as it relates to this.
I ran a plan with Air2s, standard controller, and Tripltek 8", running DL 3.3.0. Intervening use of the gimbal wheel was possible, which allowed for some on-the-fly correction.
Changes in yaw were pretty herky-jerky. It wasn't too windy(4-7 m/s) at 50m. I also gave Rotation Mode=Velocity a whirl. Some parts of the video were better, and some worse. It seems to have more rebound, rubber-damped look going on. It's kind of looks like playing a FPS video game with a digital controller instead of a mouse.
Is it all possible to fly the waypoints, but leave the gimbal pitch and yaw in manual mode? The Mini2 can sort of do that stock when RTHing.
https://youtu.be/sQHcXoYEeYs?t=36
That is the meaning of this feature request. I suspect that even if we implement it, you still still see the jerks because I believe the root cause is stuff that DJI is doing to the gimbal in the firmware when v stick is activated.
Hi everyone,
yesterday I tried two identical plans, one with Rotation Mode Velocity and the other with Heading.
In addition, I tried to set the Execution Frequency to 20Hz and 10Hz.
I hope that with kernel version 3.3.0 these last settings are working.
However, after retrospect, the 20Hz Heading looks better.
The wind in flight (seen with airdata) average was 17.7Km/h, gust 25Km/h.
Angle 20Hz: https://tinyurl.com/yckzsj8p
Velocity 10Hz: https://tinyurl.com/2p8vme5h
I'm preparing a video to show the differences
I realize it may be time consuming, but if you want to perform the tests like we did, you need to only change one variable at a time. I can’t tell from your post, but it sounds like you are comparing 20hz heading to 10hz velocity, which isn’t really apples to apples. It seems like you need to hold the frequency constant and just change the rotation mode and then vice versa.
The variables we controlled for were:
In the end, our testing (which took many months) showed these results:
All that having been said, I hope this shows that we have taken this issue seriously for over a year, and spent countless hours on it. We are always open to improving the code, but please realize that it is going to take a lot of proof to get us to spend more time on this and it needs to be as scientific as possible.
Hi Jim,
thank you for the support you are giving me with the opportunity to take the tests.
I have already noticed some differences between angle and velocity exactly as you say in the smoothness of the change of direction.
In fact, where I have seen the best use of the angle, regardless of the speed of the control loop, is in the single orbits but not in the change of direction.
That said, I'll try to understand if the control loop can affect the improvement.
I will not have the opportunity to test with different devices or different drones, but I will certainly make the most scientific surveys possible.
The fact that the Autel EVO II works well suggests that the code is fine as it is and that maybe DJI should help us fix things via firmware.
I will keep you updated if I make further developments.
Thanks for the dedication!
Hi all, It's my very first experience with DL, I have an Air 2s, and I noticed his bad jerky effect, can you confirm that is the same problem you are talking about?
https://youtu.be/S5DAXSfkbV0
see at 0:09 and 0:41
Thanks!
Probably.
I havn't seen it that bad :-), try to recalibrate the compass.
It differ from drone to drone, even the same model. One can be good, others worse.
thank you, next test I'll recalibrate compass
Please sign in to leave a comment.