A smart temperature monitoring system combining a Flutter mobile application and an ESP32 microcontroller equipped with an LM35 temperature sensor. The system enables real-time temperature monitoring via Bluetooth Low Energy (BLE).
- Intuitive user interface built with Flutter
- Real-time temperature measurement using LM35 sensor
- Graphical display of temperature data
- Battery level monitoring
- Bluetooth Low Energy (BLE) communication
- Configurable temperature alerts
- Measurement history
- Flutter 3.x
- Dart 3.x
- flutter_blue_plus: ^1.x.x
- fl_chart: ^0.x.x
- provider: ^6.x.x
- shared_preferences: ^2.x.x
- Arduino Framework
- PlatformIO
- ESP32 BLE Arduino
- FreeRTOS
- Flutter SDK
- Android Studio / VS Code
- PlatformIO IDE
- ESP32 DevKit
- LM35 Temperature Sensor
- Git
- Clone the repository:
git clone https://github.com/your-username/TempFlow.git
cd TempFlow/tempflow- Install dependencies:
flutter pub get- Run the application:
flutter run- Open the project in PlatformIO
- Configure your ESP32's serial port
- Build and upload the code:
pio run -t upload- LM35 Signal -> GPIO34
- Red LED -> GPIO33
- Green LED -> GPIO25
Service and characteristic UUIDs are defined in:
lib/utils/bluetooth_constants.dart(Flutter)src/main.cpp(ESP32)
# Flutter unit tests
flutter test
# Integration tests
flutter drive --target=test_driver/app.dartContributions are welcome! Feel free to:
- Fork the project
- Create a feature branch
- Commit your changes
- Push to the branch
- Open a Pull Request
Developed by Tony Yonke
- GitHub: [tonyvaldezyk/]
- LinkedIn: [Tony Yonke]
This project is licensed under the MIT License. See the LICENSE file for details.
For more implementation details, check out:
