The DJI Osmo Action

| Comments

This isn’t a review. I don’t have a DJI Osmo Action, and I’m not expecting to buy one, but I’m excited about it. I’m excited that there’s a real competitor to the GoPro HERO 7 Black. I’m excited that the Osmo Action looks like it could be almost every bit as good of a vlogging camera as my Osmo Pocket, and it may even be a good fit on my freestyle miniquads. I’m just excited!

What’s unique about the Osmo Action?

I don’t care about the exact specs. I’ve seen enough sample footage to know that the Osmo Action is a nice video camera. It is at least as good as my Osmo Pocket or a GoPro HERO 7 Black. For most purposes, it sure looks like the Osmo Action is a better camera than the GoPro!

There’s one important feature that makes the Osmo Action unique: it has a front facing display.

When I was shopping for a simple vlogging camera, I knew that I would need to have a screen that I could look at while talking to the camera. The GoPro HERO 7’s HyperSmooth footage is often as smooth as footage using a gimbal, and I would have loved to use a GoPro for vlogging. Unfortunately, there’s no good way to frame up a shot with the GoPro when I’m pointing the camera at my own face.

I don’t know if that front-facing screen is a game changer, but to me, it is a huge improvement!

I almost regret buying the Osmo Pocket

Almost. Just like the Pocket, the Osmo Action is priced at $350. I was shopping for a lightweight, compact vlogging camera, and the Osmo Action would certainly fit the bill. Not only that, but the Osmo Action is the right form factor for strapping it to one of my freestyle miniquads.

I can’t literally use one camera for vlogging and flying. I’m too likely to be breaking the action camera that’s strapped to my 90 MPH rocket of a quadcopter. If I could get away with it, though, I would much rather carry a pair of Osmo Action cameras than carry a GoPro and an Osmo Pocket. I’d gladly strap my vlogging camera to my quad in a pinch!

I don’t think the Osmo Action will be a good fit for an FPV miniquad

Just about the only place I use an action cam is on my freestyle quad. I greatly rely on GoPro’s SuperView. The GoPro has a 4:3 aspect ratio sensor. When you record regular widescreen footage, the GoPro discards the image above and below that 16:9 area.

When you record in SuperView, the GoPro uses the entire 4:3 sensor. It stretches the image horizontally to reach the 16:9 aspect ratio. It doesn’t just naively stretch the image. The area in the center isn’t stretched at all, and the edges are stretched more. This keeps the distortion down while providing a wider field of view.

This looks fantastic when flying FPV, especially when you’re flying fast and in close proximity of objects. I won’t give this up.

You can simulate SuperView in post processing. The Osmo Action will need to have a rather large field of view to coax comparable results out of it, though. I’m not confident that it will be possible to get comparable results, and I’m not sure it would be worth the effort!

The DJI Osmo Pocket is fun!

I’m new to vlogging. I’m not good at it. I may never be good at it.

That said, I enjoy the Osmo Pocket’s face tracking. Even when I’m just sitting here at my desk, I can talk to the camera, and I can move around a bit, and the Osmo Pocket follows me.

The results feel a bit more dynamic. It almost feels like I’m not sitting alone in my office talking to absolutely no one. It gives the illusion that there’s someone present in the room pointing the camera at me.

I don’t know if my viewers agree, but I like the results!

The gimbal almost makes the Osmo Pocket into an adjustable tripod. I can lock it into my car’s cellphone mount, and rotate the gimbal to aim the camera right at me. I don’t have to do that, of course, because the face tracking follows me around while I’m driving!

I think the Osmo Pocket’s motionlapse ability is awesome, but I’m not utilizing it often enough. You can’t set an action camera down and have it track from one angle to another over a period of time. I need to make better use of this feature!

The Osmo Pocket is light and comfortable

I might be focusing too much on the vlogging advantages of the Osmo Pocket, but I suppose that’s to be expected. I bought my Pocket primarily for vlogging!

For handheld use, the Osmo Pocket is quite good. You get to hold it almost like a pistol. You just have to be careful to not cover the microphones or the display! If you were using a GoPro or Osmo Action, you’d have to pinch that tiny brick between your fingers or attach it to some sort of small tripod for vlogging. That isn’t as comfortable.

With the Osmo Pocket, there’s usually plenty of camera to hold on to, and you can keep the screen in view at almost any angle. That’s a nice advantage offered by the gimbal.

Which camera should you buy for vlogging?

If you’re trying to be a professional, neither camera is up to the task. There are folks using large, heavy Panasonic Lumix G85 cameras or even enormous Sony a7R III mirrorless cameras combined with huge gimbals just for vlogging. Can you imagine holding that much weight at arm’s length for 20 minutes?

This might make me sound like an old man, but I don’t enjoy just holding my arm out in front of my face for 20 minutes. I want my camera to be light, and I want it to be easy to carry around.

If you’re vlogging with the Osmo Action, you’re going to attach it to a small tripod for vlogging. This will probably make it marginally more cumbersome than the Osmo Pocket, but I imagine it’ll be a comparable vlogging experience in just about every way.

My favorite feature of the Osmo Pocket is that it literally fits in my pocket. I can go out for a day of flying, and I barely notice it is there. It is also nice that the Pocket can be out of my pocket and recording in less than five seconds—I should test that to see if I’m exaggerating!

I don’t think I could do that with any of my short tripods and an action camera. It just wouldn’t fit in my pocket. I will be sticking with my Osmo Pocket.


When I started writing this post, I was thinking the Osmo Action would be a better camera for just about everyone compared to my Osmo Pocket. Just writing these 1,200 words has changed my mind.

I like the Osmo Pocket. It is small, light, comfortable, and so easily pocketable. I’m glad it is part of my collection of photography gear. Sometimes I have to write things to figure out what I actually think!

What do you think? Are you enough of an amateur vlogger that the Osmo Action or Osmo Pocket are the right fit for you? Which one would you prefer to use? Let me know in the comments, or stop by the [Butter, What?! Discord server][bw] to chat with me about it!

RAID Configuration on My Home Virtual Machine Server

| Comments

I didn’t think the low-level details of my virtual machine server’s disk configuration is a terribly interesting topic, but I get asked about it quite often, so I figured that it might be time to document it!

NOTE: I’m planning to post a video on YouTube related to this post. I’m going to recreate my KVM server’s setup in a virtual machine. I’ll jabber about what I’m doing as I’m doing it, and I’ll be able to grab screenshots of the various steps. The device names won’t quite match up, but I can massage things to match my actual setup. I’ll be adding those screenshots to this blog when they become available!

NOTE: I recorded a rough draft of that YouTube video. I made lots of stupid mistakes, did things in the wrong order, and had to backtrack to make corrections. I took notes, though, and I’m ready to record a better video. I’m doing a bad job, because I took those notes two months ago!

Choosing your RAID configuration

Writing this post got me thinking a little. Are folks having trouble trying to decide what sort of RAID configuration to run on their homelab or home NAS servers? I decided to write a whole mess of words about choosing a RAID configuration and posted it over at Butter, What?!

The article at Butter, What?! is rather long and detailed. You don’t need to read it. You should probably be running RAID-Z2 or RAID 6. If you think I’m wrong about that, go read the article and tell me why!

Where does the operating system live?

My server has a pair of 240 GB Samsung 850 EVO SATA SSDs. At the time, these were just about the smallest SSDs you could buy that also had good performance. I knew this was much more space than my Ubuntu installation would require, but I knew I would be dedicating the majority of these SSDs to an lvm-cache. We’ll talk about that later.

I didn’t do anything remotely fancy at this point. I simply used Ubuntu Server’s install utility to create a 30 GB partition at the beginning of each drive, and I told the installer to use those partitions in a RAID 1 configuration, and I had the installer create an LVM Volume Group (VG) on top of that RAID 1 array.

I didn’t have to use the LVM layer on the RAID device where my operating system is stored, but LVM gives me flexibility. If I do something stupid, and I fill up that 30 GB volume at some point in the future, it will be easy to expand it using LVM!

My host operating system is not encrypted. I only encrypt the storage used for the virtual machines, and I don’t use any swap space.

When the server boots, I have to SSH in and manually run a short script that unlocks the rest of the storage, mounts anything that needs to be mounted, and fires up all my virtual machines. Someone has to enter the passphrase to unlock the LUKS encrypted devices, so I can’t start the virtual machines automatically.

Why not use full-disk encryption for the host?

Full-disk encryption is a bit of a misnomer. If a machine is going to boot, something has to be left unencrypted. You can get tricky and use a removable USB disk as your boot device, but that introduces its own problems.

These days, it is possible to have GRUB load a kernel and initrd from an encrypted disk. Traditionally, a LUKS encrypted machine has an unencrypted kernel and initrd on your boot partition.

