Servers by jDrones

New OS free F4Light HAL


(Marc Dornan) #7

It is not well suited to that size of copter. Betaflight or Cleanflight would be the way to go.

(Andrea Belloni) #8

@ChiangKaishek did you try to tune the PID?
@Marc_Dornan why did you say that is not well suited to small copter? Did you see my video with 140 frame quad with Arducopter?

(Marc Dornan) #9

I may stand corrected then.

Many people (myself included) have not had great results with Arducopter
and small quads. Rate controllers just tend to work better. It has always
been my experience. Even with iNav people tend to notice their little quads
are not as tight as when using Betaflight. That, to me, is just a trade-off
for GPS stabilization. My information may be outdated though.

(rmackay9) #10


Re ArduCopter vs Beta flight, what you say may be true although I suspect for many people it’s just a matter of tuning - the default tuning of Copter is for a mid sized copter while beta flight’s default is probably for a much smaller quad. I’m guessing of course.

The other more significant difference may be the update rate and latency between IMU updates and the outputs to the motors. Copter-3.5 has much lower latency than previous releases and Copter-3.6 will likely be even better.

So I think ArduPilot will fly as well as BetaFlight even on small quads at some point if it doesn’t already. On the other hand, i think people should just use whatever works best for them. BetaFlight is great, it’s GPLv3 licensed like ArduPilot and I have nothing but respect for the great work they’ve done.

(Andrea Belloni) #11

Maybe my answer above was a bit hasty, @rmackay9 has always wise words.
For the sake of truth I have to say that before using Ardupilot on my little 140 quad I was using iNav and it works really good. When I moved to Ardupilot it took more time to get a stable setup but in the end I received more satisfaction and all the extra features that Ardupilot has compared to iNav.

(Marc Dornan) #12

Unlike you Randy, I am no authority. Sounds like it is high time I revisited small quads and Arducopter.

(Tomasz) #13

I have a guestion
Is main port (on revo) coressponding to serial 3
I want to connect naze gps+compass What I have to configure in MP ?

(Andrea Belloni) #14

main port on revo is serial1
naza gps+compass module is only on latest commit from @night_ghost and till now not tested

other modules with gps on serial and compass on i2c works without problems

(Fnoop) #15

I think one big problem is that the tuning values for small (<=250) copters are really tiny tiny numbers, and you need to get round the safety thresholds in some of the GCS. Also the defaults absolutely won’t fly the smaller copters so you have to half or quarter or even more the initial PID values to get them to fly, and the tuning window is much smaller the smaller the copter.
So I suspect Ardupilot will fly these copters really well (it flies my 300 brilliantly), just the GCS, documentation and settings need to be adapted a bit. Suspect very few people using Ardupilot fly things this small.

(Tomasz) #16

THx Andrea.

So if I want to connect gps with i2c mag I have to connect gps to main port on revolution and mag to Flexi port ? Is it correct ? Flexi port is serial 2? What I have to change in serial2 ?

(Andrea Belloni) #17

For Revolution / RevoMini:
Main port -> Serial1 (common use: telemetry)
Flexi port -> Serial2 (common use: OSD)
pin 7,8 (on Revolution) 5,6 (on RevoMini) of RC input port -> Serial3 (common use: GPS)
pin 9,10 (on Revolution) 7,8 (on RevoMini) of RC input port -> SCL, SDA (I2C)


added to first post

(Amilcar Lucas) #18

Can this info please be added to the wiki ?

(Luís Vale Gonçalves) #19

I might have missed some boards, but could any of these boards be used for a TradHeli ? Which ? I didn’t find any that would allow the number of required output channels for it. @anbello @night_ghost ?

(Andrea Belloni) #20

I added both to the first post and to the wiki

(Andrea Belloni) #21

Sorry but i don’t have any knowledge about this

(basti) #22

it’s been quite a while since i’ve last set up a heli, but iirc it requires 5 outputs minimum (3 x swashplate, tail, governor)?
revo and revomini do have 6 standard pwm outs. omnibus flavors likely only have 4 outputs on standard servo-rail, but most do have separate additional solderpads for pwm 5 & 6.

cheers, basti.

(Hugues) #23

This is so cool. I can now upgrade my sleeping FPV racers to Arducopter and get them back to useful work !

(Tomasz) #24

Where can I find file

(Andrea Belloni) #25

Normally on @night_ghost Ardupilot fork, now is not there, I think he is working on this and it will reappear soon.

In alternative it is possible to build it from Ardupilot master:

I built it for Copter on linux following this

follows the Setup section then on the Build section:

for revolution / RevoMini

cd ArduCopter
make f4light

at the end of compilation f4light_Revolution.bin, .hex and .dfu are on the same dir

for AirbotV2 (Omnibus F4 V2 Pro)

[Edit] all that in italic no more needed commit 75180c3 fixed those problems

[in ArduCopter dir]

cd …/libraries/AP_HAL_F4Light/hardware/osd/osd_core
ln -sf …/…/…/support/minimosd-extra/MinimOsd_Extra/Params.h Params.h
cd …/…/…/…/…/ArduCopter/

[a wrong symlink]

then edit the file: …/libraries/AP_HAL_F4Light/hardware/osd/osd_core/GCS_MAVLink.h
and change BetterStream in AP_HAL::BetterStream on lines 23, 26 [this may change with future commits]

then edit the file: …/libraries//AP_HAL_F4Light/hardware/osd/osd_core/OSD_Max7456.h
and change BetterStream in AP_HAL::BetterStream on line 88 [this may change with future commits]


make f4light-clean
make f4light BOARD=f4light_AirbotV2

at the end of compilation f4light_AirbotV2.bin, .hex and .dfu are on the same dir


(night ghost) #26

sorry but I don’t interested in TradHeli so can’t help