My most recent designs used OpenSCAD. Before that I was using FreeCAD for a while. I think I’m coming back to Blender now. I love all these open source tools and I’ll get around to each one again. Blender was my go-to tool for a while to create models for 3d printing from 2017-2020. Here are the kinds of things I designed back then. Beezus Warthog (my second robocar iteration) was…
Last year I wrote about loading and saving video in a Jupyter Notebook for frame-by-frame processing with PyTorch. Today I’d like to explain more of the actual image processing that motivated me. It started from tinkering with Apple’s Depth Pro model. I just wanted to see how it performed with some arbitrary video and maybe use it to separate the background from the foreground. Today…
Over the summer I built some Slime VR trackers for myself. It’s now December and I still haven’t used them very much personally. I wrote about the part selection at the time but I never explained how to put firmware on the trackers. SlimeVR is written with the ESP32 family of microcontrollers in mind. I chose a board with the very capable ESP32-S3 for my build. There are always slight…
Today’s goal is just to load a video, display individual frames in the output from a Jupyter notebook cell, and write the video back out to a new file. In the middle I’ll do a little processing on the video frames. The processing is beside the point today - I just want to make the input, interaction, and output work really well so that later I can focus more on that processing step in…
I read a lot. But I don’t read the way I used to read. I used to read books. Now I read articles online, conversation threads, and plenty of Wikipedia. Reading for me now feels a lot less structured and a lot more sprawling than it was when I was younger. It’s not just the time in my life that’s passed though, the kinds of reading material available have changed a lot.
These are my new VR trackers. This DIY build of SlimeVR trackers can be assembled with (maybe*) no soldering. If you’re like me and want to put together your own set of SlimeVR trackers, I’ll tell you about the parts I selected and show you my case design. Parts My part selection uses fewer parts than some others I’ve seen. The Adafruit feather microcontroller (MCU) boards often…
There are a bunch of ffmpeg commands I find myself copying and pasting over and over. Maybe you do too. Here are mine. I’ll explain the flags for this first one in a lot of detail, if I skip a flag on another example then it’s probably described here. And I’ll link to some more thorough docs at the end. ffmpeg -i /mnt/nas/photos/PXL_20230128_171859165.mp4 -vf…
Here’s another camera mounting block to 3d print. This part is meant to go with my previous design for mounting a Raspberry Pi on a t-slot rig. It’s just the minimum bit of plastic needed to join the camera module v3 to a 1/4-20" nut. Then the nut can be used to attach the camera module to a ball head like this one from Small Rig. Just like the rest of Gamma Camera the idea is to use…
My t-slot obsession has not let up. Last night I made a nice little design to easily secure a Raspberry Pi to a piece of 2020-profile extruded aluminum. This follows on from the 1/4"-20 to t-slot mount that I made recently. Just like that component, I used BOSL2 in OpenSCAD to quickly put it all together. Design Here’s the design for the part if you want to have a look.
Storage prices have dropped drastically since I built my Gamma Camera array. As I mentioned a little while ago, I’m interested in USB storage for the next iteration. In gammacam P6 I have 6 Raspberry Pi 4B nodes. The microSD card holds the OS and also the imagery data. I have heard that microSD card speeds are slower than USB options. And lately I’ve noticed that prices for some pretty…
Three things from this week. This week I’ve got three little progress updates on the next gammacam build. Updating the sensor head I thought I was going to need to change the design of my camera head a bit to fit the Raspberry Pi GS camera module.It turns out that the sensor head will work fine as-is. The plastic cover on the back of the GS camera module is easily removable.
Three things from this week. Raspberry Pis are showing up in stock more often. So I have to get to work and start building the next version of my Gamma Camera rig. I’ve been thinking about it for so long that I’m afraid of falling into second system syndrome. I guess it’d be seventh system syndrome in my case… I’ve got a lot of half-complete thoughts about what I…
Three things from this week. While I was on vacation I was taken by a notion that I really wanted to be able to make some of the music in my head come out of my fingers. I’ll often get some tiny fragment of a song in my head and I don’t usually know many lyrics to go with it. So I just have a little ditty running around in there.
Three things from this week. Here are three things I learned this week. They are not related. Embeddings Vicki Boykis generously shared her research on “What even are embeddings?” in 80 pages of PDF written at just the right level for me. I’d highly recommend it if you too are tinkering with ML models and feel like you have some jargon gaps to fill in. Since I was on a plane a…
Three things from this week. Still travelling through Scotland this week so you get to see three more things this week that I saw. The Isle of Skye is full of stunning landscapes. I loved hiking the easy part of the Quiraing. I was confused by the Old Man of Storr. I was recharged visiting the rushing waters of the Fairy Pools. The Quiraing name (or Cuith-Raing in Gaelic) comes from old Norse…
Three things from this week. I’m on vacation in Scotland this week so here are three pretty things I’ve seen that you can see too. This is the Carraig Fhada Lighthouse. We walked there from Port Ellen then contniued on to The Singing Sands beach. The beach is also known as Traigh Bhan in Gaelic. Lagavulin distillery has named a few scotch whisky bottlings after Traigh Bhan. We tasted…
Three things from this week. Buildroot can be a really nice fit for lots of embedded Linux applications. I’ve used it off and on over the past few years and it’s taking me a while to get an idea of what idiomatic Buildroot looks like. This week I was really happy to set up a project using Buildroot so the three things from this week will be example packages in Buildroot.
Three things from this week. There’s a genre of book that excitedly catalogs gee-whiz factoids about the unbelievable activities going on in the animal world. Tigers that can leap 20 feet straight up and ants that lift 50 times their own body weight. Blue whales are the biggest, giraffes are the tallest, cheetahs are the fastest, and camels are the coolest. I loved learning these little bits…
A Global Shutter Camera for the Raspberry Pi started shipping a few months ago. There have been other global shutter camera modules for the Raspberry Pi but this one comes from Raspberry Pi directly. So it should be well supported by the mainline software including the camera driver and libcamera. Here’s a little summary of some official Raspberry Pi camera modules with the details I care…
Three things from this week. The second best thing this week was Tailscale Up. The best thing was picking up my wife at the airport the next day. These are very different things but I can’t very well put a conference ahead of seeing my s.o. for the first time in a month, even if it was a really good conference. And it was a really good conference. It was just the right size to feel connected…
There’s an issue with the way the shutdown command works on gammacam P6. I really like using the little OLED bonnet user interface to control the system and I’d like to fix things so that I can reliably shut it down without needing to check in over ssh. Here’s a quick overview of how the menuing system works. First off, the UI is split into two parts. One file has the…
Three things from this week. If binge-watching old TV were a part time job then I pulled a double shift this week. My niece mentioned some news about Dr Who to me mid-week and that was all it took. That night I scrolled back to the newest episode that I was pretty sure I’d seen and hit play. Suddenly I’ve now regained consciousness and days have passed. Unfortunately this isn’t a…
Three things from this week This week I’ve been fanagling a lot of files, trying to organize my backups and my archives a little better. It turns out I have a lot of partially-duplicated copies of ad hoc backups. Don’t judge me. Trying to compare lists of files across directories gets complicated and it can sink a whole lot of time. I’m using some shell one-liners to compare…
Three things from this week. I tried out three different ways to use an LLM on my home PC this week. A Large Language Model (LLM) is the kind of ML model that runs inside of ChatGPT and other similar popular chatbots. Running on my home PC lets me see just what they can do and whether they’re useful to me. While there have been a whole lot of different models emerging lately, there are also…
Three things from this week. This week I have too many browser pages open so you’re going to get three tabs from this week. Boardsource Technik-O 4x12 First up, here’s a little image I made to help me learn to type on my 40% keeb. I made it by messing around with this script. Then I printed it out and put it above the keeb. And no, I am not typing this text on that keyboard right now.
Three things from this week. This week I’ve had NeRFs on my mind again. Last week I had fun making NeRFs of some plants and a couple weeks ago I wrote about how I make NeRFs with COLMAP and Instant NGP. I follow almost the same process whether my images come from a cellphone, a GoPro, or my gammacam flexible camera array. I’ve been doing two flavours of NeRF tinkering: understanding…
Three things from this week. California is having a superbloom. As far as I know that means there are a lot of pretty flowers in bloom all at once. It’s as if all the plants that were holding something back during the drought got together and decided today’s the day to make it all pop. It makes the world look brighter and more colourful everywhere that anything is growing. That goes…
Three things from this week. Three more things from this week. No code this time, just a few random things from my week. One event attended, one audiobook backed, and one piece of free open source software to add to your kit. Alvin Ailey American Dance Theater My wife and I were watching a Hallmark movie on a lark around Christmas time. I’d link to the moving but it was so unremarkable that…
Gammacam P6 produces a lot of output files. It takes photos multiple times a second from each camera. Many pipelines don’t need all of the output. In my case I like using Nvidia Instant NGP to make NeRFs from my photos. The first step in processing pictures to use with Instant NGP is to run the SfM (Structure from Motion) pipeline called COLMAP. COLMAP incorporates a number of…
Three things from this week. I want to tell you about oranges. And two other things that aren’t related except for the fact that they’re on my mind this week. Oranges The little ones that are easy to peel by hand are just addictive. Those little ones might technically be mandarins or maybe a tangerine but they’re all just magical. Something about the moment that first little…
Three things from this week. This week I thought it’d be nice to talk about a simple camera hack to solve a niche problem, a Linux API to solve different niche problems, and a couple 3d printed parts that solve an entirely different niche problem. Seeing the back of your own head I have a personal mission of making it easy to see things that might otherwise be impossible or unpleasantly…
Three things from this week. When you’ve got a home server or a lab computer that you want to keep on all the time there are a lot of ways to set up the jobs you want it to do. My current lab machine is a pretty capable 5th gen AMD Ryzen 7. I decided to try Debian Testing as the OS and I installed with a desktop environment even though I expect that most of the time I won’t be using…
Three things from this week. No real theme in the three things from this week. Even if it looks like it. Really. Let’s dive into it. Windows N editions Apparently there are editions of Windows 10 and Windows 11 with the suffix “N” which are distinct software products from the non-N editions. Why a product would be launched with such a minor tweak to an existing product name is a…
Three things from this week. This week had way too many things. More than three, even. There are some neat tabs lingering open in my web browser that have aged a good couple months though so let’s take a break and see a few of those. There’s no real through-line at all this week - just ideas that are lingering in the back of my mind. Linear Sequential Unmasking Linear Sequential…
Three things from this week. This week there’s more of a common thread between the three things that bubbled to the top. Home assistant Home assistant keeps showing up in the periphery for me so I finally made some time to try it out. It’s a self-hosted home automation software that runs well on a Raspberry Pi 4B. I plugged in the RPi to the router, I found a blank microSD card, and…
Three things from this week. This week I’ve been following a lot of random threads again. Here are a few of them. Octoprint If you use a 3d printer you might be interested in Octoprint. It runs on a computer connected to the printer and handles a bunch of features like managing prints sent to the printer, tracking progress, or (with a webcam) streams video of the printer while it works.
tl;dr: Gamma Camera is my open source flexible camera array project and you can build your own with https://github.com/robrussell/gamma. I made a thing I call Gamma Camera. What is it? It’s easiest to explain starting from my motivation. For the past few years I’ve been tinkering with a lot of commodity camera parts and single board computers like the Raspberry Pi and Jetson Nano.…
Trying out something new, we’ll see if it sticks. I read a lot of random stuff online and rather than just forming an opinion and dropping it I thought I’d try sharing my thoughts. That’s all a blog is anyway, but sometimes they’re just little thoughts. Since each one is just little I’m putting a few together. I won’t claim they’re related in any way…
Overview I wanted to build a self-sufficient portable lab network consisting entirely of Raspberries Pi. The lab network should be able to access the internet if there’s wifi available. And it should be easy to connect an external computer to the network and access any of the Raspberries Pi over the lab network. Basically I’d like to be able to run the whole thing on battery power and…
I’ve been thinking for a few weeks about how a self-hosted personal feed mixer could work. Like many other folks I’ve recently revived my presence on Mastodon - @Rob_Russell@mastodon.cloud. When I read this post from @nuthatch I started dumping my ideas into a reply but soon realized I was hundreds of words off on a tangent. So instead I captured my ideas here. A personal feed mixer, as I’m…
This one’s a bit dry but it lays out some ideas I think are really important for successfully launching a niche engineering product. The kinds of products I’m thinking of become a tool for someone else so they should adapt to the goals of the user rather than requiring the user to think differently about their goals. They should be blend in with the world they’re used in but they should be open to…
SD cards are hard to keep track of because they’re tiny, they hold a lot of data, and no one device can read every format of card. I’ve accumulated a lot of these little media cards; technically some are MicroSDHC, some are MicroSDXC, and some are older “full size” SD cards in my collection. I’d like to inventory my cards so that I can spend less time looking for a…
When you wake up in the morning and you don’t have something on the calendar already how do you decide what to do? Or maybe you have leisure time in the evening. Suppose after dinner you can spend an hour however you like. What happens in the next sixty minutes of your mortal time? Obviously these are questions that you’d never ask yourself. Such a thought would never even rise to your…
There’s a phenomenon I’ve observed as a language-learner. I’d like to talk about it today by way of some experiences in my own life. I grew up in a city with a healthy mix of humans from many parts of the world. That gave me access to lots of people whose first language differed from mine. Inevitably that makes for some fun - like all the kids in my gradeschool learning how to…
Late Night PC Service was a business I started back around 2003. I had a fulltime job writing software when I started it. My idea was to spend evenings solving hands-on computer problems for people in their homes and spend my weekends building websites for myself or clients. The logo was pretty nice and I liked the amusing mix of risque and nerd colliding in the business name. It was pretty…