Uses For Your Steam Deck Besides Gaming

| Comments

Am I excited about the Steam Deck? I’m pretty sure I am! I’m not quite excited enough to order one—gaming on the go just isn’t something I do all that often.

The problem with the Steam Deck is me. I’m quite boring these days! I don’t commute to an office. I don’t visit clients. I don’t spend a week working away from home in a hotel and fly home on weekends. I don’t spend a month at a time away from home. I do most of my work right here in my home office.

I used to do all of these things, and that has the gears in my brain turning. If you carried a Steam Deck in your laptop bag, what could you do with it besides play games? It is just an x86 laptop. You’re supposed to be able to install Windows on it, so I’m assuming we can boot it from external media.

The Steam Deck is a low-end laptop in a different form factor. It has a smaller screen, built-in gamepads, and lacks the keyboard and mouse. My quick searches say that it costs about the same as most four-core Ryzen laptops with similar specs. Some comparable laptops cost more, some cost less.

Finding more uses for what you carry might not be about the money

I feel like this needs to be near the front of the post. If you’re flying to a new hotel every week doing consulting work, the cost of the gear you carry in your bag probably isn’t your primary concern.

You have a limited amount of space in your carry-on bag. You are probably trying to cram as much functionality in that laptop bag as you can manage.

Not Actually My Laptop Bag but a ThinkTank FPV Drone Backpack

If money is no object, I could try to stuff my laptop, a Steam Deck, a Nintendo Switch, and an extra laptop into my backpack. They may not all fit, or it may get ridiculously heavy, but I can certainly try.

What I’m trying to do here is figure out what roles a Steam Deck in my laptop bag might play. Can it add more value than just gaming? Can it replace hardware I am already carrying today?

Low-hanging fruit

The Steam Deck is supposed to work with pretty much any USB-C docking station. There are big, fancy, more expensive docking stations. There are plenty of options under $35, and there are also simple USB-C to HDMI adapters for around $13.

That means it will be easy to plug your Steam Deck into the TV at your hotel. That will let you play local video files directly off the Steam Deck or a thumb drive. You’ll also be able to use Netflix, Hulu, and friends from a web browser.

I’d be excited if this meant I didn’t have to pack a Fire TV stick in my backpack, but the USB-C dock will be roughly the same size and price. I guess the advantage here is that I could use the dock with my laptop as well. You might already be carrying a dock anyway!

Maybe you can leave the laptop at home

This is the idea I am most excited about. The part of the job I am doing right at this moment doesn’t require a lot of hardware. All I need is a screen, a keyboard, and a text editor and I can be writing blogs all day long. The screen doesn’t even have to be that great.

I have an old, cheap Bluetooth keyboard here that isn’t much bigger than my Nintendo Switch. I wouldn’t be surprised if it is smaller than the Steam Deck. I could throw the keyboard and the Steam Deck in my small laptop bag when I take a ride to the park.

My Nintendo Switch and Bluetooth Keyboard

I could sit in the shade and play some Dead Cells, then stop at a picnic table and write a blog post.

Maybe this setup is just enough to have with me in an emergency. Having a real Linux box with me to troubleshoot problems would be a step up from just having my Android phone. It wouldn’t be as comfortable to work on as a real laptop, but the only real problem would be comfort.

Boot from a USB SSD or run virtual machines under SteamOS

If this were my Steam Deck, I’d want to avoid messing with the host operating system as much as possible. I’ve been a Linux server guy for more than 20 years, so I’m not afraid to tinker with things, and I expect to be able to reverse any changes I make. I’m assuming SteamOS’s kernel will ship with everything required to run KVM and QEMU.

If you’re new to Linux and worried about breaking your gaming handheld, you might want to boot your alternate configuration from a USB SSD or hard disk.

Why would I want to run virtual machines on my Steam Deck?

This is the first thing that came to mind when I saw that the Steam Deck ships with 16 GB of RAM. How many virtual machines can I cram on this thing, and what should they be doing?!

Maybe you are a C or C++ programmer using distcc, and you would benefit from having four extra cores nearby compiling your code. Maybe you are a 3D artist, and your work would go faster if you could farm out your Blender rendering to your Steam Deck.

I might set my Steam Deck up with Davinci Resolve so it could render YouTube videos for me while I edit the next one on my laptop.

Do these need to live inside virtual machines? Not necessarily, but it would be nice to separate them from future SteamOS updates that might break their configurations.

How about a build, test, or demo environment for software development?

What might a developer set up here? Virtual machines where they can run Docker, Kubernetes, or k3s? Groups of virtual machines for each client?

You might boot a different SSD for each client? Maybe you have a separate encrypted partition for each client on a single external SSD? You could boot your Steam Deck off that SSD, then you can boot up the correct set of machines for your client, and if you don’t have your Steam Deck available, you could probably boot those same virtual machines on your laptop.

I imagine most folks would do this sort of work in the cloud, but maybe that just doesn’t fit your workflow. Maybe you already have a squadron of virtual machines running on your laptop.

If you do, maybe the Steam Deck would let you offload some of that to another device to free up resources on your laptop.

The Steam Deck is just another computer.

Video conferencing and live streaming to YouTube

I already carry a tiny HDMI-to-USB dongle in my bag for my Pi-KVM. Will this work with my Steam Deck? I don’t see why not!

This is definitely a ridiculously small niche of a use case, but I’d find it handy. I use my Sony ZV-1’s HDMI output as a webcam for live streaming. If you’re some sort of YouTuber, you probably packed at least one camera anyway, but why would you want to connect it to your Steam Deck?

I wouldn’t mind being able to live stream to YouTube remotely without bringing my admittedly gigantic laptop—the Steam Deck is probably less than ¼ the size.

Every once in a while I wish my live-streaming gear wasn’t plugged into my desktop PC. Maybe I’d like to shut down the PC to eliminate the fan noise. Maybe I’d just like to not worry about software on the PC goobering up my live stream. Maybe plugging the camera into the Steam Deck would just help with cabling logistics.

I know there aren’t many people who would do this, but I’d be excited to have the option.

Could I use the Steam Deck as a tablet?

I am guessing it would be super awkward, but it might work in a pinch?

I use a 7” Android tablet as a book reader. Using a color theme like Solarized Dark is quite pleasant when reading with the lights out. Could I leave the tablet at home and read science fiction books on my Steam Deck?

If the software existed, the Switch would do a fantastic job at this. All you’d have to do is pop the controllers off.

The controllers are integrated into the Steam Deck, and they’re much wider than Switch controls. Valve has been pretty quiet about the dimensions and weight of the Steam Deck, but I’m willing to bet it will make the Switch look petite.

If I were stuck in a hotel room at 2:00 a.m. itching to read a few chapters, would I be able to do it on the Steam Deck? Can I surf Reddit, Imgur, and Twitter? Can I read Hacker News? The answer to all these questions is definitely yes, but would I be comfortable doing so? That’ll be the question!

Will you do anything with your Steam Deck besides gaming?!

I want to hear from you. Are you planning on buying your own Steam Deck? Are you just going to use it as a game console? Are you going to use it to augment your other computing devices when you travel? Will you use your Steam Deck as a small laptop for writing blog content?

Let me know in the comments, or stop by the Butter, What?! Discord server to chat with me about it!

One Year With My Gotway Tesla Electric Unicycle

| Comments

I’m excited about this! I’ve had my Gotway Tesla V2 for just over a year now, and I’ve been riding for about four months longer than that. It is easily one of the best toys I’ve ever bought. An electric unicycle (EUC) is a good fit for where I live, and it gets more useful every day. The EUC is a hobby all by itself, but it also does a great job supporting my FPV drone-flying hobby.

Why did I buy an electric unicycle? (EUC)

Not long after we bought this house, I ordered an inexpensive folding electric scooter. It was fine for what I used it for. I’m two houses away from Plano’s amazing paved bike paths. There’s probably a dozen miles of trail to ride without even having to cross a street. It was fun to take my laptop or FPV drone backpack out riding with me.

The scooter wasn’t portable. It sounds portable because it folds. Fifty pounds doesn’t sound too heavy, but it is when you’re trying to heft an awkwardly shaped 4’-long tube with handlebars into the back of your tiny SUV. I wanted a personal electric vehicle (PEV) that I could easily take anywhere.

My Gotway Tesla V2 at Oak Point Nature Preserve in Plano TX

My friend Alex told me I should get a OneWheel XR, but they’re about $1,800. I didn’t even know if I could ride one. Then I discovered the existence of EUCs. I happened to see a refurbished InMotion V5F for $399 shipped. Could I ride a unicycle? Would I ever use it? At that price, it seemed worth finding out!

The InMotion V5F has as much power, range, and nearly as much top speed as a OneWheel XR at a fraction of the price. It was a good deal, and it got me hooked. I’ve been lending the V5F out to friends so they can learn to ride, but it came back last month with a dead battery. I suspect there’s just one or two dead 18650 cells in the pack, but I haven’t opened it up to check.

Why did I upgrade to the Gotway Tesla V2?

To tell you the truth, I didn’t really outgrow my InMotion V5F. I would have been content to ride it for at least a year, but my friends made that difficult for me! My friend Tanner bought a Gotway MSX Pro, and my wife upgraded to a Pace Aventon 350 e-bike. Both of these easily go faster than my InMotion V5F’s 17 mph top speed. I was getting warning beeps all the time when I rode with those two!

My scooter had me shying away from buying one of the biggest wheels with huge batteries. The V5F was less than 25 pounds. [Tanner’s MSX][mxp] was 55 pounds. Do I really want to spend even more money on a heavier wheel? If I have a 40 mph top speed, am I going to want to go that fast? Probably. Eventually.

There are so many choices of wheel between my InMotion V5F and Tanner’s then top-of-the-line MSX Pro. Which one should you choose?

A discount at eWheels on the Gotway Tesla V2 nudged me in that direction. It has almost three times as much battery and nearly double the top speed of my little InMotion V5F, and it only weighs 42 pounds. I believe it was on sale for $1,350, and it shipped almost immediately. Tanner’s top-of-the-line wheel would have cost $650 more, and it wouldn’t have shipped for a month or two!

How much do I ride the Tesla?

Not as much as I’d like! When I had around 700 miles on the odometer back in March, I was joking that I’d like to put another 700 miles on it before I’d had the wheel for a year. While this was absolutely within the realm of possibility, I expected I might actually hit 1,000 miles. I didn’t even manage that! There’s something just shy of 850 miles on the odometer right now.

I do the majority of my riding on our local bike trails. There’s a fantastic picnic table in a secluded spot quite a ways from any parking about four miles from here. I like to take my laptop out there and write blogs for an hour. The vast majority of my rides wind up being 8-mile rides because of this.

So much rain!

The weather has been keeping me home. A lot of days were just a little too windy and chilly to be sitting outside at my laptop. We’ve had a lot of heavy rain, but we’ve also had a ton of days with light rain.

The rain washes fine silt onto the bike path, and that stuff is ridiculously slippery, and every puddle could have a layer of that stuff at the bottom. If it rains today, I probably won’t want to ride tomorrow. If it rains twice in a week, I’m unlikely to get out.

The pandemic has been restrictive

It is so easy to throw the Tesla in the car. Now that my friends and I are fully vaccinated, it won’t be long before we start driving out to places and going for rides. That will be fun and exciting!

Not only that, but there are a handful of places I can ride to that are within 5 miles of home. Many of these places are just off the bike trail, so I barely have to deal with cars and traffic. I’m looking forward to hitting up the donut shop, Napoli’s pizza, and the frozen yogurt shop.

The pandemic isn’t stopping me from stopping at the donut shop. The trouble is that they close at noon, and I am not a morning person.

We eat pizza from Napoli’s almost every week. I don’t even know if they’re open for indoor dining. I assume and hope that they are not, but when it is time for that, I look forward to heading over there with my laptop on hot afternoons so I can work in some air conditioning while eating delicious pizza!

The yogurt shop seems icky during a pandemic, because it is a self-serve shop. As far as I know, that is still the case right now. I’d feel much better about one or two employees touching all the toppings and ice cream dispensers. Knowing that all the folks that can’t even figure out how to put their mask over their nose are touching the gummy bears and peanut butter cups creeps me out.

Everything will be getting better, and I’ll be excited to use my wheel for all these activities I had in mind when I ordered my first EUC before the pandemic!

Was the Tesla V2 the right choice?

The Tesla V2 really does sit in the sweet spot for me. I do my best to not ride faster than about 20 mph, because I don’t wear enough gear for that to be safe, so the Tesla still has speed that I can grow into. I rarely ride farther than 12 miles on a single day, and I’ve gotten 34 miles out of a single charge, so the range is quite reasonable for me.

At its price point, the Tesla is an amazing wheel.

Do I ever wish I had more wheel?

Yes. Most definitely. My Tesla is fantastic on the buttery-smooth bike paths, it does just fine on the rougher streets, and it does well enough when I need to take a shortcut off road to avoid obstacles or people.

