Articles

Projects

Smart home control panel (SHCP)

Smart home control panel (SHCP) thumbnail
I've been using&nbsp;<a href="https://www.home-assistant.io/" rel="noopener noreferrer nofollow">Home Assistant</a>&nbsp;to control my home IoT devices for a while. Although it fulfills all my needs, I wanted to make my own system so as to get a fully customized smart home control panel and learn how to build such an application in the process.
MQTTNode.jsIoTWebSocketProjects +2

Sign holders for COVID-19 prevention

Sign holders for COVID-19 prevention thumbnail
Compared to other countries, Japan did not enforce a strict lockdown on its population during the COVID-19 pandemic. As a result, most bars and restaurants continued their operations as usual. However, in order to prevent the spread of the virus as much as possible, the staff of my local pub printed out signs asking customers to not leave their table without wearing a mask.
3D printingProjectsCAD

SONOFF Firmware

<a href="https://www.itead.cc/" rel="noopener noreferrer nofollow">ITEAD</a>'s&nbsp;<a href="https://sonoff.itead.cc/en/" rel="noopener noreferrer nofollow">SONOFF</a>s are Wi-Fi enabled relays that can be used to turn applicances on and off remotely.
ProjectsIoT

Rebuilding the Odroid XU4 server

Rebuilding the Odroid XU4 server thumbnail
In a previous article I showcased a simple home server built around an Odroid XU4, which I dismantled soon after migrating to a full-size desktop computer. However, having the Odroid laying around unused was a bit of a waste and I recently started needing a secondary file server to store data backups. So I decided to build a new server with the single board computer
Projects3D printingCAD

Rebuilding the GUI of this CMS with Nuxt.js

Rebuilding the GUI of this CMS with Nuxt.js thumbnail
I have been using this CMS for several years now and overall, it has served me well. However, as the GUI of the CMS was built as an single page application (SPA), meta tags and other SEO options could not easily be generated for each article.</p><p>To solve this problem, I rebuilt this GUI using Nuxt.js as as to leverage server-side rendering (SSR). Articles are now fetched from the CMS API server-side, which allows meta tags to be set before sending content to clients.
Nuxt.jsProjects

Raspberry Pi based display board

Raspberry Pi based display board thumbnail
I recently started using Grafana to visualize my apartment data. Although I can easily open a browser tab to view the dashboard I created, I wanted to have a standalone display dedicated to the task that I could put on a shelf of my living room.
ElectronicsProjectsRaspberry PiGrafana

Raspberry Pi based NAS

Raspberry Pi based NAS thumbnail
This is a simple Raspberry Pi based NAS. Tt features, as the name suggests, a Raspberry Pi as well as a 1TB 3.5'' HDD, interfaced with a USB to SATA converter.
3D printingProjects

RFID wristband

RFID wristband thumbnail
RFID tags are great but often easy to lose. To solve this problem, I designed this case for an RFID tag, which can be worn on one's wrist using a standard watch strap. The case was designed using Fusion360 and then 3D printed.
3D printingWIPProjectsRFID

PET bottle collecting robot

PET bottle collecting robot thumbnail
While at university, two friends and I registered as a team for the <a href="https://robot-competition.epfl.ch/" rel="noopener noreferrer nofollow">EPFL robots competition</a>. The objective of the competition is to build a robot that would collect PET bottles inside an arena and bring them back to a collection area. We figured the robot would need to be designed with a storage space as well as some form of path finding algorithm if we wanted it to be able to carry bottles to the collection area so decided to simply skip the step. Instead, we designed the robot as a bottle cannon that would shoot the bottles in the collection area.
ProjectsArduinoElectronicsRobotics

Odroid XU4 server

Odroid XU4 server thumbnail
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.
3D printingProjectsLinux