In either case, I would need a way to unlock the disks, and I don’t have a monitor or keyboard plugged into this machine. There are some tricks you can play by loading the Dropbear SSH server in your initrd. That still leaves you with an unencrypted SSH server anyway, right?

Leaving the entirety of the host operating system bootable without unlocking the rest of the system doesn’t leave me much more vulnerable. This server is up and running 24/7. Disk encryption isn’t protecting me from remote attackers. My VMs are useless if they’re left encrypted, so if they’re running, they have access to the encrypted data.

Encryption is protecting me from physical theft. If someone breaks in and hauls away my hardware, whoever they sell the stolen goods to will not have access to my data. That’s 99% of what I’d be worried about.

What is the biggest flaw of this encryption strategy?

I’m probably leaking some sort of data on my KVM host. The config files for all my VMs are stored unencrypted, so if someone steals my hardware, they know the names of all my virtual machines. There are log files storing things like my SSH session information, so the thief can find out when I logged in.

It would be simple to disable logging and move all the libvirt configuration data to the encrypted file system.

If your desired level of paranoia requires you to hide this sort of information, you should just take the extra steps and encrypt as much data as possible. It is better to hide everything, because it is easy to accidentally let something leak!

Storage for the virtual machines

When I set this server up, I manually created a two disk RAID 10 array. Yes, Linux’s MD RAID allows you to create a RAID 10 array with fewer than four disks. Converting a RAID 1 to a RAID 10 is a real pain in the neck. Adding additional disks to a small, existing RAID 10 is easy. Planning ahead is smart!

I run a LUKS layer on top of the RAID 10 array. You could do it the other way around, and put a LUKS device on each disk that makes up that RAID device, but your server will have to calculate AES for each disk. If LUKS runs on top of the RAID 10 instead of underneath, it will consume half as much CPU.

I run LVM on top of that LUKS device. Some people prefer to use Logical Volumes (LV) as block devices for their KVM virtual machines. If I had any virtual machines that required optimal disk performance, I would do the same. My requirements are quite light, so the majority of this Volume Group (VG) is allocated as an ext4 partition mounted at /var/lib/libvirt/images.

I tend to use qcow images for all my virtual machines. They’re easy to back up. They’re easy to duplicate. They’re easy to shuffle around from my server to my desktop or laptop. They can also be deduplicated, though I don’t use that feature often anymore. For me, the convenience is worth the decreased disk performance.

Tell me more about this oddball implementation of RAID 10!

Linux’s MD RAID 10 implementation is designed to keep a copy of each block on two separate disks. Of course, you can configure it to keep more copies if you like, but we’re just going to talk about what it does when keeping two copies.

If your RAID 10 has two disks, this works exactly like a RAID 1 mirror. If your RAID 10 has four, six, or eight disks, then Linux’s RAID 10 functions exactly like you’d expect a RAID 10 to work.

It gets more interesting when you use an odd number of disks. I currently have three 4 TB 7200 RPM disks in my RAID 10. A copy of the first block of data is stored on disk 1 and disk 2. A copy of the second block is stored on disk 2 and disk 3. A copy of the third block is stored on disk 3 and disk 1.

This staggering of your data repeats until you reach the end of your disk.

Why RAID 10? Why not RAID 5 or RAID 6?

I am certain that I could dedicate an entire blog post to this section, but I’ll try to keep it down to a handful paragraphs!

First of all, don’t use RAID 5. Once hard drives started pushing past a few hundred gigabytes in size, the odds of encountering a read error during a RAID rebuild quickly started to approach 100%. Also, failure rates are high enough that the odds of a second disk failing while an array is rebuilding make me uncomfortable. You should have two disks’ worth of redundancy.

RAID 10 performs better than RAID 5 or RAID 6. The differences in performance characteristics are more complicated than that, but I’m trying to keep this to a few paragraphs. I wasn’t too concerned with the performance, especially since I was planning to use lvm-cache. The performance advantage helped lean me in this direction, though!

I was more concerned about my initial costs. My largest VM was going to be my NAS, and I had only about 1 TB of data that needed to be stored there, and my RAW photo collection was only growing by 5 to 10 GB per month. A pair of 4 TB disks in a mirror would have me covered for a long time.

RAID 6 would give me more storage for my dollar over the long term, but I would have had to buy four drives right away. In my case, though, it would have cost a lot more up front!

Odds are that the math will work out different in your case!


I had to stop writing when I got to this heading. My lvm-cache configuration is a bit off. We didn’t have lvm-cache when I set this up originally. We had to use dm-cache directly; lvm-cache is a convenience layer on top of dm-cache. lvm-cache requires the cache devices to be a part of the volume group that you want to cache, and I’m not set up to allow that!

I have one Volume Group (VG) built on my SSDs, and a second VG built on my RAID 10 array. I can’t easily shrink my SSD VG, so I cheated. I used a Logical Volume (LV) on the SSDs as another Physical Volume (PV) that I could add to the RAID 10’s VG. You have more information than I did when I built this, so you can avoid this workaround!

I also forgot that I’ve had my lvm-cache disabled for almost an entire year! I recall having to turn it off around the time when we moved into our new house, but I don’t specifically remember why.

I just set my lvm-cache back up—that’s why I had to take a break from writing! I can’t properly explain how I set up my cache layer, because my setup is extra convoluted.

I’m also not prepared to tell you how much value there is in running lvm-cache. I remember being disappointed for a number of reasons, but that was over a year ago. I’m sure progress has been made, and I know the usage of my NAS VM has shifted quite a bit over the last year.

I’m going to let the cache populate itself, and I’ll report back in a few weeks!

What should I have done to make using lvm-cache easier?

I should have added the SSD RAID 1 and the spinning RAID 10 arrays to a single VG. I tend to dislike doing this. Putting different classes of storage in different VGs is a good mental abstraction, and it means you’re less likely to accidentally create an LV on the wrong grade of storage.

I don’t want to accidentally put a PostrgreSQL server’s database files on a RAID 5 with its slow write speeds, and I don’t to put my NAS on an expensive NVMe RAID 1! When both arrays live in the same VG, you have to explicitly state which Physical Volume (PV) you want to use when creating your LVs.


I hope you found this interesting. My disk configuration may not be the right choice for you, but I hope that the description of my setup might make you think of some possibilities you hadn’t considered before!

I’ve had this setup running since 2015, and it has been faring quite well. It started with the pair of 4 TB disks in a RAID 10, and I added a third disk to that array last year. I don’t expect to make any major changes, and it won’t surprise me if I continue to use this setup for another four years!

I did my best to include the right amount of detail in this overview blog. Do you think I should dive deeper into any particular aspect of this setup? Do you have any questions? Leave a comment below, or stop by the Butter, What?! Discord server to chat with me about it!

We Are Working On an Open Source LED Board

| Comments

I’ve had an idea stewing around in my head for years. It started when I saw a Dekatron posted on Dekatrons are high-voltage vacuum tubes, but they seem easy enough to emulate with LEDs. There are all sorts of things I could indicate using a ring of LEDs!

You could use it like a clock. You could use it as a progress bar. You can spin it around at various speeds. A Dekatron seems like a lot of fun!

At the time, I wanted to replace the lock indicator LEDs on my IBM Model M keyboard with three tiny Dekatrons. I never did, but I also never stopped thinking about what I would do with a ring of spinning LEDs.

We’re going a bit bigger

Brian has been building and giving away custom DIY NAS servers for years. We were chatting about it one day, and we were thinking that we need something of our own to use in those builds. Then we completely forgot about it for a few months.

Then I remembered my obsession with Dekatrons. Why not design some LED rings to put into a 5.25” drive bay in your server? The LEDs could spin to indicate network traffic. They could light up like a progress bar to indicate disk utilization. They could flash red lights to indicate a drive failure!

OoberLights Prototype PCB Front

NOTE: I didn’t even remember seeing real Dekatrons mounted in a 5.25” drive bay on Hackaday until I was attempting to find that old article that inspired me many years ago. I don’t know for certain that this is the project from my memory, but I’m betting that it is. It looks like I’ve circled all the way back to the beginning!

I don’t know how to design a PCB. Brian doesn’t know how to design a PCB. So what do we do? I happened to talk to a friend that’s been dabbling in this sort of thing as a hobby.

In the end, we thought up something pretty cool!


We decided to use WS2812 RGB LEDs in the ring. This opens up all kinds of neat possibilities. The disk-utilization progress bar can be blue. The spinner for incoming network traffic could be red and spin clockwise. The spinner for the outgoing network traffic might be green and spin counterclockwise. Maybe the spinner could be a bright, white LED with a red and orange trail following it!

My vision only included fitting a pair of simple LED rings side by side, but my friend is more ambitious than me. He decided to include concentric rings of LEDs! Both discs of LEDs is now three concentric rings, with fewer LEDs in each ring as you approach the center. He also included a single LED at the center.

