TempSense
This app was developed as part of Dr. Li’s 2023-2024 Senior Seminar project at Fort Lewis College in Durango, CO. TempSense is an Android Application designed to accompany a network of ESP32 temperature sensors for The Springs Resort, in Pagosa Springs CO. This app pulls data from a Thingspeak channel and displays and graphs it in real time.
Features
o Sensor Management: Add, delete, and manage sensors.
o Real-Time Updates: Receive real-time updates on sensor data.
o Temperature Tracking: Monitor temperature readings from various sensors.
o Data Persistence: Save sensor data locally for future reference.
o Intuitive UI: User-friendly interface for seamless navigation.
o Averages past 3 hours of temperatures and graphs the last 24 hours of temperatures
Prerequisites
o Android Studio installed on your machine.
o Android device or emulator running Android OS version 5.0 (Lollipop) or above.
Installation
o Clone this repository to your local machine using git clone https://github.com/Papertik/TemperatureAPP
o Open the project in Android Studio.
o Build and run the project on your Android device or emulator.
Usage
Home Screen:
o The home screen of the app is structured around RecyclerView container with top and bottom boarders.
o The yellow settings menu in the upper right corner gives the user access to the settings, add device screen and ability to clear sensors.
o The white home button icon is the refresh button for the home screen.
Add device screen:
o This screen allows the user to add a new sensor to the app. This does not create a Thingspeak channel or anything, that must be already set up.
o It takes user input for the device name, channel ID, Field number and the number of hours of data the user wants displayed. (Default Value is 24 hrs)
o Clicking the add device button adds a sensor with these properties to the home screen.
Sensor Details screen
o When a sensor item is clicked on it opens the sensor details screen. This is where the live temperature, last update time and 3 hour average temperature
is displayed as well as a graph of the last day of data in 15 min intervals.
o To delete a sensor, click the delete button at the bottom of this activity.
Wi-Fi Settings screen
o This screen allows the user to change the Wi-Fi credentials of all the sensors at once using two text boxes and a button.
When the button is pushed, any text in the text boxes is sent to the sensors.
Contributors
Noah Smith- App Design, Data Persistance, Temperature fetching Mason Brady- Wi-Fi and Bluetooth functionality
Acknowledgements
o ThingSpeak IOT service for IOT hosting
o Google Gson for JSON serialization and deserialization
o Android Developers Documentation for tutorials
o Geeks for Geeks tutorials
o MPandroidChart for data graphing