ScottW514 11fec891ed ffboot v2: slot inventory, verified atomic env flips, target probe
-l inventories every bootable partition (SD, eMMC slots 1/2, legacy
p4) as machine-parsable key=value lines: firmware type
(forgefirm/factory), version, kernel presence, booted/next markers,
plus the saved-env selection - the shared probe for the installer and
the forgectrl update manager.

Boot switching now writes all four selection variables (mmcdev,
mmchwpart, mmcpart, mmcroot) in one fw_setenv -s transaction and
read-back verifies, falling back from the libubootenv script format
to the classic u-boot-tools format to per-variable writes - the same
script works on factory firmware and ForgeFIRM. mmchwpart was
previously never set and a mixed env could survive a mid-flip power
cut. Switch targets must pass a content probe (rootfs mounts, kernel
present) unless -f. -e picks the newest factory slot by probing,
excluding slots occupied by ForgeFIRM.

The new ffboot recipe installs it as /usr/sbin/ffboot with
/etc/fw_env.config (factory-identical redundant env layout at eMMC
0x80000/0x82000) - previously the image shipped fw_setenv with no
config. Added to forgefirm-image.
2026-08-08 12:08:14 -04:00
2026-06-19 13:41:23 -04:00
2020-04-15 17:09:41 -04:00
2022-10-06 10:07:41 -04:00
2022-10-06 10:05:41 -04:00

OpenGlow/ForgeFIRM Firmware for Glowforge

This repository contains opensource firmware for Glowforge brand CNC lasers.

Roadmap

  • Base image that supports all Glowforge hardware (complete)
  • Support Glowforge web service - Python implementation (mostly complete)
  • REST API w/ G-Code support (in progress) Stalled
  • Browser-based GUI (pending) Stalled

This project is for experimental purposes only, and is not supported or endorsed by Glowforge.

S
Description
OpenGlow/ForgeFIRM Firmware for Glowforge
Readme
5.8 MiB
Languages
Python 90.3%
Shell 3.5%
BitBake 2.6%
C 1.2%
JavaScript 1.2%
Other 1.2%