In this article, we will learn how to access raspberry pi from anywhere in the world using MQTT. This will all be done with a python script. Several applications are already available to access Linux-based terminals over remote/network, but they all require port forwarding, but MQTT allows without port forwarding. We will not need any…
An IoT-based virtual doctor
In this tutorial, we’ll learn how to build a device that works as a virtual doctor. The device inputs patient data, which can then be emailed remotely to a registered physician using the simple mail transfer protocol (SMTP) — the internet standard communication protocol for electronic transmissions. The purpose of this device is to support…
How to use Raspberry Pi to monitor and log environmental parameters
In this tutorial, we’ll learn how to interface the four-in-one BME680 pressure, gas, humidity, and temperature sensor with Raspberry Pi (RPi). This will include understanding how to log and retrieve data from a database. The BME680 can “communicate” with external controllers on either the serial peripheral interface (SPI) and I2C protocols. For this project, we’ll…
Raspberry Pi GUI development using GTK+ and event handling
In this tutorial, we’ll learn how to develop a graphical user interface (GUI) application for Raspberry Pi (RPi) using Python. This is not an easy task, particularly for a system that has limited resources (memory, CPU, RAM, cache, etc.). Granted, the latest version, RPi 4.0, offers 8GB of RAM, which allows for rendering and for…
Interfacing Raspberry Pi with Arduino
Raspberry Pi (RPi) is a small, low-cost, single-board computer that offers more than just a Linux operating system. It also has communication buses and general-purpose input/output (GPIOs) that can be used to interface external sensors and devices. One example is the serial peripheral interface or SPI. SPI communication is based on a shift register, where…
The pros and cons of the Raspberry Pi 400
In many ways, Raspberry Pi falls short as a full-fledged personal computer. The Raspberry Pi Foundation has tried to change this with its latest addition, the Raspberry Pi 400. Launched in November of 2020, the Raspberry Pi 400 is a single-board computer in the form of a keyboard, retailing at $70 per unit or $100…
Getting started with Raspberry Pi
Raspberry Pi Pico is a low-cost, high-performance microcontroller board built on silicon with flexible digital interfaces. Whether you choose to use the C/C++ SDK or the official MicroPython port, everything you need to get started is available here. Key features: RP2040 microcontroller chip designed by Raspberry Pi in the UK Dual-core Arm Cortex M0+ processor,…
RPi Python Programming 18 – Serial UART communication on Raspberry Pi’s TTL port
In the previous tutorial, we discussed serial communication protocols available on Raspberry Pi. We discussed the terminology of data communication and defined the terms like ‘port’, ‘bus’, ‘interface’, ‘protocol’ and ‘standard’. We talked about UARTs on Raspberry Pi and how these UARTs are referenced by different serial Linux device names when they are accessed through…
RPi Python Programming 17: Serial communication using UART protocol
In the previous tutorial, we learned how to generate analog output in the form of software PWM when using Raspberry Pi (RPi). We also showed how software PWM can be used to fade an LED. The PWM output can also be used for other applications, such as for speed control of a DC motor or…
RPi Python Programming 16: Analog output and software PWM
In the previous tutorial, we learned how to use digital input with Raspberry Pi. Raspberry Pi (RPi), as an embedded computer, is capable of digital input, digital output, pulse width modulation (PWM), and the implementation of several serial communication protocols (such as UART/USART, I2C, and SPI). In this tutorial, we’ll cover analog output by using PWM with…
RPi Python Programming 15: Interfacing a push button & digital input
In the previous tutorial, we discussed how to use a digital output on Raspberry Pi. We designed a GUI-controlled LED driver, demonstrating how single-board computer features — like high-level language (HLL) such as Python — can control embedded applications. Microcontroller-based embedded applications are typically programmed in low-level languages, such as in Assembly Language or embedded…
Raspberry Pi offers new, high-quality camera with interchangeable lens
The Raspberry Pi camera family recently welcomed a new 12.3-megapixel high-quality camera. It comes with some unique features specifically designed for DIY lovers at the most reasonable cost. The camera has a Sony back-illuminated sensor, lens tripod mounts, adapters for higher-end C and C-S-mount lenses, and a back-focus adjustment ring. This camera is one of…