This is awesome, but it has made my job more complicated. I was ready to display some useful data about your server on a pair of simple rings. To utilize all these extra lights, I am going to have to get creative!

We’re no longer limited to spinning. The OoberLights can pulse in and out. They can also be used to crudely simulate the hands of a clock. I’m even wondering if they’re dense enough to display a simple font. This is going to be so much fun!

OoberLights can sit on your desk or on a shelf!

Some people put their computers on display prominently on their desks. I’m an old man. I’m used to my computer being a plain beige box, and I don’t want it cluttering up my workspace, so I hide it on the floor. I don’t want my OoberLights hiding somewhere behind my desk or on the floor!

We’re going to design a small display case as well, so you can place your OoberLights right in front of your monitor or up on a bookshelf.

How is it going to display anything useful if it isn’t connected to my computer?!

I thought it was important for the OoberLights to have WiFi connectivity, so we’re using an ESP8266 microcontroller. We are going to allow you to control the lights via WiFi using an HTTP REST interface or directly over the USB port. The USB port will also be used for power.

How do you control the OoberLights?

My expectation is that the software will get fancier over time, but I have some plans for how we’re going to get started.

I don’t want you to have to know how to write complicated code to get the OoberLights to do something interesting. I want them to be able to do fancy things right out of the box.

We’re planning on having simple text commands to control things like progress bars, spinners, and other things. I want various bars and spinners to be able to be active at the same time. You’ll be able to give it commands along the lines of, “display a blue spinner at 60 RPM,” or “give me a green, clockwise progress bar from 0% to 33%,” and the device will render these for you.

If you’re a UNIX junkie like me, this will make it easy to string a handful of commands together and pipe the correct command over the USB serial port to the OoberLights to display exactly what I want.

I expect that one of our first projects will be designing some sort of open-source agent to run on Brian’s FreeNAS boxes to push useful information to some OoberLights.

Everything will be open source!

I haven’t talked about which license we will be using, but the hardware and software will definitely all be open source. We don’t even have our first prototype built yet, though, so this may take a little while. We have no idea what we’re doing!

The first prototype is close!

I’ve gotten a few recommendations on local shops than can manufacture our prototype OoberLight PCBs for us. I thought about ordering PCBs and all the surface mount components and soldering them onto the boards myself. I know I could manage to solder a few components on, but there’s 90 LEDs on each board, and nearly as many other individual components as well! This is beyond my skill level.

We’ve never designed anything this complicated before. I’m having an experienced friend check it over, but even so, what are the odds that the first prototypes will even be functional? We don’t know! It’ll be fun to find out!

What’s the timeline for a release?

Who knows! I’ll be excited if we can be manufacturing real OoberLights in time for Brian’s next DIY NAS giveaway. It sounds like his next EconoNAS giveaway may be less than six months away. Do you think we can do it in time?

What needs to be ready by then?

The hardware needs to be finalized, of course. The possibilities for animations and things that the OoberLights can do seem nearly limitless. We can’t implement everything in version 1.0 of the firmware. We’ve thought of a lot of ideas already, and I have a feeling those ideas are only the tip of the iceberg.

We need easy firmware updates. It looks like it won’t be difficult to allow firmware updates over HTTP. We’ll see how that goes in practice. If we have to plug in for firmware updates, I won’t be too disappointed, though.

To be ready to ship, the OoberLights need to be controllable over both WiFi and USB, and they need to be able to display multiple spinning indicators and progress bars simultaneously. I think that will be a pretty awesome start to the project!

How much will the OoberLights cost?

This is a very good question. I wish I had a good answer!

We have a rough idea of what the components cost. I have some guesses as to what the prototypes will cost—they won’t exactly be cheap!

I don’t know what quantities we’ll be ordering yet, so I don’t know what sort of volume discounts we’ll be able to get. The more people that are interested, the better the pricing will be!

What do you think?

Do you want crazy, spinning blinkenlights on your desk or in your PC case? I sure do! I want one in my virtual machine server. I want one in my workstation. I want one on my desk keeping count of retweets and visitors to my blog!

If you think this is interesting, let me know! Leave a comment. Tell me about what I’m forgetting. Tell me if you want one. Stop by the Butter, What?! Discord server to tell me about it. The more interest we see, the more we can order, and the better the pricing will be for us and for you!

I Roasted Coffee and I am Drinking My First Cup!

| Comments

My air popper and 4-pound coffee bean sampler arrived today from Sweet Maria’s. I have no idea what I’m doing, and I am impatient. I opened the box as soon as it arrived, then I unpacked the air popper, plugged it in, and loaded it up with some green coffee beans!

My first batch of roasted coffee!

That was about four hours ago. I’m supposed to wait at least 24 hours before brewing coffee, but I’m not that patient. I roasted about 50 grams, and it takes a little over 20 grams to pull a double shot of espresso. What if 24 hours went by, and I learned that my grind was way too coarse or fine? I’d only get two tries, then I’d have to wait 24 more hours.

I didn’t want that to happen, and I was impatient.

How does it taste?

The sampler came with four one-pound bags of coffee beans each from different parts of the world. I decided to do my test roasting with the beans from Costa Rica. I’ve had good coffee from Costa Rica in the past, but it was the least exciting of the four, so I wouldn’t mind ruining it!

I just finished my single-shot latte, and it was delicious. I roasted just about as light as I could. I’m weird, and I enjoy espresso made from light-roast beans. I’ve even adjusted the pressure on my Rancilio Silvia to help pull successful shots from light roasts!

I finished a bag of Kenyan beans from Craft Coffee earlier in the day. These freshly roasted beans from Costa Rica definitely made a better latte. I’ve been working my way through those Kenyan beans for a week, though. I can’t expect them to be comparable to beans I roasted a few hours ago, right?

What’s in the sampler?

There are the beans I already tried from Costa Rica. Then there are dry-process beans from Ethiopia, honey-process beans from Sumatra, and also a bag of beans from Kenya. I’m assuming since it isn’t specified that the beans from Costa Rica and Kenya are both wet process.

The beans in all four bags are quite small. I don’t know what determines the size of a coffee bean, but I do know that all the best roasts I’ve ever had all had small beans. I’m assuming this is a good sign!

I’ve always enjoyed dry-process beans, and I’ve never had an Ethiopian bean that I didn’t like. I’m looking forward to trying that bag and the honey-process bag from Sumatra.

Green coffee beans are weird

I’m used to opening a bag of recently roasted coffee. There’s a certain aroma that I expect. When that aroma is accompanied by fruity smells, I know it is going to be delicious.

Green beans smell weird. The bag of honey-process beans has a slightly different smell, but I wouldn’t be able to tell the other three apart. I am not a fragrance expert. I can’t explain what these bags of beans smell like. I can say that they don’t smell appetizing!

My first roast

I have a vague idea of what I’m supposed to be doing. Don’t load too much coffee into the air popper. The beans need to be spinning around in there.

I’m aware of the concept of the beans cracking during roasting. I guess light roasts start just before the first crack, and dark roasts are stopped after the second crack. The cracking was much louder than I expected!

One of my lattes

I stopped my first small batch well into the first crack. That was at after roughly four minutes of roasting, and the beans looked a little darker than I was hoping for.

I stopped the second batch shortly after the cracking started—a little over three minutes of roasting. These were just about as dark as the first batch.

I didn’t measure each batch, but I think the first batch was a bit smaller than the second. When I combined my first two batches together, the total came in at around 50 grams.

Thoughts so far

The coffee tastes good. Roasting doesn’t take long, and it isn’t a lot of work. The beans are delicious and inexpensive. Learning about roasting is going to be a lot of fun!

It takes me roughly six minutes to make a double-shot latte with my Rancilio Silvia. It would be awesome if I could roast tomorrow’s beans while making today’s latte. Even if I do one task after the other, it won’t take much more than ten minutes. There’s some waiting involved in my latte-making process, though. I wonder if I can shave a few minutes off that time by interleaving the steps!

What do you think? Have you tried roasting your own coffee beans? Are you interested in giving it a shot? Leave a comment and tell me about it, or stop by [the Butter, What?! Discord server][bw] and chat with me about it!

I am Going To Roast Some Coffee Beans!

| Comments

I became interested in the idea of roasting my own coffee a long time ago. Green beans are inexpensive, and roasting seems like a fun and relatively painless process. I have to blame my friends at Craft Coffee for my waning interest in the idea.

Brian gave me a 6-month subscription to Craft Coffee in 2014. The coffee was amazing, and I quickly noticed that they had an awesome deal. Every subscriber has their own coupon code. The coupon gives the new customer 15% off their order, and if you use my code, I get a free bag of coffee. By the way, my code is pat1245!

