Giter Site home page Giter Site logo

home-monitor's Introduction

welcome to home-monitor

A little surveillance tool for monitoring what is going around your house... or spying on your neighbor.

preface

This is the main repo. Other repositories are optional and simply add more functionality to this tool.

And yes, I know user interface is both in english and some foreign language you probably never heard of. Personally I do not find it distracting and it's up to you to translate to whatever language you wish.

what it does

  • displays pictures from your webcams
  • provides full fledged DVR like system for all your cams
  • shows current temperature inside or outside your house
  • draws neat temperature line charts of various periods of time (day, week, month)
  • performs a livelihood test on your network devices by pinging a defined array of IP's
  • shows your external IP (no need to use dyndns anymore)
  • displays some other useful information (from other tools from this git such as wifi-player)

how it looks

If everything is setup and configured the right way, you might expect to see something along the lines of this (certain personal data has been redacted):

main1

banana_info

main2

timelapse

how it works

Basically it's an array of three scheduled scripts to be run from cron/systemd.

  • The main script gets executed every 15 minutes and captures pictures from the cameras, inserts temperatures into database table and gathers all the required information
  • The ping-check script is executed every hour and checks if network attached devices are alive around the house (routers, STB's, access points etc.)
  • The video-timelapse script runs every morning at 3AM, downloads yesterday's cam pics and makes mp4 video for each of your cams.

requirements

  • PHP/MySQL web hosting account with FTP access and some free space. You might want from a few MB to infinity depending whether you want to use video-timelapse and how big of an archive to keep.
  • Stable power line and reliable internet connection at your house.
  • A device with Linux, BSD, MacOS to run the home-monitor scripts. I'm using ArchLinux on BananaPi, so be prepared to edit the scripts according to the platform of your choice.
  • A bunch of photo cameras, webcams, network IP cams or whatever device you have that allows picture to be taken from.
  • Some digital temperature sensors you might have lying around somewhere. I use Dallas DS18B20 via 1-wire interface and a cheap chinese USB device called Temper.

installation

  • Clone the repo
  • Put the files where they need to be
  • Pray it works

Unfortunately I don't really have time nor am I willing to provide step by step installation tutorial. However, I'm pretty sure there are lots of smart and curious people who will build something even better and bigger based upon my code. So go download/clone/fork home-monitor and have some fun with it!

my setup

If anyone is interested here's my current setup:

  • BananaPi runs the home-monitor scripts and has Logitech webcam and Temper connected to its USB ports
  • Raspberry Pi has Dallas DS18B20 1wire sensor connected via it's GPIO and also has Creative webcam
  • Bunch of different routers running Oleg/Gorgoyle/DD-WRT/OpenWRT/Tomato third-party firmwares installed on them. Full list can be found on wiki page.

Bitdeli Badge

home-monitor's People

Contributors

bitdeli-chef avatar gedasm avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.