Speedybee F405 Mini Esc passthrough troubles (big time)

I almost lost my mind with a Speedybee F405 WING Mini. I just wanted to share my experience in case someone is hitting the same wall. TLDR; I ended up flashing INAV on my Penguin and there everything works (except Bdshot because it is not implemented of course).

Long story:
I started out with 4.6.1 because I am very new to Arduplane, this is my first plane with Dshot capable ESCs. It’s a AtomRC Penguin and I want it to fly with Arduplane, if at all possible.

It all started with 4.6.1 with passthrough working sometimes for both ESCs but not always. So after reading the happy news about 4.6.2 (passthrough fixes) I decided to flash 4.6.2.

Flashing from 4.6.1 to 4.6.2 build definitely made things worse. I ended up bricking one ESC in an attempt to flash back to blheli_s (from bluejay). Not only that, but also the ESCs seemed like they would not sync at boot.

I had to replace one ESC and then flashed INAV. In Inav passthrough is working 100%. Could flash bluejay (48kHz) again and configure both (I have a bi-plane) ESCs and DShot600 works fine.

I almost lost my mind especially because 4.6.2 was meant to fix passthrough problems. I checked and re-checked the board and my soldering at least 10 times. Read and re-read the dshot and bdshot section of the documentation at least 15 times. I tried every combination possible in settings and none seemed to work. Motor tests were not possible although the motors would spin correctly when armed (disabling all arming checks on the bench). Dshot debug could not communicate with the ESCs logging “short read” errors.

Just to clarify. Things were already working very badly in 4.6.1 having ESCs show up on an off in the esc-configurator. But it definitely got worse with 4.6.2. not having ESCs show up at all or maybe one out of two ESC every 10th or so attempt.

I think the post title “Burning Cash on SpeedyBee” get’s top prize. 2nd place for you :slight_smile:

1 Like

Thank you for the 2nd prize. But… if I may ask. 2nd prize for what?

The way I see it there could be a problem with the F405 WING and F405 WING Mini sharing a build. But please, go on and enlighten me :smile:

It’s just a joke. As was the name NeedyBee I penned. But, that was before they were an Ardupilot Corporate Sponsor (que the laugh track). Their Flight Controllers take up a lot of oxygen on the Forum here but that’s primarily because they are cheap so of course popular with many. I wouldn’t use one, or any F4*, but they are successfully selling a shit load of them so good for them.

*I still have a one flying a Plane I rarely use. The detestable Omnibus F4 Nano “I forget the Rev”

1 Like

Hey Dave!

I see your point. And I get that it might be unnerving to have newbies coming here with cheap hardware and asking you guys why something isn’t working as it should (or not?) :smiley: I just like the idea of getting a project as refined and complex as Arduplane to work on cheap(er/ish) hardware. And the F405 WING MINI seems like a good compromise in features and weight. Why not? I mean, the RasPi used to be very cheap and I had at least one for every generation always working fine.

I do really think there might be something wrong with the build. Because I think that the devs do a really good job and I did see that some testing has taken place. I’m sorry I cannot help to debug further as for now I want to fly the plane and not having it sitting on my bench. As told before it works absolutely fine with Inav.

Having said that I believe that learning (or maybe one day mastering) Arduplane gives me much more options and possibilities to express my nerdyness in the air :laughing:

Especially since I own a bi-plane I wanted to try the very interesting tailsitter option.

But then: How can I trust it in the air, if I don’t trust it on the bench?
P.S. I’ve got a Baby Wing on Arduplane 4.6.2 waiting for maiden. So I’m not giving up on Arduplane, just waiting for a fix or someone who could point me to what I did wrong (apart from buying an F405 Wing Mini). Of course I’d like to work with an F7 or H7, but that’s orders of magnitude more expensive just to try something out on a little wing with just ELRS, GPS, Compass and Baro.

4.5.7 has been working very stable for me
4.6 is relatively new and has tons of new features/ improvements, but that also comes with possible unforseen bugs.

The devs are hardworking and very helpful here (thank you devs), so I’m sure this will be fixed in a couple of weeks. In the mean time you can flash 4.5.7 and start learning and flying from there. Later you can always upgrade to 4.6 while retaining all your parameters.

Oh, and welcome to ardupilot and happy flying!

Come on man, that’s ridiculous. Unless you don’t know what “an order of magnitude” means. So, you believe that an H7 based flight controller will cost you ~$600? In reality some are in the range of $70-$140

1 Like

Dave…

Yea. So “1 order of magnitude” would be a $499 flight controller. “Orders of magnitude”, as it was stated, would buy you a half dozen CUAV X7 + Pro’s…

