Skip to content

4. Check it works

Two checks finish the setup: CP Tools’ doctor checks your tools and the board, and the smoke test boots the board and reads its log.

  1. Keep the board plugged in. Run the doctor from the project.

    Terminal window
    cd ~/CrossPad
    . "$CROSSPAD_IDF_DIR/export.sh"
    python3 tools/app_manager.py doctor

    You should see: [OK ] on the Board found and Tools rows, the Tools row reading ESP-IDF ok, git ok, Python 3.…. On a new board the doctor also lists a USB serial guard row and ends with 1 thing(s) to fix.: that row is the USB serial mode? safety prompt you answered with Allow in 3. Flash the board. Leave the guard on. Rows marked [ ? ], such as GitHub sign-in and Last update, are notes, not errors.

    If not: any other [BAD] row: doctor reports things to fix

  2. Run the smoke test with the crosspad-hil from 1. Set up the toolchain. It resets the board and takes about 10 seconds.

    Terminal window
    . ~/CrossPad/.venv/bin/activate
    crosspad-hil run smoke
    echo $?

    You should see: a line ending in HIL SMOKE: PASS, then 0 from echo $?.

    If not: exit code 1 means the smoke test found a problem in the boot log: smoke test prints MISSING MARKER, FATAL or BOOT LOOP. Exit code 2 means the connection (cable, port, setup): smoke test says No boot banner on the console port, or smoke test stops with NO_DEVICE or PORT_BUSY.

Optional Where the smoke report goes

Each run writes a report to hil_logs/smoke_…/report.json in the folder you ran it from. The terminal names it twice: [smoke] PASS exit=0 report=… right before the summary, and artifact[report]: hil_logs/smoke_…/report.json as the last line. Add --json for machine-readable output.

Next: Build an app. Your toolchain and board are ready; the Build an app section takes you from a first screen to a published app, one small example app at a time.