Introduction

🚧 Build your DIY sensor and become part of the worldwide, opendata & civictech network.
With airRohr you can measure air pollution yourself.

Shopping list

Sensor kit
Single components

🙌 Great, you decided to buy the parts online! Unfortunately the delivery can take from days up to three weeks. Until then enjoy your life️.

Driver & firmware

We already prepared the firmware. You only have to install drivers and flash your NodeMCU (ESP8266).

To communicate with your NodeMCU (ESP8266) you need usb2serial drivers for your operating system.

The chipset for NocdeMCUs v3 is usually CH341, just check the back of your NodeMCU (ESP8266) to find some technical information.

Choose the link that corresponds to the operating system of your computer.

Windows

Drivers for NodeMCU (ESP8266) V2 (CP2102) for Windows
  • Windows 10 - Windows 10 should be able to automatically download these
  • Windows 7/8/8.1 - 32-bit version - not supporting 64-bit version OS
Driver for NodeMCU (ESP8266) V3 (CH340/CH341) for Windows
  • Windows - Windows 10 should be able to automatically download these
Extract the downloaded file for Windows
  • for NodeMCU (ESP8266) V2: Open the folder CP210x and double click on the application CP210xVCPInstaller_x64 (or x86)
  • for NodeMCU (ESP8266) V3: open the folder CH341SER and double click on the application SETUP.

MacOS

MacOS Drivers
Extract the downloaded file for MacOS
  • for V2: Unzip the folder CP210x and double click on the application CP210xVCPInstaller_x64 (or x86)
  • for V3: Unzip the folder CH341SER and double click on the application SETUP.
  • in case "No boards found": restart your Mac

Linux

No drivers need to be installed. Chip should be supported directly (verifiable with dmesg)

Firmware Flasher

Support for multiple Operating Systems: Windows, MacOS and Linux.

Connect NodeMCU to your computer with a short micro-USB cable (choose one shorter than 1 Meter, otherwise the installation may fail). Select latest_en.bin (or another language version) and click “Upload”. Wait until the process is done. Now we can assemble the sensor.

Linux: Set permissions as executable

After the download you may have to set the permission to executable. This can be done with the command: chmod o+x <download filename>
If you see the error message "unable to connect to port /ttyUSB0", you need to add yourself to the dialout group: sudo usermod -a -G dialout $USER then logout and login again.
A big thanks goes to Piotr, from Poland, for his help! 🙋‍♂️

MacOS: how to run a unverified app

Right click and open the application several times and always confirm with "Open".

Here is a short video on Youtube 👉 https://youtu.be/1KZiP94TYjw

Assemble

⚠️ IMPORTANT NOTE Before assembling install the firmware! See firmware flasher section.

NodeMCU v3

Note: Our instructions refer to version 3 of the NodeMCU. This can be recognized by the connections VU and G (see drawing).

Copyright: roman-minyaylov, MIT License
When you are done, this is how it should look like

Wire the SDS011

Pins are numbered from RIGHT to LEFT, make sure when connecting the cables are sitting on the pins, as most Dupont cables also fit inbetween the pins.

SDS011 Pin 1 -> Pin D1 / GPIO5
SDS011 Pin 2 -> Pin D2 / GPIO4
SDS011 Pin 3 -> GND
SDS011 Pin 4 -> unused
SDS011 Pin 5 -> VU (NodeMCU v3) / VIN (NodeMCU v1,v2)
SDS011 Pin 6 -> unused
SDS011 Pin 7 -> unused

💡 You can find a list of sensors supported by our firmware

Solder together BME280

Connect the pin header with the BME280 board. Solder it from the backside. The gaps between the pins are very small so be patient and careful.

The trick is to put the soldering iron tip to the pin, warm it up a little, and then lightly apply the solder.

Wire the BME280

Pins are numbered from LEFT to RIGHT.

VIN -> Pin 3V3 (3.3V)
GND->  GND/G
SDA -> PIN D3
SCL -> Pin D4

Tie everything together

Tie NodeMCU and SDS011 together
Use a cable tie to link the NodeMCU (ESP8266) and the SDS011 sensor so that the Wifi antenna points away from the sensor
Connect flexible tube
  • connect the flexible tube to the SDS011 sensor
  • Use another cable tie to attach the BME280 temperature sensor to the tube
  • Pass the USB cable through the tube. Mount the SDS011 with the NodeMCU facing to the top and the fan facing to the bottom
Push in sensor into the pipe
  • Push the parts into the tube, so it's jammed inside
  • USB cable, flexible tube and BME280 should look out of the tube's end
  • Push the other pipe onto the first one.