1 Like

Hi Jimmy!

Thank you very much! I can confirm. Flashing 4.5.7 did indeed fix my passthrough problem. I can now read and configure both ESCs. Motor tests in QGroundcontrol still fail as well as DSHOT TESTS. Motors spin if I arm by bypassing all checks and I guess the plane could fly fine. What I cannot figure out is if Ardupilot reverts back to PWM signaling if dshot600 fails. But since the motors play their melody only once and then have the final chime together I guess that’s fine.

One more question: do you use ELRS? And if so, what signal and telemetry rates do you use?

Thank you again for your help!

Dear Dave and Kevin,

Thank you very much for opening my eyes to even more viable options for Arduplane! As I stated in the beginning, I’m at a very early stage in my path of learning :slight_smile:

Happy flying!

I think 4.6.1 is also supposely pretty stable. I’ve been using them on copter, but haven’t done much testing on plane. I know 4.6.2 has problem with blheli passthrough.

Have you tried using mission planner instead? I highly recommend using mission planner
as ardupilot works best with them. I think some functions in qgroundctrl are not compatible with ardupilot firmware. Qgroundcontrol works best with PX4 firmware.

Be careful with dshot600. If I remember, F405 is not fast enough for dshot600, use dshot300 instead. You can use dshot600 on F7 or H7 boards. Check the message tab in mission planner for debugging and other info.

Yes, I’ve been using elrs on my fleets, both 2.4G and 915M. My favourite setting is 100Mhz full, 1:2 telem, 16ch rate/2. Be careful with telemetry ratio, aim for 50 packets/sec or more. Highly recommend yaapu telemetry if you want to debug on the fly.

There is also mlrs, I find them works faster and better for passing mavlink datas, much better than elrs airport or elrs mavlink. That is if you want to use ground station while flying, if not then elrs with yaapu is good enough.

1 Like

I think there needs to be a way to distinguish between cheap and inexpensive. Matek for example still makes a few F405 boards and we don’t see the complaints about them.

I have a Matek F405 VTOL board running AP 4.6.0 using Dshot 600 and BlueJay ESCs. Things to keep in mind with F4 boards: Don’t get greedy with filters or loop rates. I run my loop rate on this board at 300hz, and my SERVO_DSHOT_RATE is 1khz. This works fine with BlueJay, but wouldn’t be enough for AM32.

2 Likes

I had same problem. Flashed Speedybee Mini software. It was my mistake. Download and flash Speedybee f405 wing software.

Not what I did. I flashed the right firmware. I noticed that WING and WING mini share the same build. The F405 mini firmware is for a 30x30 (if I remember correctly) micro-quad FC. I guess one could use it on a fixed wing but again you would probably need some pdb or even an additional bec for the servos.

Hi Jimmy!

Thank you very much for your help. Mission Planner (sadly under Windows) runs very good although the last stable is quite old.

I did update my escs to bluejay while on 4.5.7, did all configuration and then went to upgrade to 4.6.2. Motors spin even though now in configurator I can find only one esc. But that’s OK for now as the only setting I did change was to turn on motor brakes. Motors spin on arm and I’m ready for my first crash ehmmm. I mean flight of course. This time around I did not enable bdshot as I don’t really need it. Meaning I’m not yet where I would need to tune filters or anything similar. That might change when I start to try to use the tailsitter option. I did see a video on youtube where someone was doing precisely that with the penguin. Hence I guess I could give it a try when I feel brave enough (or it will never happen and I’ll just fly it like it is).

And I even managed to rescue my bricked esc using the C2-method. Fortunately I found the pads and after some microsurgical soldering I was able to flash it with an Arduino Uno. Phew!

Funny consideration: I use the same FC on my Wing with one ESC (the one I rescued) also flashed with blheli and that one works perfectly in passthrough with 4.6.2. Maybe the problem is that I use more than one but less than 4 on my other one?

Your advice about dshot600 vs dshot300 is very good, thank you for reminding me. I use dshot 600 on my mini-quads but with an F7 board.

I will maiden my penguin with 150Hz and 1:2 telemetry ratio. Don’t need to go very far in the first flights. I will get back to you with my results. Yaapu is already on my radio and always very helpful although sometimes the messages about unhappy AHRS are very unhelpful (but that’s a general Arduplane thing I suspect).

For my first steps I will just fly my planes “old school” with a Radio but I definitely want to try some GCS Missions in the future. Maybe you could give me some pointers then? I use a Radiomaster Boxer and I’m not sure about how to configure elrs to mavlink and then have a wifi backpack (if that’s even possible with my boxer). But those questions are for later.

