jumpstation

JumpStation

The Arduino moment for AI.

JumpStation is an open platform that removes the expertise barrier between “I have a trained model” and “it is running on the right hardware.” Point the toolkit at your model, provide calibration data, and the targeting suite determines the minimum viable device in the spectrum — then packages an optimized deployment artifact for it.


The Hardware Spectrum

Device On-chip AI RAM Role
Arduino UNO (ATmega328P) None 2 KB Ultra-constrained embedded inference
Raspberry Pi Pico None 264 KB Sensor inference, TFLite Micro
ESP32 None ~520 KB Wireless edge AI nodes
Arduino UNO Q Adreno + QRB2210 AI 4 GB Minimum Linux/UI platform
JumpStation (CM5 / Pi5) CPU only 4–8 GB Dev host, GPIO testbed
JumpModeler Junior (RK3588S2) 6 TOPS 4–8 GB Dev host, native RK NPU testbed
JumpStation Turbo (CM5 + DX-M1) 25 TOPS 4–8 GB Profiling & distillation engine
JumpStation Turbo RK (RK3588S2 + DX-M1) ~31 TOPS 4–8 GB Max-throughput profiling
JumpModeler (Orion O6) 29 TOPS NPU 8 GB Production edge AI
JumpModeler Turbo (Orion O6 + DX-M1) 45 TOPS 16 GB High-performance production edge AI

How It Works

=== “1. Prototype”

Write your AI application on a JumpStation Linux host.  
Connect target hardware (Pico, ESP32, UNO Q) via GPIO — the
**DeviceBus** abstraction makes your code transport-agnostic.

```python
from core.studio.device_bus import DeviceBus

bus = DeviceBus.detect()          # CM5 GPIO or UNO Q serial bridge
reading = bus.analog_read(pin=0)  # same call on any platform
```

=== “2. Profile & Target”

Run the targeting suite. It measures FLOPs, peak RAM, and quantization
sensitivity, then selects the minimum viable hardware class.

```bash
jumpstation target my_model.onnx --calibration data/
# → device_class: pico  |  backend: tflite_micro  |  precision: int8
```

=== “3. Distill & Deploy”

Compress the model to fit the target. Package and deploy as a JumpBundle.

```bash
jumpstation distill my_model.onnx --target pico --data data/
jumpstation bundle  my_project/   --target pico
# → dist/my_project_pico.jbundle
```

Key Concepts

- :material-dev-to:{ .lg .middle } **JumpStation Studio** --- The unified IDE and prototyping environment. Runs on any JumpStation Linux host. Replaces Arduino App Lab with a platform-agnostic DeviceBus that works identically on CM5 GPIO breakout and UNO Q STM32U585. [:octicons-arrow-right-24: Studio](/studio.html) - :material-chip:{ .lg .middle } **Hardware Targeting** --- The profiler measures your model's requirements. The target selector scans the device catalog and identifies the minimum viable hardware. No guesswork, no over-provisioning. [:octicons-arrow-right-24: Targeting](/targeting.html) - :material-compress:{ .lg .middle } **Distillation Pipeline** --- PTQ / QAT quantization, magnitude pruning, and knowledge distillation with operational envelope injection. The Turbo's DX-M1 accelerates every stage. [:octicons-arrow-right-24: Distillation](/distillation.html) - :material-package-variant:{ .lg .middle } **JumpBundle** --- A portable, self-describing deployment artifact. One bundle format from Pico firmware to JumpModeler Turbo Python package. The runtime validates compatibility at install time. [:octicons-arrow-right-24: JumpBundle](/jumpbundle.html)

Quick Start

git clone https://github.com/zlorenzini/jumpstation
cd jumpstation
pip install -e ".[dev]"
pytest

See Getting Started for the full setup guide.