Finishing
  • Position the temperature sensor on the flexible tube, so that it's on the edge of the pipe.
  • Cut off the flexible tube at the end of the pipe
  • Optional: you can cover the open ends of the tube with a fine mesh. So air can circulate but insects stay outside

Placement

Ideal place would be 1.5 to 3.5 meters above the street and well ventilated. However, this cannot be done for all people because, therefore, information such as the height above the ground and the position to the street is requested during registration.

Configure

Get the unique station ID

  1. Connect the station to a USB cable to power up the sensor.

  2. The station will attempt to connect to the configured WiFi network. For a new set up, the connection will fail and the station will create a WiFi network with the name Particulate Matter ID , Feinstaubsensor-ID or airRohr-ID. The ID is the ChipID (for example 13597771). Please note this number down, as you will need it for the registration

  3. Connect to the WiFi network created by the station on your computer or smartphone. Wait until the connection is established.
    Android: If the connection disconnects immediately, you may have to deactivate the option 'Smart network switch' under 'Connections -> WiFi -> Advanced'.

  4. Open your browser and type in http://192.168.4.1/.

⚠️ Please note It may take a few tries for the NodeMCU to connect to the home WiFi network. Please be patient and try the steps several times until it works. If the configuration of the sensor has worked, the station WiFi network will not available and the configuration page will no longer accessible under this IP 192.168.4.1

Configure the station

  1. In the 'Configuration' page enter your SSID (name of your home WiFi network), the network security key (under Windows) or WiFi password.

  2. If you are using the recommended fine dust sensor (SDS011), no further configuration changes are necessary.

  3. Click 'Save configuration and restart' button. The station will restart and will no longer be accessible in this way when it connects to your home WiFi network.



Verify the station is correctly configured

If you made no other changes in the previous step other than WiFi network configuration, the sensor will now start recording and uploading the data. You can verify that everyting is working correctly after about 10 minutes by navigating to the following pages. On these pages search for the ChipID (in the example above the 13597771).

Register

Create an account

Go to devices.sensor.community to create an account and become a part of the open data network.

Register your device

Once you create an account and log in, you will be able to register your device. Fill out the form to register your device. Navigate to Home -> (Login) - Sensors -> Register new sensor

  • sensor ID is the ChipID of the ESP8266 (NodeMCU) that you noted down before
  • your email address (will not be published)
  • your address: Street with house number, postcode and city. Click on "Lookup entered address" to get the location coordinates (will be rounded off). Check the position of the pin, change it if needed
  • set a personal sensor name to make it easier to separate them if you have multiple sensors (like garden, sensor for mom,...)
  • the surroundings of the station - e.g. height above ground, side of the road, high traffic volume, free field or similar

Troubleshoot

Transmitting problems?

Enter the following in the browser with your own data: https://api-rrd.madavi.de/grafana/d/GUaL5aZMz/pm-sensors?orgId=1&var-chipID=esp8266-[ID]

The [ID] can also be searched for in input field in the upper left corner https://api-rrd.madavi.de/grafana/d/GUaL5aZMz/pm-sensors?orgId=1

  • Is the sensor registered via https://devices.sensor.community/ and is the sensor visible on the map?
    • Was the WLAN signal level weak in the past? here is the signal log server-side: https://api-rrd.madavi.de/grafana/d/Fk6mw1WGz/wifi-signal?orgId=1&var-chipID=esp8266-[ID]

USB cable problems?

  • Check power supply: USB cable
  • Reboot (disconnect power supply, e.g. pull USB plug)
  • Is the WLAN Config OK (the sensor connects to the configured WLAN) If not:
    • does the sensor open an AP (in the first 2-7 minutes after a reboot)?
    • Look for airrohr-[ID] WLAN network. Patience, it may take 1-2 minutes after boot.
  • Check on your own router if the sensor is logged into the network, then remember the IP
    • alternatively use "Discovery" in the flashtool
    • If yes: connect to the sensor via IP with a browser http://[ip-of-the-sensor]/ , the interface should appear
    • If no: the ESP has problems, e.g. power supply insufficient, reboot loop or similar
  • Connect USB to a computer and view the log
    • Track text on serial interface with serial terminal program (Settings: baud 9600, 8N1)

    • There you should be able to see what the sensor is doing (boot messages, WLAN connection or AP, measurement - only after 3 minutes)

Electronics problems?

  • Remove sensor electronics from the housing and observe
  • Check/replace power supply again
    • does ESP flash shortly after reboot?
    • SDS011: red LED/fan on after reboot?
    • check/replace the cables to the sensors again
Sensor.Community

Making the world a better place through community driven, open environmental data.

Made with 💕 in Stuttgart, Germany