Остался не удел в качестве носимого устройства Redmi 5A. Android 8.1. Причины стандартны: Батарейка устала, железо не поспевает за прогрессом. (Требования: андроид смартфон с версией Андроид не ниже 4).
Есть применение в качестве дисплея метео данных, где спешки нет и питаемся от зарядки. Предварительно Андроид чистим от личного. Сим карта не нужна. Есть доступ в локальную сеть через WiFi роутер.
Потребуются к установке на смартфон бесплатные программы (рекламы в них не обнаружил):
- MQTT Broker на смартфоне - приложение, куда стекаются данные с датчиков и раздаются всем желающим. (очень хорошо объяснено).
- MQTT Dash - программа отображающая (очень хорошо объяснено) на смартфоне полученное от MQTT Broker, так же взаимодействие через MQTT Broker с контроллерами датчиков. Инструкция к MQTT.fx.
Железо стандартно, подробно все описано.
- ESP8266 как недорогой контроллер - WiFi связь с роутером и чтение данных с метео датчика.
- АКБ 18650 на 2АЧ.
- Корпус с креплением под панели пришлось мастерить. Это важная часть. Жизнь на улице, под солнцем, снегом, дождем предъявляет требования к пластику: радиопрозрачность, устойчивость к ультрафиолету, перепадам температур.
Получается система из метеодатчиков и панели отображения. Любой смартфон с Dash board, в локальной сети, может через роутер обратиться к MQTT серверу и посмотреть, каково на улице, не вылезая из кроватки.
Новелла в том, что датчик с солнечной панелью и АКБ автономен надолго и не требует сверлить стен прокладывая провода. В процессе эксплуатации выясним, что сдохнет в системе раньше. Установлена за окно в апреле 2025. По расчетам в Питерскую зиму, при отрицательных температурах должно без солнца совсем продержаться не менее 3х дней. Для снижения энергопотребления используется режим глубокого сна микроконтроллера. Пробуждение, - передача данных 6 секунд и опять сон. Частота выдачи сенсором информации 1..60 минут задается с Dashboard.
Использованы наработки и подсказки:
1. Алгоритмы работы и скетч https://dzen.ru/a/Y7mFGVuhMh8HuwKL?ysclid=ma0l2mqjnj251124438 в том числе https://github.com/kotyara12/arduino/blob/master/arduino_eps8266_dzen/src/main.cpp
2. Обновление прошивок без физического доступа к железу.
3. Режимы сна и настройка брокера https://youtu.be/sNSWxyO6XSk?si=TCXb3JnwqQXOJm6r , https://youtu.be/ROHXLqofEW8?si=f9VXOwBjkNZzpXnt ,
4. Питание esp8266 от солнечной батареи - https://microkontroller.ru/esp32-projects/pitanie-esp32-esp8266-s-pomoshhyu-solnechnyh-panelej/
5. Для первичного включения в WIFI сеть прикручивается библиотека Tzapu - WiFi Manager.
Прелесть в том, что фактически покупается только метео датчик за окно 835 рублей на 25.05. Самое дорогое - БУ андроид смартфон у Вас уже есть.
Самостоятельная пайка, сборка займетет не менее 2х часов. Ориентир стоимости - 1/4 цены рабочего дня. Например 8/4 = 2 т.р. По этой причине это хобби и не стоит считать. Иначе стоимость метео датчика в районе 4 т.р., что дорого.
Сам "сервер" смартфон прибил в прихожей, он всегда включен. Смотреть при выходе из помещения. Носимый смартфон, тоже самое, но специфика использованного ограничивает: мы не видим последние данные (они не хранятся на сервере), а получаем только когда придет обновление. Т.е. если интревал обновлений 10 минут, то придется ждать до 10 минут, как прилетит новая информация.
Минусы: при "много" жб стен до роутера качество связи снижается и проходит не каждый пакет. Есть решения на другой элементной базе, LoRa 433 MHz, растут финансовые траты, т.к. появляется промежуточное устройство (тот же ЕСП в связке с LoRa) для передачи информации роутеру/серверу. Передача данных занимает меньше времени, но усложняется возможность удаленного обновления прошивки датчика, и не используется существующая WiFi сеть.
Повешено за окно 2а датчика - восток / запад БМЕ и DS18B20. Статистика отказов потребовавшая программных костылей: Отвал MQTT сервера в андроид смартфоне. Причина - некорректные обращения пользователей, внутренние баги приложения. Внутренние баги - не корректируются мной никак. Возможно сервер переедет с андроид на выделенное устройство и там станет перезапуск. Пока если увидел, что показания не менялись более 30 минут - проверить не встал ли сервер и по потребности нажать кнопку запуск сервера на смартфоне. Благо все время рядом ходишь (выход на улицу). С некорректными запросами утряслось, они возникали на этапе отладки, при подключении большого числа датчиков с одинаковыми ID. Пропадание WiFi - приводит к алгоритму периодическому поиску удачного подключения - снижает автономность, но работает. 07/2025. под дождем и ветром без сбоев.
Вариант корпуса с креплением:
Дальнейшее развитие, благодаря ИИ и наличию debian сервера собрался домашний дашборд. получилось так: https://4sensor.ru/object/880. Это то, что отдается пользователям и сама система, что обслуживает это содержит более широкий функционал. Дальнейшее развитие - приживить датчик электричества типа PZEM-004T V3.0 b пройти путь других "умнодомистов".