Commit Graph
680 Commits
Author SHA1 Message Date
ScottW514 c7e419ff6b BRINGUP: first real LightBurn job, operator-verified
Full design job (rapid / M4 cut trace / return rapid) ran smoothly end
to end on grblHAL-glowforge over TCP:23, laser locked. Records the two
driver fixes the first attempts surfaced: locked laser spindle and
continuation-wakeup cursor alignment.
2026-08-02 15:32:23 -04:00
ScottW514 c08f1ad7e3 docs: LightBurn setup and operating guide (motion-only stage) 2026-08-02 14:53:22 -04:00
ScottW514 53d4e7f935 BRINGUP: milestone 2 human-verified - motion is butter smooth
Operator confirmed smooth, near-silent motion on a full observation run
(slow/fast/diagonal/zigzag jogs to 200 mm/s) under grblHAL-glowforge
with the factory-true analog config. Milestone 2 closed.
2026-08-02 14:48:05 -04:00
ScottW514 78875f8e89 Controller promoted to canonical driver repo grblHAL-glowforge
The step backend now lives in github.com/ScottW514/grblHAL-glowforge
  (grblHAL driver convention: core submodule, driver.c HAL, board header).
  Add build-glowforge.sh, update the BRINGUP runbook (no -t throttle,
  EEPROM path, kill-before-scp, producer stats line, reset/disconnect
  semantics), and teach bench_m2.py to parse the F: status field (no
  spindle registered = no FS: field). Settings-write crash fix is
  upstream as grblHAL/core PR 999.
2026-08-02 14:19:53 -04:00
ScottW514 d69bfad77a Milestone 2: factory-true motion tuning, bench-verified
Extract the factory motion profile from the _RESOURCES pulse streams
(new puls_profile.py): 700/590 mm/s2 X/Y accel on v2.6.0 firmware,
202 mm/s travel peak at the 28160 Hz travel tick, PIC currents X 135/33
and Y 22/5 run/hold, decay mode 1. Add the bench_m2.py round-trip jog +
feed-hold suite (all green 2026-08-02: sustained 200 mm/s, exact
returns, clean hold/resume, zero underruns) and update BRINGUP.md:
board moved to a fixed lease at 172.16.1.97, analog config now applied
by the sink itself, $RST=$ note for stale stored settings.
2026-08-02 12:51:38 -04:00
ScottW514 1a5fc27530 docs: bring-up runbook + bench tools from the audit corrective work
BRINGUP.md is the cold-start reference: project status (audit phases
0-5 complete, Phase 6 spike achieved - first grblHAL-commanded motion
2026-07-26), bench/board access, build+deploy procedures, the step
backend runbook incl. the required analog machine config, the measured
hardware facts bank, and the ordered next-work list. scripts/bench/
preserves the hardware-verification tools (underrun feeder, end-of-
data protocol bench, PWM register check, cross-build scripts).
2026-07-26 18:55:53 -04:00
ScottW514 14470e9122 ulfius: keep -Wconversion non-fatal under the arm32 time64 ABI
ulfius builds itself with -Werror -Wconversion; Yocto Scarthgap sets
-D_TIME_BITS=64 on arm32, making a long-long-to-long time conversion
in u_websocket.c fatal. Exclude conversion warnings from -Werror.
2026-07-26 16:18:40 -04:00
ScottW514 83627a6aea scripts/docs: fail loudly, fix names, document bring-up-only status
install-forgefirm.sh completed silently broken when the download, flash
write, mount or uEnv rewrite failed - add die() checks around every
critical step (audit N13/M12) and download the release asset under the
exact Scarthgap artifact name (forgefirm-image-glowforge.rootfs.wic.gz)
so uploads need no renaming. ffboot no longer depends on the never-
provisioned /etc/fw_env_mmcblk2.config: it falls back to
/etc/fw_env.config (which both the factory and ForgeFIRM images ship,
pointing at the eMMC env) and checks fw_setenv results (audit N16).
BUILD.md gets the real artifact name and marks the built u-boot
reference-only; INSTALL.md drops the stale script/ogboot names and the
cloud-connect promise, stating the image is bring-up-only (audit N11).
2026-07-26 16:15:25 -04:00
ScottW514 e92cce2b7e forgefirm-image-dev: build on forgefirm-image
The dev image required the shared glowforge-image base directly, so it
was not a superset of forgefirm-image (it lacked v4l-utils, audit N12).
Require forgefirm-image and add forgectrl + debug tooling on top.
2026-07-26 16:15:25 -04:00
ScottW514 4a52a4dd05 ulfius: pin the babelouest chain; add orcania and yder; fix directory typo
The ulfius recipe tracked AUTOREV master and could never build: master
requires orcania/yder versions that have no release tags, no recipe for
either existed in any layer, and curl (default-ON WITH_CURL) was
missing from DEPENDS (audit M10). Pin the coherent release set - ulfius
v2.7.15 + orcania v2.3.3 + yder v1.4.20 - add the two new recipes,
add curl, convert to SPDX LGPL-2.1-or-later, and rename the misspelled
recipes-extended/uflius directory.
2026-07-26 16:15:24 -04:00
ScottW514 e0da938e4b kas/README: record the real-time strategy decision
CONFIG_PREEMPT=y (factory behavior); PREEMPT_RT unavailable on arm32
6.12 and unnecessary for the pulse feeder - the 128 MiB SDMA ring at
1 byte per EPIT tick holds minutes of stream, so deep buffering plus
SCHED_FIFO rides out any PREEMPT-scale scheduling latency. Documents
the audit M9/N15 arithmetic next to the migration backlog.
2026-07-26 15:54:16 -04:00
ScottW514 0596a08f01 kas: record the push/release order and lock upstream layers
kernel-module-glowforge and python3-gfhardware are now pushed and pinned by
SRCREV in meta-openglow (no AUTOREV anywhere), and the meta-openglow
Scarthgap port is published on its scarthgap branch. Record the full
push/release sequencing in kas/README.md (incl. the release-time flip to the
pinned-remote meta-openglow block and the release-asset naming rule), and
commit the kas lockfile pinning poky/meta-openembedded/meta-freescale(-distro)
at the revisions the working build used.

