Chris Person | The Verge The Verge is about technology and how it makes us feel. Founded in 2011, we offer our audience everything from breaking news to reviews to award-winning features and investigations, on our site, in video, and in podcasts. 2024-03-04T14:00:00+00:00 https://www.theverge.com/authors/chris-person/rss https://platform.theverge.com/wp-content/uploads/sites/2/2025/01/verge-rss-large_80b47e.png?w=150&h=150&crop=1 Chris Person <![CDATA[How to keep your smart cam footage safe and private]]> https://www.theverge.com/24074904/smart-home-camera-security-privacy-how-to 2024-03-04T09:00:00-05:00 2024-03-04T09:00:00-05:00
function LedeVideo(props) { return (
{props.credit}
) } const containers = document.querySelectorAll(".w-full figure.w-full"); containers.forEach(container => {const root = ReactDOM.createRoot(container); root.render()}) .duet--article--lede-image.w-full { position: relative; padding-top: 62.5%; margin-bottom: 20px; } .duet--article--lede-image.w-full img, .duet--article--lede-image.w-full span { display: none !important; } .duet--article--lede-image.w-full .video-wrapper { position: absolute; inset: 0; } .duet--article--lede-image.w-full .video-inner { width: 100%; height: 100%; } .duet--article--lede-image.w-full .video-wrapper video { width: 100%; height: 100%; object-fit: cover; } .w-full figure.w-full .video-wrapper cite { font-style: normal; color: rgb(90, 90, 90); }

If you’re shopping around for a baby monitor, a pet camera, or a video doorbell, just a little research can make the world of network security cameras feel insecure. You don’t have to look far to find examples of companies breaking the trust of their customers. 

A security camera sites on a ledge.

And even if you trust that a company is going to be a good steward of your private data, you’ll likely have to pay for it. Companies like Ring and Arlo often raise prices for their subscriptions and, in some cases, remove features you’ve already paid for.  

In addition to the basic issues of security, some of the technology behind these cameras has potential drawbacks. First, relying on Wi-Fi alone can be potentially spotty and risky. Many of the cameras, particularly the outdoor ones, rely on battery technology that gives them a relatively long life on a single charge — but at the expense of not running 24/7 by default. 

What’s more, AI detection varies wildly in quality and accuracy from model to model. And very few of the cameras I tested for this article could be activated and managed without downloading another tedious app. I feel very strongly that every single IP camera should be mandated by law to not require an app. You should be able to connect them to your network or put them in hotspot mode and then do the entire process via a web browser. (And if I am forced to sign up for an additional brand-only account, I am going to lose it.)

So despite security cams being part of a massive industry peddling a relatively straightforward product, navigating the issues involved in safely purchasing and using one can feel like a chore. Where do you even start? 

Well, you can start by choosing safe ways to collect and store your video footage. In this article, I’m not going to talk about which camera to buy or how to install it — instead, I’m going to look at some of the more reasonable, flexible options out there that you can use to keep your video feed safe and private, from simplest to most complex.  

Let’s dig in.  

Safe and simple: Apple’s HomeKit Secure Video 

I generally do not trust most companies with my personal data, but of the bigger companies out there, Apple tends to be the least egregious in terms of basic security for smart home applications. If you aren’t the kind of weirdo who enjoys building a server or screwing around with homelab stuff, you could do far worse than a HomePod Mini or an Apple TV as the brain that’s running your smart home, especially if you use an iPhone on a daily basis. 

One of the nice little perks of this ecosystem is HomeKit Secure Video, Apple’s proprietary method for streaming from cameras. HomeKit Secure Video does, however, come with some caveats. You do need to be part of the Apple ecosystem, including an iCloud subscription. It isn’t perfect and has many limitations, but if your No. 1 priority is security, then you could do far worse. And hey — it means you don’t have to download a separate app from the camera manufacturer. 

Stay in-camera: save to an SD card

One nice thing about a lot of these cameras is that they allow you to save to a microSD card. MicroSD cards that hold a huge amount of data are dirt cheap now, and these cameras all run pretty efficiently. I was able to pull saved videos from most of them directly to my phone. 

One camera I tested, the EufyCam 3C with the HomeBase 3, allows a thumb drive to be connected to it to offload footage of triggered events. Another, the Tapo C420S2, actually comes with a little baby hub that will hold a microSD card with up to 256GB. 

Eufy HomeBase 3 on a table

In short, for most people, keeping these devices running with a local SD card instead of opting for cloud services can be more than enough. 

Now, let’s get into the more complicated stuff.

Keep it in-house: run your own NAS

I love my NAS (Network Attached Storage) and think a lot more people should have one. If you don’t know what it is, it’s basically a baby server you shove hard drives into and attach to your router. 

There’s tons of stuff you can do with one. You can use it to store movies, have it function as a Jellyfin (or Plex, if that’s your thing) server, or stream your music and then access it anywhere. If someone I know needs a file on my server, I can just send them a link from my phone. You can also use a NAS solution to record footage from your security cameras. And when it comes to encryption, it can be very secure. 

While a NAS solution can be a hassle to get going, it’s less of a pain than other methods. When I was in the market, I went with Synology, and while it’s not the most open platform, it is one of the most robust off-the-shelf options. Synology’s security software, Surveillance Station, is considered one of the better pieces of software you can get when it comes to monitoring your home. (I have also seen people recommend Blue Iris). Synology’s Surveillance Station is also compatible with a whole slew of cameras. On top of that, Synology offers cloud backups as well (per camera, for a price). 

Again setting up a NAS solution is no minor task for a lot of people, but in general, Synology makes it easier than most. Alternatively, you can just buy an off-the-shelf dedicated network video recorder (NVR) — more on that in a moment. Meanwhile, in order to get my Synology NAS up and running, I first had to find some streams.

Add flexibility by adding a stream

In my opinion, the ability to have a stream makes your security system more transparent and flexible and also allows setting up an external DVR. Many cameras support common streaming protocols, the most common being RTSP and the ONVIF security standard. In general, cameras that can do this have far more utility. You can play an RTSP stream in VLC media player (one of the best free players available), and OBS can be configured to accept RTSP streams if you want to Twitch stream your house like it’s a reality TV show. 

Not all cameras come with this out of the box for various reasons. Many battery-run cameras, as previously mentioned, cannot stream continuously, which rules many of them out. And many smart cameras just don’t offer the feature, although Wyze (if you still trust it) has offered the option to use an alternate firmware that lets you use an RTSP stream. In general, though, several non-battery cameras from Amcrest, Reolink, Tapo, Hikvision, and Dahua allow for this. 

Of the cameras I tested for The Verge, some of the ones that allowed me easy access to an RTSP stream were the Eufy cameras connected to the HomeBase and a model by Lorex. With that stream, I was able to do a lot, like add it as a device in OBS. This allowed me to create something I call my “Bike Stream” setup in which I streamed myself watching to see if anything happened to my bike. Thankfully, nothing happened to my bike. But that’s just one of many opportunities that having ready and direct access to your technology affords you.

Configure to the max with a dedicated NVR

If I am being honest, I really don’t want my NAS to run as a network video recorder. That’s a fairly intensive task, and my NAS is already busy handling other stuff (like streaming FLACs so I can have ready access to all the DVDs I ripped). And while I am glad that I have Surveillance Station set up, I would prefer I have a piece of hardware dedicated to the task. Plus, I really wanted to see how far into the deep end I could go. 

I really wanted to see how far into the deep end I could go

For that, Scrypted and Frigate are what I am interested in. Frigate is a free, open-source NVR with a fantastic Home Assistant integration that lets you really unlock the potential of what you can do with your camera system. Scrypted is an open-source plug-in and has support for HomeKit Secure Video, even letting you use it for non-HomeKit Secure Video cameras. I already had HACS (Home Assistant Community Store) running, so getting Scrypted up and running wasn’t too hard.

Both pieces of software are infinitely configurable. And unlike other software like Blue Iris, you don’t pay fees to use Frigate, although you can get custom AI models with Frigate Plus to support the development of the platform. Scrypted NVR and its desktop client, on the other hand, are for paying subscribers, but there’s still a ton of stuff you can do with the software without paying. 

You can run either of them on a Mini PC or a NUC with something like an Intel N100 processor. Both can also run in a Docker container. Both can also be paired with Google’s cheap Coral accelerator, which has an Edge TPU on board, in either a USB or M.2 form factor, for hardware acceleration of machine learning, massively lowering the hardware load for object and facial detection.

You can also do tremendously interesting stuff with Scrypted and Frigate. For example, Frigate can use any ONVIF camera with PTZ (pan, tilt, and zoom) to automatically track objects, and you can use OpenVino, a deep learning model from Intel. Got a camera pointed at your bird feeder? Frigate lets you do the integration “Who’s At My Feeder?” to identify specific bird species, or you can try its “someone is parking in my driveway” feature. Not to be the open-source software guy, but the actual possibilities here are extensive and truly exciting.


Create your own DIY camera

If you want to be that person, you can make your own camera. MediaMTX is simple open-source software that acts as a kind of broker for video streams. With it, you can easily turn a single board computer like a Raspberry Pi with a connected camera into a secure, network-connected RTSP camera. If you have a Pi that’s collecting dust and you are technically inclined, then it’s as easy as throwing a camera on that little guy and setting it up. MediaMTX also supports other standards like SRT, WebRTC, and HLS and has a ton of streaming flexibility with how it can be set up, particularly when paired with something like Frigate.


How deep can — or should — you go?

If you are really paranoid about your devices potentially phoning home, there are a lot of ways to prevent them from doing that. You can put your cameras on a VLAN to isolate them or set your cameras to have static IP addresses and block them from accessing the outside world. This is a good practice but starts getting into deeper territory than the average person has the energy for. As with most things involving security, the question is: how deep do you really want to go? 

The world of security cameras is confusing by design, but in an ideal world, it doesn’t have to be. I want a world where these devices are more transparent by design and more secure, with fewer apps that clutter up my homescreen. I want a device that does not phone call external servers, with encrypted video as a basic standard that lets me configure it however I want and actually have some real fun for a change.

Correction March 4th, 1:02PM ET: An earlier version of this story incorrectly implied Wyze let users see into other people’s homes for three years. Wyze briefly let people see into others’ homes on two occasions; the three-year vulnerability was a separate issue.

]]>
Chris Person <![CDATA[The best robot vacuum for me is the one I hacked]]> https://www.theverge.com/23934731/valetudo-robot-vacuum-hacking 2023-10-31T11:30:00-04:00 2023-10-31T11:30:00-04:00
A little extra hardware, a handful of Linux commands, and boom, the vacuum is free. | Photo Illustration by Cath Virginia / The Verge

