# MQTT-Based UWB RTLS User Guide_v2
Date: 2025/04
## Official Documents
https://docs.leapslabs.com/leaps-rtls/quick-start-guide/
## Main Step
1. docker
https://www.docker.com/products/docker-desktop/
<img src="https://hackmd.io/_uploads/r1N3GrZpkl.png" width="80%">
2. locus_app_v2-demo2/LEAPS-DOCKER-LINUX-v1.0.0 → open in terminal
./update_configuration_ip.sh
./leaps_docker_run_all.sh
`password: locus`
<img src="https://hackmd.io/_uploads/HJQ4zr-6yl.png" width="80%">
3. MQTT
MQTT Explorer
<img src="https://hackmd.io/_uploads/SyEYXrZTJg.png" width="80%">
<img src="https://hackmd.io/_uploads/S1kOviM61l.png" width="80%">
## Set up Configuration
### 1. By APP
**LEAPS Manager**
* use BLE to to config
* assign all nodes including anchors and tags into the same network, notice the network ID
**Example**
* Network
<img src="https://hackmd.io/_uploads/SJliLGHaJx.jpg" width="35%">
* Anchor
* set position (一直失敗試試重新插電)
* one of the anchor should be initiator
* UWB Active
<img src="https://hackmd.io/_uploads/S1skPMrTyg.jpg" width="35%">
* Tag
* 4 anchors are required for positioning
* UWB Active
* can change update rate
<img src="https://hackmd.io/_uploads/SyqXGwfCkg.png" width="35%">
* Result
<img src="https://hackmd.io/_uploads/r17rPzrT1l.jpg" width="35%">
### 2. By Serial-COM
* Putty
serial line: use 裝置管理員 to check
speed: 115200
double enter
* check version, we use v1.0.0

#### common command
**?**: check all command
**si**: system information
<img src="https://hackmd.io/_uploads/ryrmsfSaJl.png" width="80%">
**set network**: nps 2 → nis <network>
**urs**: set update rate
**urg**: get update rate
**nma**: set mode to anchor → double enter
**nmt**: set mode to tag → double enter
**les**: show measurement and position
**quit**
## Update Firmware
1. Launch J-Flash Lite
https://www.segger.com/products/debug-probes/j-link/technology/flash-download
2. Select the nrf52832_XXAA target, SWD interface and 1000 kHz clock speed
3. Select “xxx.hex” whick we want to update as data file and click on “Program Device”.
ex: leaps-rtls-all-dwm1001-v1.0.0-642e26.hex
https://drive.google.com/file/d/19IzWCDEVgbN6xDEzubnDumH1HTMWEqO0/view?usp=sharing
<img src="https://hackmd.io/_uploads/Hy47kee01l.png" width="60%">
## Locus Website (Smart Sports)
**server**
locus_app_v2-demo2/locus_sports → open in terminal
npm start server
**client**
locus_app_v2-demo2/locus_sports/client
npm start client
account: demo@locusconnect.com
password: demo123