Measuring, recording and analyzing the weather is hardly a new idea. For thousands of years mankind has depended on increasingly sophisticated observations and forecasts – knowing what weather conditions to expect has been essential for the rise of modern civilization.
While once these measurements were carried out manually, today most of our data comes from fully automated weather stations. This thesis describes the process of designing one such station, from the very first steps of deciding which environmental parameters to measure, all the way to publishing and visualizing the raw data acquired. The main goal of this process is to build the heart of the weather station: the data logger, capable of interfacing with a variety of measurement apparatus and able to operate in harsh, sometimes remote conditions where supplying power and maintaining internet connectivity might be a challenge.
Every aspect of the system is my handiwork: the hardware, the software running on it (C/C++14), the server (C#) and the client side components, including a desktop client (C#) and a website (AngularJS).