A Craft Coffee Latte

I’m not rolling around in piles of cash made from Craft Coffee coupon use, but my readers are taking enough advantage of my 15% off coupon to keep me drinking free coffee. I haven’t had to buy any coffee since 2014!

Free coffee has deterred me from ever putting much thought into venturing out into roasting, but a couple of happy accidents have inspired me to give roasting a try!

Air popper at Sweet Maria’s

I had some serious health issues over the summer. Since then, one of the snacks I eat more than anything else is popcorn. I put some awesome hulless popcorn kernels from Amazon into my ancient air popper, and I cover them with delicious Kerrygold Irish grass-fed butter.

My air popper has a problem. It blasts the air straight up. This is fine when you fill the popper to capacity, but I only fill it about half-way. I’d like to fill it just a bit less, but when you put less popcorn in, more kernels get ejected before the popping begins—even when I tilt the machine back to help prevent this!

I roasted some beants, but I haven't tried them yet!

When I was a kid, we had an air popper that blew the air in a spiral. Kernels didn’t shoot straight up. Instead, they would spin around in a cyclone until they popped. I need one of these air poppers, but where do I get one?

That’s as far as I got. I didn’t even remember to shop around for such a thing. A few weeks after thinking about my old popper, I accidentally stumbled on the air popper on They’re only $20 plus shipping, and it works exactly like my old air popper!

Sweet Maria’s popper comes with $20.50 worth of free beans?!

I’m impatient, so I looked for a similar popper on Amazon. They were $28 with Prime shipping. I said to myself, “Huh. I wonder what Sweet Maria’s charges for shipping?”

That’s when I noticed the best part of the deal: the popper at Sweet Maria’s comes with a free 4-pound sampler pack of green coffee beans! Even better, Sweet Maria’s price with shipping is almost exactly the same as what I’d pay at Amazon.

How could I pass up this deal?


My order is still a few days away from being delivered, but I’m too excited, so I just had to write something about it. I’ve been wanting to try roasting my own beans for years, and I’m finally getting the opportunity!

How easy do you think roasting will be? Do you think I’m going to mess it up? Will I enjoy it more than the beans from Craft Coffee? If I include my labor, do you think it will be a better value than Craft Coffee? I have my doubts, but I’m excited about finding out! Let me know what you think in the comments, or stop by the [Butter, What?! Discord server][bw] to chat with me about it!

The Betaflight Settings I Paste Into All My FPV Drones

| Comments

I’ve been replacing the Helio Spring flight controllers in my 5” freestyle quads, and I’ve been building and repairing a couple of HD micros over the last few months. I had to configure Betaflight on all these quadcopters when I set up the new hardware, then I had to configure them all again after Betaflight 4.0 was released.

I don’t manually reconfigure each quad by hand. I always save a diff before upgrading a quad. If I’m upgrading from Betaflight 3.5.1 to 3.5.3, or from one nightly build to another, I’ll just paste that entire diff in after flashing. It’ll be back up and running in seconds.

My 4-inch Kestrel Build

You can’t just paste you diff back in when upgrading from 3.5.3 to 4.0. The new version just doesn’t fly the same. Settings that may have flown well before may fly poorly in 4.0, or they may even smoke your motors!

What about setting up a fresh quad? Can you just paste a diff of one of your other quads in and call it a day? Sometimes you can, but I have a special diff file set aside. I’ve pruned out all the PID, filtering, and serial settings. All that’s left are the settings that should work on all my quads: rates, switches, Crossfire settings, and OSD settings.

I’m going to walk through which settings I keep, why they’re important, and why they work well on every quad in my bag, from my TinyHawk to my 5” Flowrides!


I used to paste in settings related to PID loop timing, ESC protocol, and minimum throttle. Those settings vary too much between my various builds. My blheli_s builds may use DSHOT600 or Multishot, while my blheli32 builds always use DSHOT1200. I usually have to fix it anyway, so why bother pasting it in?

feature -AIRMODE

I disable air mode because I have air mode on a switch. It is nice to be able to drop back to rate mode when I want to skid under a car!

The only quad I own that doesn’t support telemetry is my TinyHawk, so I enable it here as well.

beacon RX_SET

I don’t use buzzers on any of my builds, so I enable the DSHOT beacon.

set small_angle = 180

Before Betaflight 4.0, I usually left the accelerometer disabled, but I do enable it on some quads, like my TinyHawk. In the event that I do enable it, I want to make sure my quad allows me to arm while it is upside down.

Betaflight 4.0 can show G-force on the OSD, and it can show you maximum G-force reading on the summary screen. This has encouraged me to enable the accelerometer, so I’m glad I’ve been pasting the small_angle into all my builds!

Radio settings

Most of my builds use TBS Crossfire, so I don’t mind pasting that in.

set serialrx_provider = CRSF

My TinyHawk is my only quad using SBUS.

rxrange 0 988 2011
rxrange 1 988 2011
rxrange 2 988 2011
rxrange 3 988 2011

The goal is to have the ends of your stick travel reading 1000 and 2000 in Betaflight. I tweaked the settings in my Taranis, but it was impossible to get them spot-on. They would either read a bit high, or a little low. For a long time, I flew with them overshooting the 1000 and 2000 marks by 11 or 12 nanoseconds.

The rxrange command lets you set those limits correctly. My receiver tab now reads exactly 1000 to 2000 nanoseconds for my sticks.

rxfail 4 s 1000

I fly with my RSSI or Link Quality on channel 5. This lets me display my control link’s quality on my OSD. When you failsafe, your RSSI or Link Quality will just get stuck, so it might not be obvious to you that your signal is gone.

This command sets channel 5 to the minimum value. That way, when you do failsafe, your OSD will start blinking at you!

set vtx_band = 5
set vtx_power = 3
set vtx_low_power_disarm = ON
set vtx_freq = 5658
set vcd_video_system = NTSC

I fly with the same people most of the time, and we each have a designated channel. These settings put me on Raceband 1 with power level 3.

The vtx_low_power_disarm settings puts my VTX at 25 mW when I’m not armed. This helps keep me from knocking my friends out of the air when I plug in or land near us.

OSD settings

OSD settings and positions are safe to paste from one version of Betaflight to another. Sometimes the names change, but that won’t hurt anything. You’ll just end up with something missing from your HUD!

set osd_units = IMPERIAL
set osd_warn_batt_not_full = OFF
set osd_warn_batt_warning = OFF
set osd_warn_batt_critical = OFF
set osd_warn_visual_beeper = OFF
set osd_warn_core_temp = OFF
set osd_cap_alarm = 950
set osd_vbat_pos = 44
set osd_rssi_pos = 2448
set osd_tim_1_pos = 407
set osd_tim_2_pos = 2422
set osd_remaining_time_estimate_pos = 343
set osd_flymode_pos = 333
set osd_throttle_pos = 2409
set osd_vtx_channel_pos = 2415
set osd_ah_pos = 200
set osd_current_pos = 2433
set osd_mah_drawn_pos = 2441
set osd_craft_name_pos = 2453
set osd_gps_speed_pos = 2369
set osd_gps_lon_pos = 82
set osd_gps_lat_pos = 65
set osd_gps_sats_pos = 2390
set osd_home_dir_pos = 2395
set osd_home_dist_pos = 35
set osd_compass_bar_pos = 266
set osd_altitude_pos = 341
set osd_pid_roll_pos = 423
set osd_pid_pitch_pos = 455
set osd_pid_yaw_pos = 487
set osd_debug_pos = 1
set osd_power_pos = 321
set osd_pidrate_profile_pos = 345
set osd_avg_cell_voltage_pos = 2402
set osd_pit_ang_pos = 257
set osd_rol_ang_pos = 289
set osd_battery_usage_pos = 392
set osd_disarmed_pos = 138
set osd_nheading_pos = 311
set osd_nvario_pos = 279
set osd_esc_tmp_pos = 82
set osd_esc_rpm_pos = 2
set osd_stat_tim_2 = OFF
set osd_stat_max_dist = ON
set osd_stat_used_mah = OFF
set osd_stat_bbox = OFF
set osd_stat_bb_no = OFF

I’ve always tried to keep my OSD somewhat minimal. I feel that cell voltage, RSSI, and flight time are quite necessary.

I like to have my quad’s name listed. That makes reviewing DVR footage easier, and it helps my friends know who they’re tuned in to. At this point, fitting all my data on one line would be a tight fit.

Most of the time, I don’t need to see my VTX channel and power info, but sometimes it comes in handy. If I’m getting poor signal, it is nice to see if I’m running at 200 mW or 800 mW. On the rare occasions when I change channel, it is nice to have something to refer to when a friend asks what channel I’m on, too.

There’s still room left on the second line, so I squeezed in amp draw and mAh consumed.

