A fork of https://github.com/crosspoint-reader/crosspoint-reader
Getting Started#
This guide helps you build and run CrossPoint locally.
Prerequisites#
- PlatformIO Core (
pio) or VS Code + PlatformIO IDE - Python 3.8+
clang-format21+ in yourPATH(CI uses clang-format 21)- USB-C cable
- Xteink X4 device for hardware testing
If ./bin/clang-format-fix fails with either of these errors, install clang-format 21:
clang-format: No such file or directory.clang-format: error: unknown key 'AlignFunctionDeclarations'
Examples:
# Debian/Ubuntu (try this first)
sudo apt-get update && sudo apt-get install -y clang-format-21
# If the package is unavailable, add LLVM apt repo and retry
wget https://apt.llvm.org/llvm.sh
chmod +x llvm.sh
sudo ./llvm.sh 21
sudo apt-get update
sudo apt-get install -y clang-format-21
# macOS (Homebrew)
brew install clang-format
Then verify:
clang-format-21 --version
The reported major version must be 21 or newer.
Clone and initialize#
git clone --recursive https://github.com/crosspoint-reader/crosspoint-reader
cd crosspoint-reader
If you already cloned without submodules:
git submodule update --init --recursive
Build#
pio run
Flash#
pio run --target upload
First checks before opening a PR#
./bin/clang-format-fix
pio check --fail-on-defect low --fail-on-defect medium --fail-on-defect high
pio run