Mission Statement

Our Mission is to empower people with knowledge about the potential hazards in their environment through the usage of remote sensors and a database where the information can be compiled and then sent to anyone with the Android app.


As the world further develops, industrialization and the air pollution that follows it has increasingly become a notable health risk to those that inhabit areas that have developed with shocking speeds such as China and India, where asthma and lung disease have become ever more common in urban and developed areas simply due to the magnitude of development. With this comes the need for a tool that allows the at-risk population to determine how at-risk they genuinely are by measuring various factors in the air that would be of interest to those that breath it.

What it does

An EnviroSense node monitors the total volatile organic chemicals(TVOC), Equivalent CO2, pressure, UV intensity, and temperature and pressure of the atmosphere, and uploads it to the cloud for ease of analysis every minute. We designed our architecture in order to easily add additional nodes without having to change anything by using Google Cloud IOT Core. We currently have 1 node up and running as we were limited by the hardware available to us.

Sensors Used

CCS811 - TVOC & eCO2, MPL3115A2 -TEMP, PRESSURE, VEML6070 - UV intensity

How we built it

The work was divided into three sections. Jason was in charge of connecting the sensors to the ESP8266 and connecting the ESP8266 to the Google IoT Core. Tristin was in charge of connecting the Android GUI to the Google IoT Core through the Firebase Database, and Jerry and Charles were in charge of constructing the Android GUI and making it capable of displaying the data in a neat and understandable manner.

Challenges we ran into

In the beginning, the Arduino and Raspberry Pi were unable to connect to the UCSD PROTECTED wi-fi, preventing us from sending the data to the Google IoT Core. We were able to connect a esp8266 micocontroller to Charles' hotspot on his IPhone. The GUI required code that was out of our area of expertise which made us spend a lot of time on learning how to develop the GUI correctly. The connection of the GUI to Firebase was more difficult than expected as there was no simple way to transfer the data from the database to the GUI.

Accomplishments that we're proud of

We are proud to have connected the ESP8266 to the Google IoT Core, to have developed an Android App that could communicate with the Firebase, and to have been able to develop a GUI with code that we were initially unfamiliar with.

What we learned

Jason learned how to interface with the sensors and effectively utilize Google Cloud to transfer data. Charles learned the basics of how to program Java and XML in Android Studio. Jerry learned more about the architecture of Android Apps and about the hardware that was used, such as the ESP8266. Tristin learned how to use Google Cloud and how to create databases and retrieve data from them.

What's next for EnviroSense

The aesthetic and functionality of the GUI can be further improved. The circuitry of the EnviroSense can be organized and more prototyping can be done to decrease the latency between the Node and the Android App.

Check out our live website we created with a custom domain from Domain.com: link

Share this project: