| title | Testing & Debugging |
|---|---|
| parent | Contributing |
| nav_order | 4 |
CrossInk runs on real hardware, so debugging usually combines local build checks, simulator checks, and on-device logs.
Make sure clang-format 21+ is installed and available in PATH before running the formatting step.
If needed, see Getting Started.
./bin/clang-format-fix
pio check --fail-on-defect low --fail-on-defect medium --fail-on-defect high
pio run -e simulator
pio run -e tinypio run without -e builds the release matrix from platformio.ini (tiny, xlarge, and no_emoji). Use it before opening broad firmware PRs, but prefer explicit environments while iterating.
Flash firmware:
pio run -e tiny --target uploadOpen serial monitor:
pio device monitorOptional enhanced monitor:
python3 -m pip install pyserial colorama matplotlib
python3 scripts/debugging_monitor.py- Firmware version and build environment
- Exact steps to reproduce
- Expected vs actual behavior
- Serial logs from boot through failure
- Whether issue reproduces after clearing the affected book cache or using Clear Reading Cache