B03 FC + fishpepper ESC set up problem

Thanks both Chaotix and Yets for your help.

I checked battery voltage with a voltmeter while silvervise was running and quad on. The voltage is quite precise (SilverVise says 3.93v when my tester says 4.00v).

I had to wait let’s say 5mins on full batt before I could spin the motors with Dshot and signal before gate.

What about Nigelsheffield’s thread ? Don’t you give credit to it ?

I defo give credit to Nigel’s work, he’s the one who first spotted the problem for Silverware. I am running two quads with the pepperfish ESC (one clone), one is running Oneshot without caps/resistors (one signal wire is even running straight from the MCU) and the other quad is Silverlight brushless board running DShot600 where there are no motor caps or resistors. Essentially signal is coming straight from MCU again. Both quads display the same behaviour on full batt and start running up properly at 4.16v.

So all in all, it’s from personal experience that we’re explaining that the caps/resistors are not needed. Have you removed the bits and bobs?

My experience is :

1 ESCs spin motors from full batt on Oneshot 42, signal taken after FETs on motor - pads… But motor spin isn’t controllable.
2 Everything works with Dshot and signal taken from fet’s gates… But Vbat must be lower than 3.8…

Do you think removing FETs and some resistor would improve this ? Right now I was suspecting my signal wires (but may be a bit stupid…)

Please remove the FETs if you’re not planning on going back to brushed on the board. Honestly, you don’t need the FETs, resistors and motor caps. If you remove the FETs you can use Dshot, Blheli Passthrough and you won’t have the issues.

A H8 mini board customized, removed arms, FETs, caps, resistors, running on a clone Pepperfish/TinyF1sh ESC. Same principle

So you mean the presence of FETs could provoque some bad behaviour ?

Likely, yes. If you are getting the signal from the FET gate while the FET gate is still in the signal circuit, it’s likely imo. I’m no electrical engineer though :smiley:

If you can, remove the FET, the 10k pull up/pull down resistor.

I’m afraid of removing the Fets because I will have hard time to put them back on place if needed. As Dshot work well when signal is taken from the gate I guess Fets don’t bother for it… or they act on this voltage regulation but I don’t think so.
What about using a voltage divider to feed the FC with a lower voltage than ESCs ?

Unless you’re planning on making it a brushed board again, you won’t need the FETs ever.

And what if Oneshot reveals to be the way to go ? will it work directly from the MCU ?

Escs only need the signal from the mcu pin no matter what protocol you wish to run. Follow the above advice and enjoy flying. It’s very easy to get bogged down in stuff you don’t need to worry about.

Ok so you advice me to remove the Fets and take signal from the MCU (I guess where FET’s gates were), using Dshot.

I could do that, but then what if I still need to wait for the battery to get under 3.8v to start flying ?

Yup, remove FETs (and resistors), then use the gate pad on board, that’s essentially coming straight from the MCU. Set to Dshot (or even Oneshot), and you won’t have any problems having to wait till 3.8v. Then you can use the Blheli passthrough to connect to ESCs if you have a Arduino nano or other TTL interfaces.

Yaaa !

