Articles
Network basics
When data needs to be exchanged between several computers, those need to be connected to each other, i.e. forming a network.
IoT lock
Have you ever left your apartment and couldn't remember if you locked your front door or not? Sadly, if it is unlocked, there is not much you can do about it until you get back home. This system is an attempt to solve the problem. Simply put, it consists of attaching an actuator to the door's original locking mechanism control it with through WiFi.
Vocabulary practice web app
When learning a new language, there is no way around having to learn its vocabulary. This simple web app was made to help with this process by providing a multiple choice question style UI. It was designed mainly for Japanese, which uses Chinese characters that can have multiple readings.
Barking alarm
Dogs are great at detering burglars from entering one's home. This system brings the same advantage, without the need for an actual dog.
Samba
Samba is a piece of software used to share directories over a network. Directories shared using samba appear as network folders on the file manager of computers that are on the same network.
Hazard prediction training web app
One of the companies I worked for put a lot of importance on safety. As a way to improve the employees' awareness of danger, there would be regular meetings during which participants would need to identify dangerous points in a picture. The results were written down and archived on paper, which I believed could be improved. So, I created this web application.
DHT and PIR sensor module
This project consists of an HC-SR501 PIR motion sensor and a DHT22 temperature and humidity sensor connected to a Wemos D1 mini, an ESP8266 breakout board.
BLE presence detection
I wanted my home automation system to detect when I arrive home so as to unlock my door automatically or let me know if I leave the apartment without turning the A/C off. I figured my smartphone could be used to achieve this since it is equipped with a vast array of sensors and connectivity options. For example, I could use an app like OwnTracks which would send an MQTT message once I enter a certain perimeter around my apartment. However, constantly monitoring one's GPS location is wasteful in terms of battery life. Another option would be to ping my phone's IP address to check if it is connected to the WiFi, but smartphones can sometimes take a while to connect. So, I decided to use BLE advertising, which does not use too much battery while still remaining constantly active.
Odroid XU4 server
Having one's own server provides the ability to run web services 24/7. However, having a computer running all the time can significantly increase one's electricity bill. The objective of this project was to build a low power home server capable of running common software (Apache, Node.js, etc.) while only consuming little power.
Light controller with PIR sensor
This is an IoT ceiling light controller which includes an HC-SR501 PIR motion sensor. It is built around a Wemos D1 mini (ESP8266 breakout board), which controls a homemade TRIAC breakout board. TRIACs provide the advantage of switching devices on and off silently, as opposed to a mechanical relay.