Best Home Security Cameras

Temporary surveilance for a house under construction

Hey all!

I’m planning a temporary surveillance system for a house that’s still under construction (final stages), with 2-3 IP cameras and RPi3 as NVR. Using 4G to access internet.

The question here is about software, not hardware, please keep this in mind. I already have a Raspberry Pi 3, and if it can’t handle it – I have spare notebooks and stuff that I can reuse as a server. With all that I see no point in spending money on an NVR, especially since I like to tinker with linux and stuff like that anyway.

Hardware I already have:

– Raspberry Pi 3 with 32GB SD card

– USB HDD Drive

Requirements are:

* 2-3 IP cams
* Motion detection, send alarm email and pushbullet
* Upload alarm videos to remote location: google drive, dropbox, owncloud, ftp, or something, ideally including a link in the email
* Ability to also trigger some sort of alarm on site, as in a loud sound, to scare bad guys off. Not yet sure no which hardware to use here, I don’t want to use zwave, so it has to be something else.
* WebUI
* Dynamic DNS (I’m thinking Cloudflare and using python script to change dynamic dns on specific subdomain, this looks like it’s already done anyway, checked the code, should pretty much just work for me out of the box. Could just change subdomain name: [https://github.com/nikhiljohn10/ddns-on-cloudflare](https://github.com/nikhiljohn10/ddns-on-cloudflare) )

I’m quite familiar with HomeAssistant, so I could use that to automate some tasks, like sending pushbullet notification and emails, if software itself does not support something. As well as triggering a sound alarm on site.

I also don’t think it’s a good idea to stream and process video both in NVR software (whichever that is) and HASS on RPi, as that’ll slow things down.

**I wonder which route should I go?** I tried ZoneMinder, but it looks outdated and a hassle to install, especially on RPi.

Second thing I stumbled upon was Shinobi and it looks cool. But has no integration with Hass. But it has Rest API, so maybe there’s a way around it. Or maybe it can do everything I need on it’s own?

And finally I saw MotionEye. It looks so simple but also kind of neat. Combined with hass it may probably do the trick.

So, any thoughts on which software combination could work best?

Thanks for your time and attention!

Update:

In the meantime I installed Shinobi and MotionEye on Raspberry Pi, and tested it with a USB camera.

Shinobi is a pain in the ass to set up, UI is not intuitive, documentation is lacking a lot. For email setup it just said “go there and check that out”. It looks like a cool thing, but takes lots of time to setup basic things. And it does not support USB cameras. I planned to use one too.

MotionEye on the other hand it very simple but looks quite powerful. It supports lots of cameras as well, including USB cameras. It has motion detection and can upload recordings to remote locations including FTP, Dropbox and Google Drive. And it has an easy SMTP email notification support. It does not have any other notifications built in, but it has two very flexible and powerful things that can be triggered by an alarm – webhook (HTTP request) and command. Command is any linux command, http request can pretty much do anything, including sending pushbullet notification.

So far it ticked all requirements. Not yet sure how well it stores videos, but it has a lot of options of encoding, including h264 and it uses ffmpeg which I compiled with Raspberry Pi’s hardware acceleration support.

Waiting for cameras to arrive to see how well it handles with those.

Update 2:

So, finally got my hands on those cameras. FalconEye FE-IPC-BL200P Eco POE and HIKVISION DS-2CD1148-I/BL200P

TLDR – managed to get it working at 640×480 and 15-20 fps with motion detection. Going higher it gets choppy and real FPS jumps anywhere from 10 to 30.

So far it seems to be working much better with mjpeg on HIKVISION camera. FalconEye does not seem to support mjpeg, so I’m stuck with rtsp h264 sub-stream (which is 640×480 or something), but I may try to tweak those settings to see if lower quality or something helps to speed up Pi’s processing of the feed and maybe allows to increase resolution.

I did compile ffmpeg with h264 hardware encoding support, so there’s that.

Anyway it seems to do quite decent job for how small and cheap RPi3 is.

Related posts

19 Thoughts to “Temporary surveilance for a house under construction”

  1. hkr

    i’d say get a 4g router with ddns capabilities and 3 cameras if all you care is alerting you and uploading to a remote location.

    if you need an nvr solution the raspberry pi is not it.

    1. Nixellion

      Why not? Seems good enough for what I need. I mean it’s more powerful than any router. But of course I’ll need a router anyway. It’s just that I already have an RPi3, so I could buy dirt-cheap 4g router and cameras.

      What router can do alerts and notifications and uploading?

      1. hkr

        > Why not? Seems good enough for what I need. I mean it’s more powerful than any router.

        it has been repeated many times, both here and in the raspberry pi forums; the raspberry is barely capable of handling a couple cameras at low fps. you’ll also need an external drive for the recordings, otherwise the sd-card will fail quick. just as many others, i’ve tried it and it’s not a feasible solution.

  2. execexe

    >ROi3, Motion Detection, Pushbullet, cloud storage, 4g with external IP

    Doesn’t compute.

    However Milestone’s xProtect on a beefier machine, with some kind of VPN over 4g could accomplish all of this for free.

    1. Nixellion

      Why not?

      I’m almost there actually. Installed MotionEye, and it has a webhook notification, basically an HTTP GET or POST request. Which I can hook to HomeAssistant or even my own server, which can then handle Pushbullet or any other notification.

      1. execexe

        How are you getting over the cell network?

        1. Nixellion

          Did not get just there yet, but our cell operators have “Real IP” option. It’s not static though, so I’ll need DDNS, which I can do using the script I mentioned in the first post. But it’s only needed to access web-ui from a remote location. All notifications and uploads should still work fine.

          xProtect looks like too much, and I lean towards open source solutions more. And it’s paid, right?

          I’m starting to like MotionEye more and more actually. Just found out that it even has Google Drive upload option.

          1. execexe

            xProtect Essentials or whatever they’re calling it now is free for up to 8 devices.

            You can add alarms, speakers, microphones etc.

            I wish cell operators here could provide real IPs. Dynamic would be fine.

            It would open up so many doors for me. Like a car DVR.

    2. defendityourself

      Sorry to hijack but when I have tried to install xProtect I’ve had issues with IIS on 3 different comps I have never been able to get a successful install I was really looking forward to testing it

  3. joncav2222

    Buy a cheap box TVI kit on eBay if you’re not going to reuse it.

    Otherwise I have a realllllly good IP POE kit that’s not really expensive. Look up UNV. Plug it directly into a 4G modem/router and as long as it has an internal IP address it’ll work perfectly.

    4, 2MP Fixed IP Cameras and the GUI is fantastic. Needs a hard drive which you can grab for $40

    I would say almost all DVR’s and NVR’s come with motion notifications these days and then some.

    1. Nixellion

      Thanks, I’ll keep that in mind if RPi does not work for any reason. But I already have a spare Raspberry Pi 3B+, so I’ll see if it can handle it first 🙂

      ​

      Again, my question is mostly about software, not hardware.

    1. Nixellion

      Thanks, but I was not really asking for hardware recommendations, just software. I know for a fact that Raspberry Pi is more than capable of delivering enough power for what I need. Also I don’t think that buying 3 cameras with individual SIM card in each is a good idea financially.

      1. redbit2020

        How do you know for a fact? you have done it before? if so, why the questions?

        edit: anyways, have a look at this software: https://motion-project.github.io/ … but if you want to be able to handle 3 cameras with a RPi alone, it will need to be about 1 fps per camera (or less)…

        1. Nixellion

          Well, “know for a fact” is a bit of an overstatement, but I’ve seen quite a few articles, posts and even a video from Linus Tech Tips showing that 1 RPi3 can handle at least 2 cameras with 15+ fps.

          You may be confusing Raspberry Pi 3 with maybe RPi 1 or 2. Raspberry Pi 3 has a 4 core ARM processor 1.2 or 1.4ghz depending on the exact model (B or B+). It also has hardware encoding support for a few formats, which can be used to further boost video encoding performance, all you need is recompile ffmpeg, which is just a few commands.

          I know about motion, and I even mentioned that one of the options I’m looking at is MotionEye, which is built on top of motion.

          I’m asking about optinions of software products for surveillance, if anyone had any experience with them. I mentioned a few: ZoneMinder, MotionEye, Shinobi. Since then I also found one more – Kerberos.io. All of which work on pretty much any Linux machine, including RPi.

          I’ll wait till I have cameras on hand and see how well it actually handles them, and will likely get back with results.

          But I start to think that this subreddit is just not DIY enough for the question asked 😀

          1. ASIHTOS

            Ask in a RPi sub. People are constantly doing stuff like this with RPis. I am also interested in seeing your solution to this.

          2. Nixellion

            Update 2:

            So, finally got my hands on those cameras. FalconEye FE-IPC-BL200P Eco POE and HIKVISION DS-2CD1148-I/BL200P

            ​

            TLDR – managed to get it working at 640×480 and 15-20 fps with motion detection. Going higher it gets choppy and real FPS jumps anywhere from 10 to 30.

            ​

            So far it seems to be working much better with mjpeg on HIKVISION camera. FalconEye does not seem to support mjpeg, so I’m stuck with rtsp h264 sub-stream (which is 640×480 or something), but I may try to tweak those settings to see if lower quality or something helps to speed up Pi’s processing of the feed and maybe allows to increase resolution.

            ​

            I did compile ffmpeg with h264 hardware encoding support, so there’s that.

            ​

            Anyway it seems to do quite decent job for how small and cheap RPi3 is.

          3. ASIHTOS

            Thanks for the update. Glad you got it working

Leave a Comment