Quickstart
Get your AI HAT+ running in minutes. This fast installation guide covers PCIe detection, driver setup, and DXNN quick setup, providing the fastest path to validating your hardware and running your first edge AI inference test.
From unboxing to first inference on the Sixfab AI HAT+
Mount the AI HAT+, install the DEEPX runtime with sudo apt install sixfab-dx,
verify the driver, runtime, and on-NPU firmware, then run live object detection on the
DEEPX DX-M1M NPU. Intelligented by DEEPX. Built on Raspberry Pi.
Five steps, about 20 minutes.
Check the prerequisites and supported host platform, power off your
Raspberry Pi 5, mount the Sixfab AI HAT+ with the 16-pin FFC cable,
install the DEEPX runtime with sudo apt install sixfab-dx (5–10 minutes
depending on your connection), verify the driver, runtime, and on-NPU firmware versions
with dxrt-cli -s, then run run_hello_world to launch a live
YOLOv8 detection demo on the NPU.
Before you start
This Quickstart is one of three paths through the AI HAT+ documentation. Pick the one that matches what you want to build. You can always come back here when you need the runtime up and running.
The procedure
Five steps. The first confirms what you need to have on hand and which host platform is supported; the next three set up the hardware and software stack; the fifth runs your first inference. Each step's commands are self-contained, so copy them in order.
Check the prerequisites and supported host platform
You already have the Sixfab AI HAT+ kit on hand — the kit ships ready to assemble. Before you open the antistatic bag, confirm the host platform you'll mount it on and the few items the kit does not include are in front of you.
What you'll need
Supported host platforms
- Raspberry Pi 5, the primary host platform.
- Raspberry Pi Compute Module 5 via the official Raspberry Pi CM5 IO Board.
- Raspberry Pi 4 and earlier.
- Compute Module 4 and earlier.
- Non-Raspberry Pi SBCs (Orange Pi, Rock Pi, Jetson, etc.).
What's in the box
Open the kit and confirm all six items are present before you start. The AI HAT+ board itself, every fastener, the PCIe cable, and the passive cooler ship in the same box — nothing else is needed from Sixfab.
The AI HAT+ is not hot-pluggable. Disconnect the USB-C power supply completely before mounting or removing the board. Mounting under power can damage the PCIe FFC connector, the NPU, or the Pi 5.
Mount the AI HAT+ on the Raspberry Pi 5
The kit's contents and a "Not in the box" reminder are in Step 1 — this step assembles them. The Pi 5 should be powered off and disconnected from its USB-C supply before you begin.
Assemble in this order. Tighten everything finger-tight only.
- Press the 16 mm stacking header down onto the Pi 5's 40-pin GPIO header.
- Place the four M2.5 × 16 mm spacers on top of the Pi 5's four mounting holes and fasten them from the bottom of the Pi 5 with four of the M2.5 × 5 mm plastic screws.
- If the passive cooler is not yet attached to the AI HAT+, peel the thermal pad's protective film and press the cooler onto the DEEPX NPU.
- Connect one end of the 16-pin PCIe FFC cable to the Pi 5's PCIe connector. Lift the latch, slide the cable in contact-side down, and close the latch.
- Seat the AI HAT+ on the stacking header, align its four mounting holes with the four spacers, and fasten the board to the spacers with the remaining four M2.5 × 5 mm screws from above.
- Connect the other end of the PCIe FFC cable to the AI HAT+'s PCIe connector.
Eight screws total: four below, four above. Respect the cable orientation when seating each end of the FFC.
Tighten the M2.5 spacers and screws by hand only, never with a power driver. Over-torquing strips the threads on the Pi 5 PCB, and the Pi 5 board is not field-repairable once those threads are gone.
Both connectors on the cable expose the contacts on the same face. Match the contact-side arrow on the cable to the connector at each end, fully insert the cable, then close the latch. A reversed or partially seated cable produces no PCIe link, and the NPU will not enumerate.
Install the driver and DEEPX runtime
Power on the Pi 5 and open a terminal. A single APT command installs the kernel
driver, the DEEPX runtime, and the CLI tools (dxrt-cli,
dxtop, run_model).
# 1. Refresh the package index, then install the runtime sudo apt update && sudo apt install sixfab-dx
When the installer prompts Do you want to continue? [Y/n], type
Y and press Enter. The driver compiles against your running
kernel, so the first install can take 5–10 minutes depending on connection speed.
Sanity check: the runtime is reachable and the NPU enumerates
# 1. Confirm the runtime CLI is on PATH dxrt-cli --version # 2. Confirm the NPU enumerates over PCIe lspci | grep -i deepx
DXRT v3.2.0
01:00.0 Processing accelerators: DEEPX Co., Ltd. DX_M1A
lspci doesn't list a DEEPX entry
Power off, reseat both ends of the 16-pin FFC cable (latches fully closed),
and power back on. If the entry still doesn't appear, run
lsmod | grep -i dx to confirm the kernel module loaded, and
dmesg | grep -i dx for driver errors. See
Troubleshooting.
Verify driver, runtime, and on-NPU firmware
Before running inference, confirm that the kernel driver, the DEEPX runtime,
and the firmware on the DEEPX NPU module are at the versions you expect.
dxrt-cli -s prints a complete hardware and firmware status report
in one shot.
The DEEPX runtime, the kernel driver, and the on-NPU firmware all carry
independent version numbers. A drift between any two shows up later as silent
CPU fallback, version-mismatch errors when loading .dxnn files,
or unstable inference. Catching it here is much cheaper than catching it
after deployment.
# Full hardware and firmware status report dxrt-cli -s
DXRT v3.2.0 * Device 0: M1, Accelerator type * RT Driver version : v2.1.0 * PCIe Driver version: v2.0.1 * FW version : v2.5.0 * Memory : LPDDR4x 4266 MT/s, 1 GB * Board : M.2, Rev 1.0 * PCIe : Gen3 X1 [01:00:00] NPU 0: voltage 750 mV, clock 1000 MHz, temperature 46 °C NPU 1: voltage 750 mV, clock 1000 MHz, temperature 46 °C NPU 2: voltage 750 mV, clock 1000 MHz, temperature 46 °C
What you're confirming on each line
config.txt changes needed
The runtime returns a version-mismatch error when loading a .dxnn
file if the on-NPU firmware is too old. See the FAQ entry
How do I receive SDK and driver updates?
and, if a standalone firmware update is required, the
dxrt-cli -u fw.bin flash command (covered alongside the runtime
install in the step above) handles the update.
Run your first inference on the NPU
The sixfab-dx package ships with a pre-compiled YOLOv8 detection
demo wired up to run_hello_world. A single command launches it on the
NPU and opens a window with bounding boxes drawn in real time.
run_hello_world
PERFORMANCE SUMMARY ================================================ Pipeline Step Avg Latency Throughput ------------------------------------------------ Read 21.45 ms 46.6 FPS Preprocess 14.11 ms 70.9 FPS Inference 399.69 ms 16.0 FPS* Postprocess 2.23 ms 449.0 FPS Display 32.47 ms 30.8 FPS ------------------------------------------------ * Effective throughput via async inference Total Frames : 855 Total Time : 53.6 s Overall FPS : 16.0 FPS
A window opens showing the live feed with bounding boxes drawn around detected objects in real time.
A live detection window plus the performance summary above means YOLOv8 is executing on the DEEPX NPU, not on the Raspberry Pi CPU. That's the AI HAT+ doing its job.
Watch the NPU work in real time
Open a second terminal while the demo is running and launch dxtop.
It prints per-core utilisation, voltage, clock, and temperature, much like
htop for the NPU.
dxtop
DX-RT: v3.2.0 NPU Device driver: v2.1.0 DX-TOP: v1.0.1 Device :0 Variant: M1 PCIe Bus Number: 01:00:00 Firmware: v2.5.0 NPU Memory: [320 MiB / 1.00 GiB (31.3%)] Core :0 Util: 87.0% Temp: 52 °C Voltage: 750 mV Clock: 1000 MHz Core :1 Util: 92.0% Temp: 51 °C Voltage: 750 mV Clock: 1000 MHz Core :2 Util: 89.0% Temp: 52 °C Voltage: 750 mV Clock: 1000 MHz
Press q to quit.
Where to next
YOLOv8 is now running on the DEEPX NPU. The hardware and runtime stack are healthy, and the next chapter is AI Model Deployment: choose more pre-compiled models, bring your own trained model to the NPU, or instrument the deployment for production.
dxrt-cli and dxtop. Read NPU telemetry, surface
it to dashboards, and watch deployments in real time.
Monitor the NPU →
Updated 5 days ago
