Repository navigation
Add a metric three-axis Mach4 post with decimal-sensitive dwell support - #156
Open
DarkBiscuits wants to merge 1 commit into
Open
DarkBiscuits wants to merge 1 commit into
DarkBiscuits wants to merge 1 commit into
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Refs #88.
Adds a built-in
mach4mill/router post with explicitG21 G90 G91.1 G94 G17 G40 G49 G80startup modes, incremental IJK arcs, full circles and helices in all three planes, standard tool/spindle/coolant blocks, andM9/M30shutdown.Mach4 interprets integer
G4 P2as 2 milliseconds and decimalG4 P2.0as 2 seconds. The opt-indwell.decimal_secondssetting preserves that distinction in read-back and always writes decimal seconds, including when trailing zeros are trimmed or dwell precision is zero. The mill audit validates literal-P dwell blocks, including the requirement that dwell be the only G code. Existing posts retain their dwell behavior and golden output.Documents tool setup with length compensation cancelled: the operator establishes the work offset and tool-tip Z for each tool; the post emits
T… M6without automaticG43 H…or measurement macros. Rotary/five-axis, lathe, probing and accessory mappings remain outside this post's scope.Validation:
scripts/check.shpasses (formatting, Clippy, workspace tests, wasm and license checks). Coverage includes sample/curves/dome goldens, randomized motion/audit checks, direct dwell-duration and lexical assertions, malformed/hostile input, unsupported program families, and CLI discovery/run/post tests.DarkBiscuits, co-authored with Codex. Implemented using CAMpanion's own sources, synthetic fixtures and the public Mach4 Mill Programming Guide v1.1, Build 3775. No physical Mach4 controller testing has been performed.