Artemis Nomad, top-down view with illuminated power button
All Work

Flagship Project

Artemis Nomad

Off-grid emergency repair assistant

RoleSolo: design, hardware, firmware, fab
ContextSFSU Industrial Design Capstone, 2026
DisciplinesID · PCB · Embedded · Fabrication
StatusWorking prototype · revision in progress

01 The Problem

No single tool helps you diagnose physical equipment off the grid.

Despite advances in AI-assisted software troubleshooting, technicians, motorists, and emergency personnel still have nothing that helps them diagnose physical equipment in the field, away from infrastructure. AI-assisted repair is well documented, but it lives on a phone with a signal, not in your hand under the hood.

Artemis Nomad is a rugged, battery-powered handheld that fuses a multimeter, IR thermometer, GPS, FM radio, and a fully offline AI diagnostic assistant into one instrument, so an entry-level tech can identify and fix a fault ranging from a passenger vehicle to heavy-duty utility hardware, without ever having to contact rescue efforts.

Artemis Nomad front elevation
Front elevation: sunlight-readable display, physical navigation, protected multimeter inputs.

02 Capability Cluster

Nine tools in one enclosure, driven by physical controls.

01

Digital Multimeter

Voltage, current, and continuity through a protected probe-input chain.

02

IR Thermometer

Non-contact surface temperature reading.

03

GPS Positioning

Location fix with no internet connection required.

04

AM / FM Radio

On-board receiver for field communications.

05

LED Flashlight

Integrated work light for low-visibility diagnosis.

06

OBD-II Reader

Pulls diagnostic trouble codes from vehicles.

07

GX-12 I²C Port

Expansion port for external sensors and accessories.

08

Wi-Fi Capability

Optional connectivity for cloud-model fallback.

09

Offline AI Assistant

Local LLM that talks you through the repair, fully offline.

03 Anatomy · hover the pins

Annotated Artemis Nomad front face
01 TFT display
02 LED status indicators
03 Nav buttons + rotary encoder
04 GX-12 accessory port
05 Microphone
06 Speaker
07 Multimeter fuse
08 4 mm multimeter jacks

Artemis Nomad on a truck bed beside tools in the desert

04 Full Offline Capability

Expert guidance, grounded in the manufacturer's own documentation.

Before a mission, Artemis downloads a full literature report on your equipment, spec sheets, wiring diagrams, troubleshooting guides, and reads it into a guided flow it walks you through by voice, fully offline. Because every step is built from the manufacturer's actual documentation, the answers stay grounded, not a generic AI guess. When a signal is available, it reaches out to a cloud model for more.

05 Architecture

A dual-processor, split-brain design.

A Raspberry Pi 5 handles the user interface, the offline LLM, and all high-level logic, while a dedicated ESP32 owns every time-critical input: the rotary encoder, buttons, GPS, and the I²C sensor bus. I split the system this way because those two jobs have fundamentally different timing requirements.

Debouncing a button or decoding a quadrature encoder needs interrupt-level determinism that a general-purpose Linux system running an LLM inference loop cannot reliably guarantee under load. Rather than fight that in software, I separated it in hardware: the ESP32 reports a clean, already-processed state to the Pi over UART at 10 Hz. That boundary also let me pick the right chip for each job, the Pi's compute for on-device AI, the ESP32's low power draw and rich peripheral set for the sensor and I/O layer.

Artemis Nomad internals: Raspberry Pi and custom PCB wired inside the enclosure
Raspberry Pi 5 (top) and the custom carrier PCB inside the printed enclosure.

Signal Path

SENSOR LAYER
Encoder · Buttons
GPS · I²C sensors
ESP32
Real-time C++
Debounce · NMEA parse
UART
10 Hz JSON
RASPBERRY PI 5
Python · UI · State machine
Offline LLM (Ollama)
OUTPUT
TFT display
Voice / audio

06 Software

Two software layers, with a clean contract between them.

The offline assistant is a state machine, not a chatbot.

The diagnostic assistant is built as a state machine over a node tree of guided troubleshooting steps. At each step, the offline LLM (running locally through Ollama) does one focused job: it categorizes the user's spoken response, sorting free-form speech into the branches the current step expects, and the state machine advances accordingly.

Keeping the model on classification rather than open-ended generation is what makes it reliable offline. The answers come from the equipment's documentation and the predefined flow; the LLM only handles the messy natural-language layer of understanding what the user actually said.

The ESP32 speaks one language to the Pi: JSON.

On the firmware side, the ESP32 gathers every real-time input, the rotary encoder, button states, GPS fix, and I²C sensor readings, and packages them into a single JSON packet sent over UART at 10 Hz. The Pi never polls hardware or tracks timing itself; it just parses a clean, structured snapshot of the device state ten times a second.

That one contract keeps the two processors fully decoupled: the firmware can change how it reads a sensor without the Pi ever knowing, as long as the JSON stays the same.


07 Custom Carrier PCB

Bare fabricated carrier PCB on a cutting mat
Custom carrier PCB, designed in EasyEDA and fabricated by JLCPCB.

I laid out the board instead of stacking breakout modules.

Artemis needed a protected analog front end, a fuse, TVS surge protection, and a precision voltage divider feeding a 16-bit ADC, none of which exists as an off-the-shelf module. A single board let me consolidate that analog front end, an audio switching relay, and connectors for every peripheral into one assembly I could actually trust in the field, rather than a rat's nest of jumper wires.

Going through the full schematic capture and layout process myself was also the fastest way to genuinely learn professional PCB design, instead of abstracting it away behind a pre-built module.

EasyEDA PCB layout of the Artemis carrier board

The board layout in EasyEDA: the protected analog front end, an audio switching relay, and a dedicated connector for every peripheral, consolidated onto one carrier.


08 Enclosure

Modeled in Fusion 360, printed to iterate in hours, not weeks.

I modeled the enclosure in Fusion 360 and printed it in PETG rather than machining or tooling anything, since FDM let me iterate the geometry in hours while I was still discovering component placement and cable routing. I chose PETG specifically for its impact resistance over PLA, added TPU bumpers at the corners for drop protection, and used heat-set brass inserts so I could open and reassemble the enclosure dozens of times during bring-up without stripping the plastic.

That mattered because Artemis was built through structured, incremental bring-up: one subsystem wired, soldered, and verified before the next went in. That process is exactly what let me trace problems down to their root cause instead of guessing across a fully populated board.

Fusion 360 CAD model of the Artemis enclosure
Fusion 360 model: assembly-friendly enclosure with integrated bumper and insert features.

09 Engineering Judgment

Real faults, traced to root cause under real ambiguity.

The fingerprints of how I actually work. Each of these was found by isolating one variable at a time, not by swapping parts and hoping.


10 Results

In user testing, every subject correctly identified a broken airflow sensor in a standard passenger vehicle. The voice-controlled assistant worked well, and users felt confident talking to it.

Artemis remains in active development, with a revised prototype underway and expected by the end of 2026.

Artemis Nomad used to probe a vehicle engine bay
Artemis Nomad packed in a protective field case with tools

11 Toolset

·Fusion 360 ·EasyEDA ·JLCPCB ·C++ / Arduino ·Python ·Raspberry Pi OS / Linux ·ESP32 ·I²C / UART / SPI ·Ollama (local LLM) ·FDM: PETG / TPU