A Mobile Minilab

by Steven K. Roberts
Nomadic Research Labs

Introducing a cognitive prosthesis and information toolkit built into a hand truck… with 14TB of NAS, video and audio production, sensor suite, security, communications, on-board power with solar charging, PC/Mac/Linux development systems, and even a few toys.

Background

I seem to have a history of putting computers on wheels, starting with the Winnebiko in 1983. As the first “digital nomad,” I pedaled three versions of this machine 17,000 miles around the United States over the next 8 years, writing a book called Computing Across America that is now being serialized for free on Substack. The bike evolved into a mad contraption with binary handlebar keyboard and extensive computing resources, culminating at last in BEHEMOTH — a 580-pound, 105-speed unixcycle that is now on permanent display in the Computer History Museum.

BEHEMOTH mobile lab, circa 1991

Through the ’90s, I worked on porting my technomadic toolset to water, with the Microship project yielding an amphibian pedal/solar/sail micro-trimaran. In 2006, I moved on to a sailboat of cruising scale, spent years working on embedded nautical geekery, then went to the Dark Side with a big comfortable power boat that never gets off the dock. Now, in my seventies, I have a 48-foot mobile media lab where I do digitizing projects for clients… and I have been craving one last insane passion project.

During a ferry ride to the mainland in early 2025, I fantasized about incorporating all my essential tech into a portable package while wrapping the archives of my life in a local AI. Not only would this be a technomadic swan song housing my favorite toys, but if I do it right, it could become the docent of my exhibit after I’m gone.

The resulting Bionode soon took shape as a networked collection of systems with a stable power environment, sensor suite, multiple communications modes, and video production studio… all built into a hand truck. (The name is a dotcom I bought a quarter century ago when attempting to productize a PIC-based gadget that would allow basic I/O via USB, but this is an even better fit.)

Yours truly, working on the rack frame with 2020 extrusion

Bionode Packaging

There has been a welcome movement in recent years involving “minilabs” built for home use, based on an emerging 10-inch rack-mount standard instead of the traditional 19-inch units that go back to the black-crackle forties. I’ve lived with the latter all my life, and the mini-rack form factor is a svelte, refreshing packaging style that better reflects the miniaturization of our technological tools. There is a lively community on Reddit (65K members at this writing), including a few folks who have really shaped the field (see resources on that page). There is also a huge resource of downloadable 3D printer files on Printables and Thingiverse…

As this system started taking shape in my head, however, I realized that, like my aptly named BEHEMOTH, it was going to be hard to fit everything in. Even a tall rack from one of the excellent vendors like DeskPi was going to be a challenge with all I wanted to do, so I decided to make it a doublewide. I used 2020 extrusion and stock connectors to build this, with four 8U bays (cage nuts rails shown are what became the rear; my 10-32 rails for the front had not yet arrived at the time of this photo):

Dual 8U 10-inch rack frame, now with rails on both sides — a total of 32U of rack space sharing 14-inch depth

From the start, I wanted an integrated UPS to keep power stable, but incorporating that into the rack would have gobbled precious real estate. With that, and the desire to have convenient on-board storage for essentials (laptop, cabling, tools, documentation) I decided to integrate this into a portable cabinet. That would of course become unmanageable if it didn’t have wheels… so I dove into the deep rabbit hole of toolbox systems and chose the well-supported and readily available Packout product line from Milwaukee:

Packout tool cabinet with integrated drawer and double-wide 10-inch rack frame

This involved some trickery… it was clear that I was going to need a keyboard drawer. I bought a desktop for the Packout to give me a nice wood surface, then built framing to integrate that Penn Elcom drawer into the support system. If you look just below it, you can see the Bluetti AC70 power system in the cabinet… not exactly a UPS (no NUT or NAS support and no Home Assistant integration since they recently added encryption to their BLE connection) but still, a sweet and well-scaled (768 watt-hour) rig for my anticipated loads, including solar charge capability.

AC distribution on rear of cart, along with commercial mod to widen the wheelbase to something sane

