An air quality or weather station that pushes the data on the Internet is a low complexity fun project to explore the Internet of Things revolution and understand the main concepts and protocols used.
So let's say you want to build such a contraption, you would need a physical device with the desired sensors and send the data to a cloud service to be displayed, shared or analysed.
For the device we opted for Arduino Ethernet because of the strong community support and large base of supported sensors. We wanted to measure the CO2 concentration in the air, the temperature and noise level and compare it between two locations. So we had two of this devices with the same components and only sending the data to different endpoints. Speaking of endpoints, for the cloud solution we used DeviceHub.net which offers both data in and data out in the form of gathering data from sensors and remote control devices by defining actuators on the platform first and then linking them to the hardware by using the API.
Be sure to protect the components with an outdoor case that will be protective against rain but also let the co2 sensor reach the air. A bell shaped cover works best.
The first step is to register on the platform and create a Device as an entry point for your data on the cloud. You can do that here https://dashboard.devicehub.net/register and follow the wizard there to create your device.
I created a device with all the data types the platform offers Sensors (analog, digital, string, map) and Actuators (digital, analog). All data types have means of both sending data to the platform and retrieving it. Every Device has a unique id (UUID) and an associated API key of the project it resides to make sending data secure and reliable.
You can find the code attached to this project gathering all the details just be sure to replace the specific ids and api keys for each device. We used the MQTT protocol offered by DeviceHub.net because of the advantages over the REST based communication. You can learn more about the differences between them here.
If you have any questions let me know,