Conceptually, I love robot vacuums. A little friend who cleans up my floor? Fantastic. Into it. The issue is, unfortunately, I don’t trust them. They constantly report back to the external servers, and they can be a huge security liability. I don’t want that. Someone has to have hacked these things, I reasoned. A quick search revealed I was correct. This is how I came across Valetudo, a project that aims to liberate robot vacuums from the cloud.

Valetudo is a firmware replacement for your robot. It integrates with a vacuum’s existing software and acts like a cloud replacement that allows you to control your robot vacuum locally. Instead of having to use a proprietary app on your phone, which connects to a distant server, which then connects back to your robot, you can simply control it directly with either an Android app or a simple web interface. (An iOS app is currently not available.) It also works with MQTT, and it can be controlled via the open-source home automation solution Home Assistant once properly configured. 

The first thing I should stress is that this is not, in its current state, a beginner project. Installing and setting up Valetudo on a compatible vacuum requires some knowledge of Linux and the ability to patiently follow instructions. Even if you have those skills, there is still a nonzero chance you could brick your robot. It’s also unlikely that you’ll be able to revert your vacuum back to its default state once this is installed. But if you want a vacuum that is not tied to an internet connection and don’t mind getting your hands a little dirty (and voiding warranties), Valetudo does the trick.

Valetudo itself exists because of Sören Beye (AKA Hypfer) and Dennis Giese. Giese, a PhD student at Northeastern University, started hacking back in 2017, eventually found a way to root a Xiaomi robot, and wrote a cloud replacement implementation called Dustcloud. He published it at Def Con and CCC, and then someone used that to create a more lightweight implementation called Dummycloud, the concepts for which would find their way into Valetudo. (Valetudo is the Roman name for Hygieia, the Greek goddess of cleanliness, health, and hygiene.)

Beye had seen Giese’s Def Con talk and, a year later, started hacking a Roborock S5 he got from Aliexpress. Eventually, Beye put the prototype of Valetudo on GitHub and announced it on Roboter-Forum, a German forum about cleaning and mowing robots. Slowly, their work drifted together, with Beye working on a lot of Valetudo proper and Giese responsible for the image and rooting tools, as well as finding the exploits as they evolved. Giese later created DustBuilder, which streamlines the process of building firmware and rooting devices. 

To decrypt firmware from new models and vendors, the keys from real devices are needed, and while some people do donate robots and Beye and Giese take donations to keep the project going, a lot of the cost comes out of pocket. Giese admits he has probably spent close to $30–$40,000 on robot vacuums. “Money donations are a bit cyclic. Sometimes, I get some cash together to buy a robot. But it’s obviously still a money pit,” he told me.

There are many advantages to using Valetudo instead of a vacuum’s default system. The big one is that your robot is not connected to the cloud, which is very important if you are overly paranoid that your vacuum might, say, take photos of you on the toilet, which then get shared by gig workers to Facebook. “All of the robots store pictures in one form or another. Some of them are uploading the stuff,” said Giese. “It’s not your devices; it’s the vendors. They have full control over the data and the device.”

Valetudo liberates a robot vacuum from the cloud, allowing you to store all of its data locally

With Valetudo, maps of your house are not stored on a remote server but locally on the vacuum’s internal storage. The interface is standardized across all the supported vacuum models, so you don’t have to relearn anything if you switch to a new robot. You are not forced to install updates to your robot. You are not subject to marketing or push notifications, and your email and phone number will not be subject to a data breach. You do not agree to an extended and unreadable corporate TOS. It does not require a smartphone app connected to a distant server, which also means better latency for commands. And even outside of what it doesn’t make you do, there’s tons of additional functionality like custom Home Assistant integration, Wi-Fi strength mapping, the ability to turn your house into a Minecraft map, and voice packs. (There is a GLaDOS pack someone made, but I am trying to hack it so it sounds like Roger from the show American Dad.

iRobot and Roomba are almost synonymous with robot vacuums at this point; they aren’t ideal for hacking because they lack the processor overhead to run Valetudo. The most commonly used models for installing Valetudo are from Roborock and Dreame. 

For this project, I used a Dreame L10S Ultra, which has recently been added to the list of compatible robots. The method of modifying the robot varies from model to model and vendor to vendor (some older robots can actually be rooted OTA, or over the air), but the easiest way to hack the Dreame requires some specific hardware and direct access to the robot. This Fastboot method uses an exploit to the Allwinner LiveSuit tool for Linux and modified LiveSuit images. “Fastboot was my solution to prevent people from bricking their device,” Giese said. “The alternative would have been real livesuit images, which are dangerous.”

To hack the robot, I acquired a $5 custom piece of hardware called the Dreame Breakout PCB through the Valetudo Telegram group, where most of the support for the process lives. Strictly speaking, you do not need this adapter to hack this model; it just makes hacking it easier and can be easily shared with hacking spaces and groups of like-minded friends. I also will never pass up an opportunity to solder a doohicky I got from GitHub.

“[Valetudo] requires rooting. But with the builder, it’s technically not that hard to use, even for non-Linux users. We have a very big community with lots of people that have experience.” Giese told me. “You see the usual suspects in Telegram helping people.”

The next step was to actually gain root access to hack the robot. The process I followed strongly recommends using a laptop with Linux installed (Debian, for example). (A Raspberry Pi does not work in this specific case since fastboot requires x86 binaries, which the Pi can’t run.) I did not have a Linux laptop handy, so I pinged a good friend of mine from my local hacking space to help out. This was also convenient because while I am pretty good at using intermediate Linux commands, this specific method currently requires quickly inputting commands in a slightly narrow timeframe of 160 seconds or risk bricking your device, and frankly, he just types faster than me.

We installed the necessary dependencies and software, pried open the top using a couple of small flathead screwdrivers, took the breakout PCB I had soldered, and, per the instructions, plugged it into the 16-pin Dreame Debug connector. From there, we connected the laptop via USB and used the software to extract the config value of the device and input it into Dustbuilder. 

Once the website generated and sent us the custom firmware images and text files, we were able to root and flash the device through a series of fastboot commands. “There are some aspects of the rooting which are black box… I don’t like that necessarily, but I did not find a better solution,” Giese told me later. Finally, we installed Valetudo using the Valetudo-Helper-HTTPbridge and backed up the calibration and identity data of the robot. Those are all the parts that were a pain; the rest is pretty easy.

After going through the rooting process, the robot appears as a Wi-Fi access point, like many smart home devices do during setup. You connect to the robot’s network, open a browser, type the local IP address into it, and then input your Wi-Fi credentials to connect it to your network. From here on out, find it on your network and open the address in a browser. Congratulations, little buddy, you’re free.

Interacting with a robot via Valetudo is, like using Home Assistant, a simple and no-nonsense affair. I typically control mine via a local browser window. The robot will start by mapping the space it is in, segmenting the space into zones, and then that map can be modified freely using the UI. You can choose to have the robot vacuum all spaces, individual segments, or even just areas you select with a lasso tool. Fan strength, manual controls, surface behaviors, docking behaviors, timers, and every granular capability you can think of are available. There’s even a way to control it with a gamepad. And while some vendor-specific features might not be present, the ability to have total access and control of your robot opens up many possibilities. While writing this article, a person on X (formerly Twitter) responded that they discovered they could pipe a voice synthesizer into their robot via SSH, allowing them to screw with their roommates by having it complain about its imprisonment. You simply can’t buy fun like that.

So much of what tech companies do, both generally and here specifically, is not particularly special and, in many ways, actively intrusive. iRobot is not some unicorn tech company at this point. It is a company with several competitors that all strive to do more or less the same thing. These robots do not strictly “need” to be connected to the cloud all the time to clean your house, but they are, and to me personally, they are worse devices as a result. 

A screenshot of a Wi-Fi strength map made by a vacuum running Valetudo.

“I think that in a perfect world, Valetudo wouldn’t exist,” Beye told me over Telegram. “It fills this gap that would be technically trivial to fill by the vendors, but they simply refuse to do so because requiring the cloud makes for a better business model.”

All I wanted was a vacuum that I could trust, one that would treat me like an adult. You know, like my regular vacuum cleaner. I don’t know if any company out there would voluntarily consider offering a vacuum robot that just vacuums without phoning home, not even a solitary model marketed to weirdos like me. A Framework laptop, but for cleaning my house. 

Beye believes that the most likely path to vendors offering local devices is EU regulation forcing IoT devices to give people the option to use their devices offline or without registering an account. When I asked Giese about the idea of an open-source vacuum, he believed it to be unrealistic in the current market. As it stands, if you don’t want your vacuum to narc on you and if you want respect from your tech, you have to patch it in yourself, and there’s only one place to find that: on a Telegram channel with a bunch of other friendly, opinionated nerds who will send you a circuit board in the mail.

Hacking my robot vacuum gave me flashbacks to when computers were more customizable and not sealed up boxes

Once he was liberated, my robot started making happy little laps around my house, scanning it, mapping it, and storing it locally. For now, his name is Chappie, named after the military robot that stops being a cop in the charming but bad movie of the same name. I cannot express the irrational amount of joy I felt, like a proud parent, watching this little guy go. For the hell of it, I had him start mapping my Wi-Fi signal strength so I could potentially make adjustments to my access points. 

At the risk of sounding too over the top, I felt true elation and affection when I finished this project. It felt like when I was young and when computers were new and fun things before everything became gray sludge and tablets, condescending UI, and endless pages of unreadable, untrustworthy terms of service agreements. It’s that rare moment when you touch a piece of tech and know it all does what you want it to because you made it that way. It felt like a friend.

I love my dust-sucking son. And I cannot tell you how happy I am that he is finally free.

]]>
Chris Person <![CDATA[The Home Assistant Green is here to make the most powerful smart home platform more accessible]]> https://www.theverge.com/23875557/home-assistant-green-announcement-price-specs-ten-year-anniversary 2023-09-17T15:00:00-04:00 2023-09-17T15:00:00-04:00
The Home Assistant Green can be the main command center for your smart home. | Image: Home Assistant

Buy enough tech and you can’t escape the siren call of a smart home. Amazon practically throws Echo Dots at you. Google will sneak a Nest Mini in the box with almost anything you buy in its store. Good luck buying a new kitchen appliance that doesn’t beg to be connected to the internet. All of those come with platforms that are locked down and cloud-dependent, requiring you to bend to their corporate wishes to use them.

But for the last decade, Home Assistant has been the go-to software for privacy-focused nerds who want all the benefits that Apple, Google, and Amazon products provide with infinitely better flexibility and fewer security risks. And now, for the software’s 10th birthday, the people behind Home Assistant are introducing a new product in the hopes of extending it beyond the domain of nerds: the Home Assistant Green.

“Our ideal future, long term, is that we want for people to get a privacy-focused smart home is not only something rich people or nerds have access to,” Home Assistant founder and CEO of Nabu Casa Paulus Schoutsen told me in an interview. 

“We want people to get a privacy-focused smart home… not just rich people or nerds”