This machine was taking over a corner of my lab and spawning a shelf full of gizmos, some of which would have to be mounted on top… the router with its antennas, a Shure studio mic on its arm, camera with prompter, keylight, PTZ security cam, soundbar, exit fans for the compute stack, sensor module… so I used some half-inch HDPE and 2020 extrusion to conjure a hinged roof.

It was time to get busy on the geeky bits. Given the limitations of space, a single local console (keyboard, video, mouse) has to be shared except in situations when devices run headless and can be managed with SSH or a web interface. In my case, there are a few things that don’t fit that model, so I got a bit carried away:

PiKVM packaging in Bionode

Unable to find an elegant solution to rack-mounting this, I kluged a clamping system with the ubiquitous 2020 stuff, and it has survived the test of cabling (though that silly lever is history). But the bigger problem with this unit was that it is complicated for a stand-alone home system instead of the remote data center management at which it excels. I wanted a way to have local console natively connect to the PC without having to fire up an external machine on the LAN and SSH into this device to basically throw a switch. So… in the spirit of this quick teaser tour of Bionodal innards…

I mostly include this here in the intro to show the documentation standard — every device has a chapter in the Scrivener manual, with sketches done in draw.io running locally. This design uses a cheapie miniKVM from Amazon to let me toggle the console between PC and the big honkin’ KVM, which can then do all those things that make it so expensive… and which have turned out to be somewhat handy on occasion. (Its ATX capability would seem irrelevant here, but it is just bits so we can think of it as an extra control and sensing pipe if I need to remotely yank a chain… but I’m getting ahead of myself).

Computers

Speaking of systems, Bionode currently contains a Minisforum PC with GPU (for local AI and Immich machine learning tasks), TrueNAS installed on a Terramaster F8 with 14TB of M.2 SSD, a NUC running Ubuntu, a Pi5 with 1TB for Home Assistant, an identical Pi5 with native OS for dev, an older Pi3 devoted to running the 3D printer, and a Pi4 for SDR applications. (It kind of blows my paleogeek mind that I can casually mention “Raspberry Pi with 1 terabyte” without a giggle.) Hanging off the router is a Unifi 16-port managed switch, and there are a few little ESP32 boards around… and there are some backup protocols involving external HD cold storage and, at the moment, my larger lab NAS.

Bionode pies – room for 2 more fives with 1TB each

The machines are on the left half of the enclosure, in a configuration that is designed to optimize airflow. Convection helps elevate the exhaust from the MS-01 when its GPU is cranking, and the F8 NAS is blowing vertically anyway (over some nice heat sinks I installed with 3D-printed clips instead of the provided rubber bands that scared me). The roof has two fans, one of which exhausts up to the bottom of the Flint router that can reportedly get hot at times. Spill from this speeds the response of an AIR-1 from Apollo, part of the Home Assistant installation in Bionode that gives me excellent air quality data.

Apollo AIR-1 on the roof, catching exhaust breeze from under the GL.iNet Flint router

One of the fun things about all this, which probably sounds like a haphazard combination of unrelated tools compared to some of the sleek media servers and dev systems I’ve seen in the minilab and homelab communities, is that we are starting to see synergy among machines. The Whisper/Piper voice (Nabu) is stitched to local AI, and I confess secret delight when one of my silly automations pipes up after guests leave and says “ah, the air is getting much better in here!” (CO2 dropped below 550). It is aware of relevant temperatures including power bay and most CPUs, NAS behavior, status of drawers and access panels, human presence detectors, and so on… HA is becoming the Bionode’s nervous system, not the classic “home control” running nearby lights, as there is another installation in the lab running in Proxmox on a NUC to do all that. Immich manages my photo archives under TrueNAS on the little Terramaster F8, a marathon of learning curves, but it works and we’re now sticking the mostly idle GPU into a Docker container so it can handle face recognition tasks as I continue importing the occasional archive bolus of a thousand or so at a time as I get up the nerve to try Google Takeout. This combination of tools will also be handling my original software development objectives for the system, and I’m getting a sense of cooperative interoperability as it starts to hum on lightweight tasks.

Bionode “compute stack” behind console Zone A

Video System