I’ve put a couple of miles on Tanner’s Veteran Sherman. I always joke that it really does ride like a tank. The first time I tried it, I rode to the end of my street, but I couldn’t turn it around in our cul-de-sac. I leaned and twisted as hard as I felt comfortable doing so, but it just didn’t want to turn. I felt the same way when I got on my Tesla after spending months on the tiny InMotion V5F.

The Sherman just goes where you point it. It is big and heavy, and that knobby tire just wants to stay on course. Every time I put a few miles in on streets instead of on the bike path, I kind of wish I was riding a Sherman. I’d feel more confident, and I know it’ll handle any surprise bumps or small potholes better than my Tesla.

I’m constantly tempted by the KingSong S18!

When I bought my Tesla V2, the KingSong S18 was just about to be open for preorders. It was a tempting wheel at the time, but I’m so glad I chose the Tesla. I would have been waiting months for the S18 to ship, and the quality of the first batch was pretty awful.

It sounds like the current revision of the KingSong S18 has ironed out most of the problems. It sounds like a fun, agile wheel, and I would love to have a suspension.

On paper, the KingSong S18 is basically a Tesla V2 with a suspension, though Wrong Way says the S18 goes quite a bit farther on a charge!. The extra $500 gets you a bit more battery and power, a little more top speed, a suspension, and a wider tire. I would pay the extra $500 just for the suspension. The rest is a nice bonus!

If something happened to my Tesla today, I would almost definitely order a KingSong S18 to replace it.

There is no way I would buy an S18 to park next to my Tesla. They’re just too similar. If I were going to own two wheels, I’d be looking at something like a Sherman or Gotway RS19. Something big. Something with more range. Something that just plows through grass and rough terrain.

What about the Tesla V3? Or is it the Begode T3?

Among other minor changes, the Begode T3 has a hollow motor and a bigger battery. In theory, the hollow motor should be a big upgrade since it allows for a much bigger bearing. In practice, people have been having trouble with bearings failing in hollow-motor wheels. We’ll see how that goes.

I wouldn’t mind having 50% more battery, but I worry that this is going to push the price too high. I’m waiting for the Tesla V3 to show up at eWheels before I decide whether I think it is a good value. At $1,350 the Tesla V2 has been an easy choice. If that gets pushed to $1,550 or more, then I’d be more tempted to pay a little more for an 18” or 19” wheel.

The changes make sense for Gotway/Begode. The Gotway MCM5 v2 specs and pricing make more sense if they also push the specs of the Tesla up a few notches.

I haven’t even told you how the Tesla has held up!

It has held up way better than the InMotion V5F! I can’t really blame InMotion for that. I dropped my V5F A LOT while I was learning. At least four other people besides myself practiced on my V5F, and I am assuming they all dropped it quite a bit. It is scuffed, bruised, and a bit cracked. I wouldn’t be horribly surprised if the drops are the reason it is no longer holding a charge.

I have dropped my Tesla a few times, though never in the spectacular ways my V5F has crashed. There are a few scuffs on the Tesla, but no cracks. The dipping pedals have scraped the ground a bit, but overall it is in fine shape.

I haven’t done a range test since the first few weeks I had it, but I did do a pretty long ride last month. I clearly remember being impressed that the battery was still working well, but I can’t find photographic evidence to back up my memory. I recall riding around 15 miles and still having about 70% charge remaining.

I am quite confident that I can still [get 34 miles on a single charge][gtrt].

The Tesla forced me to upgrade my safety gear

When I rode my little 14” V5F, I usually only wore my cheap bicycle helmet. I used to average about 10 mph with short bursts up to 15 mph. I was always able to jump off and jog to a stop when things went wrong.

Then I bought the Tesla. My average speeds quickly climbed to 15 mph with short bursts up to 20 mph. These days I have EUC World set to give me warning beeps at 21 mph. Most of my rides average 15 mph still, because I do have to spend time navigating around other people, but I’m bursting up to 25 mph, and I’m pretty good at staying just 1 mph short of the beeps.

I started wearing my wrist guards as soon as I acquired the Tesla. When I noticed that my average speeds were getting to 15 mph, I knew I needed a better helmet. There’s a much higher chance of falling flat on my face now, so I wound up buying a Bell Super 3R helmet.

I tried a cheap motorcycle helmet, but visibility and airflow are both poor. The Bell cost three times as much, but it looks like a block of Swiss cheese. I get plenty of airflow even if I’m moving slow, the face hole is quite large, and I have that sturdy guard protecting my chin.

I’m in Texas. We’ll be over 100° most days every summer, and it definitely isn’t a dry heat. The Bell Super 3R is worth every penny.

It has only been a year, and you can’t buy a Tesla V2 anymore!

I wish my experiences could be a little more relevant to you. I don’t think the Tesla V2 was released more than a year before I bought mine, and as of a few months ago, stock of the last of the V2 models seems to be running out everywhere.

I’m excited that I can tell you that I’ve had a good year with my Tesla V2, and that it has treated me so well. I’m disappointed that you can’t directly repeat my success. Sure, the new Tesla seems like it will be a fantastic wheel, but I’m not expecting it to be the right wheel for someone that would be eyeballing the Tesla V2!

As near as I can tell, it is difficult to choose a bad wheel. There are some obvious gotchas to watch out for. You’ll probably hate lugging a 77-pound Veteran Sherman up three flights of stairs every day, and commuting on a tiny MTen3 will probably be uncomfortable.

These wheels are all made by companies in China that are looking to cut every corner they can get away with. Some wheels have been catching fire, though the problem doesn’t seem to be nearly as rampant as the hoverboard debacle everyone probably remembers.

What are the plans for the next year?!

First of all, I am hoping to not upgrade to something bigger and better this year. New toys are always tempting. I’d love a suspension. I’d enjoy a bigger, faster, even more stable wheel. More importantly, though, I would like a properly waterproof wheel. Not necessarily something I can submerge, but something that won’t be likely to cut out on me in the rain. Maybe in a year or two there will be a nice suspension wheel that checks this box.

I am just going to continue to ride. I look forward to riding to the donut shop. I look forward to writing blogs while eating pizza. I look forward to finding new places to ride. In other words, I am looking forward to doing all the things that the pandemic has prevented me from doing!

What do you think? Are you riding a Gotway Tesla V2? Are you looking to buy something similar? Have you been riding for a while? Are you a casual EUC user like me, or are you putting a ton of miles on your wheel? Do you think I need to invest in the gear that will allow me to safely ride faster, or should I just stay casual? Let me know in the comments, or stop by the Butter, What?! Discord server to chat with me about it!

My Sony ZV-1: Four Months Later

| Comments

I have had my Sony ZV-1 for nearly four months now. It has been a fantastic little camera. It is doing the jobs I expected it to do, and it is doing them quite well.

I considered waiting another month or two before writing this follow-up blog post. I’ve been very much underutilizing my poor ZV-1. We’ve had month-long medical emergencies, cold, rain, a long cat-related medical emergency, and then snow, power outages, and extremely cold weather here in Plano!

I certainly expected that I’d haul the camera and an FPV miniquad out with me on some rides on my Gotway Tesla electric unicycle and talk at the camera about something interesting by now. It just hasn’t happened. I’m confident that it will.

What made Pat buy the Sony ZV-1?

When Jeremy Cook invited me to be the co-host of The Create/Invent Podcast, I knew I needed a camera upgrade. If I wanted to be the best-looking guy on the podcast, I needed something better than my Logitech C920 webcam.

Under ideal conditions, the C920 isn’t a bad video camera. I noticed last week when Brian and I tested the functionality of for podcasting. Brian’s Logitech C922 didn’t look bad, but something looked off. When I analyzed his locally recorded video, I noticed that quite a few frames wound up being doubled.

I’m using the Sony ZV-1 with an inexpensive USB-to-HDMI adapter. It is the same inexpensive HDMI adapter used by the Pi-KVM project. How cool is that?!

I don’t seem to drop any frames. The ZV-1 really shines under poor lighting conditions, but when I light myself well, the C920 really isn’t all that far behind.

Except for the inconsistent frame rate. That’s just awful.

Adjusting settings while recording a podcast is challenging!

I record all my podcasts using manual exposure settings. I want to get as close to a 1/60 shutter as I can. I also want as much blurring of the background as I can get, so I want to make sure the ZV-1 is wide open at f/1.8. That leaves me with control of the ISO, so it isn’t difficult to tune things in.

The only problem is that the camera is looking right at me. Sure, the screen is flipped around, but I have to reach around the other side to work the limited numbers of buttons and knobs on the Sony ZV-1. Yes, up is always up, but left and right are reversed. I often move cursors in the wrong direction or hit the wrong button. I’m glad I can get this stuff set up before we start recording an interview!

I did finally manage to get the Android app working. It certainly helps with this, but connecting an app to make these adjustments brings its own kind of pain. You have to find the app, make sure the camera is in the right mode to accept a connection, and even then you might try two or three times before it works. Even when everything works correctly, this still takes quite a bit of time.

Firmware update turns the Sony ZV-1 into a USB webcam?

As soon as I heard about this firmware update, I downloaded it immediately. Could I really use my Sony ZV-1 as a webcam and skip my HDMI-to-USB dongle?!

Sort of. It works. With the new firmware, the ZV-1 does indeed show up as a plain old UVC webcam as long as you activate the correct options in the menu. It most definitely isn’t a replacement for using a USB dongle.

The ZV-1 is limited to 720p via USB. It claims to run at 30 frames per second, but the output sure doesn’t look like it. It is an upgrade in picture quality over the Logitech C920, but the ZV-1 has that same sort of stuttering frame rate problem over USB.

It is worth spending $20 on an HDMI cable and a USB dongle to get smooth 1080p or 4K video out of your Sony ZV-1.

Do you really need a brand-new Sony ZV-1?

It depends. Just a few weeks ago my friend Alex sold his Sony RX100 IV to my friend Brian, and Alex snagged a used Sony ZV-1 off Craigslist. They both got extremely good deals, and I am most definitely envious.

I got to do a good amount of research when Brian was trying to figure out if the older RX100 would be a good fit for him. The Sony ZV-1 is really an RX100 VIII. That’s four hardware revisions newer than Brian’s used RX100 IV.

NOTE: That’s Brian talking to the camera about Tailscale using his RX100 IV.

Brian wants to use his RX100 as a webcam and as his top-down camera in his recording studio. His older RX100 has a comparable lens and exactly the same 1” sensor as my Sony ZV-1. The RX100 IV also has good eye-tracking autofocus.

It is very well possible that 5 years of image-processing improvements mean my ZV-1 makes better use of that sensor, but at least we know they’re working with the same hardware.

I’m quite confident the RX100 will work just as well as my ZV-1 would for his intended use case. I don’t want to tell you how much money Brian saved.

I’m not saying you should buy a used RX100 IV. It may not be the best value. For all I know, you can find newer cameras in the RX lineup for less. The MK4 just happened to be the one that traded hands within my circle of friends recently!

What are the advantages of the ZV-1 over previous RX100 models?

The Sony ZV-1 has some really nice upgrades over the previous models, especially if you’re planning on doing the talking-to-the-camera shtick. The built-in microphone is much improved, and the screen has more comfortable articulation if you want to film yourself. Most of the RX100 series even lacks a microphone input.

Are these features worth $150 to $300 or more compared to one of the previous RX100 models? For me, the answer is easily a yes!

The older the RX100, the bigger the difference in price, but the difference in performance grows wider with age, too. It is easy to start pointing at improvements on the spec sheet to find $150 or more extra value in the ZV-1.

I told Brian that I’d be buying that RX100 IV just to keep it mounted in my office if he didn’t buy it. Even if I did buy that camera, I would still want my Sony ZV-1 to take with me for recording on the go.

Using the Sony ZV-1 for photography

I don’t know that I have a lot to add to this part of the discussion since my first few days with the camera. I don’t like using the ZV-1 for photography. It doesn’t have a viewfinder. If I’m going to hold a camera up in my hands without being able to help hold it steady with my face, I might as well just use my phone.

That said, the Sony ZV-1’s dynamic range is much better than I ever expected! My aging full-frame Canon 6D is supposed to have somewhere around 12 stops of dynamic range. I did some pretty simple tests in my office. I shot very underexposed pictures on both the ZV-1 and 6D and pushed the raw photos up to a reasonable exposure.

My tests were terrible, and it didn’t feel like a fair comparison. The ZV-1 seemed like it could be pushed even brighter from underexposure than the Canon 6D, but the 6D has much nicer color science.

I really only have one actual photo that I’ve taken with the Sony ZV-1. At the time I took this photo of a hot air balloon, I didn’t have a recent enough version of Darktable to edit the raw file, so I just published the jpeg on Instagram.

