@NotFastEnuf Do you have any starting points when it comes to Brushless and the new filters?
Wooo. Exciting. Not flown my Boss like builds for a while while flying the light weight 2S hype train. But a new Boss tune is all the motivation I need to resurrect some brushed builds!
I really only have my 4in to test on currently, and I’m running pass 1 at 90hz, pass 2 at 140hz, and a first order D filter at 70hz or I have also tried a second order D filter at 120hz. I’ve been slowly eeking it towards a typical betaflight setup that I would run if not using the dynamic notch and it’s still clean.
I think it’s really build dependent to be honest and we just need to collect more data and experience. Start with the 2 gyro passes both at 90, and the second order D at 100… Then go from there. If it’s clean bump D 2nd up to 120. Still clean then start pushing the second gyro pass back. Still clean then drop from 2nd order D to a first order but lower the cut to 70hz and then push that back but no further than 120hz.
That is sort of the routine I’m following now but as we know filtering is a trade off. It will be a whole new game when I make D split into 2 passes.
Again consider your build and your goals. If you want no propwash and you’re always gonna run good props vs a tank you can bounce off the ground that will tolerate all sorts of nonsense.
A point of reference … I noticed Vanover’s filters in raceflight during a YouTube video he was featured in … 2 gyro passes 100 and 150hz, and a 2nd order D at 120hz. Keep in mind that’s a pro race rig that may be more focused on tolerating clipping a gate, bending a prop, but needing to finish a race anyway.
Overall, I think we are close to the big boys now with our filter behavior… Gone are the days of “what oddness works for silverware” … And here are the days of what works for quadcopters in general. Makes life easier.
Same blade too and its so awesome before it was horrible you had to use eachine 4 blades but now i can feel the 2 blades hauling again ^^
Thanks. That’s an excellent starting point
Progress continued on crsf last night. I think I fixed a bug that cause it to get stuck in a uart overrun flag clearing loop which I had previously thought was just a system crash. This situation was happening if the FC was powered first and then the tx was powered after.The first packet was partial and caused a uart overrun… Which is normal, and my code was clearing the flag… Again normal, but I was not resetting the frame position to 0… Which just resulted in another overrun and another and so on. I also wrote a crc function and it indeed seems to be working. It’s tossing out bad frames at a reasonable rate and seems to respond to me touching the tx antenna or creating some other type of disturbance in the signal. Last thing to address is frame rate… And I am waiting on a new receiver before I scrutinize this too far. Fail-safes seem to be operating properly on the newest crsf firmware. But I can’t test older versions as my receiver is stuck on the current one and refuses to downgrade. @MontiFPV tested an older version for me two nights ago and it seemed the receiver was continuing to send valid packets at 0 stick positions which tricked my failsafe code. Newest version of firmware seems to stop sending packets when it fail-safes … I think. He also tested frame reate with mixed results… At one point we were right on the money … And at another we were about 2.5 times slower than expected. And we’re not sure what we changed. Lol
Yeah that sounds a lot like a typical day of programming.
Well the low framerate was just bugging the heck out of me… so I broke out the logic analyzer. Found a 1100 microsecond frame as expected … and 20 milliseconds between frames. Yeah, no typo there…20 milliseconds. So it looks like my code may be properly catching all the frames it was getting from a defective receiver. The kind folks at TBS are sending me another one as it is supposed to be 6.7ms between frames… and testing will resume soon. Support like that is why regardless of the product - it pays to stick to reputable vendors.
I flashed a JJRC H67 board with the latest silverware. Done that before with the old E011 and the E011C (santa) boards. They both perform well.
But this one (the JJRC) makes a stuttering/jittering noise and the quad “jumps” a bit up and down when I hoover. It also wants to go to the ceiling sometimes after I started it up an give a bit of throttle. I have no idea whjat the couse is? PID’s? Filtering?
If this is a whoop equipped with fpv camera…
Your issue is most likely caused by a vibration although on rare occasions could be a damaged gyro. If I had to guess I would say bent motor shaft as the new filters tolerate bent props pretty well. Your possible solutions are to either
- Locate the bad component causing the vibration (motor or prop) and change it.
- Increase filtering. I would just enable the motor output filter at 50hz. It is disabled now by default and should be enough added filtering to tolerate anything.
If this is a whoop with no camera … The pids may
just be a little high… Lower them by 10 to 15%
Lowering the pids did the trick. Thanks a lot!
@NotFastEnuf , Sorry for posting it here but here a short clip showing how it fly with broken struts …The new Filtering is really doing his job , sure some propwash but it was due to my frame .
Well the crossfire protocol 5ook to the air last night for it’s maiden flight and everything is functioning normally except that I have not added telemetry to it yet. I’ll probably push that change up tonight so you guys can give it a whirl. I am am testing it on the Alienwhoop Zero but I see no reason it wouldn’t also work on the toy boards … You guys can let me know. I honestly don’t have any left to try it on, so I’m gonna move on to adding telemetry and smart audio next.
I have to take a moment too to compliment hexfet from the deviation tx team. Thanks to his work adding crossfire serial out to deviation, I was able to decline all offers to borrow a taranis and accomplish this on my trusty old Devo 8s. I hope I never have to touch another radio.
Excellent work @NotFastEnuf. From the limited range of Bayang, we’re potentially going to see some extreme distances on these boards. Great work, always pushing Silverware forward.
Got some feedback for the Kalman beta filters, been experimenting with a 6" 2204 on the Dedicated board (and brushless fork). Followed your instructions and have it settled and flying at 90/140hz and and 2nd Dterm at 120hz. I originally tried 1st at 70hz but was getting some resonance and wasn’t able to get D PIDs on roll and pitch to any decent level without horrible throttle/noise. At the moment it seems to be flying really nice and crisp with a lot of P. The previous rough tune was using WEAK filtering but D was quite a bit higher. Not sure if I’m doing it right but motors are cold (it is around 8 degrees here). So far I’m pleased. Now just trying to get Torque Boost at an acceptable level
I like 90/140 gyro and D 2nd at 120 too. That flies very well on just about everything I’ve tried it on.
It seems to work really nice. After a few more minutes testing it looks like I need to start the tuning process again. Any addition of Torque Boost wrecks the tune and sends the quad to the moon. Additionally I have a horrible bounceback on fast flips (it’s a LOS quad) but I think that it’s maybe too much I gain. Will carry on tuning over the next few days.
How much torque boost are you using? My understanding of the theory behind it is that you only want enough to overcome the moment of inertia involved in changing prop speed. Any more than that is going to overshoot the target prop rpm, and result in a oscillations just like P too high. I would personally tune a quad without it, then start adding it in increments of .1 on a high powered brushless. I’d be surprised to get above .5 before it starts overshooting.
What kind of values are you trying?
Also if the bounce back is that big … I’d be inclined to think p is still low? I term relax trends to do an impressive job squashing bounce back if p gets high enough and really keeps us for having to pour on the D to solve it
With Throttle boost I use anything from 0.5-2.0 on my brushed and 1.5 on my underpowered 1s and 3s brushless quads. I’ve only ever had problems with it once with an E011 using predetermined PIDs and dropping D. It was like this 6", it just wouldn’t drop in throttle chop, almost hovering for a few seconds. Yeah, I always tune without TB and then add it in last. The problem is that there’s no overshoot, it’s just the quad taking off to the heavens with TB on.
Without TB the overshoot was occurring. I like running high I gain but on this quad it’s nearly as high as the P. It’s an old habit from before we got Transient windup/I term relax. I’ll lower it first as it’s resist thing to do to check
These are my 4in Pids… I imagine it is pretty similar in thrust to weight ratio although maybe a bit quicker in prop speed responsiveness. In addition to these pids, I put P setpoint weight at 1.0 for all three axis, and i run mix increase 3 and mix decrease 3 both at defined 0.80 limits. I use (.8, .8, .4) for both integral limits and for pidsum limits.
I do not however run any torque boost on it. Maybe I should try and see if it is equally upset by it?
Ack, PID numbers always make me feel like I’m pushing it too high. With this 6" it’s only running 3s, motors are 2300kv and it’s a pretty heavy so power to weight ratio won’t be anywhere near yours. It’s a LOS basher with conformal coating for all weather practice. Off the top of the dome PIDs were
13.1e2 - 13.1e2 - 1.9e1
9.8e1 - 9.8e1 - 7.5e1
4.6e1 - 4.6e1 - 0e1
I tend to push P until I get a few oscillations with direction change and then add D. Will then push P up until D won’t tame it and then dial back. Have a try of TB on yours, would be interesting to see what you find. I was unable to even set TB at 0.5 on this quad, it just wasn’t happy