I mentioned the devices on the “roof” — a production suite for video projects, though the hinged 24-inch monitor that snaps magnetically in place is not great for DaVinci Resolve compared to the larger ones I’m used to. Also, I am mostly a Mac user, yet the “big iron” in Bionode is a PC. What to do?

Prompter on the roof carries Sony ZV-E10 camera, with Shure MV7+ on a boom over the soundbar. Video recording uses ATEM Mini Pro ISO in the keyboard drawer.

For a while I was sure the solution would be an M4 Mac Mini in 3D-printed mount, and I wanted a good excuse to buy one for that AI-friendly unified memory. But when I started realizing how often I need an external laptop to poke at the PiKVM (and how Mac doesn’t really like to have its console coming and going) I realized that the more practical solution is to just keep a MacBook Pro around… doubling console space and linked via Tailscale.

But wait, the point of this thing is to have all my gizmos on one device with wheels… does it now need an adjacent computer desk? Actually, no… I am installing a swing-out table for the laptop, which otherwise lives in one of the Packout drawers. This will own the MOTU audio interface as well as the ATEM for video production and related tools (OBS), and the Prompter does double-duty as a Zoom station when I’m not trying to be a talking head.

Communications

In addition to network communications, I’ve been a ham for most of my life and have a deep fondness for radios. As this system developed I kept eyeing a spot in Zone B (on the right side) where my little Yaesu QRP rig could fit, just because it fits, but that is in another domain entirely and would be a distraction and probable source of birdies. The plan now is to include network-enabled comms in Bionode, then adapt my existing 19-inch radio rack to another hand-truck substrate for more traditional radio gear (with others coming for electronics lab instruments, 3D printer, solder/fab, media digitizing stations, book scanner, and so on).

That said, we do have some fun radio toys in this machine. Meshtastic is essential these days if you want a secure pipe between people without having to involve the Internet. It’s also a great way to pass notifications and low-bandwidth sensor data (using MQTT) as long as you keep it from spilling out to more public channels.

Meshtastic node (Heltec)

This is also the place for Software-Defined Radio (SDR) — I currently host a receive site that boggles the mind… a Beverage antenna connected to a port bit, with the RX-888 computer essentially digitizing the HF band. Having grown up peering into the dials of rack-mount tube radios (like the gorgeous Hammarlund SP-600), this is insane. Here is my last 24 hours which often shows 50,000 or more identified digital-mode hits like WSPR, PSK-31, etc.

A long-wire antenna at the edge of a forest is not a good fit for a hand truck, however, so the SDR in Bionode will be my Funcube Dongle, RTL-SDR, and the one I used to feed ADS-B servers from the boat.

I know, I’m a glutton for geekery… one good thing about this rolling substrate is that it is intrinsically space-limited (with a hard spec of being able to fit through a typical interior doorway of 32″). But we can do so much with tiny things these days that it’s hardly a constraint!

Nomadic Research Labs executed in Wire EDM from 1/4″ stainless steel plate, mounted atop the soundbar

Where to from here?

I’m on a mad push to get packaging done and cables dressed so focus can shift to software and applications… it’s been 4.5 months since I started this project, and I only brought the NAS up a couple of weeks ago. One of the main practical goals is to use this to isolate my extensive archives from the complexity of the digitizing lab, where I have 180TB of NAS and multiple computers. If I sell the business or shut it down, the personal mess would be daunting; if that happens after I shuffle off this mortal coil, it would be messier still. The Bionode modularizes my information life while being a cognitive prosthesis for an aging brain… and information toolkit/toybox.

But the core reason, occasional spinoff fantasies aside, is the technopassion that turns projects into obsessions — my “geek manifesto” about Gonzo Engineering sums this up pretty well. Every now and then I need one of these, and I look forward to sharing the details with you here, over in the Minilab subreddit, and occasionally in groups that focus on related components (like the Packout folks who might enjoy substrate hacks like power integration). This is the energy that kept the bike and Microship projects going for much of my life, and I have missed it.

Front cover of the Bionode manual, with my old art and engineering quote from 1980 (in Industrial Design with Microcomputers, Prentice-Hall)