Like a lot of people, I originally ended up finding Home Assistant because I had too many devices that did not play well or at all with each other: Hue lights, smart speakers, a NAS, an air conditioner, not to mention with random switches, motion presence sensors, and other misfit dongles I bought on AliExpress. And while bigger companies are adopting Thread in an attempt to make everything play nice together, even interoperability on that has been a mess. A general dissatisfaction with the state of things and a need for painful specificity is apparently a common pathway to Home Assistant.

But there have been many roadblocks. While the process of getting Home Assistant set up is not tremendously difficult for the kind of person that screws around with Raspberry Pis regularly, it is still not an experience for the faint of heart. It is, at this point, still an enthusiast piece of software, and setting things up is still a very intentional process by design. But there’s a huge segment of people that want to jump in without messing around with hardware. The Home Assistant Green is a convenient little package and an attempt to make the onboarding part easier for everyone.

A box for everyone

A view of the back of the Home Assistant Green showing its ports.

Priced at $99 and planned as a permanent item alongside the Home Assistant Yellow, what makes the Home Assistant Green novel is not that it has powerful, high-end hardware, although the RK3566 quad-core CPU is fast enough to run the software without issue. What makes the device unique is the 32GB eMMC storage that’s preloaded with Home Assistant’s platform. It’s a more affordable and much easier entryway for people who want to dip their feet in the water without having to flash a memory card from another PC. The unit also comes with 4GB of LDDR4x RAM, a few USB 2.0 slots, an HDMI out, and a microSD slot for expansion. 

The device is explicitly made to just run the Home Assistant Operating System — it’s not meant to be an all-purpose computer like a Raspberry Pi. It’s also not a piece of hardware you can just give to a tech-phobic relative yet but rather something for the person who is aware of Home Assistant but hasn’t wanted to deal with the hassle of getting it all running.

To get started, you just plug it in with the included power adapter, connect it to your router via ethernet (the Green does not have Wi-Fi “because the backbone of your smart home should use ethernet,” Schoutsen explains), and go through the setup process using your phone or another computer. The system will automatically detect devices on your network that can work with it. If you don’t have a Hue hub or existing way to connect to Zigbee devices (and experimentally Thread), you can add a Skyconnect dongle later. There are countless devices Home Assistant already works with, but for Home Assistant Green, simplicity is the point. 

A shot of the Home Assistant Green in front of the Home Assistant Yellow and Home Assistant Blue.

I received an early sample of the device for testing, which came in a nice frosted plastic case with a metal base and simple-to-follow instructions. This is a much nicer-looking setup than what I currently have, which is a bare Raspberry Pi 4 Model B just kind of chilling out on my bookshelf with cables jutting out at various angles.

After plugging everything in and visiting the address of the Green in your computer’s browser (http://homeassistant.local:8123/) or the Home Assistant mobile app, you are greeted with a quick installation screen asking if you want to start a new smart home or restore an old one. Since I was already running Home Assistant, I made sure to do a full backup of my instance and downloaded it to my PC before unplugging it for my router. From there, I just uploaded the backup and waited for like 20 minutes while it put everything in place. It currently doesn’t let you know when it is done, so you just kinda have to refresh your browser window, but sure enough, all my stuff was exactly where I had left it, all my painstaking UI tweaks and integrations were there, and my Skyconnect functioned. It all just worked.

If simplicity is the goal, the team achieved it. 

A screenshot of the Home Assistant set up screen.

“Currently we’re aiming for the audience we call the ‘outgrower,’” Schoutsen explained via Discord. “It’s the one that uses Amazon / Apple etc., runs into the limitations and wants more. Searches the web and finds Home Assistant. At that point users already know they want a smart home and are looking for solutions to their problems, which Home Assistant generally can solve. We believe that with requiring a Raspberry Pi to get started or the relatively high price of the Yellow (you don’t know if your problems will get solved for $200), we were missing out on a good chunk of outgrowers. So with Green, we’re trying to offer a way for anyone to get started with Home Assistant.”

10 years of Home Assistant

Home Assistant, which celebrates its 10th birthday today, has grown a lot in the last 10 years. Like myself, Schoutsen got into the game after getting an expensive set of Philips Hue bulbs and hitting a wall with what they would let him do.

“I didn’t start Home Assistant because I wanted to write a smart home platform,” he explained. “Hue got released, and I bought it. I was at that point a visiting scholar at UCSD finishing my MSC thesis and was doing a bunch of Python stuff, so I wrote some code to talk to Hue.” 

Since then, the project and the team have expanded to 28 people. Development of Home Assistant is funded by subscriptions to the company’s cloud service Home Assistant Cloud, as well as the sale of hardware like the Yellow, limited edition Blue, the SkyConnect dongle, and now the Green hub, allowing the company to develop without outside investors breathing down its neck. Outside of the core team itself, there are countless people adding blueprints and contributing to the code in their spare time. According to Schoutsen, Home Assistant is the second most active open-source project on GitHub. 

When I inquired about possibly extending the project beyond the home, Schoutsen said he was not interested. “Anytime you expand the focus, you need to add features that fit one use case well, the other not so well,” he explained. “I wouldn’t want to go after hotels or offices. When talking to companies, people always thought we would go there, as that’s where the money is but not the fun 🙂. And we have no investors to steer us away from our focus on the home.” Building into offices would also require very strict access control, Schoutsen said, which would slow down the process by which they add features. This is a more sober vision for a product than you normally see coming from founders, one that was further compounded when I inquired about where they see the Home Assistant relative to Google or Apple’s offering.

“I don’t see us competing directly with Google / Amazon / Apple anytime soon for the segment of users that need to be taught about a smart home because the thing is that anyone with a smartphone has access to Google Home and Apple Home. We don’t claim that those users have a smart home, though. Even having multiple connected devices doesn’t make a smart home. A home only qualifies as ‘smart’ when people start caring about having their connected devices with unified control or work together.” 

“A home only qualifies as ‘smart’ when people start caring about having their connected devices with unified control or work together.”

Having used both HomeKit and Home Assistant, I am inclined to agree. Home Assistant’s main market will always be people who want an intentional smart home, something that does exactly what they ask it to, not an overly curated closed garden. And while there is still tons of work to make it more inviting to newbies (finding user-created blueprints should be easier, Schoutsen admits), the core of what makes it work remains the same: thousands of users getting devices for their home, saying “this doesn’t work like I want it to,” finding a workaround, and sharing their progress.

“It takes quite some effort to keep the machine moving,” he said.

While I am, by my nature, a person who loves to tinker, I also live my life with the understanding that most people are not like that. You can invite curiosity with Raspberry Pis, but a lot of people want something that gets them most of the way there already. So much IoT hardware is sold on being seductively easy and inviting at the cost of being closed, insecure, and invasive. Looking at the semi-opaque plastic case of the Home Assistant Green, I hope that Schoutsen is right. I hope more people get into running Home Assistant, into open-source software, and ultimately about having total control over a truly “smart” home.

]]>
Chris Person <![CDATA[How to start a smart home using Home Assistant]]> https://www.theverge.com/23744526/smart-home-assistant-how-to-automation 2023-06-15T08:00:00-04:00 2023-06-15T08:00:00-04:00

There is a certain flavor of tech nerd that needs direct, unadulterated access to whatever they are working with. Most of these people are Linux users, can own several Raspberry Pis, can’t stand it when something comes in between them and their hardware, and will take whatever complex path they need to interface directly with it. I am one of these people, and I am only getting worse over time, which is why I have converted my smart home to Home Assistant, the home automation solution for true freaks.

Now, many “normal” people out there are satisfied with Apple Home, Google Home, Amazon Alexa, and the like, and I understand. These ecosystems are easy to use, require very minimal setup, and (for the most part) they “just work.” Apple Home, in particular, works great if you have multiple Apple devices. But get demanding enough, and you will hit walls, little compatibility issues, annoying limitations, and various other roadblocks that come from being in a walled garden. Home Assistant addresses that by being open source, flexible, and limited only to whatever people want to develop around it. If you can think of a smart home product, a sensor or switch or light, it’s very likely that one or more frustrated nerds figured out how to get it to work using Home Assistant several years ago.

Home Assistant started as a Python application back in 2013 and has quickly evolved over time into the go-to solution for fans of open-source software. Unlike other smart home systems, it can be installed on tons of devices like single-board computers (which includes Raspberry Pi devices and easier-to-get hardware like the Odroid N2 Plus) as well as other network devices. For a while, I had Home Assistant running on a Docker container on NAS, but eventually, I put it on its own Pi. 

You can also buy hardware specifically for Home Assistant, like the Home Assistant Yellow, and they even offer a dongle called the SkyConnect for Zigbee and Thread support. Home Assistant is funded by Nabu Casa, an optional Home Assistant cloud computing service

Home Assistant Yellow

I have found that Home Assistant offers the greatest amount of compatibility with the devices in my home. If you can think of a scenario for your smart home gear, you can probably script your way to it. You can make any button or switch (provided you can find a compatible blueprint) trigger any other device in your household in excruciating detail. You can have specific conditions based on any number of very tiny criteria and external factors. If you really wanna get twisted, you can create an elaborate flow chart using something like Node-RED, a development tool originally made by IBM that has been adapted to Home Assistant specifically for just such depraved uses.

For example, not only was I able to program every light in my house, but I was also able to program one of my light switches to play audio through my speakers from the episode of Family Guy where Peter Griffin has to explain why he did not care for the movie The Godfather (“it insists upon itself”). Another example: fellow Verge-er Chris Grant took a cue from this Hackaday post and made a secret bookshelf switch that turns on his fireplace. 

Most people will never need that functionality, but for me, the freedom to do something that inane with my gear is absolutely vital. What’s more, I want as few people holding the keys to my home as possible, and so self-hosting my home automation is absolutely crucial. I don’t want Jeff Bezos knowing anything about my home activities aside from the countless reams of consumer spending data he already has on me and everyone reading this.

Ready, set, start

If you want to get started with Home Assistant, you can’t go wrong with a Raspberry Pi 4, provided you can find one. But given the relative unavailability of Raspberry Pis even now, an Odroid N2 Plus is probably your best bet (this is what the developers currently recommend). Basic installation is pretty straightforward as far as these things go and far less intensive than most single-board computer projects. 

For example, with the Odroid, you’re going to need your little computer, your boot medium (usually a flash card but sometimes an EMMC), and a program called Balena Etcher. From there, you can flash your card via an URL, put that flashed medium into your SBC (single board computer) when you are done, connect that bad boy to your router, and let it set up. You should be able to access Home Assistant from any browser or phone, provided you are connected to the network. Connecting externally or via the cloud is an entirely different topic, although Nabu Casa is available if you don’t want to figure out remote access.