I’ve since upgraded Darktable, and I can edit the ZV-1 raw files. I definitely feel like it is worth shooting raw on this camera. This isn’t a heavily edited photo. The extra blue in the sky and the shade of green of the grass was probably my choice, but the raw file really let me recover detail in the shadows so you can see the texture of the grass. The jpeg from the camera just didn’t have that possibility.

Did I buy the right camera? Should I have paid more for a Sony a6600?!

I’m doing a bad enough job at taking my Sony ZV-1 with me. I haven’t gotten any vlogging done over the last four months except for a couple minutes of test footage. If I’m not going to manage to take my tiny ZV-1 out with me, I would never manage to take an APS-C body and lens out on the road!

This is like comparing apples to oranges, but at least they’re both fruits. There’s a lot of overlap in functionality, and there’s a lot that the Sony ZV-1 can do nearly as well as the Sony a6600.

Both cameras are going to do well when I can control the lighting. Sure, a nice lens on the a6600 would improve my podcasts a bit, but would that be worth spending three or four times as much money? Maybe someday!

The a6600 without a lens is larger and weighs nearly twice as much as the Sony ZV-1. Add even a pancake lens to the a6600 and it just won’t fit in my front pocket. Having the option to drop the Sony ZV-1 in my pocket is awesome, and when I do, I am carrying a camera, lens, and reasonable microphone with me!

Hey Pat! What about your DJI Osmo Pocket?!

When I bought the Sony ZV-1, I was asking myself if I would continue to use the Osmo Pocket for vlogging. I wish I figured out the answer to that question over the last four months. I’m sure I’ll have a better answer over the coming months, but I’m going to give you the facts.

I’m excited that I can fit the ZV-1 in my pocket, but that’s not the whole story. There’s only so much you can do without some sort of tripod. You most definitely can’t hole the ZV-1 up in front of you and talk to the camera without a small tripod!

My smallest tripod is bigger than my DJI Osmo Pocket, and if I take the Sony ZV-1 out for a ride on my electric unicycle, I’m going to have to bring a tripod anyway.

This is where I start to ask questions. Why carry two things when the Osmo Pocket is smaller than either the tripod or the ZV-1?

I’ve tried vlogging with a phone. Every time you turn on the phone you have to unlock it, find your camera app, flip the camera around, then hit record. I can take the Osmo Pocket out with one hand and be recording myself in less than 5 seconds, and I don’t even have to look at the thing to do it.

I don’t have an answer. I expected I would have posted at least two or three vlogs with the ZV-1 by now. I’ve been doing a bad job and it hasn’t happened yet!

The conclusion?! Already?!

Yes. We’re already to the conclusion, or at least the conclusion so far. I’m doing a bad job. I should have used the Sony ZV-1 for more work over the last four months, but life has gotten in the way.

I will try to do a better job utilizing my new camera over the coming months, but so far it has been doing its primary job of replacing my webcam quite flawlessly. It is a huge upgrade, and I’m happy to have it!

What do you think? Did I write my update post on the Sony ZV-1 too early? Am I underutilizing it? Am I missing out on some important features, or do you think I bought entirely the wrong camera?! Let me know in the comments, or stop by the Butter, What?! Discord server to chat with me about it!

40-Gigabit Infiniband: An Inexpensive Performance Boost For Your Home Network

| Comments

I’m not new to the world of Infiniband. I bought a pair of 20-Gigabit Mellanox Infiniband cards in 2016 to connect my desktop PC to my virtual machine host. It has been chugging along just fine, though I’ve never gotten a full 20 gigabits per second out of this setup. We’ll talk more about that later.

20-Gigabit and 40-Gigabit Infiniband Cards

My posts about my upgrade from gigabit Ethernet to Infiniband have always been solidly in my top ten posts according to my analytics, and that has only just barely been true lately. That got me thinking that my 20-gigabit setup is getting long in the tooth, and it might just be time for an upgrade!

Do I really need to upgrade?

No. I do not need to upgrade. When files are cached in RAM on my NAS virtual machine, my 20-gigabit hardware can hit about 700 megabytes per second over NFS. That’s more than twice as fast as it can pull data off the hard disks or SSD cache. I’m most definitely not going to notice an upgrade to faster hardware.

That’s not the only reason to upgrade. You fine folks shouldn’t be buying 20-gigabit hardware any longer. The 40-gigabit gear is nicer, and it costs about what I paid for used 20-gigabit gear in 2016. I don’t like recommending things I’m not using myself, so an upgrade was definitely in my future.

My old gear wasn’t limited by the Infiniband interface. It was limited by the card’s PCIe interface and the slots I have available in my two machines.

My server side has a 16x PCIe 2.0 slot available and my desktop has a 4x PCIe 2.0 slot. I knew I wouldn’t hit 40 gigabits per second with the new hardware, but as long as they negotiated to PCIe 2.0 instead of PCIe 1.1, my speeds would surely double!

I had a lot of confusion about PCIe specifications!

When I wrote about my 20-gigabit Infiniband cards in 2016, I claimed that the 8 gigabits per second I was seeing was a limit of the PCIe bus. I was correct, but in rereading that post and looking at my hardware and the dmesg output on driver initialization, I was confused!

[    1.709385] mlx4_core: Mellanox ConnectX core driver v2.2-1 (Feb, 2014)
[    1.709449] mlx4_core: Initializing 0000:02:00.0
[    4.001247] mlx4_core 0000:02:00.0: PCIe BW is different than device's capability
[    4.001301] mlx4_core 0000:02:00.0: PCIe link speed is 2.5GT/s, device supports 2.5GT/s
[    4.001356] mlx4_core 0000:02:00.0: PCIe link width is x4, device supports x8

02:00.0 InfiniBand: Mellanox Technologies MT25418 [ConnectX VPI PCIe 2.0 2.5GT/s - IB DDR / 10GigE] (rev a0)
        Subsystem: Mellanox Technologies MT25418 [ConnectX VPI PCIe 2.0 2.5GT/s - IB DDR / 10GigE]

Mellanox claims my old 25408 cards are PCIe 2.0. When the driver initializes, it claims the cards are PCIe 2.0, but the driver also says they’re operating at 2.5 GT/s. That’s PCIe 1.1 speeds.

This isn’t relevant to the 40-gigabit or 56-gigabit hardware, but I think it is worth clearing up. All the cards in Mellanox’s 25000-series lineup follow the PCIe 2.0 spec, but half of the cards only support 2.5 GT/s speeds. The other half can operate at PCIe 2.0’s full speed of 5 GT/s.

You might want to look at 56-gigabit Mellanox cards

I looked at 56-gigabit Infiniband cards. I bought two, but I made a mistake. I accidentally ordered a pair of HP FlexibleLOM cards for only $25. FlexibleLOM is very close to being PCIe, but the pinout isn’t compatible and the form factor isn’t quite right. Actual PCIe 56-gigabit cards cost $80 on eBay.

I don’t know why I ordered FlexibleLOM cards. I think I was just super excited about 56-gigabit Infiniband cards for only $13 each. Don’t make my mistake.

NOTE: FlexibleLOM to PCIe adapters exist, and they might be a really good value, since you can get two FlexibleLOM 56-gigabit cards for $25 compared to $150 or more for a pair of PCIe cards. They didn’t seem easy to source, so I opted to go the easy route.

I wound up downgrading to 40-gigabit Mellanox ConnectX-3 PCIe cards. The 56-gigabit cards won’t run Infiniband any faster for me because my available PCIe slots are the real bottleneck here. If you’re running Infiniband, this will likely be true for you as well, and you can save yourself $80 or more.

If you want to run super fast Ethernet using these cards, it might be worth spending a few extra dollars. My 40-gigabit cards can only operate at 10 gigabits per second in Ethernet mode. The 56-gigabit Mellanox cards can operate as 40-gigabit Ethernet adapters.

Ethernet is easier to configure than Infiniband, especially if all you’re interested in is IP networking. I was hoping to test this out, because 40gbe would simplify my setup quite a bit. I opted to save the $80 and just continue routing to my virtual machines.

Did I mention that this is all used enterprise-grade hardware?

I’m not encouraging you to buy brand new Infiniband cards. You’ll pay at least twice as much for a single card as it would cost you to connect three machines with dual-port Infiniband cards from eBay.

The 20-gigabit Infiniband cards I bought in 2016 were already 10 years old when I started using them. The 40-gigabit cards I just installed are probably around 10 years old as well.

Can I run Infiniband across my house?

Not easily. I’m using a 1-meter QSFP+ cable to directly connect one Infiniband card to another. My desktop computer and KVM host both live in my office and they sit right next to each other. These QSFP+ cables can only be about 3 meters long.

If you need a longer run, you have to use fiber. I’m seeing some 50’ lengths of fiber with QSFP+ modules on each end for around $70. There are QSFP+ transceiver modules for $30. You’d have to find your own compatible fiber to plug into those modules.

What if I need to connect more than two machines?!

The vast majority of Infiniband cards on eBay have two ports. That’s enough ports to directly connect three machines. This is what my friend Brian did with his 10-gigabit Ethernet setup. In practice, our configurations are pretty similar. I just have one fewer machine on my super-fast network.

My desktop and VM server live on two different networks. They’re both connected to my home’s gigabit-Ethernet network, and they’re both plugged into my tiny Infiniband network. The Infiniband network has its own subnet, and I’m using the hosts file on my desktop to make sure the Infiniband connection is used to connect to any virtual machines that need super high-speed connections. This is especially important with my NAS virtual machine.

What if I need to connect more than THREE machines, Pat?!

You could install even more Infiniband cards, but I wouldn’t recommend it.

This is where my old 20-gigabit DDR Infiniband adapters had the edge. It was easy to find 8-port 20-gigabit Infiniband switches on eBay for $100 or less.

There are a few small 40-gigabit QDR Infiniband switches, but most are huge 36-port beasts. They’re not expensive. Some are as low as $150, but most are closer to $250.

This is quite a bump in cost compared to plugging three machines directly into one another in a star topology, but using an Infiniband switch also simplifies the network configuration considerably. It is still a fraction of the price of 10gbe over CAT-6 cable.

Why are you using Infiniband?

It just sounds cool, doesn’t it? It often starts fun conversations too. When people are chatting about network stuff, and you mention that you run Infiniband at home, folks are often surprised. More often than not they’ve never even heard of Infiniband. You also get to say goofy things like, “To Infiniband and beyond!”

For me, Infiniband makes my NAS feel like a local disk installed in my desktop. The virtual machine host where my NAS VM lives isn’t exactly high-end these days, and I didn’t build it to saturate a 10-gigabit connection. It has a pair of mirrored 250 GB Samsung 850 EVO SSDs and four 4 TB 7200 RPM hard disks in a RAID 10. The SSDs are the boot volume and are also being used as lvmcache for the hard disks.

I usually see read and write speeds in the 300 megabyte-per-second range. Small random writes get propped up by the SSD cache, but most of what I hit the NAS for involves video editing. The storage in my cameras is much slower than this, and my disks are rarely the bottleneck when editing video.

The fastest disks in my server are the 850 EVO SSDs, and their top benchmarked speed is somewhere around 350 megabytes per second. The spinning RAID 10 probably tops out around there too. My disk access wouldn’t be any faster if they were installed directly in my desktop.

This just means I have room to grow. I could upgrade to faster solid-state drives for my lvmcache and triple the count of disks in my RAID 10, and I would still have a bit of extra room on the network. That’s awesome!

What can you do with Infiniband that you can’t do with Ethernet?

Infiniband supports Remote Direct Memory Access (RDMA). This allows memory to be copied between hosts without much CPU intervention.

The most common use of RDMA is in conjunction with iSCSI devices. iSCSI normally operates over TCP/IP. When using iSCSI on Infiniband, the IP stack is bypassed and memory is transferred directly from one machine to another. This reduces latency and increases throughput.

If you’re connecting virtual machines to a Storage Area Network (SAN), this may be of interest to you.

I’ve really only ever used iSCSI to say that I’ve done it and to tell people how easy it is to do. I’m not interested in setting things up here at home to rely on iSCSI and a separate storage server.

How do I set up Infiniband on Linux?

Everything I wrote about setting up Infiniband in 2016 works today. Sort of. A few weeks ago I upgraded my KVM host from Ubuntu 16.04 to 18.04 and then immediately to 20.04. One of those upgrades decided to rename my Infiniband interfaces.

[   11.960168] mlx4_core 0000:01:00.0 ibp1s0: renamed from ib0
[   11.975603] mlx4_core 0000:01:00.0 ibp1s0d1: renamed from ib1

This goofed up my configuration in /etc/network/interfaces. Not only that, but the old network configuration using /etc/network/ has been deprecated in favor of NetworkManager.

I’m still using the old-style configuration on the server, and it works fine. All I did was pull the old 20-gigabit cards, install the new 40-gigabit cards, and all my configuration was just working on my first boot.

If you have a fresh install of Ubuntu 20.04 or any other distro that is using NetworkManager, I have to imagine that it is much easier to just use NetworkManager.

Using IPoIB with KVM virtual machines

