Articles

MQTT

MQTThree

MQTThree thumbnail
A simple framework using Three.js and MQTT to easily create digital twins
FeaturedThree.jsProjectsIoTMQTT +2

IoT sensor module

IoT sensor module thumbnail
Although a wide variety of sensing devices can be envisioned for home automation systems, motion and temperature sensors are among the most widespread. This is mostly due to their low cost and simplicity of use. In order to equip multiple rooms of my apartment with such sensors, I designed a simple IoT sensing module that can easily be produced in any quantity.
ESP8266ArduinoIoTElectronicsMQTT +1

MQTT Logger

MQTT Logger thumbnail
A Node.js application which stores data from IoT devices sent over MQTT into an InfluxDB time-series database. It allows the management of multiple data sources into a MongoDB database.
ProjectsInfluxDBMongooseFeaturedExpress +3

Encrypted Mosquitto broker in Kubernetes

Encrypted Mosquitto broker in Kubernetes thumbnail
Mosquitto can usually be installed on an Ubuntu server fairly easily using the APT package manager. By Default, the broker handles unencrypted MQTT connections but it can be configured to use SSL certificates obtained, for example, using Certbot and thus enable MQTTs connections. This configuration is usually achieved by editing the Mosquitto configuration file in /etc/mosquitto so as to point to certificates obtained independently. However, when deploying Mosquitto to Kubernetes, one would prefer not to edit configuration files manually after install. Moreover, in Kubernetes, one can use Cert-manager to obtain SSL certificates. Thus, this article presents an efficient method to deploy a secure MQTTs broker in Kubernetes.
KubernetesMQTTTutorials

MQTT control dashboard

MQTT control dashboard thumbnail
With the cloud native multi-user MQTT platform deployed, I started designing IoT devices that I could distribute to end users. However, without a GUI, interacting with those devices would be difficult. Of course, one could install applications like MQTT dash or similar but this would require tedious configuration such as MQTT broker and topics. I wanted to give users a simpler UX so I made this simple control interface that automatically displays a users devices and allows those to be controlled.
WebVuetifyProjectsMQTTWIP

SONOFF S20 firmware

SONOFF S20 firmware thumbnail
The SONOFF S20 is a cheap Wifi smart socket that enables the remote control of appliances for less than USD 10. Although the hardware is more than decent, its usage requires a proprietary app which most likely involves a third party server between the user and the device. Since the socket uses an ESP8266 at its core, I decided to write my own firmware for it.
ElectronicsIoTWIPMQTT

Multi-user MQTT platform

Multi-user MQTT platform thumbnail
Mosquitto is usually the first candidate to come to mind when looking for an MQTT broker. However, by default, Mosquitto manages users using a password file. This makes it difficult to easily add or remove users, especially when the broker is deployed in Kubernetes.
ProjectsKubernetesMQTTWIPSecurity +1

IoT infrared controller

IoT infrared controller thumbnail
Although probably in the decline, infrared is a common way to remotely control household appliances such as air conditioners or TVs. Being able to turn on an AC unit without leaving the sofa is definitely comfortable, but sometimes it would be even better to be able to do it before even getting home. In order to control those various appliances, I designed a simple WiFi controlled IR emitter.
FeaturedElectronicsInfrared3D printingIoT +3

IoT pan-tilt platform

IoT pan-tilt platform thumbnail
With the COVID-19 pandemic, many of us cannot participate in family gatherings or other similar events in person. Instead, some opt for video-call applications like zoom, but then get constrained to the field of view of camera of the device used for the call.
ElectronicsIoTWIPMQTTProjects

Encrypting Mosquitto using Certbot

This article presents how to encrypt a Mosquitto MQTT broker using SSL certificates obtained with Let's Encrypt
SecurityMQTTTutorials