﻿#================================================================================
# TraceFab 0.7.0 Public Beta
# From PCB Design to CNC G-code
# https://trace-fab.com
#================================================================================

VERSION
-----------------------------------------
Current version: 0.7.0 (Public Beta)


ABOUT TRACEFAB
-----------------------------------------
TraceFab is an independent Windows desktop CAM application for makers and small
workshops that manufacture two-layer PCBs with a CNC machine.

TraceFab imports PCB design and manufacturing files, previews the interpreted
board geometry, calculates CNC toolpaths, builds an ordered manufacturing job,
validates the configured operations, and exports CNC-ready G-code.

Version 0.7.0 supports:
- Direct KiCad 9 and KiCad 10 .kicad_pcb import
- Gerber RS-274X copper and board-outline import
- Excellon drill-file import

TraceFab is currently beta software. Always inspect the imported board, validate
the manufacturing job, review the generated G-code, and perform a safe dry run
before machining a PCB.


INSTALLATION
-----------------------------------------
TraceFab is available as an installer and as a portable ZIP package.

Installer edition:
1. Visit https://trace-fab.com/#download
2. Download TraceFabSetup.exe.
3. If your browser warns that the download is uncommon, verify that it came from
   the official TraceFab website before choosing to keep it.
4. Run the installer and follow the setup wizard.
5. Launch TraceFab from the Start menu or desktop shortcut.

Portable edition:
1. Download the portable ZIP from the official TraceFab website.
2. Extract the complete ZIP to a writable folder.
3. Keep all extracted files together.
4. Launch TraceFab.exe from the extracted folder.

Do not run TraceFab directly from inside the ZIP archive.


WINDOWS SECURITY
-----------------------------------------
TraceFab is currently unsigned beta software. Windows, Microsoft Defender,
SmartScreen, or Smart App Control may display a warning because the application
does not yet have a commercial code-signing reputation.

Only download TraceFab from the official website. If Windows blocks the program,
review the displayed file and publisher information before deciding whether to
continue. Never disable Windows security globally to install TraceFab.


FIRST START AND BETA ACTIVATION
-----------------------------------------
TraceFab can request a free beta activation from Help > Activation.

- A new computer can request a free Trial/Beta license.
- A downloaded Pro license must belong to the computer on which it is used.
- Version 0.6.3 introduces updated license validation. Users upgrading from an
  earlier version may need to reactivate once.
- If the Activation form reports a fingerprint mismatch, the license belongs to
  another computer. Request or download the correct license for that computer.
- If no license files are present, use the Activation form to request a beta
  license or import the matching TraceFab.license and TraceFab.signature files.

Do not edit either license file. The license and signature must remain a matching
pair.


SUPPORTED WORKFLOW
-----------------------------------------
1. Import a KiCad PCB or a Gerber/Excellon file set.
2. Inspect the Top, Bottom, Drill/Excellon, and Edge Cut previews.
3. Confirm the board dimensions and PCB thickness.
4. Select or create the required tools in the Tool Library.
5. Calculate the required CAM operations.
6. Add alignment pins and select a suitable origin for double-sided boards.
7. Add the operations to the Manufacturing sequence in machining order.
8. Validate the job and resolve reported configuration problems.
9. Generate the G-code files.
10. Review the G-code in a trusted viewer or controller simulator and perform a
    dry run before cutting.


CURRENT FEATURES
-----------------------------------------
Import and board preview:
- KiCad 9 and KiCad 10 .kicad_pcb import
- Gerber RS-274X import wizard
- Excellon drill-file import
- Two-layer Top and Bottom PCB workflows
- Separate layer, drill, and edge-outline preview controls
- Board-dimension and origin configuration
- Copper pad, trace, via, zone, drill, and board-outline visualization

CAM operations:
- Copper isolation contouring
- Configurable contour cut side and tool offsets
- PCB drilling from imported drill information, with an operator-adjustable
  extra depth below the PCB
- Edge milling with configurable cut depth and multiple passes
- Automatic bridge gaps/tabs for edge milling
- Manual bridge-gap drawing and editing
- Alignment-pin generation for double-sided PCB positioning, including an
  operator-adjustable pin drill depth
- Solder-mask removal toolpaths for supported imported PCB data

Manufacturing and G-code:
- Tool Library for engraving, drilling, and cutting tools
- Drag-and-drop manufacturing sequence
- Top and Bottom operation support
- Unit, origin, depth, feed, spindle, and safe-movement settings
- Manufacturing validation and operation status overview
- G-code generation for the configured CNC workflow
- Configurable preamble/postamble and post-processing settings