Once you have Home Assistant set up and connected to your network, the sky’s the limit for what’s possible. Do you already have Wi-Fi or Zigbee light bulbs? Home Assistant can work with them. In my case, I can group together my Hue lights, my Elgato Key Lights, and some fixtures I soldered together from scratch using WLED into scenes and automations. I used an integration called ZHA (Zigbee Home Automation) and the SkyConnect to negate the need for my original Hue hub.

One of the first things I did when I got Home Assistant set up was to automate my office lights using a human presence sensor I got on Aliexpress for 25 bucks. Unlike a motion sensor, a human presence sensor is sensitive enough to detect not only when you’re in a room but also when you’re in there and not moving. I currently have it set to turn all my lights on in the office with a brightness and color temperature that is time-dependent. It works very well. I don’t even use the light switch in there anymore, although the sensor is so sensitive that it occasionally detects human presence through the wall and in the hallway adjacent to the office itself. I have no idea why it does that, and my girlfriend finds it very funny.

Box and small white sensor.

I can control everything using the handy Home Assistant app or just via my browser if I want. The UI out of the box is not the slickest around, but it’s functional and allows for tons of customization. Home Assistant is able to talk to my many Airplay 2 devices, it can play media from my home server via DLNA, and if I want to expand it further, there’s an entire ocean of gadgets on Aliexpress that I can get to flesh it out. I actually bought a CO2 and air quality sensor for it that I’ve been meaning to build. There isn’t really much in my house with Wi-Fi or Zigbee that is outside of its reach. If I ever end up in a situation where owning a house with solar panels is possible, Home Assistant could be used to manage them

Help from the enthusiasts

I have written about my experience setting up Home Assistant before, but much of it involved taking the smart home ecosystem I had cobbled together over the years and ripping it apart to rebuild from scratch. When it was all said and done, it felt great. But I am not going to say it was a painless ordeal. Much of what makes Home Assistant work is built by enthusiasts, so if a device doesn’t work out of the gate, very often, someone in the Home Assistant Community will create a blueprint to fill the gap. 

While this is not the most complicated thing you will have to set up, it’s an additional layer to deal with and a far cry from the native support of other ecosystems. Little touches, like transitions between lighting scenes, need to be created manually. You need to know exactly what you are doing and why you’re doing it. This is especially true if you sink your teeth into the Home Assistant Community Store, a very powerful integration that adds tons of options if you really want to take the training wheels off.

To give Home Assistant credit, it has gotten much better and more intuitive over the years, but again, it is not frictionless. I wish that it was a little less difficult to make the UI more attractive (although I’ve found that Mushroom looks very elegant), and while I am the kind of person that loves scripting, it can be a little tedious at the end of the day. Better and more intuitive integration into community elements would be nice, but I mostly have it set up now, so I am not really complaining. That said, would I trust a clueless family member with only basic tech knowledge to be able to work with Home Assistant if I set it up for them? Probably not.

While there isn’t a lot that Home Assistant can’t do with enough elbow grease, there are ways it could be more inviting. It’s still a lot of manual work, and it has the highest barrier to entry. But on some level, what do you expect? If anything, it’s less about what I want out of Home Assistant but rather what I want out of hardware makers. While Home Assistant can be made to work with nearly anything, a more robust ecosystem of hardware that works out of the box (like Skyconnect) would make recommending it to people an easier sell. 

I would love a world where an open-source smart home was so simple and intuitive that a not-tech-inclined person could set it up easily. It would make me so happy for Home Assistant to be so ubiquitous that most hardware manufacturers have to support it instead of the other way around (although with Matter, that is less of an issue). I hope that Home Assistant becomes so robust and popular that I can recommend it to someone without having (or getting) to explain, in detail, what a Raspberry Pi is.

That’s a nice future to imagine, but currently, Home Assistant is still strictly for the real freaks, which is convenient — because that’s a fitting description of me.

]]>
Chris Person <![CDATA[The Home Assistant SkyConnect is a great excuse to demolish your smart home and start from scratch]]> https://www.theverge.com/23641940/home-assistant-skyconnect-thread-matter-zigbee-smart-home 2023-04-02T10:00:00-04:00 2023-04-02T10:00:00-04:00
Adding Zigbee and Thread to Home Assistant has never been easier. | Image: Chris Person

My smart home has been a mess for a while. Before writing this, it was a combination of a Hue hub and HomeKit, the former of which I was not terribly fond of having, and the latter I tolerate. But for a few years now, I have wanted to go convert my whole house to Home Assistant: the self-hosted home automation software. And now, with the SkyConnect Connect, a combination Zigbee and Matter / Thread dongle from Home Assistant, that transition is complete. In the process, however, I broke half of the stuff in my home. Nothing works, and I could not be happier.

Home Assistant, for those of you who do not follow the Smart Home nerd beat, is the almost universally accepted choice for free and open-source home automation. Unlike Apple’s HomeKit (which requires Apple devices), it can run on single-board computers like the Raspberry Pi, a Docker container, or basically any little computer you can install it on. It also lets you get very deep in the weeds with how, precisely, you want your home automated. It’s not the most intuitive choice, but it’s not that difficult, and if you’re even remotely paranoid about who has the keys to your smart home (which I am) Home Assistant is one of your better bets.

Now, aside from the issue of home security, one of the larger issues with home automation is interoperability. Out of the box, tons of smart home gadgets have not, historically, played nice together (I am looking at you, Philips Hue). That has gotten way better as the years have gone by, particularly with HomeKit and Google Home, but Home Assistant has always excelled at this because it has a very active community of nerds who want all their weird toys to play nice in deeply specific ways. If you have a switch you want to work with another device, someone has very probably spent lots of time configuring it and put that information online as a blueprint. 

You may also be aware of Matter, the new standard for home automation that seeks to make a lot of these issues a whole lot easier. If you are not aware of Matter and Thread, I highly recommend The Verge’s own explainer. The rollout is still in the works, and there are not that many devices out there in the wild yet, but if it all goes to plan (big if) then there should be far fewer headaches going forward.

I wanted to get rid of that hub and have everything working in one little ecosystem

I had briefly experimented with running Home Assistant as a Docker container on my NAS (my little network device I use to store movies) a few years ago. I was very much impressed with how well it could communicate not only with my existing smart home devices but also how granularly it allowed me to program my existing devices. But the thing that kept holding me back was my Philips Hue system, which, for years, had made using anything outside of its ecosystem a chore. Until recently, Hue relied on Zigbee, a low-power mesh network standard, to have bulbs talk to each other. 

As an early adopter of the Hue system, Hue has not made things easy. Despite sharing the Zigbee protocol with other bulbs and switches, getting them to play nice with them has historically been like pulling teeth. For example, Ikea has its own smart home system, complete with its own hub and app and everything (hey look, it has one with Matter now!), but a few years back, having them play nice involved a lot of weird workarounds. Of course, there are great workarounds and integrations I could use, like Zigbee2MQTT, the Philips Hue integration, and now, Matter. But it was the principle of the thing: I wanted to get rid of that hub and have everything work in one little ecosystem. I wanted a new start. This is where the SkyConnect comes in.

Philips Hue Bridge device shown wall-mounted above a table near a lamp.

Adding Zigbee (or even Z-Wave) to Home Assistant is not new. Tons of USB dongles, like the ConBee II, already exist. The SkyConnect is novel in that it adds both Zigbee and Thread / Matter support, and while I do not have Matter devices in my home, knowing that it is partially futureproofed and manufactured to work directly with Home Assistant itself was enough impetus for me to preorder. It’s a great excuse to take the plunge and have a fresh start. Another option for adding Matter and Zigbee is the Home Assistant Yellow, a robust little board that uses a Raspberry Pi Compute Module 4, but I do not have access to a CM4, so I went with the dongle.

Now normally, I would just run this as a Docker container on my NAS, but I had no idea if the dongle was even compatible, and I thought it best to dedicate an entire device to running my home. Luckily, I had recently replaced a network of Raspberry Pis with WiiM streaming pucks, so I had a few Raspberry Pi 4Bs lying around (if you are still struggling to find one, rpilocator is a great tool). It was time to get serious. Installing Hass.io (Home Assistant’s OS) is a breeze if you have ever done anything remotely complicated with a Raspberry Pi; you just download the .img file or copy the URL, use software like Etcher to write it to a microSD card, and follow the instructions from there. As far as open-source projects go, this is a very simple process to get started.

A Raspberry Pi 4b connected to a Home Assistant Skyconnect.

The SkyConnect looks like a little blue USB drive and comes with a little extension cable, specifically because USB 3.0 ports have been known to cause interference with wireless devices. The device itself is plug-and-play, meaning you do not have to set up anything; Home Assistant will just recognize it and make it work.

Here comes the fun part: the slow, painful process of dismantling everything connected to the Philips Hue Hub. For this process, I was going to be using Zigbee Home Automation. The process is straightforward but less intuitive than software made specifically for the hardware. Because you have to unpair bulbs and remotes with the hub to get them to work, this meant that every switch in my home was temporarily out of commission. Nothing worked, but I was pumped because I got to do everything on my terms, using software I hosted and without a freaky little uncooperative hub holding my hand.

I started off by pairing my bulbs to ZHA (Zigbee Home Automation), an integration that would talk to my Zigbee bulbs and remotes. From there, Blueprints came very much in handy. Blueprints are premade automation presets that simplify the process of programming in Home Assistant. The Hue wall switches I had needed to be reprogrammed. Awesome HA Blueprints is a great source, and had a compatible blueprint available, although I did get a little tripped up on the helper text file I needed to set up to make the Blueprint actually work. From there, I started setting up all the lighting scenes I had. 

A desk from an overhead view with three monitors, a colorful keyboard in the center, a PC on the right, and various other tech.

The situation went from back to baseline to fun when I started integrating other non-Hue switches into my Home Assistant ecosystem. I have Elgato Key Lights set up at my desk for streaming and Zoom calls, and now, with Home Assistant, I could skip the app and treat the lights like any other bulb or switch, add them to scenes, and even automate them. I then started adding other devices to my house, like sensors from Xiaomi that I was able to use to turn my office lights on when they detect movement. I also have several other bulbs and custom light strips I made by hand that work on something called WLED, a Wi-Fi-based system that allows for very granular control of light strips. The topic of WLED is an article unto itself, but the long and short is that an integration for it exists in Home Assistant. Someone is also working on an integration with my WiiM pucks, although I have yet to really dig into that one.

From there, things get really perverted. I installed HACS, or Home Assistant Community Store, an add-on that requires a tiny bit of convoluted setup but lets you download custom GitHub repositories to do some really freaky stuff. My colleague Chris Grant, a real Home Assistant maven, also tipped me to Node-RED, an add-on to set up complex home automation using flowchart nodes. I was in hog heaven. I could do some really goofy stuff now.

