openHAB as poor man's NVR

I’m starting to install IP cameras around my house in piece-meal fashion as budget allows. I’ll be installing just the cameras without an NVR yet and access the cameras individually at first. But I have openHAB working with my DSC alarm system and until I do get an NVR, I figure I’ll write some openHAB rules to grab camera image(s) and email them when, for example, my alarm motion detectors are triggered.

The important things I’d be missing without an NVR that I can think of are:

  • continuous video recording/storage (I’d just get emailed images when my motion detectors are triggered)
  • consolidated view of all my cameras (I’d have to access each camera’s stream individually, but I could probably set up a simple webpage that puts all camera views on one page)

I was just wondering if there are other things I’d be missing without an NVR. If having no NVR turns out to work well enough for my needs, I may just put off buying one indefinitely.

I’m currently doing something similar, but I’m using MotionEye as the NVR component. It supports the features you are interested in as well as doing motion detection on the server rather than on the individual cameras.

I’m achieving integration with OpenHAB via webhook notifications. I also have the camera streams that MotionEye exposes available via my sitemap.

I currently have two cameras constantly streaming to the MotionEye server which is doing motion detection and it is working really well.

That MotionEye software looks really interesting and I will definitely give it a try. Are you running it on anything like a raspberry pi or beaglebone?

Take a look at the ‘motion’ package as well. I had it running on a beaglebone for quite some time. Link to motion software

Also check out zoneminder, it also supports what your looking for, but I found that using real motion sensors and triggering zonerminder worked best for me.

Same. Triggering off a camera catches things like clouds going over where if you can use a PIR, your false positives are greatly diminished.

No I’m not, but one of my cameras is actually a Raspi with a webcam attached running mjpegstreamer to MotionEye.

MotionEye is just a friendly front end to motion. I’ve also used motion by itself in the past and MotionEye is so much easier/quicker to get started with.

It obviously depends on the NVR and what your needs are, but an NVR is a system which manages a lot of things about video recording, so even just a short feature list would be more comprehensive than just recording and centralizing video streams. The question as usual is what are your needs, and how much time and/or energy do you want to put into a video management system.

I’m using zoneminder with 4 cams on a Banana Pi (because of the SATA interface). More cams would require a better cpu.
With the help of this system I found out that my cleaning service was working significantly less time than they want to be payed for …
Just to give an idea that such cams can do more useful things than just detect motion. :wink:

I’ve been testing Zoneminder on a puny desktop vmware VM at the moment and it can’t handle more than 2-3 cameras. I’m looking for hardware to build out my zoneminder install on (7-10 POE cameras ranging from 720p to 4MP) and was looking into a powerful workstation. But I wonder if 3 or 4 Banana Pi’s running in multi-server mode would work well? What’s the load like on the Banana Pi with your 4 cameras? Are you doing modect on all your cameras (at what frame rate?)? It sounds like you are saving to an attached SATA HD? Would be interested to know anything more about your Banana Pi/Zoneminder configuration!

Hi ewong3,

you’re right - I have an 30GB SATA SSD attached to the BPi. All 4 cams operate modect with a frame rate of 2 FPS wich is imho enough to see whats happening.
Below are some Indicators form my monitoring of this system in normal operation. I usually dont see spikes in any of these:
CPU load: 15min load 1.93
CPU utilization: user: 40.6%, system: 2.3%, wait: 0.3%, overall 43%
Disk IO SUMMARY: 0.00B/sec read, 61.47kB/sec write, IOs: 3.75/sec

As you see the system is sufficient by now. To extend the system I would try the Banana Pi BPi-M3. With its 8 cores and 2 GB RAM I would expect this to be good for up to 10-15 cams. Maybe at higher frame rates too.

cheers Robert