There are two solutions for running regular network traffic over Infiniband. There’s Ethernet over Infiniband (EoIB), which runs at layer 2, and there’s IP over OB (IPoIB) which runs at layer 3. EoIB is not in the mainline Linux kernel, while IPoIB is. IPoIB just works out of the box.

I wanted to avoid using EoIB because it requires installing software from Mellanox. What if I want to upgrade my desktop to a bleeding edge kernel that Mellanox doesn’t support? What if there’s a conflict between my Nvidia driver and the Mellanox EoIB driver? I don’t want to deal with any of that.

That created a new problem. Since IPoIB runs on layer 3, I can’t just bridge virtual machines to that device. Bridging happens at layer 2. This means I am forced to route from the Infiniband interface to my virtual machines.

KVM Machines

I touched on this a bit earlier when I mentioned that 56-gigabit Mellanox cards could also be used as 40-gigabit Ethernet devices. If you want to use drivers in the mainline kernel AND be able to plunk your virtual machines onto a bridged interface, it may well be worth spending the extra cash on 56-gigabit cards. The Ethernet drivers will have no trouble with this.

This is already a long blog post. I wrote about my adventures in getting IPoIB to work well with the 20-gigabit Infiniband cards, and the configuration hasn’t changed. There are some gotchas in there, for sure.

You need to get your MTU up to 65520. If any interface in the chain is stuck at the default of 1500, you might experience extremely slow speeds to your virtual machines. I had a persnickety interface hiding on me.

Even with everything configured correctly, you’re going to lose a little throughput when routing. On the 20-gigabit Infiniband hardware, I was losing roughly one gigabit per second when talking to the virtual machines. I’m doing better with the 40-gigabit gear, so your mileage may vary here.

Let’s talk about performance!

This is the part I’ve been waiting for ever since I pulled the trigger on the new Infiniband cards. Here’s what I know.

I tend to see 300 megabytes per second when connected to my NAS VM with my old 20-gigabit Infiniband hardware. That’s about three times faster than gigabit Ethernet, and it is pretty much the top speed of my solid-state and hard drives. This isn’t going to be improved, which is a bummer.

Let’s start with what the logs say when the driver initializes the Infiniband cards:

[   16.270996] mlx4_core 0000:06:00.0: 16.000 Gb/s available PCIe bandwidth, limited by 5.0 GT/s PCIe x4 link at 0000:02:04.0 (capable of 63.008 Gb/s with 8.0 GT/s PCIe x8 link)

KVM server:
[    9.313679] mlx4_core 0000:01:00.0: 32.000 Gb/s available PCIe bandwidth, limited by 5.0 GT/s PCIe x8 link at 0000:00:02.0 (capable of 63.008 Gb/s with 8.0 GT/s PCIe x8 link)

If I had a PCIe 3.0 slot with 8 lanes available on each end, my maximum speeds would be around 64 gigabits per second. I’d need both ports to reach speeds like that!

In the server, there are 8 PCIe 2.0 lanes available giving us up to 32 gigabits per second. My desktop has 4 PCIe 2.0 lanes available, which is my limiting factor here. The only faster slot in my desktop is the 16x PCIe 3.0 slot where my Nvidia GPU lives. I’m just going to have to live with a 16-gigabit top speed.

Next up is the iperf benchmark. This will give me a more realistic top speed including all the IP network overhead.

KVM Server as host:
Server listening on TCP port 5001
TCP window size: 85.3 KByte (default)
[  4] local port 5001 connected with port 45530
[ ID] Interval       Transfer     Bandwidth
[  4]  0.0-10.0 sec  14.3 GBytes  12.3 Gbits/sec

KVM Server as client:
Client connecting to, TCP port 5001
TCP window size: 6.01 MByte (default)
[  3] local port 36662 connected with port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec  14.9 GBytes  12.8 Gbits/sec

The old cards topped out at 6.53 gigabits per second. The new cards are nearly twice as fast!

When routing to my NAS virtual machine, my iperf tests would run about 700 megabits per second slower compared to testing directly against the KVM host. I was super hyped up when I saw the new numbers!

NAS as host:
Server listening on TCP port 5001
TCP window size: 85.3 KByte (default)
[  4] local port 5001 connected with port 37304
[ ID] Interval       Transfer     Bandwidth
[  4]  0.0-10.0 sec  14.1 GBytes  12.1 Gbits/sec

NAS as client:
Client connecting to, TCP port 5001
TCP window size: 2.50 MByte (default)
[  3] local port 59246 connected with port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec  14.9 GBytes  12.8 Gbits/sec

This is awesome! I’m losing zero to a couple of hundred megabits per second to my extra hop. That’s a big improvement!

iperf is fun. I get to throw around gigantic numbers that I can point at excitedly. That’s great, but I’m more interested in what these numbers mean for me on a day-to-day basis. What kind of speeds can my NFS server reach?

Caching and forcibly dropping those caches isn’t going well for me in my attempt to reproduce these tests. They’re all going too fast! Here’s the tweet with my original NFS tests:

My unprimed, mostly uncached test copy of a 4 GB DVD image ran at 272 megabytes per second. That’s right around my usual speeds. It is limited by the SSD cache and the rather small number of ancient 4 TB mechanical drives in the server.

Then I dropped my local caches and transferred the same file again. There’s more than enough RAM in the NAS virtual machine to hold the entire DVD image in cache, so I should be testing the maximum throughput of my NFS server. You can see that I’m hitting 1.1 or 1.2 gigabytes per second. I’ve seen it hit 1.3 gigabytes per second just as often, so my NFS server is hovering right around the 10-gigabit-per-second mark. That’s not bad!

The most I’d ever seen out of the old 20-gigabit hardware over NFS was around 700 megabytes per second.

The last dd command winds up testing the local cache on my desktop. That can move the file at nearly 10 gigabytes per second. Isn’t it neat being able to move a file across the network at even 10% the speed of RAM?!

What does this mean for Pat?

This is pretty much what I’d predicted and exactly what I was hoping for. My Infiniband network speed has just about doubled. That’s fun!

I’m not going to notice a difference in practice. My disks were my bottleneck before, and I knew they would continue to be my bottleneck after the upgrade.

I’m actually maxing out my available PCIe slots. That’s exciting! Not only that, but my network is actually truly faster than Brian’s 10-gigabit Ethernet. That’s even better!

For most home NAS builds, the gigabit Ethernet interface is the bottleneck. My tiny Infiniband network is rarely going to be using more than 25% of its capacity. I can grow into a lot more hard drives and faster SSD cache before I saturate this 40-gigabit hardware!


I’m pleased to be able to say that I feel the same way about the 40-gigabit Infiniband hardware as I did about the 20-gigabit hardware five years ago. At around $100 to connect two machines, it really is an inexpensive performance boost for your home network.

It may not have been a wise investment of time, effort, and $100 for me. I’m not going to see any real advantage over my old gear. If you’re already running 10gbe or 20-gigabit Infiniband, you’re probably in the same boat, and there isn’t much reason to upgrade. If you’re investing in faster-than-gigabit hardware for the first time, I think you should skip that stuff and go straight to 40-gigabit Infiniband or even 56-gigabit Infiniband cards that can do 40-gigabit Ethernet.

What do you think? Do you need to be able to move files around at home faster than the 100 megabytes per second you’re getting out of your gigabit Ethernet network? Is 40-gigabit Infiniband a good fit for you, or would you rather pay double for 40-gigabit Ethernet cards? Are you glad I paid for a useless upgrade just to publish my findings? Let me know in the comments, or stop by the Butter, What?! Discord server to chat with me about it!

Self-Hosted Cloud Storage with Seafile, Tailscale, and a Raspberry Pi

| Comments

I am a fan of Dropbox-style file sync services. I’m not a fan of letting someone else have the keys to access my encrypted data. Back in 2013, I tested every open-source self-hosted cloud-storage solution I could get my hands on.

At the time, Seafile was the only Dropbox-style option that could meet my needs. Other software might work today, but Seafile hasn’t failed me in 7 or 8 years.

In 2013, my Seafile server lived in a virtual machine on a physical server I already had colocated in a data center. In 2018, my last colocated server started having hardware issues, so I started moving services to the cloud. I wound up subscribing to’s Seafile service in Romania.

Some things have changed since then, and I’ve decided it is time to bring Seafile back in house.

The parts list

I completely forgot to list the parts I used when putting together my little Raspberry Pi server. Sure, I mentioned all the parts in various places, but it would be easier for you if I made a list. Wouldn’t it?!

This isn’t quite what I ordered. I borrowed parts from the Pi-KVM setup that Brian gave me. Aside from the case being transparent, this sure looks like that’s the kit from my Pi-KVM. I kept the 32 GB microSD card with my KVM and used a random 8 GB microSD card in this Seafile build.

Aside from those two small differences, this seems to be exactly what I’m using. The 4 GB Pi is definitely overkill. You can absolutely save yourself $20 and use a 2 GB model. You can even use an older Pi. Seafile and Tailscale aren’t terribly heavy!

You should MOST DEFINITELY shop around for a hard drive. When I bought the 14 TB drive it was on sale for $230. There’s always a USB hard drive on sale somewhere. Just keep your eyes open!

Why Seafile?

In 2013, Seafile was the only piece of software I could find that was both encrypted on at the client and could scale to tens of thousands of files. My hope was to sync my entire home directory. At the time, Seafile couldn’t handle that many files in a single library well. I also decided it would be cumbersome to literally sync my actual home directory, but I did manage to sync every important subdirectory into its own Seafile library.

Seafile encrypts my data before it leaves my local machines, and the server doesn’t have the keys to unlock my files. If you’re paranoid, though, you need to be careful. If you access an encrypted library in Seafile’s web interface, your keys are stored in memory on the server for about an hour.

This means that if someone hacks into my Seafile server, the attacker won’t have the ability to read any of my data. If a thief steals my server, they won’t have access to my data.

I want Dropbox-style file sync between my desktop, laptop, and a few other machines. I want a centralized server in a remote location storing an encrypted copy of my data. Seafile also stores historical snapshots of my data on the server, so if I accidentally delete or corrupt all my files, I can always download them again.

Seafile is at the heart of my backup strategy.

Why am I bringing Seafile back in house?

When I signed up at, the bulk of my data was in the RAW photos from my DSLR. At the time, they consumed less than half the space in Prometeus’s 400 GB plan. Today I’m at around 380 GB, and Prometeus doesn’t have a larger tier.

I also have nearly three terabytes of video, and that sometimes grows by hundreds of gigabytes in a month. Most of it is GoPro footage from my FPV drones. The video is stored on a RAID 10 on my NAS virtual machine. I don’t have a backup plan for it. If my NAS dies, my GoPro footage will be gone.

I’m not terribly concerned about this. I’m probably never going to look at the older footage. Even so, if I’m addressing my lack of storage, then I may as well include this data in my plans.

Why not use Google Drive or Dropbox?

Let’s just forget my paranoia and assume I’m not worried about Dropbox peeking at my private data. Let’s ignore the fact that Dropbox stopped working on some Linux file systems. We can also ignore the fact that Google doesn’t even have a file sync client for Linux.

I was mostly looking at price. Google Drive is $100 per year for 2 TB, and Dropbox is $120 per year for 2 TB. I’m paying $43 per year for 400 GB of Seafile storage from Prometeus. Prometeus was quite a bit cheaper in 2018, but Google One and Dropbox have adjusted their pricing since then.

Neither service offers a large enough plan for my needs, but I’m just going to assume I could buy 4 TB of storage for double the price of 2 TB. I’m looking to sync a little over 3 TB, so a 4 TB plan makes sense to me.

I’d be paying $240 per year to Dropbox or $200 per year to Google. Wait until you see what my do-it-yourself setup cost.

I wouldn’t have even considered hosting Seafile myself again without Tailscale

Tailscale is fantastic. Tailscale is a mesh VPN service built on top of Wireguard. You install the Tailscale client on every one of your machines, and each computer will connect directly to every other computer on your Tailscale network using Wireguard. Tailscale manages all the authentication and encryption keys for you.

One of the things I hated about hosting my own Seafile server on the public Internet was security updates. I had to constantly make sure my operating system was up to date. If Seafile or Nginx had a serious security patch, I had to race to update it as soon as possible.

Tailscale is hiding my Seafile server from the public. My Raspberry Pi server will be sitting behind Brian’s firewall, and I blocked every port on the Ethernet interface except for Tailscale’s port. I can only ssh in through the encrypted Tailscale network interface, and I can only access the Seafile services on that interface.

I won’t have the entire internet banging away at my Seafile server. The only computers with access will be computers that I control. It will be so much less stressful!

Not only that, but I’ll be able to share my Seafile server with my wife using Tailscale’s machine-sharing feature.

Use the unstable release of Tailscale!

The stable release of Tailscale in their Raspbian repositories is version 1.2. I switched my Pi to the unstable repository, and that installed version 1.5.4. This doubled my network performance over Tailscale!