Did I need to buy Home Assistant SkyConnect to start using Home Assistant? Or better yet, did I need Home Assistant at all? Honestly, no. I could have lived my life using HomeKit and the Hue app and been perfectly satisfied and content. Everything was set up, and there were countless workarounds developed to make my patched-together system of devices talk to each other. But as I have grown older, I have become more cantankerous about who and what has access to my stuff, and I am increasingly impatient when I am not allowed to do something with my hardware in the most depraved way possible. Though I will never have a use case for a light switch that also sends an email, I know that, if I ever wanted to make that happen, I now could with a simple Node-RED flow chart.  

What this comes down to is control. And while the SkyConnect is just a simple radio dongle, it also represented an excuse to take that control back, to do something I had been putting off for years, and to finally make a smart home my home.

]]>
Chris Person <![CDATA[Adobe’s subtitling AI is good, but this free Resolve add-on has far more potential]]> https://www.theverge.com/2023/3/14/23622147/storytoolkitai-subtitle-and-translation-automatic-transcription-resolve-premiere 2023-03-14T11:30:17-04:00 2023-03-14T11:30:17-04:00
Making subtitles, including rough machine-translated ones, has never been easier in Resolve. | Photo by Chris Person / The Verge

I love when people care about their subtitles. Not enough people on YouTube do it, and it’s wildly important from a basic accessibility perspective. What’s more, tons of people (myself included) prefer to watch movies with the subtitles on. And while the process of transcription itself can be tedious, you can have a lot of metatextual fun with authoring subtitles for dramatic effect, in particular with descriptive subtitles. So I wanna talk a little bit about a tool I use in DaVinci Resolve called StoryToolkitAI, which not only simplifies the process but actually has some rudimentary translation services built into it.

What are SRTs?

An SRT file for The Sudden Wealth Of The Poor People of Kombach (1971) opened in VScode.

Before we get to that, though, we gotta talk about subtitle formats. SRTs (aka SubRip Subtitle files) are one of the most common forms of subtitle formats out there. It’s a simple text file with chat and timecodes that can be easily understood by Youtube, VLC and more. There are tons of other formats, including one that features the ability to do advanced formatting, color, and position and are mainly used by anime and Japanese TV fansubbers (shoutout to the appropriately named Advanced SubStation Alpha, or .ass format), but SRT files are easy to deal with and understood by program files like DaVinci Resolve.

Premiere vs. Resolve

As a general rule, I am not a fan of the video editing software Adobe Premiere. I think it’s a broken, expensive piece of software with a very annoying and predatory subscription model that is (almost) trumped feature-for-feature by DaVinci Resolve at this point. The main feature that initially sold me on Resolve and got me to move my whole workflow over was actually how efficient and easy it was to author subtitles in it, versus Premiere, which was a nightmare and crashed all the time. 

An image of a transcription being generated in Premiere of the Space Ghost: Coast to Coast episode “Knifin’ Around.”

Since then, Premiere has rapidly improved at doing one thing: transcribing interviews. Even if I still don’t like using and especially paying for the product, they put some real time in here on improving the product. Hands down, the most interesting work being done on Premiere has to do with its cloud features involving transcription. It’s a joy to use, and when it works, it works. You are going to have to babysit it a lot of the time, and any result will obviously need another pass with an editor, but it reduces the workflow of timing these things by a massive margin. They are also iterating on it in really interesting ways, in particular “text-based editing,” despite the fact I find the actual process of dealing with subtitles far less enjoyable than DaVinci. DaVinci’s subtitle editor has just been consistently far more intuitive, less laggy, laid out better, and way more flexible than Premiere’s.

Adding a very handy feature

So currently, there is a Transcription-shaped hole in Resolve’s feature set vs. Premiere. In the past, I used a Python-powered transcriber called pyTranscriber, which runs your audio through the Google Speech Recognition API. Luckily, someone has a solution in the form of Whisper, a project by OpenAI. We have talked before about Whisper for transcription. Since then, a few people have applied the code to multiple projects and added several UI frontends. The most recent and interesting one is StoryToolkitAI.

StoryToolkitAI is not a piece of software that is built by Blackmagic Design. It is a GitHub project by developer Octimot that runs on OpenAI’s Whisper and Python and uses Resolve’s API. As a result, it’s a bit finicky to install. I personally was having real trouble installing until I checked the issues page on the repo, realized I had conflicting versions of Python installed, uninstalled, and reinstalled the correct versions and got it to work.

An image of StoryToolkitAI subtitling a portion of the “MILF Island” episode of 30 Rock in Resolve.

In order to get it to run, you need to make sure Resolve is running with scripting on and then install and open the software. It will do some installation, install dependencies, then be up and running. From there, StoryToolkitAI will need to export a rough version of your timeline in Resolve to a folder of your choosing, where it will use Whisper to get transcription running based on one of the many Language models available. Once that is done, you can look at and search your transcript, have that transcript sync up to your timeline in Resolve, drop in the SRT file, and more. 

StoryToolkitAI has two huge advantages for me: it is free, and it runs locally, meaning you do not need to pay Adobe or use their servers or their machine learning software they call Adobe Sensei. I will admit that Adobe’s product is currently smoother and slicker to work with, but for something offered for free on a GitHub repository, StoryToolkitAI runs very well. In my tests, StoryToolkitAI does a pretty solid job at figuring out speaker timing, transcribing, recognizing proper nouns, and placing those subtitles at the correct moment, although there are almost always some errors. In particular, you do need to babysit when the clip begins and ends, as sometimes the subtitle will hang longer than it should. I found that it has difficulty with multiple speakers, crosstalk, and, on occasion, gets thrown off by background noises and long silences. You will always need to clean up, which is thankfully a joy to do in Resolve, but as a first draft, it does great.

On top of that, StoryToolkitAI also has the ability to take that transcription, search it, and turn individual portions of the transcript into markers. This means you can search and notate the timeline based on times when a speaker mentions a specific word or topic, a very handy feature to have that works comparably to Adobe’s toolset. Even outside of Adobe, comparable services like Trint are going to cost you way more, although reliability is a factor at this point.

StoryToolkitAI also has one other feature worth noting: Translation.

It knows Japanese. Sort of. Well, nouns and verbs, at least

A picture of the transcription settings in StoryToolKitAI

It’s important to have sober expectations when it comes to what AI currently can and should do. I constantly see people overselling and overhyping AI, which is not only annoying but does a disservice to what is actually possible with the technology. What’s more, I think many current pitches for AI are lazy, lack the basic intent of a human hand, and aspire to a tremendously bleak future.

Translation is a very nuanced process — many would say an art — that requires a person to ensure it’s done correctly. Machine learning is getting much better for sure, but the results you get can vary wildly from model to model, so you need a human being to make sure your results are accurate. The same goes for any English subtitles involving descriptive text. Machine learning cannot properly understand what is going on in a scene just by listening. With that said, StoryToolkitAI seems like a decent tool for assisting in timing and translating subs, depending on the language.

I first noticed this while attempting to transcribe a mostly English-language timeline that included footage from the game Yakuza Kiwami. StoryToolkitAI not only flagged that the speaker was speaking Japanese, but it also took a stab at translating it, and it turned out to get it right. I also tried running a few already-translated clips through it, and it seemed smart enough to get many of the basic nouns and verbs correctly, minus the context. Does it match the nuance and robustness of a real translation? Absolutely not, especially not for a language like Japanese, where context is vital. But I could see it simplifying hours of work with timing subtitles for a seasoned translator. 

As a tool for first drafting in subtitles and adding a little accessibility to your videos, I can’t recommend StoryToolkitAI enough. It’s a little wonky and rough around the edges, installation is a little tricky and does not have the finesse of Premiere’s transcriber, but that is to be expected. I also don’t have to give Adobe money, and it’s only a matter of time before something like this was added into Resolve either way. StoryToolkitAI’s developers also say they’re adding new features down the line, like integration with other AI and Machine Learning tools, and I would love to see a tool that allows you to custom-select a specific language model for transcription. And as far as machine learning goes, Whisper and competing models are only getting more robust. As a translator, though? It’s fun, and for small things, it’s pretty useful, but you should get someone that isn’t a machine.

]]>
Chris Person <![CDATA[SodaStream is a bad deal, and everyone should know it]]> https://www.theverge.com/23631306/sodastream-bad-deal-west-carbonator-alternative-diy-seltzer-hacks 2023-03-10T11:26:26-05:00 2023-03-10T11:26:26-05:00
It looks so fancy, and it costs so much. | SodaStream

If I am being honest, I drink a potentially unhealthy amount of seltzer, and so, over the years, I have looked into options to make that cheaper. The obvious solution presented in almost every guide for at-home seltzer is SodaStream. It’s cheaper than the store! But let’s be honest with ourselves: it’s a rip-off, and everyone knows it.

This is not new or novel information. We are all aware that SodaStream’s exchange system, while definitely cheaper than buying seltzer from the store, is way more expensive than it needs to be by design. Anybody who has homebrewed and kegged and has seen how much a 5-pound tank of CO2 costs to refill is intimately familiar with this. A dinky little CO2 tank should not cost $15 bucks a refill, which is why I finally committed to modifying a soda machine, and I am never going back.

Some background: I have owned a kegerator and a heavily discounted SodaStream in the past. The kegerator was heavenly, but I stopped drinking, and I live in New York City and could not justify keeping an additional refrigerator in my house just for seltzer. I tearfully parted ways with it. That thing was great. I could make 5 gallons of ice-cold seltzer at a time, and it cost like 15 bucks to get that tank refilled once a year, tops. I hope that my kegerator is doing well. I miss you so much, dear friend. 

A dinky little CO2 tank should not cost $15 bucks a refill, which is why I finally committed to modifying a soda machine, and I am never going back.

The SodaStream, on the other hand, was an anemic replacement and was eventually lost in the chaos of a move. It does a perfectly acceptable job of carbonating water, but it felt cheaply made, and I was annoyed by the cost of refills stung every single time I had to step into a Bed Bath & Beyond. Why am I giving them 45 bucks plus tax to refill three tanks? Why am I doing this to myself? It was an indignity, made worse by the variations in SodaStream’s valve designs refilling outside of their ecosystem. SodaStream’s copy about how much money I was saving from buying seltzer made it sting even worse. Stop bullshitting me, man — you guys know exactly what you are doing. And even if you decide to go outside of them directly with something like Soda Sense or Drinkmate’s exchange program, the deal remains just as bad.

So what is the best soda maker for home? Outside of a kegerator, the answer is pretty clear: any number of the various SodaStream competitors (I have heard good things about the build quality of Drinkmate, and the Philips GoZero looks charming) preferably bought secondhand, with a third-party adapter to take either (clean, food grade) paintball canisters or a big honking CO2 tank. The bigger tank is always the better deal if you can swing it. If you have existing SodaStream-style 60L tanks, you can also just refill your own tanks using a CO2 tank, although the variations in their valve design can make it a hassle. This is an old hack; plenty of people know this, and I am here to reiterate that it remains the god’s honest truth until some heroic company decides to make a machine that is not bogged down by any of this nonsense.