Then I added GPS to all my 5” quads, and I had to expand to a third line! I’m disappointed that my OSD is getting so crowded, but I tried to keep that new line spread out towards the edges!

OSD settings for Betaflight 4.0

Betaflight 4.0 now has support for up to three OSD profiles. You can have different elements active in each profile.

I haven’t decided how I’m going to make use of this. Currently, I paste in OSD settings to enable the GPS data that I like to see. My micro quads don’t have GPS, so I wind up manually disabling those options during setup.

I might move the GPS data to a separate profile. That way, I can just change profiles on my quads without GPS!


In my opinion, rates are the most important thing to customize on your miniquad. Everyone prefers a different feel, and you need to find yours.

rateprofile 0

set roll_rc_rate = 192
set pitch_rc_rate = 192
set yaw_rc_rate = 165
set roll_expo = 15
set pitch_expo = 15
set roll_srate = 60
set pitch_srate = 60
set yaw_srate = 40

These are my rates. I keep my yaw linear and quite a bit more gentle than the other axes.

These rates feel right to me on my 5” miniquads, but they’re a little aggressive on my micros. In any case, it is a good starting point for any quad I might fly!


These are my modes. Don’t use my modes. In fact, you should probably be getting all these settings from your a diff from one of your own quads!

aux 0 0 3 1550 2100 0 0
aux 1 46 1 1925 2100 0 0
aux 2 13 2 1550 1700 0 0
aux 3 26 1 1550 1700 0 0
aux 4 28 3 1750 2100 0 0
aux 5 30 3 900 2100 0 0
aux 6 35 2 1925 2100 0 0

I use a single three-position switch, switch SG, on my Taranis X9D+ for arming and choosing rate or air mode. The first position is disarm. The middle position is rate mode. The final position is air mode. Most of the time, I just flip the switch all the way to one end or the other.

Switch SD activates either my beeper in the center position and turtle mode in the final position.

Switch SA enabled blackbox logging in the center position and GPS return to home in the final position.

That’s it!

I’m surprised there’s not more. This looks like everything I paste into a brand-new build.

I don’t paste out of this file all that often. Only when I build a completely new quad or a new major release of Betaflight shows up.

My Hyperlite Flowride quads

I have three identical 5” Hyperlite Flowride quads. I don’t paste this file into each of those. I set one up, and get it flying the way I like. Then I paste that good config into the other two!


When you have a bunch of quadcopters to configure, don’t rely on your memory. Get in the habit of saving diffs before making major changes to your quads. It is easier to paste in your old config than it is to make sure you don’t miss an important checkbox in the Betaflight configurator.

Even just cherry-picking lines from your Betaflight 3.5 diff when upgrading to 4.0 is easier than hunting around the configurator trying to make sure you didn’t miss an important setting!

Did I miss anything? Do you have a similar diff that you paste into all your new quadcopters? Do you have any questions? Let me know in the comments, or stop by our Discord server to chat about it!

One Month with an HD Micro FPV Freestyle Quad

| Comments

I’m not sure how accurate the title of this blog post is. I’ve been working on my Kestrel HD micro FPV frames for several months. I’ve probably been flying it with a Caddx Turtle V2 for something closer to a month and a half, but that would make for a convoluted title, hayna?

I’ve been carrying a 2.5” or 3” micro FPV drone in my bag for two years, but the Kestrel is my first micro capable of capturing HD footage. I’ve avoided these kinds of builds for a long time, but the components for micros are getting better, and the FPV cameras that double as HD recording cameras have improved quite a bit, too.

Going into this, I had some ideas of how my 3” micro and lightweight 4” builds would compare to my heavy 5” freestyle. I think I’ve been messing around with the micros long enough to have some useful data and opinions about my experiences at this point.

HD micros should be more durable

For the most part, I still think this is true. My 680-gram 5” freestyle quad has so much more inertia than my 225-gram 3” Kestrel or my 270-gram 4” Kestrel.

Sure, the smaller motors are built with smaller bearings and thinner material, but you won’t be subjecting them to as much stress in an impact. It ought to be harder to smash motors.

My 4-inch Kestrel Build

The micro frames are thinner and lighter. I thought for certain that my Kestrel’s arms would break by now. I made them just about as narrow as I thought I could get away with. I assumed they’d need to be one or two millimeters wider, but they’re holding up quite well!

It is unfortunate that the Caddx Turtle has been rather fragile. I killed my first Turtle when I got stuck in a tree. Very, very high up in a tree! I had to do a lot of gymnastics in both turtle mode and air mode to wiggle the quad free, and I had to wiggle free several times, because I kept getting stuck on more branches on the way down!

The Caddx Turtle must have taken a voltage spike or something while I was jamming on the throttle trying to break free. It stopped recording while I was still in the tree, and it hasn’t worked since.

Today, I smashed a lens and an ND filter. My Caddx ND filters arrived today, and I just had to try them out. The winds were up over 15 MPH today, so I didn’t expect to get great footage, but I wanted to try them out.

Broken Caddx Turtle Lens

After flying a battery on my 4” Kestrel, I swapped the filter over my 3” Kestrel. As soon as I gave it a bit of throttle, it tried to shoot up to the moon, so I had to disarm. It landed upside-down on concrete. The ND filter was smashed, and the plastic lens was snapped in two.

In my first month or two, I’ve burned through a $65 camera, a $7 ND filter, and a $10 lens. These aren’t expensive components, but I’ve been flying with a GoPro HERO5 Session on my big, heavy quad for more than a year, and I’ve only destroyed one GoPro. I’m not excited about this trend so far.

At least today, it was only the lens that broke. If the threaded shaft of the Caddx lens were made of metal, I probably would have smashed the camera’s housing or sensor!

HD micro quads are safer

This mostly comes back to weight again. I’ve had my 680-gram 5” freestyle quad up over 120 MPH. I don’t get up to speeds like that very often, but can you imagine what would happen if I hit something? It would be like shooting a frozen turkey at a high-speed train.

Even if I just have to disarm my big quad while it is 200 feet in the air, whatever is underneath is going to have a bad time—hopefully it is just grass or pavement! This is why we’re so careful about when and where we fly.

My 3” Kestrel is a rather light build. It comes in at about 225 grams with a 650 mAh 4S battery. With that battery, it has enough juice for about five minutes of fairly aggressive freestyle flying. It weighs about 1/3 as much as my big, scary quad, and it can’t hit 120 MPH.

It is a bit like the difference between a basketball and a dodgeball. If I throw a basketball at your face as hard as I can, I might break your nose. If I do the same with a dodgeball, you’re going to be unhappy, but you’ll be fine.

I’m not saying you can just start flying your micro quad near people. Those props will still cut someone quite badly, and it is still heavy enough to hurt someone!

HD micros cost less than a full-size miniquad

My 3” Kestrel build costs around $250. My 5” freestyle quads cost more than twice as much, and I have to strap a $200 to $300 GoPro on top of those quads. I think it is awesome that it is possible to capture decent HD footage for the price of a GoPro.

Is it really cheaper, though? I can strap a $100 refurbished GoPro HERO4 Session to a $130 bind-n-fly 5” quad, and I know that I’ll get better footage. That aging GoPro is so much better than a Caddx Turtle. The Caddx Turtle or Runcam Split need the equivalent of GoPro’s SuperView!

At the rate that I’ve been breaking Turtles, I’m worried that this is going to get expensive. Time will tell.

Don’t forget about batteries. The 650 mAh 4S packs I use on my micros cost half as much as the 1,000 mAh 6S packs I use on my 5” quads, and my micros tend to fly a little longer on each pack.

5” freestyle quads fly better than 3” micros

Due to a combination of Earth’s gravity, air density, and the scale of human construction, 5” miniquads are the sweet spot for FPV freestyle. They’re heavy enough that 10 or 15 MPH winds don’t shake them around. They’re light enough that they can accelerate quickly, and their props are the right size and weight to make them agile.

You just can’t huck a 250-gram micro quad over an obstacle. I can punch the throttle on my 5” freestyle quad for a second or two, cut the throttle, and flip upside down. My momentum will easily carry me over a tree.

The 250-gram 3” quad doesn’t have the momentum or inertia for that. The air is thick enough to slow it down. If I attempt the same thing with my 3” or 4” Kestrel, I will most likely not make it over the tree!

This isn’t just a problem for micros. 5” racing setups without GoPros don’t have the same problem. They’re built lighter than freestyle drones to begin with, and they’re also not carrying a 110-gram GoPro. The 5” racer will carry farther than the 3”, but not as much as my heavy 5” freestyle build.

No matter how hard I try, I just can’t tune in my rates to make my 3” feel like my 5”. I’m sure some of that is in my head, and if I flew the 3” exclusively for a long time, I would adjust.

3” and 4” micros are lighter

