Uncommanded Yaw in 700 Heli

Hello all,
I was flying 700 Heli when I encountered uncommanded yaw when trying to make a 90° right turn (as indicated by the RC input in the image below), the rotor-craft went for a full 270° turn to the right. While looking at the attitude (Desired & Actual) yaw plots, it was observed that the controller was providing desired yaw input despite no RC input. Please refer the image below.

Would appreciate any guidance for determining the root cause of this incident.
Thank you

Note: The RC input in the above plot has been normalized to fit along with the attitude curve i.e 360 indicates 0 stick input.

Please post the log from this flights. There’s other things that I want to look at.

Is this a standard kit helicopter or did you make some modifications or build one from scratch? what is the rotor speed for the heli? What was the takeoff weight? What was the ambient wind speed And how was the helicopter oriented to the wind when you lost control?

Please find the logs here

We built from scratch a two rotor coaxial helicopter with rotor diameter of 1.622m running at around 1700rpm with an all up weight of around13kg. We were facing ambient 3m/s wind along rotor-craft’s lateral axis (causing right roll). We have made few modifications to dual heli frame.
Thanks for the response

Thanks for posting the data and the additional info.

Could you share with me the modifications you made to the code? I’d be interested to know why you had to make changes as I thought the changes made with the intermeshing frame supported coaxial frames as well. It did require the coaxial frame to have independent controls for each swashplate.

Please find the modified code:

Inter-meshing code is similar to our modified code and could have also worked but we missed out on that. Thanks for that suggestion. We’ll try flying with it in inter-meshing frame in the future.

Hey @bnsgeyer ,
Was curious to know your insight on the issue and your thoughts on the dual heli frame code?
Thank You.

I think the code looks ok. I would suggest just reverting back to the stable version and using the intermeshing to accomplish the motor mixing for the coaxial.

Looking at the data, it appears that you may not have enough P gain to allow the stabilization to counter the yaw rate when zero rate is commanded. When you command left yaw rate then you help the stabilization to have more authority and are able to stop the rotation.

You can see that the actual heading leads the desired heading, this occurs because we can’t leave the desired get too far away from the actual. This can cause pilot inputs to be interpreted wrong in the pitch and roll axes. So the code is designed to drag the desired heading with it and not allow the two to be more than certain delta apart.
Adding a little ILMI would help as well. The ATC_RAT_YAW_ILMI is the minimum value of the integrator that can be leaked off. It is zero now, so the integrator isn’t allowed to do its job because all of the integrator is being leaked off pretty quickly.

@bnsgeyer Thanks for swift response.
Will implement your suggestions and go for a flight test and update you with the results.