I wasn’t smart enough to investigate this until after the initial upload of my 3.3 terabytes of data. This would have saved me considerable time!

Why am I using a Raspberry Pi?

I got this idea shortly after Brian gave me a full Pi-KVM setup for Christmas. I immediately plugged the whole setup into my virtual machine host to test it out. As soon as I saw that it was working, I installed Tailscale on the Pi-KVM. That got the wheels turning.

The next week, I ordered a 2 GB Raspberry Pi 4 and a 14 TB Seagate USB hard drive. The hard drive was on sale for $230, and I overpaid a bit at $54 for the Pi with a power supply from Amazon. I figured it was worth it for the 2-day shipping.

Don’t just buy the hard drive I bought. There’s always an external USB hard drive on sale somewhere!

The Pi-KVM setup was using a 4 GB Raspberry Pi 4, but the entire setup was using only about 200 megabytes of RAM. I swapped the 2 GB Pi into the Pi-KVM setup, and I stole the 4 GB Pi for the Seafile project. Even the 2 GB Pi is overkill for the Seafile server, but I figured that I’m more likely to find a use for the extra RAM on the Seafile server.

I could have saved a bit more money. There’s no reason for this to be a Raspberry Pi 4. Any old Pi would do the job. I ordered a Pi 4 to swap into the Pi-KVM because some of the accessories are USB-C, and older Pi models don’t have USB-C ports.

At full price, my 14 TB Pi Seafile server would be just a bit over $300. With the sale on the hard drive, I paid a little under $300.

Why are you only using a single hard drive?!

I have to admit that I was extremely tempted to buy a second hard drive to set up a RAID 1 array. It was easy enough to talk myself out of it.

Nearly doubling the price of the project wasn’t exciting to me. Price per available terabyte would still compare quite favorably to Google One or Dropbox. There’s nearly 10 TB that I’m not even using, though. Using a second hard drive would mean it would take 3 years of use to match Google One’s pricing instead of 18 months. Still reasonable, but not as interesting.

Recently I’ve started saying that I have a redundant array of inexpensive computers. There’s a copy of my data on the Seafile server. There’s a copy of my data on my desktop. There’s a copy of some of my data on my NAS. There’s a copy of my data on my laptop.

Any one of these machines counts as my backup. If that cheap 14 TB drive in my new Seafile Pi server fails, I can replace it and reupload my data. Sure, losing out on Seafile’s sync services for a few days will be an inconvenience, but it will be a minor one. These days I can always use Tailscale to access files on another machine in an emergency like this.

If I did buy another 14 TB Seagate drive, I would install it in my NAS instead of building a mirror on the Seafile server. That additional drive could be another sync point for a Seafile client, or I could do an rsync backup of the Seafile server. Either option would be a better value to me than mirroring the Seafile server’s storage drive.

You should have an off-site backup

My Seafile server has been off-site backup since 2013. At first, it lived in a data center 20 miles south of my house. Then it lived in some random data center in Romania. My new Raspberry Pi Seafile server is going to live 6 miles away at Brian Moses’s house.

The server is still in my house today, but I’m treating it as if it was already living somewhere else. Everything on the local interface is already firewalled off, and I am uploading my data to Seafile using Tailscale.

Don’t worry about my data. I still have my account at, and they still have a rather recent copy of my data. If my house burns down, I might lose a few days’ worth of writing.

I told Brian he needs to colocate a Raspberry Pi server at my house. We should be making full use of the buddy system!

How are things working out so far?

Everything is slower than I expected, but this is kind of my own fault. I did an iperf test of the Pi 4’s gigabit Ethernet and saw 940 megabits per second. I ran cryptsetup’s benchmark and saw that the Pi could manage roughly 100 megabytes per second while encrypting the disks.

Tailscale wound up being the slowest piece of the puzzle. Tailscale doesn’t use the Linux kernel’s Wireguard implementation. It uses a Go implementation. The Go implementation of Wireguard is slower than the kernel on Intel, and I wouldn’t be surprised if the performance gap is bigger on Arm. This isn’t a big deal.

Over Tailscale, iperf averages around 65 megabits per second. Much of the time, my Seafile upload has been staying pretty close to this number.

Not always, though. There’s a lot of encrypting and decrypting going on. Tailscale is decrypting AES, then Nginx decrypting SSL. That’s two extra layers of encryption on top of data that was pre-encrypted by the Seafile client on my desktop. Then the kernel is encrypting the blocks that are written to disk.

Writing to a USB hard drive is also a rather CPU-intensive task.

During the first part of my upload, all four of the poor little Pi’s CPU cores were maxed out, and I was averaging somewhere around 35 megabits per second. I’m assuming this is because of the quantity of smaller files that were being synced one at a time.

I have nearly two terabytes left to sync. I haven’t looked at the average speed, but we’ve been up over 50 megabits per second the entire time I’ve spent writing the last four paragraphs. We’re down to RAW photos and huge GoPro videos, so I’m not too surprised they’re going faster.

My Internet upload and download speeds are both 200 megabit, and Brian has 1 gigabit up and down. This would sync just as quickly if the server were already at his house.

Are you going to CNC or 3D-print an enclosure?

I have to say that I was really tempted to design something! The biggest problem is that USB hard drives are significantly cheaper than SATA drives even though they’re usually plain old SATA disks on the inside.

If I were buying a bare 3.5” disk and a stand-alone SATA-to-USB adapter, then designing an enclosure would have been a no-brainer. Since I’m buying a USB hard drive, the SATA-to-USB adapter is already included, and the whole thing is wrapped up in a nice enclosure.

I am using a Pi enclosure from Amazon. It is the one Brian gave me with the Pi-KVM. I DO want to design a custom case for that one! I just used some 3M Dual Lock to attach the Pi case to the Seagate hard drive. I also used some Velcro cable ties and a couple of pieces of sticky-back Velcro to manage the USB cables.

I think it is reasonably clean, and it shouldn’t look out of place sitting next to Brian’s Octopi. If the hard drive fails, I don’t have to worry about taking a replacement drive apart to fit the bare SATA drive into some sort of custom case. I’ll just put some Dual Lock on the new drive, plug it in, and get going right away.

I’m also not accidentally voiding the 1-year warranty on my 14 TB Seagate drive.

It is difficult to compare apples to oranges

On one hand, I’m getting 14 TB of Dropbox-style cloud storage for $300. That would cost me $700 per year from Google Drive, right?!

My hardware might fail and need to be replaced. I have to handle updates myself. Brian’s gigabit FiOS connection isn’t going to be as reliable as Google, but at least it is already paid for.

Google and Dropbox both have access to your files. It is policy and not capability that keeps employees from sneaking a peek at your data. I’ve worked in a lot of IT departments, and every one of them had one guy that was proud and excited that he could read everybody’s email. I’d much rather keep my own files to myself.

Seafile storage used on my Raspberry Pi

NOTE: I’m not quite finished uploading in that screenshot, and I’m already using 2.9 terabytes more storage than I currently have available at

Saying I have 14 TB of cloud storage feels disingenuous. I’m going to be using 3 TB, and I’ll probably accrue up to one TB of fresh data every year. It would be a long time before a service like Google One would actually cost me $700 per year.

For me, keeping my data on my own hardware has quite a bit of value. My wife and I will be saving a total of $86 per year, and I’m pushing an extra 2 TB or more to Seafile right now for free. I’ll have paid for the hardware in 3 years, and I’m considering my labor to be the cost of keeping my data private and safe.

Don’t forget that hosting my own Seafile server on a Raspberry Pi gives me the opportunity to write this blog post. I will see more clicks from Google. I might make tens of dollars per year on Amazon affiliate sales. I’m also having fun writing this, and I had fun cobbling together this little server.

Setting up Seafile was way too complicated!

I can already see that this blog post is going to be approaching 3,000 words by the time I’m done, so I don’t have room here to document how I got things working. I stumbled quite a few times, but I didn’t document anything. I also cut a few corners, and I wouldn’t want you to follow me there.

The instructions for setting up Seafile on a Raspberry Pi didn’t quite work. Seahub just didn’t want to start, and its log file was empty. I bet I futzed around with that for two hours. I don’t even remember what actually fixed it.

Seafile Libraries on my Raspberry Pi

Then I had to put Nginx in front of Seafile to add SSL. I was hoping to use Let’s Encrypt for my cert, but using Let’s Encrypt for a host with a private IP address looked like it was going to be a real pain in the neck, so I just set up a self-signed cert. This was lazy, but it works.

I don’t have a monitor and keyboard plugged into my Pi. I goofed up the firewall rules twice. That meant I had to power off the Pi, plug the SD card into my computer, fix the rules, and try again. This was slow going.

I didn’t even have to write my own iptables rules, but I did. Tailscale already has documentation describing how to do to set up your firewall using ufw. I could have just copied from their example.

I’d like to write about each of these things. I have an extra Pi, so I can replicate these processes, and I can do them correctly next time.

You don’t have to do this my way!

You can and should set up a Raspberry Pi Seafile server. Maybe you don’t like Seafile, though, and you’d rather use Nextcloud. In either case, you should look at using Tailscale so you can access this little micro server from anywhere in the world.

Maybe you don’t want to use the buddy system. Maybe you want to keep your Seafile or Nextcloud server at home. That’s fine, but I still recommend the buddy system. The best backup is an off-site backup!

There’s plenty of free RAM on my Pi. You could definitely host other services on there. It is almost too bad Bitwarden only charges $10 or $15 per year, because this machine would be a good place to host my Bitwarden server.


This project hasn’t even really hit the ground running yet. My giant collection of GoPro flight videos is still syncing, and the Seafile server is still here in my house. I have confidence in its success, though, because I ran my own Seafile server for quite a few years.

What do you think? Am I making a mistake by going back to hosting my own cloud-storage server? Should I just pay someone instead? Or is this going to be a fantastic value? Are you already using Tailscale for a project like this? Tell me about it in the comments, or stop by the Butter, What?! Discord server to chat with me about it!

Using Tailscale to Share a Single Computer

| Comments

Last month, one of my friends asked me if I’d help him test an upcoming Tailscale VPN feature. I’m always willing to help out a friend, so I said yes, and he talked to the folks at Tailscale into giving out accounts access to their beta channel.

Before long I received an email from Tailscale letting me know that I now had access to the new machine-sharing feature. They were sure to let me know that the user interface is still rough around the edges, and this isn’t truly ready for consumption by the general public.

Sharing a machine with Tailscale

I feel like he was exaggerating a bit. The interface is fine, and machine sharing works exactly as expected. You just click the drop-down menu next to one of your machines, hit the sharing button, and you will be given a link that you can share with another Tailscale user.

They click the link, log in to Tailscale, and the machine you shared will show up on their Tailscale network. It couldn’t be simpler.

Can you restrict access to a specific port?

This seems like the part that needs polishing up.

Tailscale has access controls. I haven’t looked into exactly how these ACLs work, but the default rules show that you can restrict access based on a Tailscale user. It should be possible to restrict third parties access to your machines. I know I’d feel better if I were only opening up my SSH or HTTPS port instead of my entire machine.

It would be nice if this was built into the sharing interface. Tailscale could ask which ports you want to open, and it could build the access controls for you.

Tailscale Access Control

The problem is that access controls are meant to be a paid feature. Basic access controls are part of the $10 per month plan, and identity-based access controls are in the $20 per month plan. I believe that you can access all features using a free account today, but this will be changing in the future.

I’m not sure how they plan to implement this. It would be nice if a free user didn’t have to open up entire machines to their colleagues using Tailscale.

I’m also aware that this can already be accomplished with firewall rules on my end outside of the Tailscale service, but it would be friendlier if I could keep myself safe without leaving the Tailscale interface.

Why on Earth would I want to share a machine?!

I have a use case in mind. I have a virtual machine here at home. It has Jekyll installed, and it has all the right Ruby modules installed to render and

The machine runs local previews of each blog. It also regularly pulls down changes from Gitlab, and if there are changes, it publishes those changes to real sites.

If someone else is writing for one of my sites, it would be nice to be able to share this machine with less technical users. I don’t want to help you get Jekyll up and running with the right modules so you can render the site. I can have a fresh instance up and running for you on my server in less than a minute. Why not just share that machine with you?

Why would I want to keep this on a private network?

I mentioned this use case to my friend that got us into the Tailscale beta. He wanted to know why I wouldn’t just set this up on Github and Netlify. It would be simple, and everything would just work. None of our blog posts are secrets. Who cares if someone manages to find them?

The trouble is that Google cares a lot about this sort of thing. If Google somehow manages to find one of the extra copies of my blogs out there, those copies will be indexed. Once they’re indexed, Google will be unhappy that there’s duplicate content. Google may direct some of my traffic to the oddball extra sites.

This would be a disaster for me. Especially if I didn’t see it right away. My search rankings would tank.

If I keep extra copies of my blogs safely behind Tailscale, Google won’t accidentally find them!

