← Back to work
PreviewApr 2022 — Jul 2022
Electronic Shelf-Label IoT Platform
Shelf-label platform for retail stores: Wi-Fi + MQTT links the backend to in-store base stations, BLE connects a phone app for near-field price changes, with millisecond sync across 10k+ SKUs, device-state management, and OTA upgrades.
Still polishing — live link coming soon.
IoT · MQTT · BLE · OTA
- Role
- Full-stack
- Period
- Apr 2022 — Jul 2022
Highlights
- ▹MQTT architecture: topics by store / base station / business type with data push, command routing, and execution receipts tracked via message IDs, timeouts, and ACKs
- ▹BLE state machine: scan, connect, GATT service/characteristic discovery, read/write, disconnect, and reconnect as a state machine with async queues, mutual exclusion, and session IDs
- ▹Data consistency: message ID, product version, idempotency checks, duplicate filtering, and failure compensation with receipt reconciliation
- ▹OTA upgrades: packet sequence / offset / checksum with ACK, timeout retransmit, and send-window control, plus resume-from-break recovery
Capabilities
- Central management and remote update of name, origin, price, description, and promotions
- Batch push of product and price changes per store / base station
- Device state: connection lifecycle, online status, heartbeats, and reconnect
- Near-field price changes from the phone app over BLE
- OTA upgrades: versioning, chunked transfer, integrity checks, and failure recovery
Stack
MQTTBLEWi-FiOTAIoTNode.js