Files
forgefirm/README.md
T
ScottW514 562631d9bf docs: describe the firmware that exists; ship the NXP firmware EULA
README: replace the stalled REST/GUI roadmap with what the firmware does -
GRBL mode over TCP for LightBurn/UGS/cncjs, optional cloud mode, the web
control panel, cameras, A/B install beside the factory firmware - plus the
supported hardware incl. the 8 MP camera limitation and a real roadmap.

kas/README: xvclk is the board's 24 MHz oscillator; the pin/push rule covers
every source repo; camera and motion sections are hardware-validated, with the
OV8856 caveat spelled out; the device-tree item closes with the control_12v
residue named; forgectrl is the machine-services daemon with two supervised
controllers.

LIGHTBURN.md: drop the pre-first-light status line.

BUILD.md: state the NXP firmware licensing and where the EULA lives on the
machine. The image now installs firmware-imx-lic, so the EULA text ships beside
the VPU/EPDC blobs it covers; a bbappend declares that package at parse time,
which is what makes it installable from an image recipe.
2026-08-13 12:34:48 -04:00

61 lines
3.0 KiB
Markdown

# OpenGlow/ForgeFIRM Firmware for Glowforge
Open-source firmware for Glowforge brand CNC lasers. ForgeFIRM replaces the
cloud-dependent factory software on the **stock control board** — no hardware
modification — and gives the machine a local controller, a local web control
panel, and a standard Grbl interface.
* [Latest Release](https://github.com/ScottW514/forgefirm/releases)
* [Installation Instructions](https://github.com/ScottW514/forgefirm/blob/master/INSTALL.md)
* [Build Instructions](https://github.com/ScottW514/forgefirm/blob/master/BUILD.md)
* [Connecting LightBurn](https://github.com/ScottW514/forgefirm/blob/master/docs/LIGHTBURN.md)
* [Community Support](https://community.openglow.org)
## What it does
**Two controller modes, selected in the web panel and switchable while the
machine is idle:**
* **GRBL mode** — [grblHAL](https://github.com/grblHAL) runs on the machine and
speaks Grbl 1.1 over TCP port 23, so LightBurn, UGS, and cncjs drive the
laser directly. Motion runs on the board's own hardware step engine (SDMA +
EPIT), fed live by the planner. M3/M4 dynamic laser power, coolant-flow
verification, over-temp holds, and an operator button press to arm the laser
for each job.
* **Cloud mode** — the machine presents itself as a stock Glowforge to the
Glowforge web service, so the phone and web apps work as they always did.
Optional, and off by default; nothing about GRBL mode needs it.
**Around both modes:**
* A **web control panel** on port 8080: machine status and position, coolant
and fan telemetry, safety-switch states, camera view, machine settings,
hardware diagnostics, firmware updates, and boot-slot management.
* Both **cameras** as MJPEG streams and full-resolution snapshots — the lid
camera feeds LightBurn's camera overlay directly.
* **Camera-referenced homing**: `$H` from any sender runs the factory-style
camera homing cycle through the Glowforge service, and the machine records
where it is.
* **Installs alongside the factory firmware** in the unused A/B rootfs slot,
archiving every factory version first, so the machine can be switched back
to stock at any time without the Glowforge cloud.
## Hardware
The control board is common to Glowforge Basic, Plus, and Pro. The 5 MP
(OV5648) camera modules are fully supported; the 8 MP (OV8856) modules found in
"HD" units bind but do not capture yet — see the camera note in
[kas/README.md](kas/README.md).
## Roadmap
* Limit-switch homing as an alternative to camera-referenced homing.
* Camera lens calibration and bed alignment for the LightBurn overlay.
* Capture support for the 8 MP (OV8856) camera modules.
* Cloud mode: stream jobs into the motion ring during the run, lifting the
job-length cap that buffering the whole job imposes.
**A very important warning: this is experimental software. Use of this software
could seriously maim or kill you or others, and voids your warranty. It is not
affiliated with or endorsed by Glowforge. Use it at your own risk.**