Skip to content

v2026.10.01: storage for power cuts, quiet mode, fanless, prebuilt setup

Choose a tag to compare

@allengregoryiv allengregoryiv released this 01 Oct 04:10

Our Jetson Orin Nano Super vision coprocessor as running on 2026-10-01, rebuilt from scratch after its first SSD died. Built from commit ae5d2f1; everything here can be rebuilt from this tag with the repo's scripts.

New since v2026.09.24.2

  • Storage built for power cuts. The first SSD (a DRAM-less budget drive) lost data after 21 power cuts and stopped booting. The SSD is now split three ways:

    • a 64 GB system partition, read-only before competition (ro-root.sh on, NVIDIA's own overlay);
    • a settings partition, written only when a setting changes;
    • a scratch partition for Rewind and logs.

    If either data partition is damaged, the Jetson still boots and runs the match: on the last-good settings, or with recording paused and logs in RAM. Nothing is wiped automatically. The health check reports the SSD's own media-error count.

  • Quiet mode (photonvision-56). After a match ends, or 60 s disabled, the Jetson stops writing to the SSD. Any enable ends it about 80 ms later, and vision never waits on it. A requested recording (field calibration, Record now, robot code) always wins.

  • Fanless mode (FAN=off, photonvision-57): for a heatsink plate. The fan stays off; at 95 °C every camera is capped at 60 fps until the chip cools. On our plate, matches from a hot idle peaked at 86–88 °C.

  • One-command setup.

    1. scripts/host/prestage-rootfs.sh, then flash.
    2. scripts/host/setup-jetson.sh --prebuilt, which uses this release and takes about 35 minutes, unattended.

    Team values live in config.env.

  • Since the last release, also:

    • Match Ready page;
    • settings snapshots;
    • idle at 30 fps while disabled;
    • event pipeline when the field connects;
    • Switch all and Start from;
    • far-tag search (1.8× range);
    • tag contrast readout;
    • camera-clock timestamps, and 1.2 ms lower latency from the camera driver;
    • five cameras at 122 fps;
    • a browser test suite.

Details: README.

Files

File What it is
spectrum-jetson-prebuilt-v2026.10.01-ae5d2f1.tar.gz What the slow setup steps compile, for JetPack 6.2.3 / L4T 36.5.2, CUDA 12.6 only. See the list below.
….tar.gz.sha256 Its checksum. install.sh --prebuilt checks it, then checks every file against the bundle's MANIFEST (repo commit, L4T, CUDA, patch list, SHA-256 per file), and refuses a mismatched L4T or CUDA.

What's in the bundle:

  • the CUDA AprilTag detector (lib971apriltag.so), with our bos-* patches;
  • our JPEG-hardware and TensorRT libraries;
  • the field-calibration tool;
  • the three allwpilib libraries the detector needs at runtime;
  • our PhotonVision jar, with patches 00–57.

Use it with scripts/host/setup-jetson.sh --prebuilt (newest release), or scripts/jetson/install.sh --prebuilt <bundle> on the Jetson. The camera driver is still compiled on the Jetson, for its exact kernel (41 s).

Licenses

NOTICES.md in the bundle lists where every file comes from:

  • PhotonVision and our code: GPL-3.0;
  • WPILib allwpilib: BSD-3-Clause;
  • the CUDA AprilTag detector by Austin Schuh and FRC 971: Apache-2.0, as published in RealtimeRoboticsGroup/aos.

The copy we build from (frc971/bos) has no license file of its own. If the authors would like this handled differently, open an issue and we'll change it.

Not included

  • Game-piece models: not ours to redistribute (see docs/GAME-PIECE-MODELS.md).
  • PhotonVision settings and SSD images: team-specific, and the images contain Wi-Fi and SSH credentials.