make readme better

This commit is contained in:
matt committed 2026-10-13 02:19:08 -07:00
1 parent 5c43ece917
commit 66e022bafe
1 file changed
+19 -3
+19 -3
View File
@@ -2,12 +2,25 @@
## Summary
This is an API for monitoring Temperature and Humidity data for Xiaomii LYWSD03MMC BLE sensors. The app will scan for any of these devices by looking for the Bluetooth MAC octet and then filtering by model. Once it has a list of MACs, it will then attempt to read the Temp/Humidity data for each MAC and record it. This data can be interacted with through an API.
This is an API for monitoring Temperature and Humidity data for Xiaomii LYWSD03MMC BLE sensors. The app will scan for any of these devices by looking for the Bluetooth MAC octet and then filtering by model. Once it has a list of MACs, it will then attempt to read the Temp/Humidity data for each MAC and record it. This data can be interacted with through an API.
Some product info can be found here at my Knowledgebase:
https://kb.matt-cloud.com/books/07-saved-articles/page/xiaomii-temperaturehumidity-sensor
## Future Plans
Aside from a REST API, there are a few more features which need to be added to this app.
* REDIS function for Node.js Websocket support
* In the end this will drive a web dashboard, and I want to be able to view live data on this dashboard
* Friendly Names for Sensors
* There will be a variable added to the `config.py` file to pre-configure friendly names for specific MAC addresses.
* For example, *Living Room* or *Main Bedroom*
* This data will also be integrated into the API to replace the **comment** field
* Data persistence across app launches
* I will do this with the **Pickle** package
## API Details
There are several primary API endpoints with varying levels of details.
@@ -38,7 +51,7 @@ There are several primary API endpoints with varying levels of details.
"name": "A4:C1:38:00:11:10"
},
{
"comment": "A4:C1:38:24:00:11:11",
"comment": "A4:C1:38:00:11:11",
"data": {
"humidity": 50,
"temp": 18.03
@@ -161,6 +174,9 @@ There are several primary API endpoints with varying levels of details.
]
}
```
## File Structure
The Python code is split across multiple files with different files having code for different areas of need.
```
ble-scanner/
@@ -168,7 +184,7 @@ ble-scanner/
├─ ble.py # BLE helper functions to read temp+humidity data
├─ scanner.py # Async BLE scan + cache logic
├─ config.py # Shared constants (prefix, interval, etc.)
├─ requirements.txt
├─ requirements.txt # Python VENV requirements
├─ run.sh # Run API from shell
├─ scanner.py # Handles scanning for Mii sensors, other helper functions
├─ sensors.py # Object classifier