Rather than rebuild gplan + the AVR firmware to add a true 7th axis,
we treat W as a synchronous out-of-band axis that moves between G-code
blocks. The pipeline:
upload -> AuxPreprocessor rewrites W tokens into (MSG,HOOK:aux:N)
comments -> planner sees only XYZ + messages -> Hooks fires the
registered internal handler -> AuxAxis sends STEPS/HOME over serial
to the ESP and blocks the planner until done.
New files:
src/py/bbctrl/AuxAxis.py serial worker + RPC layer
src/py/bbctrl/AuxPreprocessor.py G-code rewriter
docs/AUX_W_AXIS.md design + ops notes
Changed:
Hooks.py register_internal(); fix the (MSG,HOOK:...) listener
to read the 'messages' state list (was broken before)
Ctrl.py instantiate AuxAxis, register aux/aux_rel/aux_home/
aux_setzero hooks
FileHandler.py rewrite uploads in place when they use W
Mach.py rewrite W tokens in MDI input the same way
Web.py REST endpoints under /api/aux/*
The ESP firmware in ../auxcnc was extended in lockstep: HOME, HOMECFG
(NVS-persisted), WPOS, HOMED?, LIMIT?, abortable STEPS with
limit-aware abort, trapezoidal ramps, deterministic [topic] reply
tokens, [boot] banner.
Real-time decisions (limit switch, step pulses) live on the ESP. The
host owns mm units, soft limits, and aux_homed bookkeeping. ESP
reboot mid-job clears aux_homed and surfaces a message; per design
manual jogs are still allowed without homing.
44 lines
532 B
Plaintext
44 lines
532 B
Plaintext
.sconf_temp/
|
|
.sconsign.dblite
|
|
/build
|
|
/dist
|
|
/crap
|
|
/pkg
|
|
/mnt
|
|
/demo
|
|
/bbctrl-*
|
|
node_modules
|
|
*~
|
|
\#*
|
|
*.pyc
|
|
__pycache__
|
|
*.egg-info
|
|
/upload
|
|
/*.img
|
|
*.so
|
|
*.deb
|
|
*.zip
|
|
/rpi-share
|
|
/rpi-root
|
|
/package-lock.json
|
|
/src/bbserial/linux-rpi-raspberrypi-kernel*
|
|
/src/bbserial/raspberrypi-kernel*
|
|
*.rej
|
|
*.elf
|
|
*.hex
|
|
.idea/deployment.xml
|
|
|
|
# Demo mode artifacts
|
|
bbctrl.log*
|
|
hooks.json
|
|
/*/bbctrl.log*
|
|
src/py/camotics/__init__.py
|
|
src/py/camotics/gplan.so
|
|
src/avr/emu/bbemu
|
|
src/avr/emu/build/
|
|
|
|
.pi/pi-python35.tar.gz
|
|
src/py/camotics/gplan.so.built
|
|
tmp/
|
|
backup/
|