Again, thank you!

Dear Allister,

Without wanting to spark a bigger debate I think that the problems root may be different.

Speedybee hardware has been very reliable to me in the past years flying mostly micro quads (2-3.5 inch). And I would say that you get a very fair deal for 37$.

  • Bluetooth/Wifi Link to FC
  • Supports iNav, Betaflight and Ardupilot out of the box
  • Supports ELRS as well as S.Bus
  • Has more than enough outputs (for my usecase)
  • Power and Voltage telemetry (even though somehow mine are not calibrated very well, at least they show more than 3 times the amperage my powermeter shows)
  • You need to solder very little and they add a cap (very important for clean FPV feeds) and all the breakout cables with enough good silicon cables (meaning they are very pliable and not stiff like those of other vendors)

So for me the problem is that especially me, myself, coming from a completely different world have to adapt and take some trade-offs. But I’m not complaining, I still think Arduplane is the way for me as the level of tweaking and tinkering one can do with it are in my experience matched by nothing else I know so far.

I will keep in mind what you told me about filters and loop rates. I run them all stock. I also think that dshot may be overkill for a fixed wing that is not a vtol as I don’t even use differential thrust at this point. So there is really little work for the engine as opposed to microquads where changes need to happen quickly and precisely to keep the airframe where it needs to be. Not to speak about rpm telemetry for the notch filters etc. etc…

Thank you, too for your advice!

So I did my maiden flight and it was quite terrifying… I started the plane in MANUAL mode into the headwind and almost crashed after a couple seconds but could recover the plane no problem. I then went on to FBWA mode at a ground speed of 92km/h and the plane immediately pitched down to -28°. Yanking like crazy on the pitch stick I barely made it to a pitch of -11° at a ground speed of 130km/h. One second before crashing into a bush I switched back to Manual mode and recovered the plane. Shooting up from -27m to +30m (relative to home) in a couple of seconds. Fortunately I always go to a slopey spot for my maidens as to allow for losses of altitude on the very first launch. Better to have more air under the wings. As I went on flying I noticed, that every time I tried to put the plane in FBWA mode it would immediately pitch down. Even if I pitched up, the plane kept loosing altitude. I managed to land the plane fine the first time and then lost a little piece of my tail on the second landing. Should be fixable.

I did not find the courage to put the plane in AUTOTUNING mode, because there were a lot of wind gusts and the plane got thrown around quite a bit. Am I doing something wrong?

Sounds like some good saves!

Usually this means that the stabilized correction is backwards. When the plane is on the ground and you have it in FBWA, lift the nose and make sure the elevator goes down.

First, use the servo reversal to get the control surfaces to move properly for corrections/stabilization in FBWA.

Second, use the RC reversals to get the control surfaces to move properly in manual mode.

Do it in that order and you’ll save going around in circles get it set up.

Hi Allister!

Thank you again for your help. Sadly that’s not what’s going on. I just tried it and it behaves normally in FBWA. Nose up, tail down. Nose down, tail up. That’s how it’s supposed to be, right?
I suspect the deflection is too little because I did not do an autotune.

I adapted cruise speed and airspeed_max to the values I did see while flying in manual. Maybe the control surfaces did react too little at my unexpected speed of 133km/h nose down pitch. And at that speed even with low pitch down angle the ground comes close very, very fast… Shiver…

Analyzing my flight log I can see that I was pitching up the whole flight. I have my elevator (as it is inverted like demanded by arduplane) at around 1750us the whole time. The flight log says my values for Elevator are:
MIN: 1496
MAX: 1998
MEAN: 1750 ( give or take a few…)

I never get below a value where I would even virtually pitch down voluntarily.

But the FC sets the trim of my elevator servo to 1498 (consistently as I tried a couple of times) as soon as I switch into FBWA. I balanced the cg before liftoff and was quite spot on, maybe a tiny bit nosey because I didn’t want to balance it too perfect or even risk to be tail-heavy… But the fact that my elevator NEVER goes below 1509us even before landing. I must have setup something very wrong??? Also my cruise speed is quite high. I need 70km/h to feel somehow comfortable with the plane…

Maybe I should trim the pitch up a little bit as the plane maybe way too neutral? But if the continuously trim servo option sets a trim almost spot on what it is trimmed already… How can that be?

Anyway I’ll be making my tail heavier. I guess I can afford a couple grams on the back. I’m not looking to break any speed record with this one. Or is there a reason against it?