2.8 KiB
2.8 KiB
FanucProgramManager
What This Is
Console EXE (C# .NET 4.7.2) for upload/download of CNC programs to/from machine controllers. Targets any CN manufacturer, not Fanuc-only. Runs on Windows, distributed to licensed machine operators and integrators.
Core Value
Machinists and operators transfer CNC programs to/from any controller without manual intervention or internet access.
Current State
| Attribute | Value |
|---|---|
| Type | Application |
| Version | 0.0.0 |
| Status | In development |
| Last Updated | 2026-05-13 |
Requirements
Core Features
- Upload programs to CNC controller
- Download programs from CNC controller
- Local file management (organize/store programs on disk)
- Multi-CN brand support (Fanuc + others)
Validated (Shipped)
- Fanuc FOCAS upload/download — initial
- AES encryption for program files
- CLI argument parsing
- Machine-bound license check (hardcoded)
Active (In Progress)
- 3-file management mode — branch
3FilesManagement
Planned (Next)
- To be defined during /paul:plan
Out of Scope
- Cloud sync
- Web UI
- Internet-dependent license validation
Constraints
Technical Constraints
- .NET Framework 4.7.2 — max compatibility, no upgrade
- Fanuc FOCAS via
fwlib32(32-bit DLL, Windows-only) - Must run offline — no internet dependency at runtime
- License validation must work without network
Business Constraints
- Software must be license-protected (offline, machine-bound)
- Current approach: hardcoded machine check — needs improvement
- Target: hardware fingerprint + encrypted license file
Key Decisions
| Decision | Rationale | Date | Status |
|---|---|---|---|
| .NET 4.7.2 | Max compatibility with operator machines | 2026-05-13 | Active |
| Console EXE output | Simple deployment, scriptable | 2026-05-13 | Active |
| Offline license only | Operators may have no internet on shop floor | 2026-05-13 | Active |
Success Metrics
| Metric | Target | Current | Status |
|---|---|---|---|
| Program transfer correctness | 100% (byte-verified) | Unknown | Not measured |
| License validation (offline) | Works without network | Hardcoded | At risk |
| Multi-CN support | ≥2 manufacturers | Fanuc only | In progress |
Tech Stack / Tools
| Layer | Technology | Notes |
|---|---|---|
| Language | C# | .NET Framework 4.7.2 |
| UI | Console EXE | CLI args via InputArgs.cs |
| CN Protocol (Fanuc) | FOCAS fwlib32 | 32-bit DLL |
| CN Protocol (others) | To be defined | Multi-CN expansion |
| Encryption | AES (AesCrypt.cs) | Program file protection |
| Licensing | Machine fingerprint | Hardcoded now, needs design |
PROJECT.md — Updated when requirements or context change Last updated: 2026-05-13