At this page you can read about the stack of my self hosted services.

Self-hosting is the practice of locally hosting and managing applications instead of renting from SaaSS providers.1

Table of contents

  1. Home automation
  2. Homelab

Home automation

I currently live in a student house with other people. On this page you can find what I use in terms of integration, add-ons and hardware.

Unfortunately, I cannot make a reference to a code repository to share my configurations due to Home Assistant is moving towards a better separation of YAML configuration versus configuration done in the UI. So they are moving towards the concept of UI method instead of editing YAML files.

Blogs about my config

Article Description
- Count the numbers of times the shower is used Tracking how often me and my roommate showers and visualise in a chart

What is the power of using automations in a smart-home context?

Home automation should blend with your current workflow, not replace it. For most devices, there is no faster way to control most devices than how you are already doing it today according to Home Assistant. Also don’t forget your are the only user of your home automation. You may have family, friends and other guests. A example to elaborate this:

  • The lights in the bedroom can be toggled with a wireless zigbee light switch which is located over the normal switch but can be detached in case of a malfuntion. Long press of the switch toggles all the lights in the room.
  • The lights can be controlled with voice commands
  • The lights can be controlled with a wireless remote that lies on a table

In total there are three ways to control the lights which includes the traditional light switch where uninformed guests reach for when they are in your house. You can give members of your household access to the app for more advanced light scenes or specific wishes. I recommend you to read this excellent article from Home Assistant which goes into more detail of how home automation should be in a ideal world.

Hardware

Below is a selection of the most important devices that I use in my house. You may see some chinese vendor names in the list. All the zigbee sensors are not connected to their proprietary hubs so they cannot phone home. I recommend everyone to consider the sensors because of their good price–performance ratio.

Nr. Category Hardware State
1. Zigbee coordinator/router CC2652RB development stick flashed with coordinator zigbee2mqtt firmware In use
2. Lights Philips Hue 4th gen lights In use
3. Lights Ikea TRÅDFRI lights In use
4. Lights YeeLight 1S E27 Bulb In use
5. Lghts YeeLight Aurora Lightstrip Plus YLDD04YL In use
6. Lights YeeLight YLCT01YL Bedside Light
6. Media / Assistant Google Home Mini 2rd gen In Use
7. Sensors Xiaomi Aqara Temperature & Humidity Sensors In Use
8. Sensors Xiaomi Aqara Window Door Sensors In Use
9. Sensors Xiaomi Aqara Motion Sensors In Use
10. Sensors Xiaomi Mijia Light Sensors Not in use
11. Sensors Xiaomi Aqara Smart switch In use
12. Sensors Xiaomi Aqara D1 – 1 way - battery powered In use
13. Sensors P1 port energy usage Smartmeter based on ESP8266 -> flashed with ESPEasy In use
14. Remotes Broadlink RM4C IR Remote In use
15. Sensors Lilgo -Higrow Plant Sensor(Not recommended) -> flashed with Pesor’s firmware for local polling by mqtt In use
16. Switches MOES Tuya ZigBee3.0 Smart Radiator In use
17. Switches Blitzwolf BW-SHP6 Energy usage Plug -> Flashed with Tasmota for local polling In use

The CC2652RB development stick is currently flashed with zigbee2mqtt but can also be flashed2 with OpenThread firmware to support the new IoT compatibility standard Matter. I might buy a extra CC2652RB device to support both Matter and Zigbee ecosystems. It is worth noting that some Zigbee devices are compatable or can be flashed firmware to operate as Thread/Matter devices.

Host

Below is the hardware that I use to run Home Assistant. I started with a Raspberry Pi because the HomeAssistant team offers a minimal operator system optimized to power Home Assistant. It comes with a Supervisor to manage Home Assistant Core and Addons. I will maybe move Home Assistant to my Proxmox host in the future. I recommend everyone to use a cheap SSD because SD cards are known to corrupt data because of many writes or power failures. The Coral AI Accelerator is used to offload machine learning from the CPU the USB device to reduce to load on the CPU.

Nr. Hardware
1. Raspberry Pi 4 running Hass.io
2. Cheap USB 3.0 to Sata III adapter
3. Kingston 120GB SSD
4. Google Coral AI USB Accelerator

Home Assistant describes themself as :

A open source home automation that puts local control and privacy first. Powered by a worldwide community of tinkerers and DIY enthusiasts. Perfect to run on a Raspberry Pi or a local server.

I value online privacy a lot and was looking for a solution for combine products from multiple smart home brands together in one central place. One of the functionalities is creating dashboards that other people in the household can view.

Integerations

  • Awair - Awair to query the API from Awair Servers
  • Broadlink - To control the Broadlink RM4C IF remote. Capture and send IF signals
  • Mosquitto Broker - Open source MQTT message broker that interact with zigbee2mqtt
  • zigbee2mqtt - Zigbee to MQTT bridge, the key component for using different vendors zigbee devices in one system
  • Google Cast -
  • Tasmota -
  • Twilio Webhook - Trigger events using webhook and receive SMS, voice or chat notifications
  • Yeelight -
  • Kraken - Monitor cryptocurrency exchange rates

Add-ons for Hass.io

Homelab

I’m running five KVM virtual machines on the Proxmox hypervisor:

  • mgmt01 - Jump server and Ansible master
  • unifi - Unifi controller on Windows (planning on moving this to a docker image)
  • docker01 - Docker host which servces self-hosted services
  • kali - Penetration testing box, used for TryHackMe and PicoCFT
  • nginx01 - LEMP stack, running Dokuwiki and NUT
  • vpn01 - Pritunl
  • log01 - Graylog

Host

Nr. Hardware
1. Intel NUC NUC8i5BEH running Proxmox VE
2. NVMe 256GB for Proxmox installation
3. Crucial 512GB SATA SSD for ISO, VM and LXC container datastore
4. UGREEN AC1300 USB WLAN passthrough to Kali VM

  1. https://github.com/awesome-selfhosted/awesome-selfhosted ↩︎

  2. https://slae.sh/projects/cc2652/ ↩︎