atMETEO
An ATmega based weather station
Functions
main.cpp File Reference

The main weather station application utilizing Sensors library and AVR C++ utilities library. More...

#include <inttypes.h>
#include <stdio.h>
#include <avr/io.h>
#include <avr/interrupt.h>
#include <util/delay.h>
#include "git-version.h"
#include "lib/hidekisensor.h"
#include "lib/dht22.h"
#include "lib/bmp180.h"
#include "lib/mlx90614.h"
#include "lib/tgs2600.h"
#include "lib/ethernet.h"
#include "lib/wiznet.h"
#include "lib/adc.h"
#include "lib/uart.h"
#include "lib/timer.h"
#include "lib/pin.h"
#include "lib/atomic.h"

Functions

int main ()
 Application entry point. More...
 

Detailed Description

The main weather station application utilizing Sensors library and AVR C++ utilities library.

Setup:

The received sensor values are transmitted over the UART interface and / or over Ethernet using UDP messages as JSON object.

JSON Schema:

{
"type": "object",
"patternProperties": {
"^rf433_[0-6]$": {
"type": "object",
"properties": {
"temperature": {
"description":
"Temperature (in °C) from wireless sensor.",
"type": "number"
},
"humidity": {
"description": "Humidity (in %) from wireless sensor.",
"type": "integer",
"minimum": 0,
"maximum": 100
},
"battery": {
"description": "Battery status.",
"type": "boolean"
}
}
}
},
"properties": {
"dht22": {
"type": "object",
"properties": {
"temperature": {
"description":
"Temperature (in °C) from DHT22 sensor.",
"type": "number"
},
"humidity": {
"description": "Humidity (in %) from DHT22 sensor.",
"type": "number",
"minimum": 0,
"maximum": 100
}
}
},
"bmp180": {
"type": "object",
"properties": {
"temperature": {
"description":
"Temperature (in °C) from BMP180 sensor.",
"type": "number"
},
"pressure": {
"description":
"Barometric pressure (in hPa) from BMP180 sensor.",
"type": "number"
}
}
},
"mlx90614": {
"type": "object",
"properties": {
"ambient_temperature": {
"description":
"Ambient temperature (in °C) from MLX90614 sensor.",
"type": "number"
},
"object_temperature": {
"description":
"Object temperature (in °C) from MLX90614 sensor.",
"type": "number"
}
}
},
"tgs2600": {
"type": "object",
"properties": {
"sensor_resistance": {
"description":
"Sensor resistance in Ohm from TGS 2600 sensor.",
"type": "integer",
"minimum": 0
}
}
}
}
}
See also
Sensors::HidekiSensor
Avr::Dht22
Sensors::Tgs2600

Function Documentation

◆ main()

int main ( )

Application entry point.

Returns
As main application, this function does not return.