Pi Weather Station with InkyWHAT Health

I made a thing. This thing is–neh, this ensemble of things–is a Raspberry Pi 3 server with attached local sensors and an attached local eInk display. Furthermore this Pi uses an RTL SDR to collect information from my outside sensors and my neighbors’ weather stations. This post is about only the server’s mechanical structure.

Printed cover on Pi and eInk health monitor. A stack of sensors is visible at the right.

The actual FreeCAD files and printable elements are available on Thingiverse

There are two primary parts to the cover, a shell-like frame and a base that mounts to the wall. There are some standoffs that print to go behind the wall screw keyholes and a set of washer-like standoffs to go at the corners below the keyhole. The standoffs also create space for the screw heads on the sensor mount.

Rendering of the CAD model of the be and slip-over cover.

There are I2C sensors that affix to the right. I use an AS3935 chip from SparkFun for detecting lightning. It can detect occurrence, but is fundamentally inaccurate for energy and range measurements. Below that is an SHTC3 temperature and humidity sensor, and the bottom of the stack is an MS5637 pressure and temperature sensor. The next figure shows this sensor stack, though the interrupt GPIO is not yet connected.

Additional data comes to the server through an RTL SDR radio using the excellent rtl_433 project to receive both my external weather station data and my neighbors’. The whole project, assembled and working. The USB connections on the Pi are up-facing so that the SDR is not pulled free by gravity.