# pvvx/atc_mithermometer

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/pvvx-atc-mithermometer).**

3,963 stars · 297 forks · C · other · fork

## Links

- GitHub: https://github.com/pvvx/ATC_MiThermometer
- Homepage: https://github.com/pvvx/pvvx.github.io/tree/master/ATC_MiThermometer
- awesome-repositories: https://awesome-repositories.com/repository/pvvx-atc-mithermometer.md

## Description

This project provides custom firmware and a suite of management tools for wireless thermometers and hygrometers. It replaces manufacturer software to improve measurement accuracy, extend battery life, and unlock configuration options not available in stock firmware.

The system differentiates itself through a comprehensive set of administration utilities, including a device configurator for managing Bluetooth advertising and transmission power, and an over-the-air flasher for wireless software updates. It also features a climate data visualizer to retrieve and graph historical temperature, humidity, and battery voltage logs stored in the device's internal flash memory.

The firmware supports environmental monitoring with offset-based sensor calibration and the ability to trigger physical GPIO pins based on configurable temperature or humidity thresholds. It manages power through sleep scheduling and handles data transmission using both Bluetooth Low Energy and Zigbee protocols. Hardware extensibility is supported through external sensor integration and sensor swapping.

Firmware can be deployed via wireless over-the-air updates or through a wired serial-to-TTL connection.

## Tags

### Hardware & IoT

