Home Forums Everything about everything else Possibility to show your appreciation for Triflight development

This topic contains 31 replies, has 10 voices, and was last updated by  krkljan 3 days, 13 hours ago.

Viewing 15 posts - 1 through 15 (of 32 total)
  • Author
    Posts
  • #36732

    lauka
    Participant

    As per request, I have created a Patreon and Paypal pages for showing you appreciation for Triflight development:

    https://www.paypal.me/lauka
    https://www.patreon.com/triflight

    I have spent hundreds of hours in developing and testing the firmware and enjoyed every bit of it. The community here in the forums has been superb, it wouldn’t have been possible without your help in testing and brainstorming. Together we have made this possible.

    Please consider a small donation if you have found this project useful, thank you all!

    #36749

    lauka
    Participant

    Huge thanks to everyone who donated and pledged! I’m very grateful for your interest and support in this project!

    Thanks go to: @litterbug, Terje and 3 other persons whose nickname I don’t know.

    Motivated from this, I traded some of my sleep last night to start the merge to Betaflight. I got to a good start, the biggest part of the merging is already done. I encountered two things in the PID controller that do not work in the favor of tricopters:
    – Yaw D is completely disabled. In my experience it is needed for tricopter to help accelerate the movement of the mass when starting and ending a yaw move. I changed it to be enabled for tricopters, still need to test how the setpoint weight and relaxing affects tricopter yaw. Is the same setpoint weight suitable for motors and the servo? IMO tricopter yaw needs full error based D.
    – The integral disabling is done based on motor saturation for all axises. This is not the optimal way for tricopters where one of the axises is controlled by a servo (+ a motor). For now I implemented the saturation detection for yaw axis similarly as it has been on triflight (disable based on yaw angular velocity). I will leave it like this for now, after some flight testing we can think of a better way to detect servo saturation. It could be for example based on the servo offset from setpoint. Servo is saturated when it is far away from current setpoint, I term mustn’t accumulate in this case to prevent windup.

    The work will continue with merging the rest of the commits, then with a lot of flight testing and recording blackbox logs.

    #36770

    mcstan
    Participant

    keep up the good work lauka 😉

    #36775

    Dave Mak
    Participant

    Happily setup a patreon submission! Thanks for the great work. Actually, in addition to the RCE-SPF3 Tricopter, I’m looking forward to trying the new Betaflight forked/based triflight on a FliteTest Electrohub Tricopter I had long ago built with a MultiWii board. I’ll replace the MWFC with a spare SPF3 I have.

    #36777

    lauka
    Participant

    Thank you @mcstan, @makattack and others! Really appreciate it!

    I have continued on the implementation. Did first LOS tests today. After some iteration and tuning it worked very well. To my surprise it runs at 8k/4k just fine:). I basically had to revert back to the good old PID integrator disabling, I have tested many other solutions before. This is working the best. The default betaflight integrator behavior doesn’t work for tricopters, causes drift. I will make a video comparing this later.

    I started testing more aggressive low throttle yaw authority while at it. I found out that I could boost the servo angle based thrust correction up to 3x from what it was in Triflight 0.5. What a HUGE difference it made! The LOS testing shows that the baby tri yaws pretty much as good as a quad at zero throttle. My jaw dropped when I saw that 🙂 Pretty sure no-one has seen tri yawing so well at zero throttle before. Exciting stuff, hopefully it works as well in FPV flight.

    You can follow the progress here: https://github.com/lkaino/Triflight/commits/betaflight_merge

    • This reply was modified 3 weeks ago by  lauka.
    #36783

    swissfreek
    Participant

    Sounds promising! Let us know when you have something you’d like us to test!

    #36789

    LitterBug
    Participant

    Good stuff @lkaino . Dropped an order for some more gear from @david so I’ll have a few more variations of gear to test with.

    Cheers!
    LitterBug

    • This reply was modified 2 weeks, 6 days ago by  LitterBug.
    #36794

    lauka
    Participant

    I used some of the support money today to buy a “turntable” from a scrapyard :). I have wanted something like this for a long time, finally I found one. I made it into a tricopter yaw tuning jig, Now it is possible for me to tune the yaw parameters consistently.

    I tested the linear yaw output and fortunately the formulas in the code seem to be correct. I tested the yaw speed at 50% PID output to both directions. The result was exactly the same on both directions!

    I began to tune the dynamic yaw so that I fixed the PID output to 50%. I tuned the dynamic yaw min gain so that the yaw speed was roughly the same from 0% to 50% tail motor throttle range. For some reason the yaw speed is a bit higher at 25% throttle than it is at 0% and 50%, but it’s close enough to not notice in flight I think. Ran out of battery from my laptop when tuning the 50% – 100% range.

    Need to make a video out of this test jig also, it’s pretty cool :).

    #36795

    LitterBug
    Participant

    All this talk of yaw reminds me of when I had the yaw direction backwards on the servo. Found out how perfectly balanced my Baby Tri was when I went to take off for maiden and it went into a perfect hyper spin on the ground. Oh how I wish the camera and DVR would have been running…. May have to do it again sometime just for shiggles… LOL

    Cheers!
    LitterBug

    #36831

    lauka
    Participant

    Made a video showing the improved yaw authority at zero throttle.

    Needs some tuning, it’s overshooting a bit, but the authority is amazing. With the stock Betaflight the copter has no authority at all at zero throttle.

    Unfortunately it’s too cold for FPV testing and tuning still, my fingers are frozen after 10 minutes of LOS testing :).

    • This reply was modified 2 weeks, 3 days ago by  lauka.
    #36834

    swissfreek
    Participant

    Yeaaaahhh I’m getting excited! Nice work @lkaino!

    #36847

    LitterBug
    Participant

    Good stuff @lkaino! 🙂

    Cheers!
    LitterBug

    #36849

    Michael
    Participant

    Awesome work man!!!

    Mike

    #36851

    mcstan
    Participant

    wow very cool 🙂

    #36852

    lauka
    Participant

    I have been flying and tuning 20 or so batteries now in FPV around the yard. I must say that the yaw performance is very good. It wasn’t bad in 0.5 but it feels that it’s more stable now.

    With the added yaw “boost” the copter holds heading quite well even with 0 tri_motor_acc_yaw_correction. Even better is that the tumbling effect when cutting throttle in FFF is reduced a lot.

    I think the code is now ready for 0.6 RC2 release. I just need to do more tuning to find the best default values before that. I’m running at 8k/4k, multishot with gyro lpf at 100hz and D lpf at 110hz. My motors come down cool, even with beaten up props. Not sure if I can set those as defaults.

Viewing 15 posts - 1 through 15 (of 32 total)

You must be logged in to reply to this topic.