LiLoRa — LoRaWAN Coverage Mapper with T-Watch S3 - image 1
Build Guideadvanced

LiLoRa — LoRaWAN Coverage Mapper with T-Watch S3

A wearable LoRaWAN range testing system using the LILYGO T-Watch S3, pairing the watch's SX1262 radio with GPS from a BLE-connected smartphone to map network coverage and signal quality in real time.

Boards:ESP32-S3
Firmware:ArduinoPlatformIO
Use Cases:LoRa & WANGPS TrackingWearable

Overview

LiLoRa is a multi-component system for mapping real-world LoRaWAN coverage. It combines the LILYGO T-Watch S3 as a wearable LoRa transmitter node with a smartphone app for GPS and a FastAPI backend for live visualization. The watch sends LoRaWAN packets via its SX1262 radio to ChirpStack or The Things Network; the gateway forwards signal metrics to the backend; the mobile app plots signal quality on a live map.

System Components

  1. T-Watch S3 firmware — receives GPS from a paired phone over BLE (NMEA passthrough), then transmits LoRaWAN packets with an encoded location+session payload via the SX1262 radio
  2. Flutter mobile app — forwards device GPS to the watch over BLE, displays live signal quality on a map, and records sessions as GeoJSON/KML
  3. FastAPI backend — receives LoRaWAN uplinks via webhook from the network server (ChirpStack or TTN), stores signal metrics, and streams them to the mobile app via WebSocket

Key Metrics Tracked

  • RSSI and SNR per transmission
  • Spreading factor in use
  • Packet delivery ratio
  • GPS-correlated signal quality heatmaps

Technical Details

The firmware is Arduino/PlatformIO-based, using the LilyGoLib board support package and RadioLib for LoRaWAN. The 940 mAh battery supports extended field test sessions. GPS is sourced from the phone via BLE rather than a dedicated GPS chip to reduce power consumption.

Resources