- [Custom BLE Sensor Firmware](https://awesome-repositories.com/f/hardware-iot/custom-ble-sensor-firmware.md) — Custom software for wireless thermometers and hygrometers that improves battery life and measurement accuracy.
- [BLE Device Management](https://awesome-repositories.com/f/hardware-iot/ble-device-management.md) — Offers a management interface for adjusting BLE advertising intervals, transmission power, and device identity.
- [Wireless Firmware Flashing](https://awesome-repositories.com/f/hardware-iot/connectivity-iot/hardware-communication/serial-device-communication/wireless-firmware-flashing.md) — Enables writing custom firmware to thermometers and hygrometers over the air via a web-based interface. ([source](https://pvvx.github.io/ATC_MiThermometer/TelinkMiFlasher.html))
- [Analog Sensor Calibration](https://awesome-repositories.com/f/hardware-iot/embedded-robotics/sensor-processing/analog-sensor-calibration.md) — Provides mathematical adjustment of raw sensor inputs using user-defined offsets to ensure measurement accuracy.
- [Environmental Monitoring](https://awesome-repositories.com/f/hardware-iot/environmental-monitoring.md) — Provides tools for tracking environmental conditions and configuring automated responses based on temperature and humidity thresholds. ([source](https://pvvx.github.io/THB2/web/PHY62x2BTHome.html))
- [Firmware OTA Update Systems](https://awesome-repositories.com/f/hardware-iot/firmware-management/remote-firmware-updaters/firmware-ota-update-systems.md) — Ships a system for wirelessly deploying firmware binaries and modifying bootloader headers over Bluetooth.
- [Over-the-Air Device Updates](https://awesome-repositories.com/f/hardware-iot/over-the-air-device-updates.md) — Enables remote delivery of firmware updates to embedded sensors over-the-air via Bluetooth.
- [Firmware Flashing](https://awesome-repositories.com/f/hardware-iot/connectivity-iot/hardware-communication/serial-device-communication/firmware-flashing.md) — Enables writing firmware images directly to the microcontroller via a wired serial-to-TTL connection for recovery or initial setup.
- [Device Operational Parameter Configurators](https://awesome-repositories.com/f/hardware-iot/device-operational-parameter-configurators.md) — Allows modification of default operational parameters and display settings for the wireless sensors. ([source](https://pvvx.github.io/MHO_C401N))
- [GPIO Pin Controllers](https://awesome-repositories.com/f/hardware-iot/gpio-pin-controllers.md) — Provides an interface for writing digital signals to physical pins based on sensor-driven logic. ([source](https://cdn.jsdelivr.net/gh/pvvx/atc_mithermometer@master/README.md))
- [Sensor-Driven Triggering](https://awesome-repositories.com/f/hardware-iot/gpio-pin-controllers/sensor-driven-triggering.md) — Sets environmental thresholds to automatically activate physical pins or external switches based on real-time readings.
- [Threshold-Based Triggering](https://awesome-repositories.com/f/hardware-iot/gpio-pin-controllers/threshold-based-triggering.md) — Activates physical hardware pins when temperature or humidity readings cross user-defined limits with hysteresis.
- [Sensor Integrations](https://awesome-repositories.com/f/hardware-iot/integration-performance/hardware-interfacing-integration/hardware-integration/device-sensors/external-integrations/sensor-integrations.md) — Enables the addition of external temperature sensors to expand device measurement capabilities. ([source](https://pvvx.github.io/TS0201_TZ3000))
- [Sensor Hardware Swapping](https://awesome-repositories.com/f/hardware-iot/integration-performance/hardware-interfacing-integration/hardware-integration/device-sensors/external-integrations/sensor-integrations/sensor-hardware-swapping.md) — Allows integrating alternative environmental sensors to improve accuracy or change measured parameters. ([source](https://pvvx.github.io/TS0201_TZ3000))
- [Multi-Protocol Wireless Support](https://awesome-repositories.com/f/hardware-iot/multi-protocol-wireless-support.md) — Enables simultaneous BLE and Zigbee communication to transmit environmental data across different networking standards. ([source](https://pvvx.github.io/Zbeacon-TH01-v2.0))

### Mobile Development

- [Custom Hardware Firmware](https://awesome-repositories.com/f/mobile-development/mobile-operating-systems/firmware-customization-tools/custom-firmware-integration-systems/custom-hardware-firmware.md) — Provides custom firmware for wireless thermometers and hygrometers that improves measurement accuracy and extends battery life.

### Development Tools & Productivity

- [Custom Firmware Installers for Smart Home Devices](https://awesome-repositories.com/f/development-tools-productivity/firmware-installers/custom-firmware-installers-for-smart-home-devices.md) — Provides tools to install custom firmware on wireless IoT thermometers and hygrometers. ([source](https://pvvx.github.io/TS0601_TZE204))

### Networking & Communication

- [BLE Advertisements](https://awesome-repositories.com/f/networking-communication/low-power-signaling/ble-advertisements.md) — Implements Bluetooth Low Energy advertising packets to broadcast sensor measurements for connectionless data retrieval.
- [Protocol Conversion](https://awesome-repositories.com/f/networking-communication/iot-wireless-protocol-stacks/protocol-conversion.md) — Provides the ability to replace wireless firmware to enable direct connections to mobile devices and custom applications. ([source](https://pvvx.github.io/TS0601_TZE200_zth01))

### Operating Systems & Systems Programming

- [Battery Power Optimization](https://awesome-repositories.com/f/operating-systems-systems-programming/power-management/battery-power-optimization.md) — Reduces power draw during sleep and advertising intervals to extend battery life. ([source](https://pvvx.github.io/PLANT-MON/))
- [Deep Sleep Optimization](https://awesome-repositories.com/f/operating-systems-systems-programming/system-administration-maintenance/system-power-utilities/hardware-power-controllers/processor-sleep-controllers/deep-sleep-optimization.md) — Optimizes battery life by cycling the microcontroller between deep sleep states and short active measurement windows.
- [Circular Memory Buffers](https://awesome-repositories.com/f/operating-systems-systems-programming/circular-memory-buffers.md) — Uses a circular memory buffer in flash to store time-series environmental data for historical trend visualization.

### System Administration & Monitoring

- [Environmental Monitoring](https://awesome-repositories.com/f/system-administration-monitoring/environmental-monitoring.md) — Tracks and records temperature and humidity trends by logging measurements to flash memory and visualizing them via graphs.
- [Climate Data Visualizers](https://awesome-repositories.com/f/system-administration-monitoring/climate-data-visualizers.md) — Provides a tool for retrieving and graphing historical temperature, humidity, and battery voltage logs.

### Artificial Intelligence & ML

- [Sensor Calibration](https://awesome-repositories.com/f/artificial-intelligence-ml/linear-regression/sensor-calibration.md) — Refines the sensor reading process to provide more precise environmental data than stock software. ([source](https://pvvx.github.io/ATC_MiThermometer))

### Part of an Awesome List

- [Sensor Calibration](https://awesome-repositories.com/f/awesome-lists/devtools/sensor-calibration.md) — Provides a system for calibrating temperature and humidity offsets and configuring GPIO triggers.

### Data & Databases

- [Flash Storage Managers](https://awesome-repositories.com/f/data-databases/data-access-querying/memory-mapped-file-access/flash-memory-access/flash-storage-managers.md) — Manages the storage of averaged sensor data and battery voltage in non-volatile flash memory blocks. ([source](https://cdn.jsdelivr.net/gh/pvvx/atc_mithermometer@master/README.md))

### Software Engineering & Architecture

- [Fixed-Point Math Optimizations](https://awesome-repositories.com/f/software-engineering-architecture/integer-arithmetic/fixed-point-math-optimizations.md) — Utilizes fixed-point integer arithmetic for temperature and humidity measurements to avoid the need for a floating-point unit.
