# ATC Logger Python скрипт для сканирования и логгирования данных с BLE датчиков температуры и влажности LYWSD03MMC с прошивкой ATC. Внутри LYWSD03MMC используется SoC TLSR825x, чип для Bluetooth Low Energy с потреблением порядка 0.5-1 мкА в глубоком сне и 5 мА в момент передачи данных. Для измерения температуры и влажности внутри стоит Sensirion SHTC3, типичная точность ±2 %RH и ±0.2 °C. Считается более качественным, чем DHT22. ## Требования - Python 3.7+ - BLE адаптер ## Установка ```bash pip install -r requirements.txt ``` ## Запуск ```bash python ATC_logger.py [--debug] ``` ## Прошивка датчиков LYWSD03MMC ### Требования к прошивке Для корректной работы требуется прошивка **ATC_v5.5 или новее**. Рекомендуется использовать последнюю версию (https://github.com/pvvx/ATC_MiThermometer). ### Прошивка по UART в Chromium - Нужен Chromium или любой Chromium-based браузер. Firefox не поддерживает WebSerial, увы. Сhromium должен быть установлен не из snap/flatpak, а из репозитория - иначе AppArmor не даст работать WebSerial. - Прошиватор: https://pvvx.github.io/ATC_MiThermometer/USBCOMFlashTx.html - Выбрать COM порт с подключенным датчиком. Пины подключения погуглить, меняются в зависимости от версии платы. Связь обычно односторонняя, только RX, протокол не настоящий UART, но поверх UART эмулируется. - Выберите файл прошивки (.bin) - Нажать "Erase all flash" - Нажать "Start flashing" ### Настройка прошивки с сохранением настроек в Flash - Убедиться что в настройках прошивки установлены максимальные интервалы измерения и передачи . Для этого использовать веб-интерфейс https://pvvx.github.io/ATC_MiThermometer/TelinkMiFlasher.html ## Формат логов Логи сохраняются в структуру папок: `DeviceID/Type/YYYY_MM/DD/DeviceID_Type_YYYY_MM_DD.log` Пример: ``` ATC_233FCD/temperature/2025_11/08/ATC_233FCD_temperature_2025_11_08.log ``` Каждая строка содержит timestamp и значение: ``` 2025-11-08 12:30:15 23.45 ```