Skip to content

dragarthPl/home-periscope

Repository files navigation

Home Periscope

image

Motivation

The project was initiated because I had a significant problem with the accessibility of the internet module (ecoNET 300) for the VITECO furnace (EG PELLET MINI COMPACT 16 HYBRID) with the PELLAS HYBRID burner. The project is planned to be expanded to automate other household devices (e.g., blinds, lighting, etc.).

image

Project Assumptions

  • Reading data from the furnace
    • Reading room temperature
    • Reading water temperature in the furnace
    • Reading domestic hot water (DHW) temperature
    • Reading the furnace operating mode
    • Reading the flame status
    • Reading the temperature change schedule
    • Reading the fan speed
  • Modifying furnace settings
    • Changing the room temperature
    • Changing the maximum DHW temperature
    • Changing the maximum water temperature in the furnace
    • Changing the furnace operating mode
  • Reading data from the air conditioning
    • Reading indoor temperature
    • Reading outdoor temperature
  • Displaying data on a website
  • Automatic furnace control
  • "Placeholder"/demo mode - running the application without communication with the furnace
  • Automatic application testing

Communication with the Furnace Controller

We communicate with the furnace controller using the RS485 protocol. For this purpose, we use a USB to RS485 converter connected to a Raspberry Pi Zero. We assume two variants of communication with the application:

  • Communication with the application via USB, in which case the application code resides on the Raspberry Pi Zero.
  • Communication with the application via the network, in which case the application code resides on another server.

Additionally, we assume a variant where the application runs with a "placeholder," meaning without communication with the furnace.

  • Placeholder variant

Materials/Inspiration:

Devices Used:

Installing Python on Raspberry Pi in a Different Version Than the Standard

Installation and Setup - Raspberry Pi

Requirements

  • Python 3.11
  • Redis 7.2.4
  • Poetry 1.8.1
  • Node.js v20.11.0
  • PNPM 8.14.3

Environment Setup

Option 1: Raspberry Pi Zero

Installing Python 3.11

  1. Update the system
sudo apt-get update
  1. Install dependencies
sudo apt-get install build-essential tk-dev libncurses5-dev libncursesw5-dev libreadline6-dev libdb5.3-dev libgdbm-dev libsqlite3-dev libssl-dev libbz2-dev libexpat1-dev liblzma-dev zlib1g-dev libffi-dev
  1. Download Python 3.11
wget https://www.python.org/ftp/python/3.11.9/Python-3.11.9.tar.xz
  1. Install Python 3.11
tar -xvf Python-3.11.9.tar.xz
cd Python-3.11.9
./configure --enable-optimizations
make -j 2
sudo make altinstall
  1. Verify the installation
python3.11 --version

Installing Redis 7.2.4

  1. Download Redis 7.2.4
wget https://download.redis.io/redis-stable.tar.gz
  1. Compile and install
tar -xzvf redis-stable.tar.gz
cd redis-stable
make
sudo make install
  1. Start Redis
redis-server

Installing Poetry 1.8.2

  1. Install Poetry
curl -sSL https://install.python-poetry.org | python3.11 -
  1. Add to PATH
export PATH="/home/maurycy/.local/bin:$PATH"

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published