Production-grade 21-channel cable harness tester for SparkFun Artemis ATP fixtures.
- Auto-generated 21x21 connectivity matrix from a simple netlist
- Open, short, and crosstalk detection
- Per-channel resistance measurement with JSON output
- Profile-based limits for automated pass/fail checks
- Python CLI, live dashboard, and CSV viewer tools
- Open
firmware/harness_tester.inoin Arduino IDE, or build fromplatformio.ini. - Install SparkFun Artemis board support.
- Flash the firmware to the Artemis ATP.
- Open a serial terminal at
115200baud.
cd pc-tools
pip install -r requirements.txt
python tester_cli.py --port COM5 selftestfirmware/ Firmware modules and entry points
pc-tools/ Python tools for CLI, dashboard, and CSV viewing
hardware/ KiCad design files, diagrams, and notes
profiles/ Example profile data
docs/ Assembly and validation notes
tests/ Basic test coverage
The tester is built around two source files:
firmware/channels.h: channel index to physical pin mappingfirmware/nets.h: channel index to expected net assignment
The firmware derives the expected matrix from nets.h, measures the actual matrix from hardware, then compares both to flag opens, shorts, and unexpected couplings.
pc-tools/tester_cli.py: command-line access toMEASURE,MATRIX,PROFILE,SELFTEST, andCALIBRATEpc-tools/live_dashboard.py: live serial console with matrix visualizationpc-tools/harness_viewer.py: capture CSV matrix output from the serial streampc-tools/harness_gui.py: simple CSV viewerpc-tools/harness_web.py: lightweight upload-and-view web UI
- KiCad schematic:
hardware/kicad/artemis_harness_tester.kicad_sch - KiCad PCB:
hardware/kicad/artemis_harness_tester.kicad_pcb - Wiring diagram:
hardware/diagrams/ascii_wiring_diagram.txt - Validation notes:
WIRECHECK.md
AGENT.mddescribes the safe extension boundaries for firmware and tools.ARCHITECTURE.mdexplains the modular firmware structure and command protocol.QUICKSTART.mdcovers bring-up, serial commands, and troubleshooting.
MIT. See LICENSE.
MIT License (see LICENSE file)
This repo is structured to be AI-friendly:
- Modular headers
- Clear separation of concerns
- Predictable naming
- Explicit task list (see TASKS.md)
- Roadmap for future expansion (see ROADMAP.md)
Agents may safely:
- Add new test modules
- Extend PC tools
- Add GUIs or dashboards
- Add calibration routines
- Add new harness profiles
Agents should NOT:
- Modify
channels.hornets.hwithout explicit instruction - Break the matrix API
- Remove CSV/JSON markers
MIT License (see LICENSE file)
This repo is structured to be AI-friendly:
- Modular headers
- Clear separation of concerns
- Predictable naming
- Explicit task list (see TASKS.md)
- Roadmap for future expansion (see ROADMAP.md)
Agents may safely:
- Add new test modules
- Extend PC tools
- Add GUIs or dashboards
- Add calibration routines
- Add new harness profiles
Agents should NOT:
- Modify
channels.hornets.hwithout explicit instruction - Break the matrix API
- Remove CSV/JSON markers