Verify Your Installation
Who this is for: Anyone who has finished a walkthrough and wants to confirm everything works.
What you'll accomplish: Run a short set of checks, from containers up to a full authentication, to confirm your setup is healthy.
Tool versions (any setup)
git --version node --version # v20.x or higher
npm --version docker --version
docker compose version gcc --version # if you built the SDK
None should say "not found."
TrustBridge stack
Containers running, you should see 5 containers:
docker ps
Expected: tb-be, sandgrain-cloud-app, tb-fe, tb-mosquitto, and tb-mysql (healthy).
Web interfaces:
-
Frontend →
http://localhost:5173shows the TrustBridge login page. (First-run login isTrustAdmin/TrustAdmin, see Access & Credentials.) -
Swagger API docs →
http://localhost:3000/docs.
MQTT round-trip (optional):
# Windows
.\start-all.ps1 logs be
# Linux/macOS
./TrustBridge/TrustBridge-BE/start-all.sh logs be
Look for lines like Connected to MQTT broker at mosquitto:1883 and Subscribed to device presence: sandgrain/v1/+/status. Press Ctrl+C to stop tailing.
The Token is visible
# Linux / WSL
ls /dev/ttyACM* /dev/ttyUSB* 2>/dev/null
# macOS
ls /dev/tty.usbmodem* /dev/tty.usbserial-* 2>/dev/null
At least one path should appear. If not, see USB & Serial Port Setup.
A successful authentication
Standalone: in the Device terminal, choose Option 1: Mutual Authentication (no fault injection). Success shows:
Mutual Authentication OK
Split / Raspberry Pi: check the logs on each node:
- Gateway:
Whitelist loaded: N device(s)(N > 0 once your device is registered). - Device:
Device SDK initialized OKandMQTT connected.
Then trigger an authentication from the frontend for the registered device. You should see the full flow reach the SandGrain hardware and the result update in the UI.
What "healthy" looks like
- All expected containers up (5 for the full stack).
- Frontend and Swagger reachable.
- Token visible to the OS.
- A Mutual Authentication OK result, or a successful FE-triggered authentication in a split setup.
If any check fails, see Troubleshooting SDK Setup.