A product image of the Aarke Carbonator III in Sand.

Having finally committed to my search, I decided to find the nicest, fanciest soda maker on the market. I missed my kegerator’s smooth, chrome metal tap and wanted something that did not have the childish, plastic Play-Doh Fuzzy Pumper feel of pressing down on a SodaStream. What’s more, appliances like soda makers and waffle makers are single-use, which means that people will often buy them on a whim or sale or will receive them as a gift. They will often use them for a short time and then never again. Dig in a little bit on eBay, Craigslist, or Facebook Marketplace, and you will find tons of people with impulsive buying habits trying to offload soda makers. This is where I found Aarke.

As far as I can tell, Aarke is the fanciest soda maker that they have out there in this ecosystem. I will admit this part is a little frivolous. It doesn’t do a better job of carbonating water than a SodaStream. It just looks and feels professionally made, and since I was hunting for deals, I decided to go all out. I found a limited edition, sand-colored matte Carbonator III, beautifully powder coated and by far the most pretentious one I could find. I pulled the trigger. Was it missing a drip tray? Sure, but it was also lightly used, way less than half the cost of retail, and Aarke sells replacements for that.

So why mods? On a personal level, even if I am forced to engage with a product compatible with their ecosystem, I didn’t want anything SodaStream branded in my house, even the tanks, because I am petty, and my experience with the last machine left a bad taste in my mouth. What’s more, SodaStream-style tanks have a different thread than standard CO2 tanks, and the company has designed their newer valves to be a huge pain in the ass to refill outside of their ecosystem. I did not even want to have to engage with trying to make that work. I also want the flexibility to use either smaller food-grade paintball tanks or bigger CO2 tanks down the line.

A picture of a threaded adapter attached to the end of a food grade CO2 canister sold by SodaMod.

Now, let’s discuss the mods. If you look up “SodaStream adapter,” you will find countless adapters on Amazon and eBay of varying quality. Some of them seem to do the job (I impulse bought a cheap one that did not), but I had heard good things about SodaMod as being reliably well-made and clean, so I went with them. The Aarke Carbonator III, in particular, is also tremendously easy to mod: like many of these devices, it has a big hole in the bottom where the tank goes, so you can do what multiple people have done and connect it directly to a 5-pound tank with a TR21-4 To CGA320 (in the Americas, Europe, and Asia) hose adapter from Amazon. Alternatively, you can skip a carbonator and do something like this or refill smaller tanks at home with a bigger tank. My countertops are granite, and I unfortunately rent and cannot drill through them, so I instead chose the less sexy option of using cleaned paintball canisters, at least until I can sit down and 3D print a platform to snake a hose through.

An image of an Aarke Carbonator III, a bottle full of carbonated water, a steel travel bottle for seltzer, a double walled Pavina glass by bodiun and a nerikomi-style clay teapot that is unrelated to everything else.

The results are… exactly the same! It’s fizzy water, man — what do you expect? It’s so simple it is almost unfair to call it a mod. The only complication I have found is that you need to adjust the middle part of the adapter with a little included Allen wrench until it sits flush with the top and does not leak gas, but once that happens, you are home-free. 

And the cost? Turns out CO2 is dirt cheap when you don’t have to trade it in at a Bed Bath & Beyond and, frankly, liberating. Back when I brewed in my 20s, I used to go to a welding supply company, and you can still do that if they have what you need. I have seen many people debate this specific point online for more than a decade, including guys who work filling CO2, but generally speaking, it is recommended that you stick to beverage-grade CO2 for your refills. Homebrewing stores and beverage gas suppliers will refill your cylinder for nothing relative to the cost of SodaStream or their competitors, although keep in mind when planning your mod that a lot of larger gas suppliers often won’t fill up paintball-style tanks. Just another reason to go big or go home.

Again, none of this is new information. SodaStream hacks have been around for years. But what is frustrating is I constantly see online guides continue to recommend the SodaStream without addressing one of the elephants in the room: that it is a mediocre deal when sold as stock and that they are a middleman jacking up the price of CO2, which we are all painfully aware is not a rare gas. That anyone needs to resort to these elaborate hijinks and workarounds instead of being able to buy a home carbonator that does not kind of suck out of the box is a tremendous bummer!

I would wager a guess that there are real reasons why nobody just sells a good home carbonator, either some weird patent or legal regulation. Or, more likely, nobody wants to get into a crowded market with a product where the consumer has to go to a weird industrial gas company. It’s a situation somehow feels worse than a Nespresso machine because at least coffee is a thing that grows out of the ground and making a home espresso machine that pulls a shot as good as a La Marzocco can be tremendously difficult. We are talking about a gas that every animal on earth exhales.

I am here to tell you, to reiterate, that there are better ways to Seltzer Paradise. You can go whole hog and get a homebrew setup, you can have a weird raw cylinder with a hose hanging off the wall, or you can hack some powder-coated Williams-Sonoma gizmo to take a huge canister. But do not give in to SodaStream’s unmodified nonsense. Only pain lies that way, and you will pay for it over time.

]]>
Chris Person <![CDATA[You can watch Pluto TV in VLC, and the MPA considers this piracy]]> https://www.theverge.com/2023/2/28/23617624/pluto-tv-dmca-mpa-github-playlists 2023-02-28T15:15:31-05:00 2023-02-28T15:15:31-05:00
Ad-supported free TV, but it’s in your browser. What’s the harm? | Screenshot: Chris Person

The Motion Picture Association (MPA) issued a DMCA notice to a GitHub repo that contained a playlist that let viewers watch Pluto TVs streams on their own apps, such as VLC, MPV, and Tvheadend. The move was first noticed by TorrentFreak, and GitHub has complied and removed the repo, which ultimately does nothing. If you still have a tiny text file, you can still do exactly what the MPA tried to stop.

Pluto TV, for those who do not watch it, is a service owned by Paramount that allows users to legally stream movies and TV shows free of charge on many devices. They have a mobile app, apps for Xbox and PlayStation, smart TVs, and dongles. Users do not even need to sign up to use it. In turn, Pluto’s business model is predicated on serving ads and tracking user behavior. It’s part of a newer breed of streaming product called free ad-supported television, or FAST.

The GitHub repo in question contained M3U playlists to watch Pluto TV’s content via an app like VLC. The repo basically took links that were already available and gathered them in one place. It should be noted that M3U files aren’t torrent files; it’s just a simple playlist file that can direct to local files and web sources. If you are old as sin, like me, you may have used one in the past to make a playlist of MP3s on your iPod. In this instance, the M3U playlist allowed the users to watch Pluto on a simple video player instead of being tethered to Pluto’s.

While this complaint sort of makes sense if you don’t think about it at all, once you dig in, it’s a little baffling. First and most importantly, ads were still being served via the stream; it was just happening via whatever third-party client the user was using. The main difference here is the app being used, and honestly, is that really such a bad thing?

Second and most hilariously, Pluto itself did not encrypt any of its streams. These were publicly available via their API and did not include any kind of DRM. So that raises the question: how does that make it the problem of the GitHub user Mart1nho, some random person who posted an M3U playlist? How is watching a stream with ads, albeit on VLC instead of the Pluto app, piracy? Also, does taking down one GitHub repo really address the issue at hand?

The answer is, well, no. Was I, theoretically, able to find a way to pull the publicly available Pluto channel URLs and compile them into an XML file and another file called playlist.m3u? Perhaps. Was I then able to load those files into the video player of my choice and then stream Pluto’s content through both VLC and mpv.net? Perhaps. Was it a much more enjoyable experience as a result? Yet again, perhaps!

A window showing a Pluto TV stream of Shout Factory TV.

Honestly, I do not see the issue here. I am more inclined to watch Pluto TV if I have a way to do it flexibly on my own video player. Watching Pluto TV did not require a login to begin with. And just so we are clear: I was still being served ads by Pluto TV. Those were baked into the stream. And I am fine with that!

An image of a Downy ad being played in VLC.

“At the end of the day, this is just about control,” said Katharine Trendacosta, associate director of policy and activism for the Electronic Frontier Foundation (EFF) about this takedown. “The MPA simply doesn’t like the information being out there that you CAN watch on an app they do not have a relationship with. As long as DRM isn’t being BYPASSED (and even then, I’d argue that the fact that you can’t do that even if you have the right to use the material, is unconstitutional) this isn’t illegal.”

While nowhere near as important, this reminds me of a case of DMCA overreach, namely the case of YouTube-dl. For those who do not follow the YouTube downloader software drama the way I do, YouTube-dl was and is a crucial piece of software for downloading videos from YouTube that is used in tons of open-source software. I not only use YouTube-dl; I personally recommend a fork of it, YT-DLP, in a previous article. 

GitHub received a takedown notice, complied, and people rightfully complained because it was bullshit. With the help of the EFF, it was eventually overturned. And while I don’t see this happening in this case, it does bring up some questions about the increasing overreach of copyright holders as it relates to publicly available streams. What exactly is the definition of piracy? And who ends up being the target when copyright holders attempt to swing their weight around? 

Also, and most importantly, what if this is actually just a better way to watch TV?

]]>
Chris Person <![CDATA[The best free (or low-cost) tools for video editors]]> https://www.theverge.com/23602829/best-free-video-editing-software-open-source-tools-free-shareware-encoding 2023-02-23T11:40:36-05:00 2023-02-23T11:40:36-05:00

Outside of tech blogging, my background is mainly film, and my main gig is primarily as a video editor and producer. If you, like me, have spent more than 15 years in front of a computer pulling your hair out trying to fix problems, you’ll probably end up accruing a go-to list of problem-solving programs to install on every computer you use.

Interestingly, these tend to be free, probably because most of the common problems are universal, and that usually means someone has thought of that already and gotten mad enough to fix it. And if someone on GitHub or an obscure video encoding forum has not solved the issue, there’s some great shareware software out there that won’t break the bank. 

So here are the programs that have saved my bacon in one way or another over the years and that I would recommend to any experienced (and some aspiring) video editor at the drop of a hat. It is by no means an exhaustive list, and there is always room for improvement, so feel free to tell me your own favorites in the comments.

Editing

An image showing the interface of DaVinci Resolve, with a character from You’re Under Arrest being inserted into a scene from the Space Ghost episode “Knifin’ Around”.

DaVinci Resolve

Platforms: Cross-Platform
Cost: Free, $295 for DaVinci Resolve Studio

Blackmagic’s DaVinci Resolve is the best value of any non-linear editing software out there, period. If you are going to start editing software today, just download DaVinci Resolve. Do not mess around with Sony Vegas; they changed the pricing structure, and it isn’t worth the money now. Do not mess with Final Cut Pro. For the love of god, do not cut your teeth on iMovie, have some self-respect. You may have to mess around with Premiere in a professional context, but understand that, like most Adobe software, it sucks and crashes all the time.