Would I pay for machine sharing? Should my users also have to pay?

I haven’t actually asked anyone at Tailscale which pricing tier they’re planning on including machine sharing in. I’m not exactly sure how much I’d be willing to pay for this feature, but that’s mostly because I don’t actually need to use it at the moment.

I hope machine sharing is included in the free tier, even if it is limited in some way. More importantly, though, I hope receiving machine-sharing links will always be free. I don’t want to manage anyone else’s network, but I most certainly would like to be able to invite others to work with things inside my organization.

I’m not sure I’d enjoy paying $120 per year to share a machine with one collaborator. By the third or fourth accomplice, it starts to seem like a more reasonable price.

What would you use machine sharing for?

I think it is quite awesome. I could safely share my NAS with friends who might want access to my collection of videos or music. I could share my PC so we could do some multiplayer gaming without punching holes in our firewalls. We could share our unused machines to speed up compile jobs with something like distcc.

These are just some of the things I’ve thought of. Tailscale is starting to change the way I think about my network’s topology, and machine sharing is going to add all sorts of new options.

What do you think? Are you using Tailscale heavily? Have you been able to try machine sharing? Do you have an interesting use for machine sharing that hasn’t occurred to me? Tell me about it in the comments, or stop by the Butter, What?! Discord server to chat with me about it!

Laser Cutters vs. CNC Routers vs. 3D Printers

| Comments

My friend Jeremy Cook recently bought himself a red-and-black 60-watt laser cutter from China. I helped choose a nearly identical 80-watt laser for our makerspace 3 or 4 years ago, so I was surprised he didn’t even mention his interest in owning a laser until after he had already unboxed it!

Why on Earth did Jeremy buy a laser cutter? As soon as we started working with our laser at, I knew for certain that I wanted a CNC router in my garage and not a laser. Jeremy already has a nice CNC router. What is he going to do with the laser?!

We interviewed Chad Dowdell on The Create/Invent Podcast, and a lot of what I discussed with Chad and with Jeremy got me thinking about this quite a lot. Their laser cutters cost about as much as my Shapeoko XXL, but those lasers are supposed to be ready to go out of the box.

There’s no assembly required, and the red-and-black lasers arrive in their industrial-style metal enclosure. It took me a weekend to assemble my Shapeoko, and I had to buy a table—I didn’t have time to build one! I still need some sort of enclosure for my Shapeoko.

I’m not entirely sure who the audience for these words might be. If you own a 3D printer, and you wish you had a more serious machine, I might make you feel better about what you already have. If you’re thinking about adding a laser or a CNC to your garage, but you can’t decide which one you want, maybe this will help you make that decision.

Let’s start with 3D-printing

All these machines are related. You run a model of your object through CAM software to generate g-code, then you send that g-code to the machine. With 3D-printing, they call the CAM software a slicer.

There’s a statement that I had uttered on more than one occasion before owning a CNC router or having access to a laser cutter. I’ve seen people 3D printing things on social media and said, “Why is he using a 3D printer? He has a CNC machine! He can make something much sturdier in half the time!”

I’ve had a 3D printer for more than six years. I’ve had my Shapeoko for nearly two years. I know now that if I can get away with 3D printing something, I’m most definitely going to 3D print it!

3D-printing is so much easier than running the CNC, especially with my new Prusa MK3S. I load my model into PrusaSlicer, hit the button to send the job to the printer, and a few hours later I have my part. I usually just have to peek at the printer to make sure the first layer went down well, and then I can collect my part when it is done.

The CNC is a pain by comparison. I have to go out to the garage. I have to find material. I have to make sure my part will fit somewhere on that material. I have to secure the material to the wasteboard. I have to make sure the correct tool is in the router. I have to zero out the tool. Then I have to keep a close eye on things during the entire operation.

Oh yeah. Then I have to vacuum up all the dust. I might even have to cut away some tabs.

Sure, the CNC cuts through material at least an order of magnitude faster than the 3D printer deposits plastic, but I have to do a lot of the labor myself.

My fully assembled Prusa MK3S arrived at my door ready to print for $1,150. You can get a kit for around $750. Some of my friends own an Ender 3, and those kits can be had for around $200.

CNC routers and fixturing

I knew that I wanted to have a CNC router in my garage. I didn’t really have a choice to make, though. I need to be able to cut carbon fiber plates, and you just can’t do that with a laser cutter.

Even if the decision weren’t made for me, I still would have opted for a CNC rather than a laser. There isn’t much you can do with a laser that I can’t accomplish with my Shapeoko. A laser might be able to engrave better than I can manage to v-carve, but that’s not high on my list of priorities anyway.

Talking to Chad and Jeremy made me realize that the biggest problem with the CNC is fixturing. That’s the act of securing your material to the CNC in such a way that it won’t move out of place while cutting. Sometimes this is easy, sometimes it is tricky. Often-times you have to leave tabs on the edges to keep your part in place, and you’ll have to cut those out of the way later.

Most of what I do with my Shapeoko is prototyping. When I’m in the design phase, I might run the machine a few times a day for 3 or 4 days while trying to get things just right. Then the CNC will sit idle for a week or two while I test my parts.

Chad makes a living selling his custom creations on Etsy. He runs his laser and his CNC all day long. He doesn’t want to spend time securing his materials to the CNC. He doesn’t want to have to cut support tabs out of his cuts. He just wants to make one cut after the next.

The 16” x 16” Shapeoko is around $1,100, the 16” x 32 “ Shapeoko XL is around $1,700, and my 32” x 32” Shapeoko XXL was about $2,200. It took me the better part of a weekend to assemble the machine by myself. I had no idea what I was doing.

The red-and-black 60-watt laser cutters

Let’s start with the things I don’t like about laser cutters. I don’t like the charred edges when you cut wood. I don’t like the inaccuracy when you’re trying to carve to a specific depth. I am aware that you can tune this in for your material, but depth of cut is always precise on a CNC router. In my mind, a laser cutter just barely qualifies as a 2.5-dimension machine. A CNC router is capable of cutting smooth curves on the Z-axis.

Unlike a CNC, you don’t usually have to fixture your parts in a laser. You can just drop your sheet of plywood, acrylic, or cardboard in the machine and start cutting. The most you might need to do is put some weight or magnets on the material. You don’t need support tabs to keep your finished part in place during the cut, because there’s no tool touching the material.

If you want to operate like an assembly line, this is fantastic. You can drop a piece of material in, hit go, pull your cuts out, and repeat. You can do this all day long.

The red-and-black lasers are a tremendous value, assuming you don’t have any serious trouble with whatever winds up getting shipped to your door. Jeremy, Chad, and all had good luck with theirs. Maybe you’ll have good luck.

Your $2,000 gets you a fully assembled laser cutter that lives in an industrial enclosure. It just needs to be plumbed into coolant and ventilation, and you’re ready to go. You can check out Jeremy’s laser cutter setup video to see how much work is involved here.

The red-and-black laser vs. my Shapeoko XXL

If you squint a little, these two machines are pretty comparable. They’re priced about the same. The cutting area of the laser is somewhere between the Shapeoko XL and XXL, but so is the price.

I had to spend $150 on a sturdy folding table to put my Shapeoko XXL on. You could build your own, but then you’re just trading money for time. The red-and-black laser is its own table.

I’d sure like to have an enclosure for my Shapeoko, and the red-and-black laser comes built into one. That’s awesome.

Here’s the question I don’t have a good answer for: Is installing the ventilation for the laser’s blower fan more or less work than building a Shapeoko from the kit? One of these might involve cutting holes in your home.

Should you buy a Shapeoko or a red-and-black laser?

These two machines are nearly the same price, and there is a ton of overlap in what these machines can do. If you’re only going to buy one machine, which one should you buy?

As much as I’d love to have that free enclosure and stand you get built into the red-and-black laser, I’d still buy my Shapeoko XXL again. There isn’t a doubt in my mind, and I have no desire to add a red-and-black laser to my garage.

The laser can engrave. My Shapeoko XXL can v-carve. The laser can cut. My Shapeoko can cut. My Shapeoko can cut thicker materials more quickly, and it can cut and engrave materials that the laser can’t even touch.

I understand why Jeremy and Chad both want to be able to avoid the labor of locking materials in place for cutting on their CNC routers. If you’re planning to run your machine all day long, maybe the laser cutter is a better choice.

If your goal is to cut and engrave leather, you’ll need a laser. If you want to safely engrave artwork onto the back of something like a MacBook Pro, you’ll need a laser.

If you’re prototyping like I am, or only running your machine for a handful of hours each week, maybe you won’t need to worry about that.


That last heading was almost a conclusion, wasn’t it? I think I lost my bearings a bit while writing this one. What do you think?

If you’re interested in these sorts of machines, there’s almost no reason not to go out and get a 3D printer first. A 3D printer ingests g-code just like laser or CNC. The print head is moved around by stepper motors, just like most CNC routers and laser cutters. You will learn a lot from your $200 to $1,150 investment, and you’ll still find plenty of uses for your 3D printer after you start cutting with a bigger machine.

Did I make the right choice by opting to go with a Shapeoko XXL CNC router? Would you rather have a red-and-black laser cutter? Are you planning on adding one of these machines to your shop? Let me know in the comments, or stop by the Butter, What?! Discord server to chat with me about it!

I am the New Co-Host of The Create/Invent Podcast

| Comments

I was bummed out when I heard that Max Maker was leaving The Create/Invent Podcast. Jeremy interviewed me on the next episode. He decided to start recording video podcasts, and he wanted a safe guinea pig to interview for his first attempt at this.

We chatted about the podcast a bit before we started recording the episode. Jeremy seemed excited about podcasting on his own. He recorded a few solo interviews before asking me if I’d like to co-host with him.

It wasn’t as simple as that. I woke up one morning, checked my phone, and misread a message from Jeremy. I read that he wanted to do an episode about TCP. I understood this to be TCP as in TCP/IP. I messaged Jeremy back to ask what he had in mind. What do packets look like? How does NAT work? Why not UDP? That sort of thing.

After he replied, I realized that TCP is short for The Create/Invent Podcast. Duh!

He told me that hosting the podcast is less fun without a partner, and I’m excited about giving this whole podcasting thing a try! Jeremy tells me there was a rather thorough search for a new co-host. I sure hope I’m qualified. I don’t know that I’ve ever seen his feet, but I have a feeling Max Maker has some big shoes to fill!

We recorded my introductory podcast last week, and I feel like things went pretty well.

My first interview was with Chad Dowdell

Chad seems like a good dude, and he was a fantastic guest for my first episode as co-host. Chad had good energy, he’s excited about what he’s doing, and he just seems like all-around good people.

Chad has been using his red and black 60-watt laser cutter for almost a year now. Jeremy just acquired one of his own a few weeks ago, and our local makerspace,, has had a 80-watt version of the same machine for three years. We had a lot of shared experience with these lasers to discuss, and Jeremy was excited to learn some new tips and tricks that he can immediately start putting to good use.

We talked about Chad’s Etsy store—Chad’s Custom Creations. We talked about how he went from being a junior high school art teacher and part-time maker to making and selling his custom creations full time.

It was a fun time. You should check out the video on YouTube, listen to the episode on SoundCloud, or just find The Create/Invent Podcast in your usual podcast app.

“OK, Google! Play The Create/Invent Podcast!”

I am really excited about this. I remember the first time Jeremy interviewed me on the podcast. When he told me it was live, I walked out the kitchen and asked our Google Home Mini to play The Create/Invent Podcast.

She knew exactly what to do. She played my episode! How cool is that? She knows how to play the latest episode too!

What’s next?

I’m not sure! I’m trying to do some administrative things. Jeremy recently purchased a domain for the podcast, and he was pointing it directly at SoundCloud. I’ve replaced that with a blog, and I’m going to work on putting show notes up there.

I’m going to slowly work my way through our previous episodes and build up tables of contents and show notes. It’ll take a while.

We have some interesting interviews lined up already. I can’t wait to get more practice. I hope I’m doing a good job.

Speaking of good jobs, do you think I’m doing a good job? Do I seem like I know what I’m doing, or do I have a long way to go at this podcasting thing? What do I need to improve? Who do we need to interview on The Create/Invent Podcast?! Let me know in the comments, or stop by the Butter, What?! Discord server to chat with me about it!

My FPV Freestyle Miniquad Builds for 2021

| Comments

I link to my FPV freestyle quad blog post from 2018 at least once a month. It bums me out that it is such an old blog post, but it also bums me out that my freestyle builds haven’t changed significantly in two years. I’ve been slowly swapping in new components as parts fail, but the heart of the build is still the same. I’m still using the same motors, batteries, and flight controller.

Other parts have changed, but they haven’t had any real impact on how the quad flies. Other than updates to Betaflight and replacing motors with crunchy bearings, my current builds feel exactly the same as what I was flying in 2018.

I am aware that it isn’t quite 2021 yet. It is getting close, though, and I don’t see any changes coming to my freestyle quads any time soon.

