02 / Lab

Lab Records

Things I build, break, and benchmark outside of work. Ongoing experimentation, not a polished portfolio.

11 / 11 records
LAB-001ACTIVE

LLM Inference Capacity Planner

An interactive capacity-planning tool for local LLM inference. It estimates model weight storage, KV cache growth, runtime VRAM, minimum host memory, and GPU count from model size, quantization, context length, cache precision, batch size, and the target memory architecture. The breakdown makes the assumptions visible so a hardware plan can be adjusted before downloading a model or buying a GPU.

Stack
Next.js, TypeScript, LLM memory modeling
Date
2026-10-04
Source
Interactive lab tool
Launch tool
LAB-002ACTIVE

Cocktail Bar Machine

An automated cocktail-mixing machine built with nine 12V pumps, supporting up to ten liquors and mixers through a custom PCB, 2020 aluminum extrusion frame, and 3D-printed enclosure. A companion web app can discover and connect to the machine over Wi-Fi, manage ingredients, and prepare hundreds of cocktails with flexible recipe modifications and customization. The project brings together accurate dispensing, pump control, plumbing, wireless connectivity, and a software-driven recipe system in one programmable bar platform.

Stack
2020 extrusion, Wi-Fi, Web app
Date
2026-02-10
LAB-003SHIPPED

My First Custom PCB

My first custom printed circuit board, designed to control nine pumps for my cocktail bar machine. I designed the schematic and sent the board design to a manufacturer in China for fabrication, then worked through assembly, soldering, and board bring-up. It is a practical lesson in footprints, connector orientation, power routing, and leaving room for test points. The goal is a board I can assemble, measure, and revise without guessing.

Stack
PCB CAD, nine-pump control, soldering
Date
2025-12-04
Source
Personal hardware build
LAB-004SHIPPED

AI Vision Service / Grounded SAM

A Docker-packaged vision service combining Grounding DINO, Segment Anything, and Intel RealSense D435 depth data to detect prompted objects, segment them, and locate them in 3D camera space. Text prompts drive detection; SAM supplies masks; aligned depth supplies geometry. Docker packages the model runtime and dependencies, with checkpoints supplied separately. Robot-base coordinates require the calibration transform.

Stack
D435, Grounding SAM, CUDA, Docker
Date
2025-11-10
LAB-005SHIPPED

Pyrealsense2 RPi Base Image

An ARM64 Docker base image for Raspberry Pi that builds librealsense v2.55.1 and pyrealsense2 from source, installing the Python bindings into site-packages for downstream camera services. Includes USB, UDEV, and basic OpenGL libraries so downstream services can reuse the camera stack without recompiling it. Tested on a 64-bit Raspberry Pi 4; hardware access still needs the appropriate host device mounts.

Stack
ARM64, Python, RealSense 2.55.1
Date
2025-11-07
LAB-006SHIPPED

Eye-Hand Calibration Tool

A GUI utility that collects corresponding camera points and robot-reported base-frame points, then computes a rigid transform for vision-guided manipulation. It generates camera-to-base transform data so objects located by the camera can be expressed in the robot's coordinate system. OpenCV ArUco / ChArUco boards provide calibration references. Board geometry, point measurements, and robot coordinates need consistent units and frames for the transform to be useful.

Stack
Python, OpenCV, ArUco / ChArUco
Date
2025-10-15
LAB-007ACTIVE

AR4 Custom Firmware

A custom AR4 control stack with a Raspberry Pi 4 host, connecting robot firmware commands to an API for Cartesian motion, position reporting, and integration with other lab services. The Pi hosts the service layer around the arm controller. Joint and linear moves, wrist configuration, and reported pose all need to agree before a recorded motion can be played back reliably.

Stack
Raspberry Pi 4, Python, FastAPI, Docker
Date
2025-08-10
LAB-008ACTIVE

AR4-MK5 Robotic Arm

An open-source, six-degree-of-freedom industrial-style robot built from machined aluminum and 3D-printed parts, with a pneumatic gripper. My build log follows the arm from individual parts through mechanical assembly, wiring, pneumatic connections, homing, and calibration. It is the foundation for my robot-control and camera-calibration experiments, where coordinate frames and repeatability matter as much as getting the joints to move.

Stack
AR4-MK5, Robotic Arm, pneumatic gripper
Date
2025-07-01
LAB-009SHIPPED

A-10 Thunderbolt II - 3DLabPrint

A detailed build log for 3DLabPrint's A-10 Thunderbolt II, printed using ColorFabb LW-PLA-HT to reduce airframe weight while maintaining the strength needed for a large RC aircraft. I document the LW-PLA-HT print settings, part preparation, assembly process, modifications, and the electronics used throughout the build, including propulsion, ESCs, servos, receiver, wiring, and landing gear. The project also covers practical tips and lessons learned while working with lightweight foaming filament, assembling and aligning the twin nacelles, routing electronics through the airframe, maintaining service access, balancing weight, and dialing in the final center of gravity and control setup.

Stack
LW-PLA-HT, 3d printed RC Plane
Date
2025-06-07
LAB-010SHIPPED

F4U Corsair - 3DLabPrint

A detailed build log for 3DLabPrint's F4U Corsair, covering the settings, modifications, and electronics used to turn the printed airframe into a complete RC aircraft. I document the PLA+ print setup, part orientation, assembly methods, and changes made along the way, along with the motor, ESC, servos, receiver, landing gear, and other electronics used in the build. The project also collects practical tips and lessons around joining printed sections, keeping the airframe aligned, managing weight, routing electronics, setting the center of gravity, and avoiding problems that can show up when printing and assembling a large RC aircraft.

Stack
PLA+, 3d printed RC Plane
Date
2023-03-06
LAB-011ACTIVE

Docker Swarm Cluster (RPi 4)

An eight-node Raspberry Pi 4 cluster with SSD storage, running Docker Swarm to host IoT services, personal websites, and supporting homelab stacks. Prometheus collects metrics across the cluster, with Grafana providing dashboards for monitoring node health, resource usage, and running services. The build covers bringing up the nodes, organizing container deployments, maintaining persistent data, and observing how the cluster behaves over time. It is a small cluster with real operational concerns: service placement, network access, monitoring, and recovery when a node goes away.

Stack
8× Raspberry Pi 4, Docker Swarm
Date
2020-01-08
Source
Personal homelab