hscLink
В многоквартирных домах показания воды, газа, тепла и электричества до сих пор снимают вручную: техник обходит квартиры, записывает цифры, кто-то потом переносит их в биллинг с задержкой в несколько недель. Ошибки накапливаются, споры с жильцами тянутся месяцами, а протечку или зависший счётчик замечают только по счёту.
hscLink (Home Smart Cloud) убирает обход квартир. Компактный LoRa-модуль крепится на счётчик воды, газа, тепла или электричества и передаёт показания по самоорганизующейся mesh-сети — без Wi-Fi, без SIM-карты на каждую точку, без прокладки кабеля. Данные приходят как MQTT-телеметрия, проверяются по калибровочному профилю счётчика (литров на импульс) и сверяются с предыдущим показанием, чтобы отсечь откат назад, — и автоматически попадают в биллинг по каждому абоненту.
Платформа мультитенантная по архитектуре. Управляющая компания видит все счётчики в своих домах; поставщик ресурса видит только те дома, в которые поставляет; тариф привязан к ресурсу, а если у абонента есть свой тариф — он замещает тариф дома по умолчанию. Бэкенд — API на TypeScript/NestJS и MySQL, развёрнутый как два Docker-сервиса: subscriber принимает MQTT-телеметрию, а публичный HTTP API задокументирован через Swagger. Оба пересобираются и деплоятся при мердже в master.
Доступ контролируется вплоть до отдельного действия: авторизация на JWT, пароли хешируются через bcrypt, больше 50 действий API защищены отдельным правом — от поиска адреса до отчётов по биллингу, и каждое фиксируется в отдельном аудит-логе. При добавлении здания адрес подсказывается по официальному классификатору, а счётчик, который не прислал показания в срок, помечается как просроченный, а не молчит. Сам личный кабинет — устанавливаемое Progressive Web App с лентой событий, которая обновляется каждые 60 секунд, и графиками потребления по каждому счётчику, а не только таблицами цифр.
Аппаратная часть прошла отдельный цикл прототипирования: прошивка на LoRa и FreeRTOS, проверка надёжности доставки и стабильности при непрерывной работе, затем переход на самоорганизующуюся mesh-сеть — один шлюз покрывает весь дом без прямой видимости до каждого узла. Каждый узел измеряет напряжение батареи через резистивный делитель, который включается только на момент измерения и усредняет 16 отсчётов, — проверка состояния батареи почти не расходует тот самый заряд, который защищает. Развёрнутые GSM-шлюзы подключаются через APN коммерческого оператора и публикуют данные в версионированные MQTT-топики, поэтому формат можно развивать, не ломая уже установленные приборы. Шлюз ставит телеметрию в очередь на собственном MQTT-брокере Mosquitto и автоматически повторяет отправку при обрыве связи. Интеграция с Home Assistant — умное освещение, увлажнители, датчики движения и реле — намечена как следующий шаг за пределами чистого учёта ресурсов.
С начала проекта в 2020 году в него вложено больше 1000 часов инженерной работы — прошивка, mesh-протокол, биллинговый бэкенд — учтённых по задачам, а не оценённых задним числом.