Should we just get the parts list out of the way?

This is the parts list:

The ESC and VTX have been upgraded. They don’t make the Runcam Eagle anymore, so I’ve switched to the Pheonix 2. That’s more of a sideways move. I’ve switched from a Hyperlite Flowride frame to my own Falcon frame design.

My build is getting tubby. I used to be somewhere around 640 grams with a GoPro HERO5 Session and a 1,000 mAh 6S battery. Now I’m up to around 720 grams with a GoPro HERO7 Black and an 1,100 mAh 6S battery.

I love the Hyperlite 1922 kv motors

I chose these motors while I was still running 5S batteries. At the time, my only other choice in a 5S motor that might be ready for 6S were the Hypetrain Stingy motors at 2150 kv. The 1,922 kv seemed like a better compromise. The kv on my Hyperlites is on the low side for 5S, but it was on the higher side for 6S.

When I got these motors in 2018, people would say, “Holy crap! 1,922 kv is so high for 6S!” These days, my friends are starting to run 1,950 and 1,999 kv on 6S. Perceptions changed a bit since I started flying these motors!

I flew and crashed those first eight motors for about 16 months before I started to notice any problems with how my quads were flying. My GoPro footage was still smooth at that point, but I could hear how funny it sounded. The bearings were getting crunchy.

Can you hear those crunchy bearings?!

I’ve never managed to fly a motor for an entire year before. My T-Motor F40 Pro V2 motors would sometimes have the bottom and top parts of a bell separate during a crash. That was a bummer, because when they got stuck like that, they’d take an ESC with them.

Are the Hyperlite motors more durable? Am I just crashing that much less? I know I’m crashing less, but when I do crash these days, it is usually a doozy!

The previous two sets of Hyperlite motors lasted 14 to 16 months, and they’re a few dollars cheaper than T-motor or Hypetrain motors, so I figured they were worth sticking with. I don’t smash into concrete all that often. I usually smash into tree trunks, but sometimes I hit them with quite a lot of force!

Hyperlite makes a budget version of my motor. I have a set, but I haven’t used them on a quad yet. The $14 version of the motors are identical to the $22 motors in every way, except the $14 version has a steel shaft instead of a titanium shaft. That makes them a little heavier and probably a bit less durable.

Don’t buy flight controllers unless they have a DJI plug

I like trying new, interesting things. For a while, I was flying the Helio Spring flight controller. It had an F4 processor running Betaflight, and it also had an F3 processor who’s only job was to filter the gyro. This seemed to work well. It was supposed to be faster than using a single F7 chip, and putting in the Helio board immediately made my quads fly better than they ever had.

Then Helio went out of business. Butterflight and filter upgrades stopped showing up. I knew it was going to be time to upgrade to something new. Were there any F7 boards with nifty new features?

I decided to try the iFlight Succex-D F7 TwinG flight controller. That’s a mouthful. It is an F7 flight controller. It has plenty of UARTs. The layout of the solder pads is quite reasonable. It also includes pads for all 8 motor outputs in addition to the ESC plug. I’m not going to run an octocopter, but having four extra pins to remap is nice!

The gimmick of the TwinG flight controller is that it has a pair of ICM20689 gyros. The second gyro is rotated 90 degrees. Betaflight is able to combine the data from both gyros without adding any latency. In theory, this should provide several decibels of noise reduction for free.

In practice, I’ve heard that it might be better to just force Betaflight to use the better of the two gyros. You’d have to look at Blackbox logs to determine if one gyro is noisy.

Either way, it is handy having two gyros. If you suspect your quad is doing something weird due to a failing gyro, you can switch back and forth between gyros to figure out whether or not that’s really the case.

I was able to get a nice F7 flight controller with an extra gyro, and it didn’t even cost more than other F7 boards. I figured it was a good deal, and I’ve been quite pleased with the hardware.

Then I accidentally fried one of these flight controllers. I repinned a cable to plug one of these into one of my old Tekko32 ESCs, and I literally wired it up backwards. I had trouble buying a replacement!

It turned out that iFlight updated my flight controller. They added a filtered 9-volt regulator and a plug for a DJI air unit. This is fantastic.

The Tekko32 was an awesome ESC. It had tons of capacitors, and it didn’t introduce much noise into my video feed. The iFlight 50A isn’t nearly as quiet. My video feed looked terrible after the upgrade. Running a giant capacitor right on the pads of the ESC didn’t help at all.

I wired my VTX and camera into the iFlight TwinG’s 9-volt regulator, and now my analog video feed is perfectly clear. I’m bummed out that iFlight didn’t include a solder pad for the 9-volt line. I had to plug a connector into the DJI port just to use the single 9-volt wire!

This is a good enough reason for me to buy DJI-compatible flight controllers. More and more DJI-compatible options are showing up every day. Not only can you use it to supply filtered power to your VTX, but you’ll be ready to plug in a DJI air unit when you decide it is time to upgrade to digital!

One of my freestyle quads still has the older non-DJI version of the iFlight TwinG. I wound up using an LC filter to clean up that quad’s video. This might be working even better, but not by much.

The iFlight 50A 4-in-1 ESC

This is one of my favorite upgrades, but it is an upgrade I don’t even notice while flying. My Tekko32 ESCs served me well for years. I have fried a few, though, so I figured maybe it was time to fly something beefier. Not only that, but the pinout on the Tekko32’s plug isn’t compatible with my iFlight flight controller. Choosing an ESC that matches the pinout of my flight controller is easier and lazier!

I think my selection process was interesting. Everybody loves the nearly bullet-proof T-Motor F55A ESC. They cost $75.

I checked out iFlight’s blheli32 ESC offerings. They have a 60A ESC with metal MOSFETs for $80. I’d pay $5 extra for metal MOSFETs, but do I really need a 55A or 60A ESC? The 35A Tekko32 held up pretty well.

I decided to try iFlight’s 50A ESC. They’re only about $50! I figured that if I fry it quickly, I should try something better.

A couple of weeks after installing the iFlight Succex 50A ESC, I was coming past a tree doing a Vanny roll. I got a little too close to the ground and crashed upside down. I turtled the quad over, the camera went to static, and I saw Betaflight reboot right before I completely lost video. Uh-oh!

I had crashed in a 3”– to 4”-deep puddle. While I was upside down, the GoPro was completely submerged. I turtled over with half my motors completely submerged—that sounded so weird in the GoPro footage! Flipping over put the entire quad under water. The only thing exposed was the GoPro.

I let it dry out for a day or two, and everything worked just fine! I flew that same build for quite a few months after being submerged. The motors have been replaced, but not due to the water. The VTX and Runcam Eagle were still working when I upgraded them too.

When the next Tekko32 exploded, it was easy to decide which ESC I would replace it with.

The TBS Unify Pro32 HV is amazing

I’ve had poor experiences with TBS VTX modules in the past. A guy we flew with 3 or 4 years ago used to fly a TBS VTX, and he used to knock everyone out of the air when he plugged that thing in. TBS VTXes are supposed to be good at this, but his wasn’t.

His was also the first one we had to unlock, and unlocking TBS VTXes has been a nightmare. Not because it is particularly difficult, but because I only do it about once a year.

My AKK VTXes have served me well for years, but now they are getting old. I know they’ve been flown with disconnected antennas. They’ve sat around stuck in trees a lot while cranking out 800mW. I know that VTXes degrade over time. Are my AKK VTXes just getting old, or were they always terrible? Who knows!

I helped Brian assemble his FPV Cycle Toothpick 3, and we used a TBS Nano VTX that maxes out at 400mW. We were able to fly that little guy out to spots without any breakup that would get sketchy for me with my AKK VTX cranked all the way up. Brian is cheating a bit. His Toothpick has very little carbon fiber to block radio signals. Even so, it was impressive.

Do I really need to put $50 VTX modules in all my quads? I started with one quad to see how much of a difference it would make. When I got home from testing that first 1,000mW TBS VTX, I ordered another. It was such a nice upgrade!

My AKK VTXes are old, and it is a really old design. I hear good things about several other modern VTXes, but I haven’t tried any of them. I’ve tried the big TBS VTX, and it works great for me, so I’m sticking with it.

Ethix S3 props

I fly a 6” frame. I rarely fly 6” props, but I like having the option. 6” props can give me a bit more efficiency and bite when I need it, and the larger wheelbase should make the quad a bit more stable. My frame is only about an inch wider than a 5” freestyle frame, so it doesn’t make hitting tight gaps all the much harder.

My favorite prop is the Ethix S3. Their efficiency is reasonable, but their top speed is quite low. I fly them because they handle propwash extremely well, and they give you amazing throttle control.

When I first tried the Ethix S3, I was disappointed with how much punch my quad had at full throttle. I wound up flying the Ethix S4 props for a few months. They seemed fantastic. When I ran out of S4 props, I figured I should try the S3 props again before ordering more props.

I’m so glad I did, and I remember exactly what convinced me to switch back to the Ethix S3 props. I did a few power loops of a small valet parking structure. I was able to line up my quad just below the ceiling on almost every single loop. It felt effortless.

NOTE: I’m having trouble finding a quick snippet of video that really shows you why I like Ethix S3 and P3 props, so here’s some smooth freestyle with a crash into a small hill.

Extremely gentle, light props like the Ethix S3 help make up for a lack of skill. The difference between the S3 and S4 isn’t huge, but the S3 definitely make me look like a better pilot. The S3 props have a pitch of 3.1”, while the S4 have a pitch of 3.7”.

I tried Alex Vanover’s Azure 4.5” pitch props. He wouldn’t tell me what the pitch was before I flew them, and I didn’t think to ask after I landed. I had to look it up myself!

They felt fantastic. I had plenty of throttle control. I knew I had more top speed than usual. I felt like I could manage my throttle on the low end about as well as I could with Ethix S4 props, but I bet I was getting an extra 10 mph at full throttle.

Alex is a fantastic pilot. I am envious of his throttle management. I wouldn’t be surprised if he could fly RaceKraft 5051 props on my quad smoother than I can fly Ethix S3 props.

If you need to cheat like I do to get that smooth throttle control, you need to try the Ethix S3 props.

If you like the Ethix S4 props, you absolutely need to try the Vanover props.

Is it peanut butter jelly time?!

I’m in the middle of writing this post, and I just opened a box of props. Half the props are Ethix S3, the other have are Ethix P3 props in their signature peanut butter and grape jelly colors.

When I ordered the P3 props, I was assuming that I wouldn’t be able to notice the difference. They’re 0.1” longer than the S3 props, but they have 0.1” less pitch. Longer props are more efficient and more powerful, but some or all of that might be negated by the drop in pitch. I expected it would be a wash.

After holding them in my hand, I’m less certain of my assumption.

This is why I split my order in half. I really wanted to try the P3 props, but how mad would I be if I ordered 40 sets of S3 props after liking the P3 props even more?!

It may or may not be peanut butter jelly time. I’ll figure that out over the next couple of weeks.

My Falcon frame

My Falcon frame is open-source. It is hosted on Gitlab, though I don’t think my latest changes have been pushed up yet—I don’t like uploading changes that I haven’t tested in the real world!

I assumed I’d never bother designing a 5” freestyle frame. Designing the Kestrel was fun, because it is at least somewhat unique. What new idea could I bring to a 5” freestyle quad?!

I didn’t like the idea of flying someone else’s frame when I have sheets of carbon fiber and a CNC out in the garage, so I needed some new idea. I decided to see if I could design a 5” frame that only used one screw per arm.

The first frame that I cut with one screw per arm and a Kestrel dog bone is pretty loose. It is my own fault. I’ve cut Kestrels that didn’t even fit together without some filing, and I wound up overcompensating on my tolerance variable in OpenSCAD. I doubt the arms move in flight, but you don’t need all that much muscle to pivot them around in your hands.

I decided to try the same thing with one additional screw in the center of the dog bone. This worked even better than I’d hoped. The arms don’t pivot at all, because the dog bone just won’t move. The tolerances are also tighter. I don’t like having a screw right under my stack, though.

I have a new idea that would take 1,500 words to explain. Assuming it works out, the dog bone is going away. I’ve worked out a way to hold the two bottom plates together with pieces of carbon fiber. They look kind of like fractal dog bones. I’ll need two of these pieces. Each piece will also lock two arms together to prevent them from pivoting on their single mounting screw.

I’m pretty excited about this. I have some concerns, but I’m pretty confident that it will work. I haven’t seen this sort of setup used anywhere else yet.

Why the Runcam Phoenix 2?!

I used to fly the full-size Runcam Eagle, and I’ve been flying the Eagle Micro since it became available. The Eagle has the biggest CMOS sensor and the biggest lens with the widest aperture of any FPV camera. They don’t make this camera any longer.

My Micro Eagles are starting to fail. I decided to order a Phoenix 2 to try out. Runcam said it was the replacement for the Eagle, and popular cameras from Foxeer and Caddx use the same sensor. It is cheaper than the Eagle, and I like Runcam’s build quality, so I figured it was worth a short.