Weight can be a blessing and a curse. We already talked about the light weight of a 3” micro making it safer than my beefy 5” quads. Micros are also easier to carry.

They take up less space, their batteries weigh less, and in my case, each battery lasts a little longer!

My huge ThinkTank backpack weighs about 27 pounds when fully loaded. That’s with three 5” quads, a 3” quad, plenty of batteries for each of those quads, all sorts of tools, a LiPo charger, a big field-charging battery, and a comfy 2-pound chair. I usually only take this bag when I’m driving.

My AmazonBasics DSLR Bag

When I’m riding my electric bike, I take my AmazonBasics DSLR backpack. With one 5” quad, six batteries, and a chair, it weighs about 12 pounds. That setup will keep me flying for almost 24 minutes.

If I pack both my 3” and 4” Kestrel, I can carry 45 minutes’ worth of battery. Not only that, but I can squeeze those two quads and all that battery in under 10 pounds. It isn’t a huge savings in weight, but any weight savings is nice when you’re walking, and the extra 20 minutes of flight time is awesome!

A $100 GoPro beats a $65 Caddx Turtle V2

These two cameras are barely comparable. I’m disappointed in almost every minute of footage I’ve captured so far with my Caddx Turtle.

The field of view on the Turtle seems narrow, and I miss SuperView. You can’t set the Turtle to 30 frames per second, because you’ll be stuck with that slow frame rate in your FPV feed. You absolutely have to use an ND filter to push the shutter speed high enough to get acceptable footage out of the Turtle.

I would get much better footage with my old $120 BFight 210 with a refurbished, outdated, $100 GoPro Session.

Even with the ND filter, the Turtle seems to dislike my style of flying. Slow, cinematic footage looks alright. Quick moves look sloppy compared to the footage from a GoPro.

That said, though, I feel like I’m actually getting some usable footage out of the Caddx Turtle now that I’m flying with an ND16 filter!

I don’t understand why you’re flying a freestyle micro quad!

As I’ve been going through the pros and cons here, I’ve noticed that I’m listing a lot more cons than pros, right? Some of those cons are huge, too. The cheapest, oldest GoPro Session is drastically better than a Caddx Turtle. That seems like a good enough reason to skip HD micros all together.

Even considering all these cons against the pros, I’m still excited about having an HD micro quad in my bag, and I’m having a lot of fun designing a frame! Being able to carry nearly an hour of fun in a bag that weighs less than 10 pounds is awesome. I don’t always need to be capturing the best possible HD footage, do I? It is OK to just go out to have fun!

That’s what I was already doing with my Leader 3 micro. Adding an HD camera to that kind of setup isn’t expensive, and it is nice to have access to that footage, even if it isn’t the best.

If all I needed was a hold-my-beer quad, my old BFight 210 with a cheap GoPro would work great. My Kestrels can handle that job, but they’re also useful in situations where a 5” quad like the BFight 210 would be too loud or feel too dangerous.


I like HD micro quads. They’re inexpensive. They fly almost as well as a 5” freestyle quad, assuming you don’t need the extra momentum. The HD cameras are almost good enough.

The situation will only get better. Cameras are getting better. Frames are getting better. Flight controllers, 4-in-1 ESC boards, and motors are getting better. Props are getting better. Literally everything related to micro quads is improving!

3” micros are a great way to get into FPV. They are cheaper and safer than their 5” cousins, and it doesn’t cost much to add reasonable HD video recording to your build. If you want to get into FPV freestyle, and you want to record decent HD video, spending $250 or so on a build like my Kestrel with a Caddx Turtle would seem like a pretty good plan!

What do you think? Is your experience with HD micros similar to mine? Do you think I’m going to have the same thoughts, opinions, and experiences over the next six months? Let me know in the comments, or stop by our Discord server to chat about it!

So Long Helio Spring, Hello iFlight SucceX F7 TwinG!

| Comments

When I graduated from my bind-n-fly Holybro Shuriken X1 to my first custom 6S-capable 5” freestyle quad, I used Holybro’s stack: a Kakute F4 flight controller, and an AtlAtl VTX. I was using individual ESCs at the time, but I soon upgraded to a Tekko32 4-in-1 ESC, and I’m still using those today.

At the time, I was happy with how my quads flew, but they were far from perfect. I didn’t realize how far from smooth they were at the time, though. I was having trouble with one of my builds, and this fancy new Helio Spring flight controller was just showing up on the market. I figured, why not give it a try?

My Old Helio Spring Flight Controller

The Helio Spring has a separate F3 chip dedicated to gyro filtering. It has an F4 chip that runs Betaflight, Butterflight, or RaceFlight, but all or most filtering in that firmware is disabled. Until recently, the filtering running on the F3 chip was proprietary.

It was amazing. This was probably around the time when Betaflight 3.4 was released. I’d never flown a quad that felt so locked in and responsive. I remember the big smile I had the first time I came in too tight on a power loop and expected a bunch of propwash oscillation, but there was none. I went home and ordered Helio Spring boards for all my quads.

Helio and Butterflight have both had issues. Helio seemed to have dropped off the face of the Earth for a while, but then out of nowhere, they released a new IMU-F update. That update was a huge leap forward again, and it breathed new life into my Helio Spring quads.

Helio is dead. Development has stopped. As far as I can tell, my Helio Spring quads will be stuck on Betaflight 3.5 forever. I’ve been running Betaflight 4.0 nightly builds on my 3” and 4” micros, and I like it a lot. How long can I wait before upgrading my 5” freestyle quads?

Helio’s IMU-F won’t be leapfrogging Betaflight again.

Waiting for the next big thing

I knew there would be a feature I just couldn’t live without. I didn’t know what it would be, but I figured it would be a few months away, right?

There have been some minor advances since the Helio Spring’s release. Some flight controllers have a relay that cuts power to your VTX for an improved pit mode. I’d like to have that, but I don’t really need it.

Dual gyro sensor fusion looks interesting, and there are a couple of flight controllers that support it. These flight controllers have a pair of identical gyro chips, and one of those chips is rotated 90 degrees. The flight controller takes the average of the output from both gyro sensors. This gives you a reduction in noise with almost zero cost. It doesn’t add any latency at all, and it doesn’t even require a noticeable amount of CPU time!

Not only that, but if one of the gyros fails, you can configure Betaflight to ignore it. That could be handy!

We upgraded one of Brian’s Helio Spring quads last week

My friend, Brian, had a dead Helio Spring that needed replacing. I recommended he try the iFlight SucceX F7 TwinG flight controller. It doesn’t have a pit mode relay switch, but it has a pin for camera control, dual gyro sensor fusion, and an F7 microcontroller. I haven’t even looked into how to make use of the camera control pin!

My New iFlight F7 Flight Controllers

It is a nice board, and the installation was quick and painless. The pinout of the iFlight F7’s ESC connector doesn’t match the Tekko32 4-in-1, but the connectors are compatible. Disassembling and reassembling an 8-pin cable to connect the two boards was probably the most time-consuming part of the transplant, but only because we triple-checked, then rechecked our work. Putting the battery input on the wrong pin would have been bad news!

The iFlight F7 TwinG is a nice-looking board. It has a clean layout. It has plenty of UARTs. What’s not to like?

I couldn’t wait to upgrade mine

I’ve been exclusively flying 3” and 4” Kestrel builds for more than a month. Last weekend, I took out my 5” Flowride quads for the first time in a while. It was fun. Those heavy freestyle builds suit my flying style much better than the 250-gram builds, but I was unhappy with how the 5” quads were flying. I was getting more propwash than I would like, and they felt a little off on quick, sharp movements followed immediately by a quick throttle input.

I didn’t want to put time into looking at the tune on these builds that are stuck on outdated versions of Betaflight, so when I got home, I ordered a pair of iFlight F7 flight controllers!

My upgrade didn’t go smoothly!

I made a mistake. I soldered in the first iFlight F7 flight controller, plugged in a 3S battery along with a smoke stopper, and all I got was the ESC startup tone. I didn’t get the tones you would expect to hear after the ESCs communicate with Betaflight.

I fried the flight controller. I checked, rechecked, and then checked a third time when I was correcting the order of the wires in my ESC to FC cable. The only spare 8-pin cables I had on hand that were long enough had all black wires, so I was trying to be careful.

As it turns out, I had the order completely reversed! That’s not the end of the world, though. I still have another iFlight F7 on hand, so I fixed the wire and soldered it in.

It worked great this time, but when I was buttoning up the quad, I noticed on of my rear arms was loose. Several months ago, I slightly bent a bottom plate in a crash. I guess it has been breaking more and more ever since. Of course, that’s the quad I transplanted the new brain into, right?

First flights with a loose arm

