Home Assistant Smart Home Automation
Built a smart-dorm system with Home Assistant + custom sensors to solve cold mornings; achieved ~30% lower energy use and 99.8% automation uptime.
Built a smart-dorm system with Home Assistant + custom sensors to solve cold mornings; achieved ~30% lower energy use and 99.8% automation uptime.
Designed a self-hosted Docker homelab for automation, monitoring, and privacy, replacing multiple SaaS tools with one manageable local stack.
Built a concurrent Go task queue for distributed workloads, focusing on throughput, low latency, and fault-tolerant worker coordination.
This page is a tutorial-style walkthrough for rebuilding my homelab observability stack: metrics (Prometheus) + logs (Loki) + traces (Tempo), all stitched together with Grafana. It’s intentionally Docker Compose-first, so you can clone/copy and get dashboards fast. TL;DR Run Grafana/Prometheus/Loki/Tempo/Alloy on a “monitoring box” Run exporters (node-exporter + cAdvisor) on each host you care about Add scrape targets in Prometheus, then open Grafana and enjoy the graphs What this includes You end up with three pipelines that converge in Grafana: ...
TL;DR Hardware: TP-Link Archer C6 v3 running OpenWrt 24.10.2, a Netgear S350-series smart switch, and Home Assistant watching everything via SNMP. Goals: Static LAN + guest subnets, isolated firewall zones, WireGuard server for remote work, and a dashboard that makes the switch report like it’s on TV. Outcome: One tidy network, one VPN door, no rude guests crawling into the main LAN, and dashboards full of delicious telemetry. Supplies & Preconditions An Archer C6 v3 with OpenWrt already installed. A managed switch (I use the Netgear S350 / GS308T lineage) with SNMP enabled. Home Assistant able to talk SNMP and ingest the networking dashboard. A sense of humor to tolerate occasional PSK mismatch log spam. Step 1: Mirror the Interface Skeleton Think of this as laying out the stage. The Archer C6 publishes: ...
The Archer C6 tutorial walks through the controlled, methodical steps I took to replace TP-Link’s stock firmware with OpenWrt. While the process is simple on paper, it deserves focus, patience, and a willingness to double-check every download and configuration. 🧰 What I Built I turned a consumer router into a flexible OpenWrt platform that I can tweak, monitor, and secure from the command line. The flash process gives me: A clean OpenWrt installation ready for configuration A safety net of backups in case I need to roll back An opportunity to lock the firmware down with proper credentials before exposing it to the internet 🛠️ Technologies Used OpenWrt – The open-source firmware that replaced TP-Link’s UI with a leaner, more powerful stack LuCI – The web user interface used immediately after flashing to verify success and configure basic settings TP-Link stock firmware – Used for early configuration and backup before the OpenWrt migration Ethernet – A wired connection was required to avoid flaky Wi-Fi while flashing Stable power – Flashing over unreliable power is a hard brick waiting to happen 🔐 Flashing Workflow Step 1: Confirm the Hardware Version Flip the router over and note the hardware version printed on the sticker. Archer C6 revisions are incompatible with one another, so grabbing the right firmware (v1 vs. v2, etc.) is critical. If the sticker is unreadable, check the serial number on TP-Link’s site or consult the community firmware tables. ...
A comprehensive, production-ready client for the CARLA autonomous driving simulator featuring realistic vehicle control, sensor fusion, real-time monitoring, and automated deployment pipelines. The project is published on PyPI and Docker Hub with full CI/CD automation. 🚗 What It Is This is my most ambitious project to date - a comprehensive client for the CARLA autonomous driving simulator. The project provides a complete solution for running autonomous driving simulations with realistic vehicle control, sensor fusion, and real-time monitoring. It’s designed as a production-ready system with automated deployment, versioning, and distribution. ...
A comprehensive machine learning project that compares the performance of Random Forest Classifier (RFC), Decision Tree Classifier (DTC), and Support Vector Machine (SVM) algorithms for CPU classification tasks. This project demonstrates different approaches to classification problems and their trade-offs. 🧠 What It Is This project explores three different machine learning algorithms for classification tasks, specifically applied to CPU classification. The goal is to understand the strengths and weaknesses of each algorithm and their suitability for different types of classification problems. ...
AI-powered emotion analyzer that detects faces in photos, analyzes emotions, and generates corresponding music. Built with Python, Flask, and deep learning models. 😊 What It Is An innovative application that combines computer vision, deep learning, and audio generation to create a unique emotional experience. The system can detect human faces in images, analyze their emotional state, and generate music that matches the detected mood. 🛠️ Technologies Used Python - Core application logic and AI processing Flask - Web framework for the user interface TensorFlow - Deep learning framework for emotion recognition PyTorch - Additional neural network models DeepFace - Advanced face detection and analysis OpenCV - Computer vision and image processing Librosa - Audio processing and music generation ✨ Key Features Face Detection Advanced computer vision techniques for face detection Support for multiple faces in a single image Robust detection across different lighting conditions Real-time processing capabilities Emotion Recognition Deep learning models for emotion classification Support for 7 basic emotions: Happy, Sad, Angry, Fear, Surprise, Disgust, Neutral High accuracy emotion detection Confidence scoring for each detected emotion Music Generation AI-generated music based on detected emotions Emotional mapping algorithms Multiple music styles and genres Real-time audio generation Web Interface User-friendly Flask-based web application Drag-and-drop image upload Real-time emotion analysis display Interactive music player with generated tracks 🎯 What I Learned Computer Vision Face detection algorithms and techniques Image preprocessing and augmentation Real-time video processing capabilities Handling different image formats and qualities Deep Learning Training and deploying emotion recognition models Model optimization and fine-tuning Transfer learning for improved accuracy Handling imbalanced datasets Audio Processing Music generation using AI models Audio feature extraction and analysis Emotional mapping to musical characteristics Real-time audio synthesis Web Development Building responsive web interfaces with Flask File upload and processing Real-time updates and user feedback Integration of multiple AI services 🔧 Technical Challenges Emotion Recognition Accuracy Training models to accurately recognize emotions across different facial expressions, lighting conditions, and cultural variations was a significant challenge. ...
A machine learning project focused on GPU classification and performance analysis. This project demonstrates how to apply machine learning techniques to hardware classification problems, providing insights into GPU performance characteristics. 🎯 What It Is This project applies machine learning techniques to GPU classification and performance analysis. It demonstrates how to use various ML algorithms to classify GPUs based on their specifications and performance characteristics, providing valuable insights for hardware selection and optimization. ...