A week after installing my Phoenix 2, Joshua Bardwell announced his edition of the Phoenix 2, and it has UART camera control! I have one of each. You should buy the Bardwell edition. Not having to plug in a joystick to set up your camera is so luxurious. I wish I had procrastinated seven more days. I wouldn’t be stuck with a non-UART version in one of my builds!

Then Runcam started selling the Micro Eagle 2. I don’t know what this camera is, but it sure doesn’t look like a replacement for the original Eagle. It has a tiny lens and a small sensor. I’m sure the sensor is more modern, so it doesn’t need to be as big, but it doesn’t look like a better camera than the Phoenix to me.

Why bother with a GPS module?!

They’re cheap. They’re light. Having a speedometer on your OSD is fun!

Return to home works, but I have not trained myself to use it. I’ve always said I could flip that switch when someone plugs in and stomps all over my video signal, but I’m not smart enough to do that.

I’m still using the tubbier HGLRC modules. I already have them, and my quads are wired with the correct cable. My Kestrel uses a tiny 5-gram GPS module. It is less than half the weight of the HGLRC setup.

If I lose enough GPS modules, I will start switching my fleet over to the 5-gram modules.


Not much has really changed significantly since 2019. My quads have gotten heavier mostly due to battery and GoPro upgrades. My props are quite a bit less aggressive. I used to fly HQ 5.1x4.1x3 and HQ 5.1x4.6x3 props. The Ethix props are less aggressive, a good bit lighter, and so much more responsive. If I swapped props and put my GoPro Session back on, it would be just like I was flying my old builds. So much of the key hardware is the same.

What do you think? Are you still flying roughly the same freestyle build you were flying two years ago? Am I missing out on any exciting upgrades? Let me know in the comments, or stop by the Butter, What?! Discord server to chat with me about it!

I Bought a Sony ZV-1 Vlogging Camera

| Comments

I’ve been tempted by the Sony ZV-1 since its release. My aging Canon 6D is capable of capturing some impressive video. Canon’s color science is great, and I have some fantastic, sharp lenses. Unfortunately, the ancient Canon 6D isn’t capable of doing autofocus while recording video.

The full-frame Canon 6D is also big and heavy, so it is a terrible vlogging camera. The Sony ZV-1 excels at vlogging, and I’ve been excited about that, but it isn’t the reason I decided to pull the trigger this week.

I’ve been invited to be a cohost on a podcast, and that seemed like the perfect excuse to look into an upgrade from my Logitech C920 webcam. I already have an HDMI-to-USB adapter. All I needed was a good video camera to plug into it.

I’ve only had the camera for three days. I haven’t published any content with it. I’m mostly just getting familiar with the ZV-1, testing its capabilities, and figuring out how to fit it into my color-grading workflow.

Using the Sony ZV-1 as a webcam

There are some better webcams than my Logitech C920, but they’re rather minor upgrades. I knew that if I wanted to be able to stream live video, I was going to have to connect a real camera using its HDMI port. I picked up a $15 HDMI-to-USB dongle a few months back because I heard it worked well out of the box with Linux. It does, and it has no trouble capturing clean 1080p video at 30 frames per second.

I immediately used this dongle to connect my Canon 6D. I believe the 6D can only drive the HDMI port at 480p, and I have to zoom in quite a bit in OBS Studio to eliminate some black borders, so the actual resolution is quite low.

Even so, the Canon 6D as a webcam looks so much better than the Logitech webcam. Canon’s color science is so pleasing, and the 6D’s dynamic range is fantastic. I can’t talk to the camera and manually focus at the same time, and I don’t know how to keep from moving out of focus. I don’t seem to have a sample of video from the Canon 6D over HDMI.

The Sony ZV-1 has none of these limitations. It can output 4K or 1080p via HDMI, and there are no odd borders or OSD elements to crop out of the footage. It outputs a nice, clean, usable signal.

Not only does the ZV-1 autofocus while being used as a webcam, but it has eye-tracking autofocus, and it is amazing. It keeps me perfectly focused. I can hold something up in front of me, and it is almost instantly in focus. It doesn’t have to hunt around. When I pull the item out of frame, it immediately locks focus back on my eyes. It is the bee’s knees.

Will I stop using the Osmo Pocket for vlogging?

I’ve been doing a bad job even remembering to vlog. Let’s just assume that I will start doing a good job at that again! I’ve only had the ZV-1 for two days, so I thought it would be fun to write down how I think things are going to go. We can come back to this in a month and find out if my predictions are correct.

Aside from the Osmo Pocket having a gimbal, the Sony ZV-1 is a better video camera in almost every way: faster and more accurate autofocus, a better lens, a bigger sensor, and maybe even a better microphone.

If you’re going to talk to the Sony camera, you’d going to need some sort of small tripod. I have a small, sturdy tripod and a rather compact selfie stick tripod. I prefer the selfie stick, because it can extend to around 4’. It isn’t stable that high, but it is stable enough at 18” to 24” or so.

Osmo Pocket mic wind noise test at 15 mph with 10 mph headwind

The Sony is already twice the size of the Osmo Pocket, and either of these tripods is also bigger than the Osmo Pocket. Why carry the Sony ZV-1 and a tripod when I could just carry the Osmo Pocket? I’m sure you know why, but is it worth overfilling my pockets?

The Sony ZV-1 is the better camera by far, but I like to pack light when I ride my electric unicycle. I have my phone in one pocket and the Osmo Pocket in the other. That’s all I usually need, and the Osmo Pocket’s noise reduction paired with a foam doodad over the mic lets me ride and talk to the camera at 15 mph without any significant wind noise.

Can the Sony ZV-1 do that? I will surely find out soon enough, but even if it can handle the job, I’m going to need more pockets or a backpack!

I can’t wear my sunglasses while vlogging!

This bummed me out yesterday. We were out flying FPV miniquads, and I decided to pull out the ZV-1 to record some test footage. I turned it on, flipped the screen around, and I couldn’t see myself at all. I figured I just had the brightness set too low.

Then I remembered that all my sunglasses are polarized. I rotated the camera 90 degrees, and I could see it just fine. I can’t record like that, so this will definitely be a problem. I’m sure there’s a solution.

The ZV-1 is an awkward camera for photography, and Darktable doesn’t read its raw files

UPDATE: The nightly builds of Darktable 3.3 are handling my Sony ZV-1 raw files just fine! I’m surprisingly pleased with the dynamic range.

I had no expectation that the Sony ZV-1 would displace my Canon 6D for photography. My Canon 6D has 11 or 12 stops of dynamic range, its sensor is several times larger, and I have some nice lenses. As far as I can tell, no one has even bothered to test the dynamic range of the Sony ZV-1.

I am infinitely more likely to have to carry my Sony ZV-1, so I am still expecting to use it for some photography. It is going to be awkward for me to use for photography because the ZV-1 doesn’t have a viewfinder!

NOTE: I should probably take a better dynamic range test shot. This is what I have for now!

I have a lot of practice framing shots through the viewfinder. If you’re trying to get a handheld shot using a slow shutter speed, mashing the camera against your face helps steady things a lot! I’m sure I’ll learn to cope with this.

I’ve also noticed that Darktable 3.2 doesn’t support the raw files that the Sony ZV-1 produces. I hear RawTherapee does, and there are a couple of related issues in the Darktable bug tracker, so I’m confident support will be coming. I just have no idea when!

I tried editing a photo with RawTherapee. Either I have no idea how to use RawTherapee, or the ZV-1 raw files aren’t correctly supported. I believe either option could be correct!

Sony’s Android app is terrible!

I searched the Play Store for Sony’s app. The most likely candidate only has 2.3 stars. I figured I must be searching incorrectly, but I wasn’t. The consensus seems to be that Sony’s Android app is garbage.

I tried about a dozen times to use my phone as a remote control for my camera, and I just couldn’t get it to connect.

I’d really like to get this working. When you have the camera and screen pointed at yourself, it is difficult to adjust exposure settings. Even when you’re behind the camera, there’s only one adjustment wheel. I know I’m spoiled by the professional controls on my Canon 6D, and I didn’t expect as many buttons and wheels on such a tiny camera.

I’d also like to be able to start 960-fps shots from my phone. The Sony ZV-1 will only record for 2 or 3 seconds in its three highest frame rate modes. I don’t want to introduce shaking, and I’d like to be clear of whatever dangerous thing I might be filming when I hit go!

I have hot shoe remote triggers. I can safely click a button at precisely the right time if need be, but having to carry a clunky remote trigger will be disappointing.

The 960 frames-per-second mode is a gimmick

I knew this before buying that camera, but you know I just had to try it out.

I put the ZV-1 on a tripod, pointed it down at Brian’s FPV drone, and hit record. The plan was to arm the quad and take off. Two seconds just isn’t enough time for him to get that done.

That’s not the only problem. Sony achieves these high frame rates by only partially reading the sensor for each frame. 960 frames has half as many pixels as 480 frames, which has half as many pixels as 240 frames. All three modes have a 2- to 3-second recording limit.

I’m not saying it is completely useless. I took a quick test video while I was roasting coffee, and I think it looks pretty cool!

Why not a Sony A6000-series camera?

The most obvious answer is that the Sony ZV-1 costs less. About $100 less than the a6100 with a kit lens, and an a6500 or a6600 with a kit lens would be about double the price.

I wanted to link to the a6100 and a6500 on Amazon, but most of the listings are either just the body or they include a 55-210 mm lens, so they’re not easily comparable to the ZV-1.

Paying more would be fine, especially if I’m getting a photography upgrade out of the deal. I’m excited about the idea of ditching Canon and moving into Sony’s lens ecosystem. The problem is that Sony’s lenses are so much more expensive! I could write 2,000 words about lenses, but lets just say I’m not excited about buying expensive lenses today, and the best Sony APS-C cameras are quite a sideways move for me as far as photography goes anyway.

The ZV-1 is definitely more vlogger friendly than Sony’s DSLR bodies. The older Sony APS-C cameras overheat if they record video too long, and their screens don’t flip around at all. These problems get resolved as the models get newer.

The ZV-1 has optical image stabilization like the Sony a6500 and newer APS-C cameras, which is nice. The ZV-1’s eye-tracking autofocus is available on the Sony a6100 and a6400. That’s one of the killer features for me, and you can get it on a Sony camera that only costs $100 to $200 more than my Sony ZV-1.

There’s also size and weight. The Sony ZV-1 weighs about 300 grams. The Sony a6100 weighs 400 grams, and that’s just the body. The lens will add weight, and the ZV-1 is thinner even with its built-in lens than the a6100 with no lens. That also gets worse when you add even the thinnest lens.

I’ve carried the ZV-1 in my pocket already. It isn’t the tightest fit, but I certainly know it is in my pocket. I would be acutely aware of an APS-C camera in my front pocket!

The built-in mic on the ZV-1 should beat all the Sony APS-C cameras. It certainly isn’t perfect, and I should be using an external mic anyway. That said, I know I won’t always carry an external mic. From what I’ve seen so far, I expect the built-in mic on my ZV-1 to be more than serviceable if all I have are pockets to carry my gear. The custom wind screen is the icing on that cake.

The integrated ND filter is a fantastic idea!

The Sony ZV-1 has an integrated 3-stop ND filter. I suppose that would make it an ND8. I’m not sure why they don’t just say that.

If you want to keep your shutter speed low in the sun, you’re going to need an ND filter. I was expecting to buy some sort of lens adapter and a variable ND filter before discovering that this feature is already built in!

This is where I noticed an odd quirk. Sony’s interface lets you change the function of many of the buttons. I swapped the bokeh button with the ND filter function. I expected this to toggle the ND filter on or off at the press of a button.

This is not how it works. Pressing the button opens a menu, and I have to use the wheel to select one of the three ND filter options. Am I the only one who thinks this is goofy?

I can toggle product showcase focus mode on or off with a single touch of a button. Why can’t I do this with the ND filter?!

What’s the plan, Pat?!

The immediate plan is to get ready to be able to podcast, and I think I’m already there. What comes next?

I’ve been saying for a long time that I need to get better at vlogging. You have to practice to get better, and I haven’t been practicing. You have to record video, publish a vlog, then think about what you can improve upon for the next one. If you go back and read my blog posts from ten years ago, you will think you’re reading content from someone who has never written anything in their life, and you’d be right. That stuff is embarrassing now!

I need to vlog some of my adventures. I need to vlog when I go out to fly. I absolutely need to vlog about my Gotway Tesla. YouTube seems hungry for EUC content.

Part of the trouble is that the adventures aren’t as common in 2020. I’ll just have to do my best to create some fun, right?!

What do you think? Is the Sony ZV-1 the ultimate vlogging camera? Will I still use my Osmo Pocket at all? Will I still feel the same about the Sony ZV-1 after using it for a month or two? Let me know in the comments, or stop by the Butter, What?! Discord server to chat with me about it!