Interface and support:
- Zoom, pan, layer visibility, and preview controls
- Configurable UI colours and import settings
- News panel for release and project announcements
- Integrated Help > User Manual
- Installer and portable distributions


CUSTOM POST-PROCESSOR PROFILES (BETA)
-----------------------------------------
Version 0.7.0 expands the Custom Post-Processor workflow for controller testing.
Built-in profiles remain protected, while custom Generic ISO and MAXMAKE-derived
profiles use the editable production renderer and final-output formatter.

Available and tested:
- Selectable built-in Generic ISO and MAXMAKE profiles
- Save As, Save, Use Profile, Delete, and persistent JSON custom profiles
- Editable Program Header, Tool Change, Spindle Start, Spindle Stop, and Program
  Footer blocks
- Dynamic operation comments through the editable Operation Comment template
- Two locked First Move After Tool Change orders: Safe Z then XY, or XY then
  Safe Z
- Configurable decimal places and optional suppression of trailing zeros for
  placeholders and X/Y/Z/I/J/F motion values
- Configurable LF/CRLF output, line numbering with start and increment values,
  and blank-line retention
- Optional polygon compression for contouring; 0 disables compression
- Active-profile file extensions in the Manufacturing export dialog
- Custom profiles derived from Generic ISO or MAXMAKE are both routed through
  CustomProfileProgram; protected built-ins retain their dedicated programs

Comment policy:
- Normal generated comments follow the selected comment style and template.
- No comments suppresses normal generated operation comments.
- Basic-mode license limits that omit CNC operations always produce a mandatory
  G-code comment so restricted output is clearly explained.

Not yet connected to production G-code:
- Motion Command templates. The tab is intentionally read-only and marked for a
  future release.
- The Preview & Validation tab remains a deterministic demonstration and does
  not yet execute the complete production generation path.
- Automatic filename templates such as
  {operations}_{toolnames}.{fileextension}
- Automatic separate-file export per tool or operation

GRBL/grblHAL pre-release testing:
1. Select Generic ISO and create a custom copy with Save As.
2. Edit the Tool Change block and remove unsupported T and M6 commands.
3. For a multi-tool job, retain a controller-supported manual pause/tool-change
   sequence. Never silently continue into the next operation with the wrong
   tool installed.
4. Select Safe Z then XY unless the specific controller requires another tested
   order.
5. Save the profile, click Use Profile, and generate a new G-code file.
6. Inspect the complete file in a trusted viewer and perform a safe dry run
   before machining.

Automatic separate-file export per tool or operation is not implemented yet.
Operators remain responsible for verifying every tool transition in a multi-tool
program.


VERSION 0.7.0 PUBLIC BETA HIGHLIGHTS
-----------------------------------------
- Completed production routing for custom Generic ISO and MAXMAKE-derived
  post-processor profiles while preserving protected built-in behavior.
- Connected editable header, tool-change, spindle, comment, and footer blocks.
- Added locked and validated first-move ordering after a tool change.
- Added configurable numeric precision, trailing-zero suppression, LF/CRLF line
  endings, line numbering, and blank-line retention.
- Added optional contour polygon compression per post-processor profile.
- Added profile-specific file extensions to Manufacturing export.
- Added mandatory G-code notices when basic license limits omit operations, even
  when a profile normally suppresses comments.
- Marked the future Motion Commands editor read-only to prevent unsupported
  settings from appearing active.
- Added global interface crash logging and improved Manufacturing DataGrid
  resizing stability.
- Updated license generation and local validation.
- Licenses are now validated for the computer for which they were issued.
- Added clearer Activation-form messages for missing, expired, malformed,
  mismatched, or invalid licenses.
- Fixed an Alignment Pins crash when restoring certain drill sizes such as
  0.8 mm.
- Added an Alignment Pins drill-depth setting directly to the Alignment Pins
  form. The selected depth is now used consistently by Manufacturing validation
  and generated G-code.
- Improved two-pin placement by locking both pins to the PCB vertical centreline
  and displaying a dashed guide between their centres.
- Fixed manually drawn edge gaps disappearing after adding alignment pins.
- Fixed manual edge-gap drawing remaining active after leaving the Edge Cut
  form.
- Fixed a recalculated Edge Cut depth not being reflected in validation and
  generated G-code.