So finally it seems to fly ! As my ESC have kind of no voltage regulator, I could’nt use Dshot protocol unless my batt would get under 3.8v… So I kept searching on Oneshot.
As Nigelsheffield said that programming by Tx should be active to do the quick calibration he did (see rcgroups 's thread linked on 1st post), I went again with BHelisuite through my 4 ESCs and activated programming by Tx for all. There I noticed that all of them had very different values for min and max throttle. I think I didn’t pay much attention few days before when I unticked programming by Tx. At this time I wrote down values from one of them and thought it was same for all.

I tried Nigelsheffield’s quick calibration of esc that didn’t work I don’t know why. And, finally, I went through all for ESCs again, unticked tx programmation, and set throttle values 1000 to min and 1700 to max. Then in silverware’s dvr_esc.c, I reported those values for min and max and set throttle off to 900. Checked that with “throttle to motor” enabled. Ok, good and linear response. Then tried without… And it flies !! Not well but now I can start learning about tunning PIDs with the good help of SiverVise !

So thanks again all of you for your support, alone I would spend at least one week more on it !

I cannot find any info on what Gyro that B03 uses but something to note about rough motor performance on a build is that a lot of manufacturers of these FC have went from the MPU6050 gyro to the MPU6500. The MPU6500 is more sensitive to noise (vibration) which can be good and bad. Bad because it is more sensitive to vibrations which can cause a lot of issues that seem like PID but are actualy the gyro picking up excessive vibrations which will make the motors run rough and hot. If the FC is hard mounted to the frame and it is using the 6500 gyro it could be picking up the vibrations and causing the issue. To dampen the vibration mount the FC with double sided foam tape. If you can dampen the motors (they sell silicone pads that fit between motor and frame) that may fix the rough running motors. Here is a link to what I am talking about not necessarily the ones you need for your motors but just to show an example of what I am talking about. https://www.amazon.com/EUDAX-Absorber-Vibration-Silicone-Brushless/dp/B0721K5KLW/ref=sr_1_fkmr0_1?ie=UTF8&qid=1546890640&sr=8-1-fkmr0&keywords=brushless+motor+dampening+pads

Hey madman1412 ! and thanks for advice. I’ll check my motor to know if they are hot but to me they spin well (but I’ve no experience with brushless). My B03 is with MPU6050 (have it from september).

Well I tried to stabilize a bit more the quad… motors are not hot but slightly warm under finger. FC is not bolted, just maintained by a rubber. I tried without rubber (just by the wires to ESC and it was also unstable). Increasing P on pitch and roll to 30 worked a bit. Now I can maintain it flying 20cm above the floor. But it always want to go somewhere…
You are right, as I’m beginner I don’t know if it should be stable without any PID tunning…

I don’t know what pid set you flashed but I always use this set as my starting point on small brushless Silverware quads.

//Brushless starting set 2" 3"
float pidkp[PIDNUMBER] = {5.5e-2 , 5.5e-2 , 2.5e-1 };
float pidki[PIDNUMBER] = { 1e-1 , 1e-1 , 1e-1 };
float pidkd[PIDNUMBER] = { 2e-1 , 2e-1 , 0e-1 };

From there I always need to raise P a bit and fine tune the rest as needed but it gives a safe, slow maiden flight.
Also define high strength filtering initially until you have a feel for the build.

I started with Yet’s silverware fork default PIDs wich are like yours if I remember well.

Now I’m around P 40 e-2 for pitch and roll and quad is oscillating a bit. but when I started from default it was not flyable (like shaking along one of the X frame axis)… Also my frame is a bit bent, I mean 1 motor is slightly no flat, maybe here could be the cause of oscillations…

I’m not familiar with Silverware but you say the FC is attached by rubber bands. If the FC is not firmly attached to the frame by either being attached with hardware or some kind of soft mounting it is a good chance that the FC is moving. By looking at the photo above you really should or need to mount that FC properly. Rubber bands and the esc wires are not a good method of mounting an FC. I’m betting if you secure that to the frame properly it will improve if not fix this issue. Those settings that @Chaotix provided should of gotten you within the ball park of flying well with the possibility of having to make some minor adjustments.

Hello there !

I wanted to add an update to this story…

So finally I got it to fly almost properly. I had intuition that the wobbling I was experiencing could be related to compiling the firmware with gcc (read about it at different places on the web). Recently I learn about the availability of other tools on linux (see Silverware Tools for macOS - new version!) and gave it a go.

Now I can fly it, and the quadcopter is controllable, but I’m a bit disappointed as it doesn’t fly higher than 30cm from the ground at full throttle !!

I guess it’s related to having only old E011 batteries to power it. But I wonder if it could also be somewhere related to the amount of power FC keeps to be still able to orient the quad at full throttle… to be continued…