BSL.EXPERT // HARDWARE & IoT ENGINEERING STATUS: AVAILABLE FOR PROJECTS
IoT

Whizz IoT Monitor — Backend & Monitoring

IoT-мониторинг парка e-bike Whizz (США). MQTT — основной протокол: телеметрия, команды, TLV-логи, LBS. 13 Go-микросервисов, 20 000+ устройств, 350–400 msg/sec, latency < 50 мс.
Go / MicroservicesMQTTClickHouseRedisFOTALBSOCRWebSocketJWTCQRSTelegram BotGeoHash

Ключевые метрики

20 000+
IoT-устройств в парке
13
Go-микросервисов
350–400
сообщений/сек
<50 мс
latency end-to-end
94
метрики в пакете 164 байта
13
бинарных команд устройству

Возможности системы

Мониторинг
  • Real-time дашборд (WebSocket), метрики online/offline
  • Карта устройств Leaflet + кластеризация GeoHash (precision 7)
  • Online/Parked/Locked/LowPower — адаптивные таймауты по iot_mode (30s–2h)
  • LBS — вышки + Wi-Fi AP, дополняет GPS; сервер уточняет координаты
  • История телеметрии: status, route, performance, battery, cellular
  • Алармы о физическом воздействии на припаркованный байк — кража, попытка снять колёса
  • Фильтры и поиск устройств
Управление
  • 13 бинарных команд устройству
  • Lock / Unlock (безопасный алгоритм v2)
  • Speed Limit / Throttle Limit
  • Controller Power Limit / Motor Power Limit
  • Battery Min Voltage Limit
  • Buzzer / Reboot / Config Update
  • Массовые команды (bulk operations)
  • Двухуровневый lookup ответов: Redis → БД
Задачи
  • Ожидание онлайн, retry при сбоях — без потери прогресса
  • Безопасный lock: плавное снижение скорости → блокировка → восстановление лимита
  • Принудительное обновление прошивки (force_update): ожидание режима → верификация версии
  • Применение конфигурационных пресетов устройства
  • Верификация каждого шага по телеметрии
Прошивки (FOTA)
  • OTA — обновление прошивки в фоне без потери функциональности
  • Bootloader recovery
  • whizz-flasher — Go CLI для сервис-инженеров
  • Flash Layout API — карта памяти по модели устройства
  • Beta-tester флаг
OCR
  • Telegram Bot: фото с SN + IMEI → OCR → авторегистрация байка в системе
  • Распознавание серийных номеров байков и комплектующих для инвентаризации на складе
  • Фотоконтроль установки дополнительного оборудования на байк
Аналитика
  • TLV-логи устройств → ClickHouse
  • Критические логи → Telegram-алерты
  • История команд и маршрутов
  • Логи устройств (device logs)
Безопасность
  • JWT RS256 + 2FA TOTP
  • Роли: admin, operator, viewer, service_engineer
  • Rate limiting, CSRF-защита
  • Безопасная аутентификация whizz-flasher
Архитектура
  • 13 Go-микросервисов (CQRS, event-driven)
  • Реляционная БД (HOT) + ClickHouse (COLD) + Redis
  • Grafana — дашборды по телеметрии и системным метрикам
  • Metabase — аналитика и отчёты для бизнес-пользователей

Описание

Протокол

MQTT 3.1 (Mosquitto, QoS 0/1) — единая шина: телеметрия 164 байта (94 метрики), команды устройствам, TLV-логи, LBS-пакеты геолокации.

Производительность

350–400 msg/sec, latency < 50 мс end-to-end, < 0.1 мс на парсинг одного пакета.

Архитектура

13 Go-микросервисов (CQRS, event-driven). Реляционная БД — «горячие» данные (device_status, команды, задачи). ClickHouse — «холодные» (телеметрия, логи, firmware_logs). Redis — очереди между сервисами и кэш.

Real-time

WebSocket для дашборда, SSE для обновлений устройств, Leaflet-карта с кластеризацией GeoHash (precision 7, ~150 м).

LBS

Вышки сотовой связи + Wi-Fi точки доступа через Unwired Labs API (точность 50–2000 м). Всегда передаётся параллельно с GPS — сервер уточняет координаты на основе обоих источников. Особенно полезен в помещении, тоннеле, под мостом.

Управление

13 бинарных команд: lock, unlock, speed_limit, throttle_limit, buzzer, reboot, config_update и др. Двухуровневый lookup ответов (Redis → БД).

Задачи

Принцип «создал и забыл»: оператор ставит задачу — система доводит до результата сама. Автоматически ждёт появления байка онлайн, выполняет все шаги, верифицирует каждое действие по телеметрии, повторяет при сбоях — без участия и мониторинга оператором. Безопасный lock — плавное снижение скорости перед блокировкой и восстановление лимита после. Принудительное обновление прошивки — ожидает нужного режима устройства перед отправкой.

FOTA

Чанкированная загрузка (Range-запросы), bootloader recovery, beta-tester флаг. whizz-flasher — Go-инструмент для сервис-инженеров с Flash Layout API.

Регистрация

OCR · Фото с SN + IMEI в Telegram-бот → распознавание → авторегистрация байка в системе. Также: OCR серийных номеров для инвентаризации на складе и фотоконтроль установки оборудования.

Безопасность

JWT RS256 + 2FA TOTP. Роли: admin, operator, viewer, service_engineer. Rate limiting, CSRF.

Скриншоты

Whizz IoT Monitor — Backend & Monitoring — 1
Whizz IoT Monitor — Backend & Monitoring — 2
Whizz IoT Monitor — Backend & Monitoring — 3
Whizz IoT Monitor — Backend & Monitoring — 4
Whizz IoT Monitor — Backend & Monitoring — 5
Whizz IoT Monitor — Backend & Monitoring — 6
Whizz IoT Monitor — Backend & Monitoring — 7
Whizz IoT Monitor — Backend & Monitoring — 8
Whizz IoT Monitor — Backend & Monitoring — 9
Whizz IoT Monitor — Backend & Monitoring — 10
Whizz IoT Monitor — Backend & Monitoring — 11
Whizz IoT Monitor — Backend & Monitoring — 12
Whizz IoT Monitor — Backend & Monitoring — 13
Whizz IoT Monitor — Backend & Monitoring — 14
Whizz IoT Monitor — Backend & Monitoring — 15
Whizz IoT Monitor — Backend & Monitoring — 16
Whizz IoT Monitor — Backend & Monitoring — 17
Whizz IoT Monitor — Backend & Monitoring — 18
Whizz IoT Monitor — Backend & Monitoring — 19
Whizz IoT Monitor — Backend & Monitoring — 20