This was posted on 2024-01-13
See project source code on github.
This project started off a number of years ago as a simple python script that was written to automatically classify and push images detected by my CCTV camera to my phone using the free telegram API. This program has evolved many times over time and is now tailored to help me accomplish my daily tasks easily on one platform.
The project was done on very very low budget using items that I already had lying around. I did not want to spend any money as I do not have any disposable income to spend here with minimal returns. But.. As the project kept growing I had the urge to spend some money on it hoping for benefits in terms of saving time and effort. I also ran to many issues while using sub-par hardware which pushed me to develop contngency plans to keep the project running.
The project has now come to an extent that I feel I should document it and maintain some documentation as to the improvements that I am doing.
The hardware used is straightforward. The entire solution is powered by a solar panel so as to not consume my home electricity.
Hardware costs to date
Item |
Cost (LKR) |
Cumulative Cost |
Solar Panel (2022) |
50,000 |
50,000 |
Charge Controller (2022) |
Gift |
50,000 |
Connectors (2022) |
5,000 + existing |
55,000 |
40Ah Car Battery (2022) |
22,160 |
77,160 |
100Ah Deep Cycle Battery (2024) |
30,900 |
108,060 |
Raspberry Pi (2013) |
Gift |
108,060 |
Hard Disk |
From old Laptop |
108,060 |
USB to SATA |
Exsiting |
108,060 |
HP PC Second Hand (2024) |
17,500 |
125,560 |
12V ATX Cable |
2,782 |
128,342 |
You can read more about the solar panel here: iamJohnnySam | Homemade Solar Solution
The project at this point consisted of 2 processors that perform dedicated tasks.
I have had to setup and resetup these processors so many times that I have documented the setup steps so that it is easier to restart when needed. The files are saved in .sh files but are not meant to run as is.
The code can be broken down in to below main areas. Each area runs on its own thread and also has the ability to create further short-term threads if required.
At the start of the program it will execute 'platform.node()' to identify which processor the code is running on. If the hostname of either processor is detected it will run in full operation mode. If the identified platform is not matching with the hostname it will only run the programmed functions for the purpose of debugging the code. The communicators will also switch the debugging communicators to prevent cross communication if there is already a system running in operation mode.
Modules Running on Pi |
Modules Running on HP |
|
|
The logger is based off the python logging library but has been improved to record the essential information from the program. This is one of the most important functions which help to log the activities of the program to keep track, monitor and troubleshoot any issues that may come up. The logger function performs the following actions.
The message to console is printed as follows:
,,,,>,
In progress
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
See other projects and posts in the same category as this post
![]() |
Creating a Personal Assistant to automate my lifestyle | |
Designing, Building and Programming a personal assistant to automate my lifestyle. | ||
python, machine learning, programming, smart home | 2024-01-13 | Read More.... |
![]() |
DIY Raspberry Pi based Media Box | |
My effort at creating a system to unify the media around my house | ||
raspberry pi, ssh, media | 2023-07-08 | Read More.... |
![]() |
Home-made Raspberry Pi based Home Security System | |
A home made security solution that can be customized and expanded as needed | ||
Raspberry Pi, Project, Home Security | 2022-02-25 | Read More.... |
![]() |
Home-made Raspberry Pi based Media Center | |
A homemade solution for a networked media storage and madia playback | ||
Raspberry Pi, Kodi, LibreELEC, Samba, Network Storage | 2020-10-30 | Read More.... |