A 6U CubeSat trained a thermal segmentation model in orbit in about 13 minutes, reaching mIoU above 0.9, then used it to steer its attitude toward the Moon
Synopsis
A 6U CubeSat trained and ran a thermal-infrared segmentation model onboard in low Earth orbit, then fed the model's output into the attitude determination and control system to point at the Moon in closed loop from a live thermal image stream. Training ran on the GPU of an NVIDIA Jetson TX2 NX for about 13 minutes across 30 plus 30 epochs and reached a final mIoU above 0.9; the two tracking experiments on January 26 and 30, 2026 brought mean pointing error down to 7.4 and 13.5 pixels, while earlier runs oscillated visibly.
Interpretation
The CubeSat did not merely carry a pretrained model to orbit; it trained a thermal segmentation model onboard on a GPU and then used that trained model directly for real-time attitude control. Earlier onboard machine-learning demonstrations centered on inference on CPUs or vision processing units, and some involved onboard retraining, but not model training on a GPU on a free-flying spacecraft. In three onboard training experiments on August 8 and December 15, 2025, the model trained on the NVIDIA Jetson TX2 NX with batch size 2 and a 75%/5%/20% train/validation/test split, for about 13 minutes across 30 plus 30 epochs, reaching a final mIoU above 0.9.
The segmentation model yields the Moon's centroid in the image plane, a Kalman filter smooths those coordinates, and the attitude determination and control system turns them into commands that point the spacecraft at the Moon. Early closed-loop experiments oscillated in the horizontal plane, with quaternion commands and pixel coordinates showing overshoot rather than stable tracking. Changing the camera frame buffer from 4 frames to 1, raising the frame rate from 1 Hz to 2 Hz, and lowering the control gain twice (0.5 from January 26) brought mean pointing error down to 7.4 and 13.5 pixels in the January 26 and 30 experiments.
The software stack uses ROS 2 Foxy as data-transport middleware and OpenZFS, a file system with checksums and self-healing. To the authors' knowledge, ROS had not run on a free-flying spacecraft before, and ZFS had not been used in space. Twelve experiments ran over about a year in orbit; ZFS scrubs six and twelve months after launch found no checksum errors, and the SSD logged about 45 hours powered on in orbit.
Perspective
The demonstration is confined to a 6U CubeSat in a sun-synchronous near-polar orbit at about 500 km, using a FLIR Boson+ long-wave infrared camera and an NVIDIA Jetson TX2 NX, with the task of segmenting the Moon in the thermal stream and pointing at it; the authors explicitly frame this as a technology demonstration and note that alternative vision-based control approaches remain future work.
The authors note that segmentation is imperfect at the Moon-background boundary and that centroid noise produces residual pointing oscillation; supervised learning depends on labels uploaded from the ground, which limits more complex tasks; camera streaks and overexposure also affect segmentation consistency. They also state that GPU computation integrity was not specifically verified in orbit and that no signs of single-event effects were observed.
