Book: Raspberry Pi Full Stack
Raspberry Pi Full Stack

In Raspberry Pi Full Stack, under the guidance of author Peter Dalmaris, you will develop an IoT application and get to know new parts of the stack. This starts at the lowest level  at the hardware of the Raspberry Pi Zero. After that, you will learn to work with the Raspberry Pi OS and control the GPIOs with Python code to switch an LED or read a button or temperature sensor.

Raspberry Pi Full Stack Essentials

After this basics, the focus shifts to the web application stack. You install the web server nginx, the application server uWSGI and the microframework Flask to easily build web applications in Python. You will also learn how to maintain a database with SQLite3 and CSS and how to design your web pages with Flask templates. Finally, you will read your sensor data in Python and write to that SQLite3 database and display it in the web interface, including graphs in Plotly.

Various useful external services are also covered, such as Google Charts for charts, Google Sheets for data logging, IFTT for alerts and Twilio to send SMS messages. Dalmaris also explains how to remotely access the web application on your Raspberry Pi and how to create and set up a TLS certificate.

Tips and Insights

Besides a good overview of the whole stack needed for an IoT application, Dalmaris also gives numerous useful tips, such as how to start applications automatically in Raspberry Pi OS, how to correctly process time zones in Python with the Arrow library and how to debug JavaScript code in your web browser.

The width of the subject and the many short chapters sometimes make you lose the thread, but one thing is certain when you have finished this book: you will be able to build a full stack IoT application.