DaVinci Resolve has a fairly robust version that is free to download, is intuitive, works better, and will be the only editing software that you need because it’s the only retail product made remotely well outside of Avid. As of last year, there is an iPad version, too, and I have heard very good things!

Out of the box, Resolve just works better than Premiere and is infinitely more enjoyable to interact with. It has some of the best tools around for editing, it has a powerful and flexible node-based motion graphics suite that isn’t constantly crashing like After Effects, it has a fairly competent DAW built into it that will make audio work very simple, and you cannot get a better piece of software when it comes to color grading because that is what it started as even before it was a Non-Linear Editor.

The full version, DaVinci Resolve Studio, is 295 bucks, and you pay for it once, which is the way I would prefer people sell me software. There are a handful of differences between the free and paid versions, but the main limitation is if you want to edit frame rates higher than 60fps and resolutions over 4K. There are also a handful of limitations on multi-GPU processing, color grading in HDR and a bunch of plugins and tools, but the vast majority of users will not need this. I have the full version, and unlike with other software tools, they have yet to harass me to pay for cloud features I’ll never use or upgrade my existing license to a new version of the software. It has just been a steady stream of very good quality-of-life updates since I redeemed the key.

(Hot tip: Blackmagic sells video cameras and a weird keyboard, and they package a license in with every single one. That’s how I got my license. Neat!)

A screenshot of the interface of Kdenlive, video editing software.

Kdenlive

Platforms: Cross-platform
Cost: Free

If you are the kind of person who does not like using proprietary software and you need a basic video editor like Resolve, try Kdenlive as an alternative. I personally find Resolve more intuitive, and you definitely are not getting the same sheer toolset that Resolve gives you, but Kdenlive is completely free, open-source, runs very light and even allows you to see the FFmpeg strings it is outputting. I find it to be a great way to edit and output animated gifs, provided that is still something you are interested in doing in 2023. 

FFmpeg

Platforms: Cross-platform
Cost: Free

FFmpeg is a crucial open-source software project that is a keystone of making videos function, both on and off the internet. The importance of FFmpeg cannot be overstated. To describe the scope of it would take a very long time, but it’s a core component of everything from YouTube to so many tools I am going to talk about. But it’s also so open-ended and massive that mastering it takes a while. YouTube, VLC, Blender, KDenLive and Bilibili all use it for processing. It’s basically everywhere.

With that big-picture stuff out of the way, FFmpeg is also an incredible tool for basic editing, transcoding, compression, merging video files together, and more. If you really want to be a video freak, download FFmpeg and try using it to edit video in the command line. Once you get fast at it, it will often be the most efficient way to do very specific commands, and if you are constantly doing one thing over and over again, you can use it to simplify and automate your workflow. It’ll open entirely new doorways into your workflow once you get good.

If that sounds too complicated, and you just want a simple and easy-to-understand GUI for FFmpeg, try using Clever FFmpeg-GUI. But get good enough with FFmpeg, and maybe one day you’ll move on to the hard stuff like Vapoursynth, and pretty soon you’ll be ready for anime fansubbing levels of video encoding,

An image of a video from JoJo’s Bizzare Adventure downloaded from YouTube in Lossless Cut.

Lossless Cut

Platforms: Cross-platform
Cost: Free

Remember how I said that FFmpeg is built into a lot of other software? Lossless Cut is one of those. Let’s say you have a movie or a video file, generally, that you want to cut just one scene from before you edit it. Drag it into Lossless Cut, set an in and out point, click cut, and it will cut just that part of the video out without re-encoding the video.

You will be shocked at how useful this is. In and out points tend not to be exact a lot of the time, mainly because of how it is doing the cutting, but for bigger projects or for just doing little tiny edits for posting, you cannot find a cleaner piece of free software. I recommend everyone download Lossless Cut — it’s just that good.

Audio

Audacity

Platforms: Cross-platform
Cost: Free

You will often just need a basic audio editor and recorder, and Audacity does the job. It’s not complicated, but it’s free, competent, and it works. Nothing too complex there, and most people will never need to go beyond that, but you can do a lot of basic editing in Audacity, too, if need be.

Dark page for Reaper.

REAPER

Platforms: Cross-platform
Cost: $60 (individual); $225 (commercial); 60-day free trial

I would also like to recommend REAPER, an audio workstation and MIDI sequencer, because even though most people will never need to use it, it’s a very robust piece of software to the point of being very overwhelming, and I just generally like and respect them as a company. They are also fairly generous with their evaluation period, so it is a no-brainer to poke around and try. Their software is basically 60 bucks for most normal people, and the license covers a fairly high number of updates. They’re cool and worth supporting.

A screenshot of Ultimate Vocal Remover 5, a software tool to

Ultimate Vocal Remover GUI

Platforms: Windows/Mac
Cost: Free

Sometimes you are simply not in an ideal audio situation, and you need to isolate music from vocals or vice versa. Or maybe you just wanna have fun putting goofy vocals over different music. There are tons of very good, open-source models out there for just such a task, with Demucs and MDX-NET currently being among the most respected. Ultimate Vocal Remover is a free GUI that lets you download any number of those AI models so you can isolate vocals from a clip and spit that out into stems. It lets you get very granular with the options too.

If you want to try those models out online instead, MVSEP is a donation-supported web interface for processing your music and has a running scoreboard of how all those various models currently fare. 

Downloading videos

The logo for YT-DLP

YT-DLP

Platforms: Cross-Platform
Cost: Free

So many people do not know the correct way to download a YouTube video, and that’s really a shame. It doesn’t have to be this way — there is software that does this. Namely YT-DLP.

YT-DLP is a fork of youtube-dl (which made the news a while back for getting DMCA’d). Like FFmpeg, you can use the command line to download videos, and also, like FFmpeg, the code for this is embedded in a bunch of other software natively. There are tons of front-ends for this.

An interface showing 4k Video Downloader downloading a 1440p copy of Tatsuro Yamashita & Eizin Suzuki - Southward Bound from YouTube.

4K Video Downloader

Platforms: Cross-Platform
Cost: Free for limited version; $10 for one-year license; $15 for personal version, $45 for pro version

If you don’t want to deal with that or get too granular, 4K Video Downloader will do the trick for most people. In fact, I use that most of the time because it is fairly good and also because I am lazy. You can also throw them some cash for additional features, but out of the box, it does what most people want it to. There is apparently an Android app too, but I haven’t used it.

An image of the Twitfix extension being used to create a MP4 link using a video posted by Twitch streamer Limmy.

Twitfix extension

Platforms: Cross-Platform
Cost: Free

To download videos from Twitter, I like using the TwitFix extension or one of the various TwitFix forks, which just lets you right-click a video and download it instead of annoyingly tagging a bot to tell it to download a video for you. Either way, it beats the hell out of using a website called something like “downloadyoutubevids4free.malware.”

An image of the logo for Just Another YouTube Downloader.

JAYD/HiRes Twitter

Platform: iOS
Cost: Free

Sometimes you don’t have time to use YT-DLP. Understandable! If you are on an iOS device like an iPhone and want a fast and easy way to download videos from YouTube or Twitter instead of screen recording, cropping and trimming, shortcuts are your answer. (As an aside, if you have not messed around with what shortcuts can do, I highly recommend it. I have a dedicated button on my screen that just plays various NTS streams.)

JAYD (Just Another Youtube Downloader) and HiRes Twitter allow you to download YouTube and Twitter videos directly to your phone by simply copying and pasting a link. They can be a little wonky at times, but it beats the hell out of tagging a bot to download it for you.

Encoding

An image of HandBrake’s GUI.

HandBrake

Platforms: Cross-platform
Cost: Free

HandBrake is an old encoding workhorse for a reason. It’s pretty easy to understand, straightforward and is a fantastic tool for most people if you just need to convert a file from one format to another. I personally am using it less and less these days as there are more depraved alternatives for what I need from it (like FFmpeg and the program I am about to mention), and parts of it just did not function the way it needed to for a bit, but everyone I know who has edited video has had to have this on their computer at one time or another. The company has also made a lot of really impressive updates recently that fix a lot of my long-standing issues with how it worked. It absolutely deserves a place in every editor’s computer.

Staxrip

Platform: Windows
Cost: Free

I hate to recommend Windows-only software, but Staxrip is incredible and one of my favorite encoding tools out there. It acts as a GUI for several other pieces of free encoding software like FFMpeg, eac3to (a very good piece of audio encoding software), Avisynth+ and Vapoursynth (two very powerful video post-production tools), and many more. The company has also just added a row of other software with it that I like, such as MKVtoolnix, mpv.net and more. It even lets you do scripting in Windows Powershell. If you want to get serious about encoding, Staxrip is a fantastic place to start. 

An image showing the information about a clip from the fig scene from Women In Love that I downloaded from YouTube.

MediaInfo

Platforms: Cross-platform
Cost: Free (Sponsorships available)

Sometimes you just need to know what a video file’s whole deal is, and MediaInfo is generally regarded as the gold standard. It’s free, open-source, and cross-platform and will give you very granular, detailed information about what’s going on with your video file, like audio and video format, container, bitrate, color space, resolution, subtitle format and more. On top of that will, it will give you multiple ways to display the information, although I personally tend to stick with text and tree views.

MakeMKV 

Platforms: Cross-platform
Cost: Free for 30 days, $60 after for all features

When it comes to ripping your DVDs and Blu-ray, MakeMKV is my favorite piece of software. You aren’t getting a complete backup of the disk, but a transcoded lossless MKV file that you can easily play on VLC or whatever your video player of choice is. It isn’t open-source, and it’s not technically free, but it’s a pretty generous shareware license (DVDs are always free, and Blu-rays are conditionally free), and it’s not too expensive to buy, so it deserves a place on this list. And while there are times when it makes sense to rip an entire disc, this is often preferable.

If you want to go down a fun rabbit hole, look up LibreDrive. It’s embedded software that you install on a Blu-ray player and lets you have direct control of your drive and rip whatever you want. 

Playback

A picture of the interface for VLC Media Player.

VLC

Platforms: Cross-platform
Cost: Free, donations accepted

Everyone needs a video player, and I recommend the old reliable: VLC Media Player. Like Handbrake, it’s a standard for a reason. It’s cross-platform, mostly does what it is supposed to, and gets most simple jobs done.

An image of the sleek, minimal interface for mpv.net.

mpv.net

Platform: Windows
Cost: Free (donations accepted on Ko-Fi)

I would also like to take this opportunity to offer an alternative: mpv.net, a very good Windows player based on MPV (a command-line video player), with a lot of smart features added. If you want to get very granular with how you configure your player, including options for GPU acceleration, mpv.net has it all. I really just love the way it is laid out. The person who maintains MPV.net, Stax76, also does StaxRip. For HDR content, I would also recommend this fork of MPC-HC.

Streaming

An image showing an interface of OBS.

OBS Studio

Platforms: Cross-platform
Cost: Free