I put the FC in Friday evening, and I didn’t notice the arm was loose until after I had the top plate back on. I have a spare bottom plate, but I didn’t have a chance to disassemble it that night. Saturday morning, Brian informs me that we’re going to fly at the golf course, and I don’t have time to charge batteries and swap bottom plates before I have to leave!

It was OK, though. The quad flew amazingly well even with a problematic arm. This shouldn’t surprise me, though. I’ve never noticed a difference in the air between my two Helio Spring quads, although I’m certain I made this one worse by wiggling the arm a bunch when I was testing to see how bad it was!

I only got two batteries in. I had changes and repairs to my 3” and 4” Kestrel quads that needed testing, too. I don’t think I could have asked for a better upgrade!

Betaflight 4.0 has made some huge leaps compared to Betaflight 3.5, and that’s what I was stuck with on my Helio Spring quads. Propwash handling is improved. I’m pleased with the overall feel of the quad. Whatever they’re doing with stick input filtering, gyro filtering, and feed forward these days is just awesome.

I’ll have a pair of solid, sturdy Hyperlite Flowride quads with iFlight F7 flight controllers in a few days. If the weather cooperates, I won’t even bring my micros out with me next week. I’ll concentrate on testing and tuning the new flight controllers.


At this point, we’re kind of being forced to migrate away from our Helio Spring boards. You can keep flying them until they die—that was supposed to be my plan! I like to keep my fleet as identical as possible, so once I upgraded one quad, the rest were going to quickly follow.

If you’re upgrading from a Helio Spring, I think the iFlight F7 with its fancy new dual-gyro setup is a good choice. It has plenty of UARTs, the layout of the board is great, and subjectively speaking, it flies great!

Do you think this sort of dual gyro setup is the future? Do you think I should have saved about $5 by using a single-gyro board? Do you prefer a different flight controller? Let me know what you think in the comments, or stop by our Discord server to chat about it!

You Should Use a VPN to Protect Your Privacy

| Comments

UPDATE: Private Internet Access is merging with Kape Technologies. I’ve been reading a bit about this today, but I’m going to have to do more research. It sounds like this could be bad for PIA customers and their privacy. At this time, I would RECOMMEND AGAINST SUBSCRIBING TO PIA’S VPN SERVICE. I will do more research this weekend and report back!

I avoided subscribing to an anonymous VPN service for a long time, but I changed my mind about five years ago. I did some research, and narrowed my search down to a few candidates. I wasn’t even going to bother pulling the trigger—I just didn’t feel like I had much need to keep any of my Internet activities anonymous.

Then I learned that Private Internet Access would allow me to pay for their service anonymously using a Walmart or Starbucks gift card. It costs a few dollars more, but sneaking around James Bond-style sounded like it would be fun to write about! I bought a gift card, took some pictures and screenshots, and got myself set up with an account with Private Internet Access. Then I completely forgot to write about my adventure!

I don’t believe paying with a gift card is an option any longer, but you can pay with various cryptocurrencies.

The service works great. It usually has no trouble keeping up with my FiOS Internet connection at home, and Private Internet Access allows you to stay connected on up to ten devices at the same time—up from five devices when I signed up! I set it up on my desktop, laptop, and all my Android devices. I particularly like the Android client. It is just a wrapper around OpenVPN, but it has a nice “Internet Kill Switch” checkbox.

I also have a virtual machine on my KVM server that is always connected to the PIA VPN. If I feel the need to hide any traffic from my ISP, I just set that host as my default gateway, and it will route the traffic through the VPN for me.

Why am I writing about this now?

A while back, I was contacted by a shady-sounding VPN provider. They wanted me to advertise their service on my blog and use their affiliate program. I’m always cautious when companies contact me like this, and I don’t like to endorse products or services that I don’t actually use.

All providers of this sort of VPN service are going to be slimy or shady in one way or another. You don’t want them to log your traffic or connections. You don’t even want them to know who you are, or tell anyone that you’re a customer.

You’re quite possibly a little shady, too. Maybe you just want to make sure the folks on the coffee shop’s WiFi aren’t snooping on your traffic, but you also might be using the service to watch something on Netflix that isn’t available in your country.

I’ve been a happy customer of Private Internet Access for a long time. Their prices are reasonable. Their policies seem reasonable. They also happen to have an affiliate program, so I signed up.

If you click any of my links to PIA in this post, I will get a small slice of your payment.

What are you trying to protect yourself from?

When you’re away from home and connected to someone else’s network, you’re much more vulnerable to attack. Other users just like you might be trying to attack you, and the owner of the network could easily be snooping on your traffic.

My long time solution to this problem has been to push all my traffic over an ssh tunnel to one of my own Virtual Private Servers. This is a simple solution for someone like me. It keeps me safe from people on the local network, and it lets me bypass plenty of corporate firewall restrictions. I trust the operators of my data center just as much or more than I trust my ISP.

There are some downsides to using the ssh tunnel. It keeps folks on the local network from snooping on my traffic, but the servers I’m connecting to will see the IP address of my Virtual Private Server. There are also the problems that can occur when tunneling TCP over TCP on a congested link.

That IP address is most definitely tied directly to me. My data center knows exactly who I am. They know where I live. They have all my billing data.

If you’re trying to keep anonymous, then this will be a problem for you. An ssh tunnel to a VPS is also not something my mother could use.

Using a VPN like Private Internet Access will protect you in the same way as my ssh tunnels, but it will also provide an additional layer of anonymity. If you use a payment method that isn’t tied to your identity, it will be extremely difficult to match the IP address that shows up in server logs to your actual identity.

Among other options, Private Internet Access uses OpenVPN, but they also provide a friendly client application to get you connected, so it is definitely something my mother could manage to use. This is easily worth $3.49 per month.

Why not use a free VPN service?

They say that if you’re not the customer then you must be the product. This is what makes me shy away from free VPN providers.

If you’re worried about a hotel or coffee shop snooping on your traffic, then why wouldn’t you be worried about your VPN provider doing the same thing? Selling information about your activities would certainly be one way for a free VPN service to make money.

I’m happy to pay $3.49 a month in an attempt to mitigate some of that risk.

Is a VPN enough?

If you’re asking this question, there’s a good chance you’re more paranoid than I am. If you’re trying to hide from the government, or you’re doing something illegal, then you need to hide behind more than an anonymous VPN service.

I am far from an expert at hiding from the government, but if you’re just trying to protect yourself when using the free Wi-Fi at the airport, then an anonymous VPN like Private Internet Access is exactly what you need.

Why did I choose Private Internet Access in the first place?

It has been quite enough years since I made the decision to use Private Internet Access, so my memory is a little hazy.

  • Up to 10 concurrent VPN connections
  • OpenVPN works on Linux and Android
  • The Internet Kill Switch checkbox in the Android app
  • Decent scores in That One Privacy Guy’s VPN Comparison Chart
  • $3.49 per month is more than reasonable (on 2 year prepay)

The ability to use the Private Internet Access service on ten devices simultaneously was a good fit for me. That had me covered on my desktop, laptop, phone, and Android tablet. In addition to those four devices, I’m also connecting to PIA with one of my virtual servers here at home.

The “Internet Kill Switch” feature in their Android client is particularly useful. This may not be the case any longer, but when I signed up for PIA, none of the Android OpenVPN client GUIs were equipped with a similar feature—Private Internet Access uses OpenVPN.

When the “Internet Kill Switch” is active, your phone or tablet won’t accidentally attempt to leak data over your unsafe connection if the VPN disconnects. This is exactly the sort of safety net you need when connected to a sketchy Wi-Fi access point!

I know enough about OpenVPN to accomplish the same thing by hand—I’m already doing this on one of my machines. You shouldn’t have to know how to do this, though. It should be easy to configure, and PIA makes it super simple to enable.

The Android app also allows you to bypass the VPN on a per-app basis. I use T-Mobile, and they don’t bill me for data when streaming video or music from most popular services. With the PIA app, I can bypass the VPN for YouTube, Google Music, and Netflix, and just leave the VPN active all the time and not worry about accidentally wasting my valuable data when I’m out and about watching YouTube videos.


I’ve been using Private Internet Access as my VPN provider for years. They’ve done a fantastic job. They recently raised their prices, but I’m not entirely sure by how much. I’m not intimately aware of their pricing structure, but it looks like their 2-year prepaid plan has gone up by $0.15 per month. At the same time, they increased the number of concurrent VPN connections from 5 to 10. That’s a great deal.

PIA seems like a reasonable company. They contribute to open-source projects. They score well on That One Guy’s VPN privacy chart. Their prices are pretty good, and you’re definitely not the product. The Android app is quite good.

What do you think? Am I an idiot for recommending and using PIA? Do you have a better suggestion? Tell me what you think in the comments!

The EMAX TinyHawk is Fun, Inexpensive, and Awesome!

