W tej części opisu, krótka charakterystyka programu serwera, działającego na RaspberryPi.
Program ma za zadanie odbierać dane z transceivera Nrf24L01 i generować plik w formacie json zawierający odebrane dane. Dodatkowo dołączane są dane: data i godzina odbioru. Program powstał w jezyku Java i wykorzystuje moją bibliotekę do obsługi transceivera: http://www.elektrofanklub.pl/biblioteka-do-obslugi-ukladow-nrf24l01-dla-raspberrypi/. Wykorzystywana jest także biblioteka simple-json, która automatyzuje i ułatwia wygenerowanie pliku wyjściowego.
Przykładowa zawartość pliku:
{„date”:”2016-11-13″,”temperature”:3.1,”humidity”:58,”time”:”11:54:00″}
Plik zlokalizowany jest w folderze /run/www, który znajduje się na RAM dysku. Jest to podyktowane względami praktycznymi: plik jest często podmieniany i zawiera tymczasowe dane. W razie kiedy katalog lub plik nie istnieją – są tworzone.
Udostępnianiem zajmuje się serwer http – lighttpd.
Całość jest uruchomiona na RaspberryPi 1 – wersja z 256MB RAM.
Kod w postaci projektu IntelliJ do pobrania stąd: http://www.elektrofanklub.pl/weatherserver/
Część czwarta i ostatnia tutaj: http://www.elektrofanklub.pl/stacja-pogodowa-z-prezentacja-pomiarow-w-internecie-cz-4/