Live streaming is an entire topic unto itself, but every video editor, professional or not, should just have OBS on their computer. It’s got tons of uses, even outside of being a Twitch star, and it’s clutch if you wanna start dipping your toes into doing live video.

While I know many professionals that are ride or die for vMix (for very good reasons — it has long been the most robust tool out there for streaming, although it comes with a hefty price tag), OBS has made massive strides in its functionality over the years, to the point where I would not recommend anything else for most people.

A lot of people I trust also use Streamlabs, which also works very well. I am still hesitant about them after the plagiarism controversy with OBS, but that has since been ironed over, and they are now working together, so if it works for you, go nuts. That said, OBS will take you where you need to go, up to the very highest levels. There are also too many great OBS plugins to mention, like OBS Closed Captions, SAAMI, Downstream Keyer, Source Dock and more. Give it a shot.

An image of the StreamFX logo.

StreamFX

Platform: Cross-platform
Cost: Free (accepts patrons for support)

I don’t want to get too granular with plugins for OBS because there are so many, and we would be here all day, but I would be remiss if I didn’t mention Xaymar’s great work on the StreamFX plugins. If you are a video editor, you can make use of the FFmpeg and AV1 encoders, but there are also tons of filters. It’s free to download, but Xaymar does accept donations and Patreon support if you feel like supporting it.

A screenshot of the interface for Nvidia Broadcast.

Nvidia Broadcast

Platform: Windows (requires an Nvidia GPU)
Cost: Free

If you have an Nvidia GPU, you may as well download Nvidia Broadcast, if only for the live AI noise reduction. It tends to work really well and will help if you have to record in less-than-ideal situations. Worst case, it’ll help you out on Zoom calls. There are also tons of other features.

A screenshot of the launcher for NDI Tools.

NDI Tools

Platforms: Cross-platform
Cost: Free

I love NDI. It’s so cool. Basically, what NDI does is let you transmit low latency, very high-quality video over LAN. What that means is you can take any video source — like a webcam, your video capture card or your desktop — and designate it as an NDI source. Any computer on the network can then access that NDI source.

For streamers with multiple camera angles or video sources over a wired network, this is very useful. During lockdown, I even used it to stream games from my capture card so that I wouldn’t have to move my PS4 between the living room and my office. It has plugins for OBS, a great iOS app, and works very, very well. It is not open source, but it’s free to download, and there are even capture cards out there by companies like Magewell that natively encode to NDI. Mess around with it! It’s fun.

That’s all the video software I can think of off the top of my head that’s saved my ass. I hope one of these, at the very least, manages to get you out of a scrape so you aren’t stuck in the office until 2AM fixing a problem that could have been solved in five minutes. Happy editing.

]]>
Chris Person <![CDATA[Nobody can stop you from printing circuit boards]]> https://www.theverge.com/23598993/pcb-circuit-boards-diy-silkscreen-print 2023-02-20T10:00:00-05:00 2023-02-20T10:00:00-05:00
It’s really not that hard. | Photo by Amelia Holowaty Krales / The Verge

Most people’s relationship with technology is distant or obscured. The average consumer does not have direct control over their tech — it is usually closed off to them, a little box given to them that occasionally breaks and eventually dies. 

But what DIY freaks, keyboard nerds, and synth weirdos have known for a very long time is that it is trivial and, in fact, very fun to just get a stack of PCBs of your own design sent to your house. What’s more, with a little know-how in KiCad, you can actually customize your circuit boards and turn it into a personal canvas for fun art, and there’s not a damn thing that God, the Pope, or the Man can do to stop you. Let’s dive in.

Why would I want to do this?

You may be asking “Chris, why would I want to get PCBs made?” That’s an excellent question! My initial desire to do this came from my experience with the mechanical keyboard community. Most of the designs in the community are open source, meaning that if you have the urge you can get a rack of keyboard PCBs made for you and your friends for next to nothing. It’s dirt cheap. Just order some parts from AliExpress or a keyboard parts supplier in your country, assemble (perhaps with your brand new pencil), and you’re golden.

What’s more, many keyboard designs often make use of the fiberglass plates of PCBs as sandwich style cases for a keyboard (think three pieces of circuit board stacked together with the top and bottom forming a case). It is a gorgeous canvas for silkscreening all sorts of weird doodles. Get a little creative with Photoshop and the footprint editor in KiCad, and you can create a unique piece of gear that only you have. If you have natural talent with art, you use your own art. I suck at drawing, so instead, I opted to create a Bootleg Bart that I could type on. Don’t do this to make a living off of art that isn’t yours, though; that’s corny and evil, and you are here to have fun with computers.

An image of a silkscreen taken from Tetsuo: The Ironman.

Of course, it doesn’t stop at keyboards. Synths, vintage game mods, and more are all out there, free and open source, for you to print out and perhaps doodle on. Dig through GitHub a little bit, and you will be shocked at the amount of weird little projects you can find. Having a basic familiarity with the process of ordering PCBs can go a long way for the aspiring gear nerd. Heck, you don’t even have to do any doodling if you don’t want to, being able to get boards made is just a useful skill to have.

Alright, you’ve sold me. How do I do this?

In order to get PCBs made, you are going to want to select a project, usually a GitHub repo for the circuit board of your choice. Then you are going to have to locate the Gerber files. Set up your account and clone the repo, or if you aren’t comfortable using GitHub (understandable), you can use tools like DownGit to just download it manually.

Image of a board that has Popuko from Pop Team Epic on it.

Because I am a dweeb, here are a handful of keyboard (predominantly ergonomic split keyboards) to start with that have PCBs you can just download, print, and doodle on. These ones don’t require too many tiny surface-mounted parts and are easy to solder in your own home, although many companies like JLCPCB will sell you parts and do assembly if you have the files, but that’s outside the scope of this post.

Here’s some classic boards:

You are going to want to download KiCad. It’s a free, open-source electronics design suite, and a huge percentage of people that make PCBs online use it. Take the project from the repo of your choice. Draw or select your image. You need something that pops visually in black and white, so a high-contrast image or something with really nice patterns. Usually, I try to dither and resize my images in something like Photoshop before bringing them into my project, that way the silkscreen isn’t too complicated and doesn’t need to be resized in KiCad.

Now that you have your image, open KiCad and select the “Image Converter” on the right-hand side. From there, you are going to want to select “load bitmap” and load whatever image you wanna print on your PCB. You are going to need to take into account the maximum DPI that your PCB manufacturer can handle (300 dpi is usually a good rule of thumb). For me, this process is always a lot of trial and error, but don’t get frustrated if the program crashes.

You can make liberal use of the various tabs to see how the image is going to look in black and white and invert the image if it does not work with your silkscreen. Most of the time, you are going to be working with a white silkscreen, unless you are working with white FR4 in which case the silk will be black, so keep that in mind when establishing the negative space on your art. You can even up the contrast in KiCad to make the file a little more legible. When it looks good, you can save it to KiCad’s footprint library. You can always come back here if the silkscreen isn’t perfect when you drop it on your board, and you probably will.

Load up your project. In this case, I am going to go with the Cantor, a wonderful PCB to start with for a number of reasons: it uses very cheap STM32 “blackpill” controllers that cost next to nothing on AliExpress, it doesn’t use hot-swap sockets so you can see your art clearly, and it doesn’t require a case which reduces the number of parts you need to order or make. 

Once your PCB is loaded up, you are going to press “O” or click the “load footprint” button on the right-hand side of the toolbar. This brings up all the “footprints” in your library, which includes any silkscreens you may have previously generated. You can use the filter up top to quickly narrow down your choices to the art you just generated. If your silkscreen is too big or small for the area you have selected, refine it in one of the previous steps and try again. If you see something that looks like “G***,” double click your silkscreen and select properties, then untick “visible” to make that part of the footprint invisible. The layers you are going to be editing on are usually called “F.Silkscreen” and “B.Silkscreen” for front and back, respectively. If you want the silkscreen on the other layer, press “F,” and it will flip the silk to the other side of the board. This is handy if you want an image on both sides of a board. Place your silk on a relatively clean and empty part of the board or get creative — it’s design! To preview how the board is going to look, you can open up the 3D viewer in KiCad and rotate your board around.

Now that you have your art on a board, you’re going to have to find a company that manufactures PCBs. I’ve had luck with PCBWay and JLCPCB, but there are tons of them out there like OSH Park as well as online tools you can use to compare prices

When you are done, you are going to want to generate your gerber files using KiCad’s fabrication options. If you are ordering from JLCPCB specifically, there are actually handy plugins for JLCPCB and PCBway that you can use to simplify the entire process. When you are done, just zip the files up and upload the compressed archive to your manufacturer of choice. Depending on who you buy from, it should generate a preview where it’ll show you what the board looks like and give you several options for materials, number of layers, colors, and more. I love a board that pops, so I tend to go with Blue FR4 with a white silkscreen or White FR4 with a black silkscreen, but the options vary from manufacturer to manufacturer. OSH Park, for example, offers a beautiful black “After Dark” PCB with a clear solder mask (the polymer applied to the top of copper traces — this means you’ll be able to see the copper under it). It’s definitely a premium, but it’s very handsome, and you can do some very neat stuff with it.

Okay, so in my example, I am getting 20 PCBs in purple FR4 with lead-free HASL from JLCPCB, which is enough to make about 10 boards before you factor in parts. As with most things, the more you buy the greater the discount, so consider making a bunch of these for you and your friends. The rough cost here is about 25 bucks plus shipping. If you really need it now, you can pay a premium for something like DHL. I personally tend to go with the mega-cheap shipping because I am just doing this for fun and don’t care if it takes a few months to get here. Your mileage, of course, may vary! 

When it arrives, it’ll come vacuum-packed in a little box and be ready to solder and assemble. If you got a keyboard, you are going to need keyboard parts, so it makes sense to order those on AliExpress at the same time so they get there whenever. Alternatively, you can support one of the many fine keyboard suppliers. But of course, this goes beyond simply making cheap keyboards. I have gotten domesday duplicators made along with multiple arcade sticks and trackball PCBs (for complicated boards, you may need some soldering and assembly done at the factory). The examples I have laid out are fairly simple. I just like putting Pop Team Epic characters on my gadgets, but if you master tools like KiCad, you can not only print silkscreens, you can create elaborate art that integrates the existing copper layers into the art itself. (The Sweep, Urchin, Smitheii and the Draculad are good examples of this). And if you’re actually good at drawing and design? You can become a force to be reckoned with. 

What next?

So now you have your circuit board with a beautiful custom silkscreen on it. But if you think about it, you’re really just a hop, skip, and a jump away from starting to make your own custom circuit boards. A good place to start is using something like Ergogen as an entry point into circuit design to design your own board from scratch. There’s nothing stopping you. I mean, you already have the software on your computer after all. And you know how to get boards made. When you think about it, you might as well take the plunge…

]]>