| Comments

UPDATE: There’s now a direct upgrade path from the TinyHawk Ready-To-Fly kit, and it is pretty awesome. The TinyHawk Freestyle is a fast, light, relatively safe outdoor brushless micro FPV drone. Unlike the indoor TinyHawk model, the TinyHawk Freestyle won’t get blown away by a slight breeze. You should check out my blog post about the TinyHawk Freestyle.

I’ve had my EMAX TinyHawk for quite a few months now, and I just realized that I haven’t actually sat down to write about it yet!

I’m excited about brushless Whoops, and there are a lot to choose from now like the Mobula 7, the Eachine Trashcan, or the EMAX TinyHawk. What is a Tiny Whoop? Why would you want a brushless Whoop? Why did I choose the TinyHawk?

The real Tiny Whoop is a ducted, brushed micro FPV drone, and it excels at indoor flying. There are other brushed Whoop clones, like the NewBeeDrone AcroBee, or cheaper, less capable clones like my Eachine QX65.

EMAX TinyHawk

There are two things I dislike about these brushed Whoops. Brushed motors have a limited lifespan. They may only last about four hours or so. These quads are also rather fragile. They don’t get into too much trouble, because they weigh less than 25 grams, but I’ve broken a few Whoop frames.

Brushless motors won’t wear out. You might step on one and break it, but you’re not going to smash one of these in a crash like we can with our heavy 5” quads. This makes the brushless Whoops more durable, and reduces the time you have to spend maintaining them.

So why did I choose the TinyHawk? The Mobula 7 and Trashcan can run on 2S batteries, so they can generate a lot more thrust than the 1S power of the TinyHawk. Doesn’t that make the TinyHawk a terrible choice?

I’m not a professional Whoop-class racing pilot. I’m not even an amateur. I just want a fun toy to fly indoors, and I want it to always be ready to fly.

The TinyHawk is overbuilt, and probably a bit overweight. Its shell is sturdy. The props are thick and tough. As long as nobody steps on it, and no dogs decide to grab it out of the air, I expect my TinyHawk frame to last. I wouldn’t be surprised if I have put more than 100 batteries through my TinyHawk, and it looks just like it did when I opened the box.

At the time that I bought my TinyHawk, people were regularly breaking their Mobula 7 frames. I hear that HappyModel has improved the Mobula 7’s frame since then, but I still feel that the TinyHawk has a leg up here.

FPV looks like fun! Should I start with a TinyHawk?

I believe the EMAX TinyHawk bundle is the best way to get started FPV, especially if you’re on a budget. The TinyHawk bundle plus a six-pack of additional batteries will cost you less than $200. You’ll have an indoor FPV drone, a controller, an FPV headset, and enough batteries to fly for nearly 30 minutes.

I think the bundle is a steal, and it is possible to set it up to use the bundled controller to practice in a simulator. Everyone flying a 5” FPV freestyle or racing quad needs to learn to fly in the simulator.

If you do move on to bigger and better FPV quads, you won’t be able to use the bundled controller. You will be able to use the headset for a while.

Project Mockingbird

If you have a TinyHawk or any other brushless Whoop, you need to check out Project Mockingbird. They have documentation for tweaking Betaflight to make your brushless Whoop fly better—much better!

I tried their Betaflight brushed Whoop settings on my Eachine QX65 last year, and the difference was like night and day. It made the QX65 more responsive, and it had a lot less trouble with propwash when descending from the second floor of the house.

When my TinyHawk finally arrived, I didn’t even give it a test flight before applying Project Mockingbird’s brushless Whoop settings. If you have any complaints about how your TinyHawk handles, go check out Project Mockingbird.

Can I fly the TinyHawk outside?

You can, but only in the same way that you can drive a go-cart on a Nascar track. The TinyHawk is extremely fast in the enclosed space of your house, but a small park will feel huge, and it will take forever to fly from one side of the park to the other.

Wind will also be a problem. A light breeze will just make it difficult to aim your TinyHawk through gaps. On a properly windy day, your TinyHawk may not be able to fly faster than the wind, and it might get carried away!

If this is your first experience with FPV, you’ll have some fun outside with your TinyHawk. Just be careful not to lose it!

Charging lots of 1S batteries

The 6-port USB charger than comes with the TinyHawk works, but it is extremely slow. I’m using the charger than came with my Eachine QX65. Similar 1S chargers are available on Amazon. At 600 ma per port, it is probably twice as fast as the TinyHawk’s USB charger, but it requires a DC input—I use my big 6S field charging LiPo.

TinyHawk and Batteries

My friend Brian uses the CX610 charger. It has 6 ports, and each port charges at 1 amp. That’s nearly a 2C charge rate for our 450 mAh TinyHawk batteries, and it charges nearly twice as fast as my charger, but it also requires a DC power supply or a big LiPo battery as an input. These were hard to find when Brian ordered his—I think he ordered the last one available at Amazon that day! They seem to be more common now.

With the CX610 and six or eight batteries, you can probably manage to fly continuously for more than an hour. Don’t buy my charger. Get the CX610. It is about the same price, and a much nicer piece of hardware!

A drone for every occasion

I have two or three 5” freestyle quads. They’re big, heavy for their size, and they capture awesome video footage. You’d never fly one of these indoors, and they’re not appropriate in every situation outdoors. Sometimes the space is too confined. Sometimes it’d be too risky to fly something so heavy and capable of causing so much damage to people and property.

I also carry a 3” freestyle quad. It is built with a tiny HD video camera on a vibration-absorbing Kestrel frame, and it weighs just over 220 grams. The entire build costs less than [the GoPro][gp] I send up on my 5” quads. It would be difficult to break a window with this little guy, but it would still cut someone up pretty badly if it hits them. It would also be much less upsetting if I lost this quad in a lake or river.

Then I have my TinyHawk. I’m not going to capture any amazing video footage with this thing, but it is extremely safe. I’ve flown it right into my face, and it didn’t do any damage. We fly them in the house around our pets and children all the time.

I bought the TinyHawk bundle. Where do I go next?

When I wrote this blog back in April, the upgrade path from the TinyHawk ready-to-fly bundle wasn’t exactly clear. The goggles will get the job done whether you want to fly whoops, 2.5” or 3” micros, or even 5” racing or freestyle miniquads.

I learned recently that the radio transmitter that comes with the kit should be compatible with most FrSky D8 receivers. These are the older receivers, but D8-compatible receivers ship with many of the less expensive Bind-N-Fly drones. As long as you avoid drones with genuine FrSky XM+ or R-XSR recievers, you should be able to fly a lot of off the shelf drones with your EMAX radio.

Your flying experience won’t be as good as with a Taranis—the gimbals on the EMAX radio have a shorter throw, and they aren’t as precise. You will be able to fly.

It isn’t April anymore. It is now August, and EMAX released a new drone: the TinyHawk Freestyle. The Freestyle falls into what people are now calling the Toothpick class. Small, extremely light, relatively safe, and usually quite fast.

My Two TinyHawks

The TinyHawk Freestyle isn’t the smallest, lightest, safest, or fastest toothpick. I think it is pretty close to the sweet spot for most of those measurements, though, and it is the obvious upgrade for someone that outgrows the TinyHawk Ready-To-Fly bundle. The batteries and charger that you use with your TinyHawk will work with the TinyHawk Freestyle. That’s a big win.

I’ve written quite a few words about the TinyHawk Freestyle. You should go check them out, but here is the summary that I’ve been giving everyone. You can buy the TinyHawk bundle, a 6-pack of batteries, and the TinyHawk Freestyle for less than $300. That’s about what I paid two years ago for my Spektrum DX6 radio and a toy quadcopter.

I didn’t have goggles. I didn’t have FPV capabilities on that drone. Sure, the Spektrum DX6 is a much higher quality radio, and that goofs up my comparison, but that’s not important. What is important is that you’re going to have so much more fun with your $300 investment than I did.

You’ll have more fun with your $165 investment in the TinyHawk RTF kit.


If you think flying FPV looks like fun, you should pick up a TinyHawk bundle. If you’re already flying a larger quad, and you have an FrSky radio and a set of goggles, but you don’t have a brushless Whoop yet, I think you should buy a Tinyhawk.

The TinyHawk strikes a good balance between performance, enjoyment, durability, and cost. Many of the reasons for choosing your 1S or 2S brushless Whoop will be subjective. I’m glad I chose the TinyHawk, and I’d make the same choice today.

Unless you have some specific goals in mind, I don’t think you can make a bad choice in a brushless Whoop. They’re all inexpensive. They’re all durable. They’re all fun.

What do you think? Do you prefer the Mobula 7 or the Eachine Trashcan? Do you prefer old-school brushed Tiny Whoops? Tell me what you think in the comments, or stop by our Discord server to chat about it!