Articles
IoT fingerprint reader
I recently replaced the RFID ring reader that I use to unlock my front door with an IoT fingerprint reader. An obvious advantage is that I risk losing my finger way less than a ring.
Unlocking my apartment with my face
As part of a previous project, I installed an IoT lock on my front door, which allowed me to control it using my smartphone. However, having to take out my smartphone every time I want to unlock the door quickly becomes annoying. To improve on the situation, I installed an RFID reader on the lock, which I used in combination with an RFID ring which now serves as my key. To follow up on this trend of finding new ways to unlock my door, I decided to explore face recognition technologies.
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.
Solar power setup
I got my hands on a 600W 12V inverter so I decided to experiment with generating my own electricity.
Sending pictures via http with an ESP32-CAM
Pictures taken with the ESP32-CAM can be sent in a multipart/form-data type content via HTTP. Here is a sample code to achieve this:
ESP32-CAM firmware
The ESP32 supports ov2640 cameras, which makes it an ideal platform for a DIY IP camera. For this purpose, I wrote a customized firmware for the ESP32 which provides the following features:
0 - 10 / 6