Episodes
Gorilla Whoop Whoop, Episode 1: I Flashed It, I Crashed It, I Rebuild It
Welcome to the jungle
I bought a BetaFPV Air75. It is a tiny whoop: a 21-gram drone with ducted props, a camera, and the survival instincts of a moth. The plan was simple. Charge battery, put on goggles, fly.
The plan did not survive contact with the plan.
What followed was several days of compiling firmware, flashing the wrong firmware, flashing different wrong firmware, and then flying directly into things. This is that story. It is long. So was the process.
The firmware saga, or: three boards walk into a bar
Betaflight is the software that runs on the drone's flight controller. You can download it ready-made. I chose to compile it from source on Arch Linux, because apparently I enjoy suffering with extra steps.
The official Arch guide got me most of the way. The first error was No rule to make target 'arm_sdk_install', which is Linux for "you are standing in the wrong folder." Then I built from the master branch, which is the developers' work in progress. The Configurator looked at it and said, politely, that it did not support firmware from the future.
The real fun was picking the board. BetaFPV makes three revisions of this flight controller with the same name. I found out the hard way, one at a time:
| Firmware target | What happened |
|---|---|
| BETAFPVG473 (V1) | Board came up "UNCONFIGURED" with no gyro. A drone that doesn't know which way is up. |
| BETAFPVG473_V3 | Gyro worked. Motors 1 and 2 worked. Motors 3 and 4 did nothing, which is half a drone. |
| BETAFPVG473_V2 | Everything worked. |
The fix came from comparing pin maps. Every version wires the gyro and motors to slightly different chip pins. On V3, motors 3 and 4 were being sent to pins that, on my board, run an LED and the battery voltage reader. So the firmware was politely asking the battery meter to spin. V2 matched my hardware, the BMI270 gyro showed up, and all four motors woke up.
Lesson one: the board name is not the board. Check the revision before you flash, and always run diff all first so you have a backup.
The setup gauntlet
With the right firmware on board, the drone worked. It just worked backwards.
- Throttle was inverted. Stick all the way down meant full power. I noticed this with the props off, which is the only reason this blog has an author. The fix was on the radio, a RadioMaster Pocket: one channel's direction flipped from "INV" to normal.
- The arm switch was inverted too. "Armed" was off and "off" was armed. At one point the arm range covered the entire switch, so the drone was armed no matter what. Very committed. Not ideal.
- All four motors spun the wrong way. This turned out to be correct. The Air75 flies "props out," and the reflash had erased the setting that tells Betaflight so. One CLI line,
set yaw_motors_reversed = ON, and the software agreed with the hardware. - VTX settings kept undoing themselves. I'd change the video channel in Betaflight, unplug, fly, and it would be back on the old one. The culprit was the radio's ExpressLRS menu, which has its own VTX settings and pushes them to the drone every time it connects. Two things in charge of one thing. Pick one boss.
Lesson two: always test with the props off. The drone does not care about your feelings, only about which number is bigger.
Seeing through concrete (you can't)
I live in an apartment complex. It is made of concrete, steel, and roughly four hundred Wi-Fi routers. All of these are bad for analog video.
My goggles are an Eachine EV800D. The box says 1000 meters of range. The box has never been to my apartment complex.
Here's the technical bit, kept short. Analog FPV video runs at 5.8 GHz. So does a lot of home Wi-Fi, mostly between about 5745 and 5825 MHz. My first channel sat right in the middle of everyone's Netflix. The picture looked like a 1990s cable channel I wasn't paying for.
The fix was trying other channels until I found one that works for me, at 100 mW of power. The picture cleaned up a lot. Walls still win, but now the walls are the only enemy.
Lesson three: the channel matters more than the power. Shouting louder doesn't help when you're standing in a crowd that's also shouting. A note for fellow beginners: in the US, analog FPV at these power levels generally needs a ham radio license, and some channels sit outside the license-free band.
Actually flying
The Air75 has a lot of power for 21 grams. Out of the box, a tiny nudge of the throttle sent it to the ceiling, which it then visited at speed. So I softened things up:
- Throttle curve: a flatter curve around the hover point, so small stick movements make small altitude changes instead of large regrets.
- Rates: gentler roll and pitch, so the drone turns when I ask, not when I think about asking.
- Flight modes on one switch: Angle (self-leveling, training wheels), Horizon (training wheels that let you flip), and Acro (no training wheels, no wheels, no mercy).
The new rates worked really well. Seemingly. I say "seemingly" because a lot of what I've learned about flying, I learned on the ground, upside down.
Which brings me to the hero of this story: Turtle mode. When the drone lands upside down, you flip a switch, arm, and push the stick. The motors spin backwards and roll it back over. No walking, no fetching, no admitting defeat. It was one of the first things I truly mastered. Partly because it is genuinely useful. Mostly because I got a lot of practice.
I crashed a lot. A lot a lot. Into walls, into furniture, into the floor from heights that should not be possible in a room. Turtle mode did not judge me. It just flipped me back over and let me try again.
Damage report
The drone flew through almost all of this. Then it lost a motor, and a quadcopter with three motors is just a very expensive way to spin in place. Here's the full damage report:
| Part | Condition | Verdict |
|---|---|---|
| Frame | Cracked in multiple places | Held together by stubbornness |
| Props | Chipped, bent, torn | Like they lost a fight with a ceiling fan, which may be accurate |
| Motor | One dead | The first casualty that actually grounded it |
| Battery | One might be failing | Under observation |
| Flight controller, camera, VTX | Working | Somehow |
Exhibits A through E





The frame is the part that surprised me. It's a few grams of plastic, and it took hit after hit before giving up. Even broken, it kept the motors roughly where motors go. Whoops are way more sturdy than I expected.
A quick word on the battery, because this part isn't funny. A small LiPo that's going bad usually shows it: shorter flights, voltage dropping fast under throttle, or the pack looking puffy. A puffy battery gets retired, not tested. LiPos with problems can catch fire, and an apartment complex is a bad place to find that out.
Rebuild season
I bought a replacement frame, and the shopping list now includes a motor. The plan is to move the guts over, swap in the new motor, fit fresh props, and start again with everything I now know. Which, compared to a week ago, is a lot:
- How to compile Betaflight, and when not to bother
- That a board's name and its revision are different things
- How to read a pin map, and why motors 3 and 4 were on strike
- That Wi-Fi and FPV video share a neighborhood and don't get along
- That turtle mode is the most important switch on the radio
- That I will crash, and the drone will mostly be fine
The rebuild has its own checklist: motors in the same positions, flight controller facing the same way (arrow forward), props matched to spin direction, a fresh accelerometer calibration, and one more props-off motor test before anything leaves the ground.
So here we are. A new frame. A slightly less new pilot. A settings file I actually understand.
Can I still get better? Am I trash? Will the new frame survive the week?
Find out next time, on Gorilla Whoop Whoop.