# TinyWetter ![tinywetter](tinywetter.jpg) TinyWetter is a small indoor weather station that provides info about temperature, relative humidity and atmospheric pressure by using the bmp280 and si7021 sensors. It uses a Digispark with the [I2C-Tiny-USB] library to make the sensors available as i2c devices under linux (i.a.) over USB. ## board The board is designed in KiCad and uses a single sided pcb layout that mostly functions as a cross connect for the daughter boards with the sensors and the Digispark. The LED is used as a cheap "voltage regulator" to provide 3.3V for the sensors from the 5V of the USB connection. Be careful to not use any funtions that require a large current like the heater element of the si7021, because that would likely kill the LED. ## driver The driver is written in rust and can be compiled using `cargo build`. It uses the i2c-dev kernel interface (`modprobe i2c-dev` to load the module) to access the i2c devices. Given the device path `/dev/ic2-##` and the current altitude, it reads the current values from the sensors and outputs the temperature, the relative humidity and the pressure at sea level. Use `-v` to see more details. [I2C-Tiny-USB]: https://github.com/harbaum/I2C-Tiny-USB