- Added an Extra Depth Below PCB override to Drill Setup. The final drilling
  depth is now calculated from PCB thickness plus the selected extra depth and
  is reported correctly as Lowest Z in Manufacturing and in generated G-code.
- Improved the Drill Setup layout, control scaling, DataGrid column distribution,
  and parameter discoverability.
- Improved preservation of Edge Cut and Alignment Pins project data while their
  forms are reopened during the current session.
- Added and updated the TraceFab User Manual.
- Fixed Manufacturing-form DataGrid clipping and layout issues.


RELEASE HISTORY
-----------------------------------------
v0.7.0 public beta
- Expanded Custom Post-Processor production support and final-output settings.
- Added custom MAXMAKE-derived routing through CustomProfileProgram.
- Added numeric precision, comments, line endings, line numbering, blank-line
  handling, polygon compression, and profile-specific export extensions.
- Preserved protected Generic ISO and MAXMAKE built-in output paths.

v0.6.6-beta pre-release
- Experimental Custom Post-Processor workflow for early controller testing.
- Built-in Generic ISO and MAXMAKE output profiles.
- Initial GRBL/grblHAL testing path through a Generic ISO custom profile.
- Custom profiles based on MAXMAKE were not supported in this pre-release.

v0.6.2
- Licensing validation and activation reliability update.
- Alignment Pins, drilling-depth, and Edge Cut stability fixes.
- Clearer per-operation depth controls and improved Drill Setup usability.
- Manufacturing and documentation improvements.

v0.6.x
- Added Gerber RS-274X and Excellon import workflows.
- Expanded two-layer CAM and manufacturing functionality.
- Added the TraceFab User Manual.

v0.5.x
- Added KiCad 10 support and expanded PCB geometry processing.
- Added copper-zone handling and CAM workflow improvements.
- Added portable distribution support.

v0.4.0
- Fixed through-hole pad rendering and via rendering order.
- Improved DataGrid layouts, toolbar icons, and dialog spacing.

v0.3.0
- Improved display scaling from Full HD to 4K screens.

v0.2.0
- Fixed UI menu buttons.

v0.1.0
- Initial beta release.


KNOWN LIMITATIONS
-----------------------------------------
- TraceFab currently focuses on two-layer PCB manufacturing.
- Gerber projects currently require a usable board-outline/Edge Cut file for the
  complete workflow.
- Gerber solder-mask import is not yet available.
- Some Gerber board outlines containing polygonized Bézier curves or unusual
  outline constructions may not yet import correctly.
- Complex custom KiCad footprint graphics may require additional support.
- Project save/restore is not yet complete. Keep the source PCB and manufacturing
  files available and verify the active job after reopening TraceFab.
- Built-in G-code simulation is not yet available. Use an external trusted viewer
  or controller simulator.
- High-DPI layouts may still require improvement at some Windows scaling levels.

If an import fails, please keep the original source files and report the problem
through Discord or email so the parser can be improved.


ROADMAP
-----------------------------------------
Priority development:
- Complete and improve Gerber/Excellon compatibility.
- Support more complex custom footprints and board-outline shapes.
- Improve Gerber Bézier/polygon outline handling and optional via detection.
- Add isolation hatching for large copper areas.
- Improve regional and imperial number-format compatibility.

Manufacturing workflow:
- Expand manufacturing validation and safety checks.
- Add reusable manufacturing recipes and automated job creation.
- Add printable manufacturing summaries and operator checklists.
- Evaluate safe per-job CNC overrides.
- Add an integrated G-code preview and simulation viewer.

Usability:
- Improve high-DPI and 4K scaling.
- Improve beta activation guidance and onboarding.
- Add more tutorials, demonstrations, and packaged release notes.


SAFETY NOTICE
-----------------------------------------
CNC machines and cutting tools can cause injury or equipment damage. TraceFab's
preview and validation features are advisory and cannot guarantee that generated
G-code is safe for every machine, controller, tool, or workholding setup.

The operator remains responsible for checking units, origin, mirroring, tool
assignments, spindle speeds, feed rates, cutting depths, Safe Z, travel limits,
board-flip alignment, and the final G-code before starting the machine.


SUPPORT
-----------------------------------------
Website:
https://trace-fab.com

Discord community:
https://discord.gg/wT49aXbFYZ

Email:
info@tracefab.com

#================================================================================
# End of TraceFab 0.7.0 Public Beta README
#================================================================================