The untracked kas/externalsrc-dev.yml overlay (local python3-gfhardware via
/mnt/c) is removed: the pinned SRCREV replaces it.
2026-07-26 13:30:47 -04:00
ScottW514 527660c2f5 forgefirm-image: add v4l-utils for camera bring-up
v4l2-ctl (alongside the already-present media-ctl) configures the
imx-media pipeline and grabs raw frames from /dev/video4 while the
gfhardware capture path is ported off the factory NXP V4L2 model.
2026-06-19 16:39:30 -04:00
ScottW514 43707b4aca Bump copyright year to 2026
OpenGlow/ForgeFIRM copyright notices (COPYING.MIT, scripts) -> 2026.
2026-06-19 13:41:23 -04:00
ScottW514 00ef5a675b forgefirm-image: drop the gfui-client cloud client
gfui-client connects to Glowforge's servers; ForgeFIRM replaces it with a
local grblHAL controller (forgectrl). Remove it from the image via an
override, leaving the shared glowforge-image base untouched.
2026-06-19 10:33:58 -04:00
ScottW514 d42a1588c7 Port meta-forgefirm to Scarthgap
- LAYERSERIES_COMPAT -> scarthgap
- Yocto 3.4+ override syntax (:remove/:append/:${PN})
- ulfius: explicit protocol=https;branch=master on the git SRC_URI
2026-06-19 10:33:52 -04:00
ScottW514 90384350b3 Migrate the build from the Google repo manifest to kas
Replace the repo + default.xml + setup-environment workflow with kas:

- add kas/forgefirm-glowforge.yml (Scarthgap layers pinned, meta-openglow
  as a local sibling) and kas/README.md
- remove default.xml, base/conf/forgefirm-bblayers.conf,
  scripts/setup-environment
- .gitignore the kas-managed layers/ and build caches
- BUILD.md: kas host setup and build instructions
2026-06-19 10:33:45 -04:00
ScottW514 624f5ea11b Update INSTALL.md 2022-10-06 10:11:09 -04:00
ScottW514 cd255b3f2e Update README.md 2022-10-06 10:07:41 -04:00
ScottW514 be36eefb4a Create SERIAL.md 2022-10-06 10:05:41 -04:00
ScottW514 7edeffdaef Add files via upload 2022-10-06 09:48:02 -04:00
ScottW514 1631b35e66 Update README.md 2021-02-25 11:55:32 -05:00
ScottW514 768c67be4c Create INSTALL.md 2021-02-25 11:53:08 -05:00
ScottW514 bf75739b63 Add files via upload 2021-02-25 11:47:18 -05:00
ScottW514 42f7c1de37 Create .gitkeep 2021-02-25 11:46:19 -05:00
ScottW514 73d8f87b70 Update README.md 2020-06-01 18:23:48 -04:00
ScottW514 73aa6e973d fixed ffboot source 2020-04-15 21:50:37 -04:00
ScottW514 2566a71e23 yocto version zeus to master 2020-04-15 21:40:24 -04:00
ScottW514 9d520e04d9 initial commit 2020-04-15 17:13:51 -04:00
ScottW514 29ce635570 Add files via upload 2020-04-15 17:09:41 -04:00