Portable Air Quality Measurement Station

The page describes a portable air quality measurement station. It allows you to measure dust, CO, and NO2.


  • Arduino Uno
  • Grove shield
  • data flash shield
  • lithium battery pack with USB connector
  • short USB cable
  • dust sensor
  • CO/NO2 sensor
  • temperature and humidity sensor
  • GPS device
  • OLED display
  • push button
  • LED
  • Grove cables
  • cardboard box
  • foam tape


  1. Cut holes in the box for the Arduino USB cable and battery pack USB cable.
  2. Place data flash shield and Grove shield onto the Arduino.
  3. Place the Arduino and battery pack in the box using double-sided tape.
  4. Place the sensors and other devices in the box, also using double-sided tape.
  5. Connect the sensors and other devices to the Grove shield using Grove cables. Use the following connections:

    Device Pin
    Dust Sensor D3
    CO/NO2 Control D5
    CO/NO2 Sense A0
    Temperature and Humidity D8
    GPS D6
    OLED I2C
    Button D2
    LED D4


  1. Charge the battery unit using a USB cable plugged into the input port.
  2. Once the battery is fully charged, you can connect it to the Arduino using a short USB cable. This cable acts as the on/off switch.
  3. Take the system to your desired recording location. Make sure you see GPS coordinates on the OLED display. You should also see a large number in the timestamp field (this is the number of seconds since a particular time in 1970, a standard time representation).
  4. Wait for one hour at the recording location so that the system can get a good reading. The box must be open during this time so that the sensors are exposed to air. Do not turn off the device during this hour.
  5. At the end of the hour, push the button to record a data point. The LED will flash and the record count will go up by one.
  6. When you are done, unplug the Arduino from the battery.
  7. Connect the Arduino to a computer and use the Arduino Import Tool to upload your data. This requires that you install the WireGarden plugin. (If you'd prefer not to install it, you can also retrieve the data manually using a serial console program.)


  • The battery should last about 3 to 5 hours if it is fully charged.
  • Each recorded point will be appended to the existing points.
  • The new record count number on the display shows the number of new record since the Arduino was started; it doesn't show the number of existing records.
  • You can erase all of the records by holding down the button while you turn on the Arduino. The LED will flash twice then stay on for two seconds. After the records are erased, the LED will turn back off, and you can release the button.