Citizen Science Atmospheric Sensor

Sensor Description

The Citizen Science Atmospheric Sensor is based upon Arduino devices coupled with the Bosch BME 280 atmospheric sensor. The device has built in WiFi connectivity, internal voltage monitoring and a PCB trace antenna. It provides an inexpensive low power method to monitor atmospheric conditions (temperature, pressure and relative humidity) within the range of a WIFI access point. Three standard AA alkaline batteries provide enough power to measure and send data to a cloud-based server (AWS) once every hour, with real time telemetry. The design, construction and implementation of this technology was provided by Protostudios, a part of the University of Iowa's Department of Innovation and Economic Development.

Fig. 1. Citizen Science Atmospheric Sensor.

As soon as the sensor is turned on and connected to a WiFi access point, it starts by measuring weather conditions once per minute in a period of 15 minutes. After this period, the sensor switches to monitor data hourly. This is to make sure the user can check and see if the sensor is working properly during setup. The hourly timeframe was chosen so that the sensor can provide acceptable data and preserve battery.

Launching the Sensor


Video courtesy Clarissa Dietz.


  1. Turn on the sensor switch, blue light should blink once
    Fig. 2. Citizen Science Atmospheric Sensor assembled in a case.
  2. Take your laptop or mobile device, go to the WiFi networks, and select 'Citizen_science-N'. N is the sensor number, to keep track of the sensors.
    Fig. 3. Atmospheric sensor WiFi access point name.
  3. Depending on your web browser, it will either automatically take you to the 'login' page, shown below. If it does not, once connected to the 'Citizen_science-N' network, type in to your web browser Now you should be on the WiFiManager homepage, click 'Configure WiFi'.

    Fig. 4. Atmospheric sensor WiFiManager homepage.
  4. You should see your network-name in range (in this case UI-DeviceNet), the percent signal, and a lock indicating if it is password-protected (Fig. 5 below).

    Fig. 5. Atmospheric sensor login page.

    In order to connect the sensor, fill out the required information below:

    • SSID: WiFi network name
    • password: WiFi network password. If there is no password, leave empty
    • Contact_name: name of person to contact
    • Email_contact: email of person to contact
    • Street_Apt_City_State_Zip: address of where the sensor is
    • CurrentTime: time sensor is being launched (hour:minutes am/pm)
    • Height_From_Ground: height the sensor is from the ground (meters)
    • Sensor_In_Sunny_Or_Shadow: type “sunny” if the sensor is in a sunny area and “shadow” if it’s in a shaded area.

    Fig. 6 shows an example of filling out in the requested fields. Once the fields have been filled, click save.

    Fig. 6. Atmospheric sensor login page (fields filling example).

After you save, the sensor should reboot, every time it sends a measurement, the light indicator will blink blue.

If at some point your sensor isn’t sending measurements, it may be because the batteries need to be replaced (watch video below), or the Wi-Fi network can’t be reached due to the SSID changed (either you change it manually, you got a new internet service, or moved the sensor to a new location with a new Wi-Fi network); in both cases you need to relaunch the sensor. If it's the batteries, turn the sensor off, replace the batteries and relaunch the sensor, if it’s the SSID just relaunch the device. The relaunching process consists in following steps 1-4 (described above), by filling out just the SSID and password, as shown below in Fig. 7, and re-entering any new information (if the location of the sensor changed).

Fig. 7. The atmospheric sensor login page on the reconnecting process.

Replace batteries tutorial-video

Video courtesy Clarissa Dietz.

Mounting the Sensor

Since the sensor is going to be outside, it is important to mount it in the correct way, or else risk the weather or animals from damaging it. Here are some tips for mounting the sensor.

  1. Make sure the sensor is ~2 meters off the ground. This is because air temperature is officially measured at a height of ~2 meters, or about 6 feet above ground.
  2. The sensor should be in a place where rain won't be splashed inside the case, where the devices is located.
  3. If you are using screws to mount the sensor, make sure there are two screws that hold the sensor in place, so the sensor doesn't rotate. Also, the open area exposing the circuit board and battery pack should be facing downwards. This is to prevent from exposing the water-sensitive parts to rain/snow and is shown in Figures 8 & 9 below.

    Fig. 8. Correct sensor mounting.
    Fig. 9. Incorrect sensor mounting.
  4. The holes on the side of the sensor are used for mounting the sensor with zip ties or string. If you do this, make sure the sensor is mounted tightly, so it doesn't slip. This is shown in Figure 10.
    Fig. 10. String mounted sensor.

Accessing the Sensor Data

Once the sensor starts sending data to the cloud, the data can be downloaded and seen at this website

  1. In order to see the data the sensor is providing, navigate to the ESMC website. Under the menu 'Citizen Data' click First look of sensor launch. This tool allows one to view the data generated by the sensor, which is especially useful right after a sensor is turned on, since data is received in the cloud almost immediately. All that is needed is to see the data is entering the 'Sensor ID' which is located on the sensor's label (e.g., BME280_5) and submit the query.

    Fig. 11. Screenshot of "First look of sensor launch" tool.
  2. Another tool located under the menu 'Citizen Data' -> Environmental Monitoring is useful for seeing the data the sensor generates. This tool is an interactive web-application which allows exploring and retrieving data from multiple sensors, along with the forecast associated with the sensor’s geolocation. In order to start displaying a sensor into this app, it will be necessary to know it’s geolocation, or exact address where it is located. Please contact Lorena Castro García or Jun Wang via email (see contact information bellow) and provide this information along with the sensor ID to have the sensor data displayed.

    Fig. 12. Screenshot of "Environmental Monitoring" web-app

Contact information

Jun Wang, Univ. of Iowa
Phone: 319-353-4483
Professor in Chemical & Environmental Engineering, & Physics
Assistant Director for CCAD,
Interdisciplinary Graduate Program in Geo-Informatics & Applied Math
4133 Seamans Center, Iowa City, IA 52242-1503

Lorena Castro García (PhD)
Postdoctoral Research Associated
Chemical and Biochemical Engineering & Center for Global and Regional Environmental Research
University of Iowa
Office: 402 IATL