Home Forums Everything about the Bicopter BiCopter + F3FC + Betaflight

This topic contains 44 replies, has 8 voices, and was last updated by  Cshep70 7 months, 1 week ago.

Viewing 15 posts - 16 through 30 (of 45 total)
  • Author
    Posts
  • #59122

    I think this schematic is the correct one:

    #59140

    Thank you Terje for confirming that the schematic above is the correct one!

    #59154

    Frederoo
    Participant

    Ok, so I verified that the ESC is not dead, just “out of sync” it seems. I’m trying to figure out what that means (I’ve never programmed an ESC that talks serial before).

    Edit: It turned out I just had to press “Write Config” and then calibrate the motor for everything to work! Finally! 😀

    Thank you @david and @jihlein for getting me up to speed with the latest RC tech. 😉

    PS I also got a FrSky R-XSR to use SBus and telemetry, but it turned out my radio only supported D recievers… So a brand new Taranis is on it’s way to me. 😀

    • This reply was modified 11 months, 2 weeks ago by  Frederoo. Reason: ESC working
    #59156

    Terje
    Moderator

    @david, anytime 🙂

    Hope to build a bicopter from existing parts in the coming weeks 🙂

    #59160

    LitterBug
    Participant

    Arrrrrghhhhh… Bicopter mix is missing from the DTFc on 3.5 as well. I was going to throw it on EZbi #1 for some testing. 3.1.7 keeps going in to DFU mode for some reason. Guess I’ll try my old W7 laptop to see if it does the same thing. If I remember right, it handled BetaFlight better.

    LB

    EDIT: My W7 Laptop DOES work better with BetaFlight 3.1.7 than Linux. Not sure why, but for 3.1.7, the DTFc keeps dropping in to DFU mode on linux.

    • This reply was modified 11 months, 2 weeks ago by  LitterBug.
    #59161

    jihlein
    Participant

    DTFc with BiCopter mix……..

    #59164

    LitterBug
    Participant

    Thanks @jihlein !!!! That was quick! The Bi mixer is there AND it works with my linux box too. 😀

    Since I wired 1<>2 and 3<>4, I’ll fix that in the resource mapping.

    Cheers!
    LitterBug

    Edit: Then again… EZBi #1 has everything plugged in. Just reversed the plugs… 😀

    • This reply was modified 11 months, 2 weeks ago by  LitterBug.
    • This reply was modified 11 months, 2 weeks ago by  LitterBug.
    • This reply was modified 11 months, 2 weeks ago by  LitterBug.
    #60164

    Cshep70
    Participant

    So where are we? My BiCopter seems out of sort. If I try jihlein’s 3.5 with Bicopter re-added, is David’s Schematic posted above still good? I paste the diff dump from the Bicopter Shop page tab…

    If not, which Betaflight do I need? Every time it saves and reboots, Custom Airframe crops back in?

    I’m stumped. I’m not nearly as involved as y’all at this level. I normally just build, fly & crash race quads. Only reason I buy RCE airframes is David. He sucked me back into RC after having been retired from it 20 years during his time on the early FliteTest.

    #60165

    Cshep70
    Participant

    I get some errors when I paste in the ‘Starting PIDs’ et al from the Shop page F3FC and jihlein’s 3.5 Bicopter mix:
    # resource motor 1 B00

    NOTE: B00 already assigned to MOTOR 3. MOTOR 3 disabled.
    B00 set

    # resource motor 2 B01

    NOTE: B01 already assigned to MOTOR 5. MOTOR 5 disabled.

    NOTE: B01 already assigned to SONAR_ECHO.
    B01 set

    # resource motor 3 none
    Freed

    # resource motor 4 none
    Freed

    # resource led_strip A02

    NOTE: A02 already assigned to SERIAL_TX 2.
    A02 set

    # resource servo 1 A03

    NOTE: A03 already assigned to SERIAL_RX 2.
    A03 set

    # resource servo 2 C08
    ###ERROR### Parse error

    # mixer CUSTOMAIRPLANE
    Mixer: CUSTOMAIRPLANE

    # mmix 0 1.000 1.000 0.000 0.000
    mmix 0 1.000 1.000 0.000 0.000

    # mmix 1 1.000 -1.000 0.000 0.000
    mmix 0 1.000 1.000 0.000 0.000
    mmix 1 1.000 -1.000 0.000 0.000

    # servo 2 900 2100 1585 100 -1
    servo 2 900 2100 1585 100 -1

    # servo 3 900 2100 1420 100 -1
    servo 3 900 2100 1420 100 -1

    # servo 4 1050 1950 1500 100 -1
    servo 4 1050 1950 1500 100 -1

    # smix 0 2 2 100 0 0 100 0
    smix 0 2 2 100 0 0 100 0

    # smix 1 2 1 -100 0 0 100 0
    smix 0 2 2 100 0 0 100 0
    smix 1 2 1 -100 0 0 100 0

    # smix 2 3 2 100 0 0 100 0
    smix 0 2 2 100 0 0 100 0
    smix 1 2 1 -100 0 0 100 0
    smix 2 3 2 100 0 0 100 0

    # smix 3 3 1 100 0 0 100 0
    smix 0 2 2 100 0 0 100 0
    smix 1 2 1 -100 0 0 100 0
    smix 2 3 2 100 0 0 100 0
    smix 3 3 1 100 0 0 100 0

    # feature -ANTI_GRAVITY
    Disabled ANTI_GRAVITY

    # feature TELEMETRY
    Enabled TELEMETRY

    # beeper -ON_USB
    Disabled ON_USB

    # serial 1 32 115200 57600 0 115200
    serial 1 32 115200 57600 0 115200

    # set gyro_lowpass_hz = 90
    gyro_lowpass_hz set to 90
    # set acc_trim_pitch = -6
    acc_trim_pitch set to -6
    # set acc_calibration = -12,17,47
    acc_calibration set to -12,17,47
    # set mag_hardware = NONE
    mag_hardware set to NONE
    # set baro_hardware = NONE
    baro_hardware set to NONE
    # set rssi_scale = 41
    rssi_scale set to 41
    # set rc_interp_ch = RP
    rc_interp_ch set to RP
    # set min_throttle = 1015
    min_throttle set to 1015
    # set motor_pwm_rate = 2000
    motor_pwm_rate set to 2000
    # set align_board_yaw = 270
    align_board_yaw set to 270
    # set current_meter = ADC
    current_meter set to ADC
    # set ibata_scale = 336
    ibata_scale set to 336
    # set ibatv_scale = 336
    ibatv_scale set to 336
    # set servo_pwm_rate = 250
    servo_pwm_rate set to 250
    # set deadband = 5
    deadband set to 5
    # set yaw_deadband = 6
    yaw_deadband set to 6
    # profile 0
    profile 0

    # set dterm_lowpass_type = BIQUAD
    dterm_lowpass_type set to BIQUAD
    # set dterm_notch_hz = 260
    dterm_notch_hz set to 260
    # set anti_gravity_gain = 1000
    anti_gravity_gain set to 1000
    # set iterm_windup = 50
    iterm_windup set to 50
    # set yaw_lowpass_hz = 50
    yaw_lowpass_hz set to 50
    # set throttle_boost = 0
    throttle_boost set to 0
    # set p_pitch = 60
    p_pitch set to 60
    # set i_pitch = 45
    i_pitch set to 45
    # set d_pitch = 60
    d_pitch set to 60
    # set p_roll = 45
    p_roll set to 45
    # set i_roll = 20
    i_roll set to 20
    # set d_roll = 15
    d_roll set to 15
    # set p_yaw = 40
    p_yaw set to 40
    # set i_yaw = 20
    i_yaw set to 20
    # set d_yaw = 60
    d_yaw set to 60
    # set f_yaw = 0
    f_yaw set to 0
    # rateprofile 0
    rateprofile 0

    # set p_pitch = 60
    p_pitch set to 60
    # set i_pitch = 45
    i_pitch set to 45
    # set d_pitch = 60
    d_pitch set to 60
    # set p_roll = 45
    p_roll set to 45
    # set i_roll = 20
    i_roll set to 20
    # set d_roll = 15
    d_roll set to 15
    # set p_yaw = 40
    p_yaw set to 40
    # set i_yaw = 20
    i_yaw set to 20
    # set d_yaw = 60
    d_yaw set to 60
    # rateprofile 0

    #60166

    Cshep70
    Participant

    I am built to the specs in (pic related). Now I’m fuzzing logic with alcohol so before I decide to just set fire to this, I’m logging off.

    Hopefully someday.

    IT only took me 3-4 hours to get my babytri flying on an omnibus and stock Betaflight 3.5.2 (but it’s easy to find a resource map for an Omnibus)

    I’m not throwing any more good time after bad on this thing. Yeah, it’s the coolest paperweight in my hanger. But I can’t even crash it right now. Great design, awesome build video that’s easy to duplicate, 1/10 setup documentation. Would give 0/10 if I could as what is available is conflicting.

    ARRG. The second pic. David’s layout.

    • This reply was modified 9 months ago by  Cshep70.
    • This reply was modified 9 months ago by  Cshep70.
    #60171

    jihlein
    Participant

    As long as the:

    A)motors are on outputs 1 and 2 and servos are on outputs 3 and 4

    or:

    B)servos are on outputs 1 and 2 and motors are on outputs 3 and 4

    this can be made to work with a few resource commands. Not to start a flame war on which firmware is better, but the whole resource thing in Betaflight is very complicated, made more so by what seems (to me at any rate) an arbitrary channel assignment order from the mixers. Even more so when you add servo(s). It’s much easier in dRonin, but there are different features to each firmware that users prefer. Enough said on that.

    So let us know whether you are wired as A or B above, and which firmware you are using. I know I can get you running in dRonin, I think I can also get you running in Betaflight. With Betaflight, I need to know whether it’s the stock version, or the patched version (although on the patched version I’ve got no idea why it won’t save the BiCopter mixer for you).

    Disclaimer – I’ve only played with Betaflight on the bench, never have flown it or completely set it up. I’ve flown the BiCopter with both the F3Fc and KakuteF4V2 with dRonin.

    See posts 59101 and 59108 in this thread for more info.

    #60263

    Frederoo
    Participant

    @cshep70 So if you built according to David’s schematic, you should have your resources like this:

    resource MOTOR 1 B00
    resource MOTOR 2 A04
    resource SERVO 1 A07
    resource SERVO 2 A08

    You can verify that by typing resource in the CLI. That parse error you pasted suggests servo 2 is not set properly because C08 should read A08.

    I put logical pad labels (black text) on my schematic because I too spent almost a week figuring this out. But it works in the end! 😀 If you have servos working but one (or both) of the motors not, you may need to refresh the ESC config by using BLHeli_32 Suite, here is a nice guide: https://oscarliang.com/blheli-32-esc-fc-passthrough/ It worked for me, hope it works for you too! 😉

    @jihlein The resource mapping in Betaflight seems complicated if you don’t know the logical mappings of pads, I admit. But it allows to use many functions of FCs not as intended by arbitrary manufacturer mappings. That allows me to use Matek F405 CTR or the Kamute F4 v2 AIO on a tricopter. 😉

    PS This post went missing after edit?

    #60478

    Cshep70
    Participant

    jihlein, Frederoo,
    Thank you. I will dive back into this today. I had to walk away from it for a wee. It was frustrating me but I’m ready to dive back into it. Thank you for eli5, I have enough grasp of the systems to be able to work with what you’ve posted. I’ll let you know tonight.

    #60480

    Cshep70
    Participant

    jihlein, my baby tricopter is wired for DRonin, but I usually fly the Omnibus F4SD, which at the time I attempted to build it was unsupported. Only the non-SD omnis are ported 🙁

    I really want to try it, and I am currently wired on the bicopter (pic related). I have a spectrum satellite connected at R1.

    I’m going to push forward with the betaflight load for now, as I’ve lost enough sanity to this build so far I need some redemption and Frederoo has come up with the mapping.

    Edit: Holybro are some of my favorite people in this industry and it broke my heart to learn that I got one of the last remaining F3FCs in David’s inventory when everybody else is moving to the Kakute. If this experiment in your BF 3.5 build doesn’t work I’m switching FCs and coming to dRonin.

    • This reply was modified 8 months, 1 week ago by  Cshep70.
    #60483

    Cshep70
    Participant

    Frederoo,
    Your mapping seems to have *mostly* worked. My Servos are 100%, my motors are 50%. I did connect blheli32 and reflashed to the latest. When I arm the bicopter only MOTOR1 spins. I don’t fully understand what I’m seeing/looking for when I connect my cheap O-Scope to the FC, but when connect Ground-Ground and Feed-MOTOR1 I get a fluctuating digital signal – which seems appropriate. When I move the Feed to MOTOR2 on the FC I just see a DC jump equal to M1’s fluctuating digital. Total flatline.

    My resource settings are:
    resource MOTOR 1 B00
    resource MOTOR 2 A04
    resource SERVO 1 A07
    resource SERVO 2 A08

    But it *seems* like MOTOR 2 is doing something wonky.
    Even though I was able to flash blheli32 *through* the F3FC. Weird as hell. I wish I understood the programming language so I could dig deeper. Any thoughts? My thinking was first motor, but the O-Scope showed output from the ESC was wrong (didn’t match good motor). So I checked the output from the FC, and it’s also different.

    Edit: I didn’t have the issue with BF dropping the Bicopter build with your .hex
    It still thinks it’s bicopter.

    Edit: My $35 Banggood O-Scope is questionable at best for retrieving quantitative values, but it’s perfect for showing waveforms and it is criminally simpler than de-soldering ESCs/Motors/ect…
    I *HIGHLY* recommend it.

    • This reply was modified 8 months, 1 week ago by  Cshep70.
    • This reply was modified 8 months, 1 week ago by  Cshep70.
Viewing 15 posts - 16 through 30 (of 45 total)

You must be logged in to reply to this topic.