Difference between revisions of "Single Board Computers"

From ZoneMinder Wiki
Jump to navigationJump to search
 
(25 intermediate revisions by 4 users not shown)
Line 1: Line 1:
The following pages cover Single Board Computers with Zoneminder.  
The following pages cover Single Board Computers with Zoneminder.  


Traditionally, these are ARM based; The Raspberry Pi, The Beaglebone, and others. For those not experienced with ARM these devices perform at level below an x86 based motherboard, yet offer lower power consumption and purchase cost. When using an ARM board, it is recommended to run cameras at lower resolutions (e.g. 640x480 or 800x600), and lower frame rates. Additionally, zones should be smaller, as analysis of motion will use up CPU. Alternatively, you can avoid Modect and Mocord and use Record.
Traditionally, these are ARM/RISCV based; The Raspberry Pi, The Beaglebone, and others. For those not experienced with ARM these devices have less CPU ability than an x86 based computer, yet offer lower power consumption (and sometimes less cost, though used x86 laptops are very cheap). When using an ARM board, it is recommended to run cameras at lower resolutions (e.g. 320x240, 640x480, or 800x600), and lower frame rates. Additionally, zones should be smaller, as analysis of motion will use up CPU. Alternatively, you can avoid Modect and Mocord and use Record only, with camera passthrough direct to the hdd, which will be efficient.


Single Board Computers (ARM) work well for a small home setup, or as an adjunct to a larger camera system. For large camera systems, they are not usually powerful enough.
Single Board Computers work well for a small home setup (maybe 4-8 cameras), or as an adjunct to a larger camera system. For large camera systems, they are probably not powerful enough. As an accessory to a larger system, you might setup an SBC to record only certain cameras, while being located in a different place from the main server, as a second source in case of theft/fire of the main server.




Line 28: Line 28:


* [[Raspberry Pi 3 - Raspbian]]
* [[Raspberry Pi 3 - Raspbian]]
* Premade image for RPI3b here: https://zmrepo.zoneminder.com


* [[Raspberry Pi 4 - Raspbian]] - Uses Buster. Applicable to other RPIs that have Buster.
* [[Raspberry Pi 4 - Raspbian]] - Uses Buster. Applicable to other RPIs that have Buster.


* [[Raspbian]] - General Raspbian info
* [https://wiki.alpinelinux.org/wiki/ZoneMinder_video_camera_security_and_surveillance Raspberry Pi 4 - Alpine] - Tested with 1.38.


* [[Odroid - XU4 - Ubuntu Mate]]
* [[Odroid - XU4 - Ubuntu Mate]]


* [[Beaglebone Black - Devuan Jessie]]
* [[Beaglebone Black - Devuan Jessie]]
* Z83 II , Intel Atom X5-Z8350, runs well with 75-85 % Usage @ 10 fps, 4 HD-cams and motion detection


===As Client===
===As Client===
Line 47: Line 51:
* [https://forums.zoneminder.com/viewtopic.php?f=9&t=27402 How to setup an Orange Pi PC2 with 3 USB cams as RTSP server]
* [https://forums.zoneminder.com/viewtopic.php?f=9&t=27402 How to setup an Orange Pi PC2 with 3 USB cams as RTSP server]


==General Tips==
==Tips/Techniques==
===General Tips===
* Disable all logging and any data collection (''RECORD_EVENT_STATS'' - See ''Logging'' tab) on ARM boards if you are running a flash based HD.
 
If load is high or cameras don't seem to work lower the following:
* Resolution
* FPS (on camera only)
* Analysis zone size or change from Mocord to Record. See: [https://wiki.zoneminder.com/Dummies_Guide#Monitor_Settings_in_Zoneminder Link here].
* Limit analysis FPS (motion detection uses the most CPU)
* Use an external HDD for the DB and [https://wiki.zoneminder.com/Using_a_dedicated_Hard_Drive video storage.]
* Alpine has a RAM only install that may wear down the sd card less.


* Disable all logging on ARM boards, and any data collection (RECORD_EVENT_STATS - See Logging tab), if you are running a flash based HD.


When in doubt lower the following:
* Resolution
* FPS
* Analysis zone size or change from Mocord to Record.


===GPU Memory===
===GPU Memory===
User from the forum reports that adjusting GPU memory will improve RPI4 performance with ZM.
User from the forum reports that adjusting GPU memory will improve RPI4 performance with ZM (this is only needed when using motion detection. If you passthrough direct to the hdd, it can be skipped). [http://forums.zoneminder.com/viewtopic.php?f=39&t=28614&p=113082][http://forums.zoneminder.com/viewtopic.php?f=38&t=28706&p=112388]
http://forums.zoneminder.com/viewtopic.php?f=39&t=28614&p=113082&hilit=gpu&sid=20dae3382577cc3019eac3b60d3bcfac#p113082


http://forums.zoneminder.com/viewtopic.php?f=38&t=28706&p=112388&hilit=gpu&sid=20dae3382577cc3019eac3b60d3bcfac#p112388
'''piflipper''': ''I had the same issue, to solve it I upped the GPU memory to 512MB, via raspi-config and everything started working. Now have 3 cameras working without any issues.''
'''fatboy''': ''Working *great* now! Increase GPU memory: ''/boot/config.txt'' - gpu_mem=512''


===RPI Image for ZM===
===RPI Image for ZM===
Line 67: Line 76:


Only adjustment needed may be to increase GPU_MEM slightly.
Only adjustment needed may be to increase GPU_MEM slightly.
===Hardware h264===
https://forums.zoneminder.com/viewtopic.php?f=40&t=30565


==Resources==
==Resources==


[https://zoneminder.blogspot.com Zoneminder Blogspot] - Notes on Various Single Board Computers
[https://zoneminder.blogspot.com Zoneminder Blogspot] - Notes on Various Single Board Computers

Latest revision as of 21:52, 3 September 2026

The following pages cover Single Board Computers with Zoneminder.

Traditionally, these are ARM/RISCV based; The Raspberry Pi, The Beaglebone, and others. For those not experienced with ARM these devices have less CPU ability than an x86 based computer, yet offer lower power consumption (and sometimes less cost, though used x86 laptops are very cheap). When using an ARM board, it is recommended to run cameras at lower resolutions (e.g. 320x240, 640x480, or 800x600), and lower frame rates. Additionally, zones should be smaller, as analysis of motion will use up CPU. Alternatively, you can avoid Modect and Mocord and use Record only, with camera passthrough direct to the hdd, which will be efficient.

Single Board Computers work well for a small home setup (maybe 4-8 cameras), or as an adjunct to a larger camera system. For large camera systems, they are probably not powerful enough. As an accessory to a larger system, you might setup an SBC to record only certain cameras, while being located in a different place from the main server, as a second source in case of theft/fire of the main server.


Usage

There are at least three ways an SBC can be used with ZM (this also applies to any computer...)

  • ZM server
  • ZM client (viewing ZM and displaying feeds on a monitor)
  • Camera (attached via usb or other peripheral)


List

As Server

  • Z83 II , Intel Atom X5-Z8350, runs well with 75-85 % Usage @ 10 fps, 4 HD-cams and motion detection

As Client

As Camera

Tips/Techniques

General Tips

  • Disable all logging and any data collection (RECORD_EVENT_STATS - See Logging tab) on ARM boards if you are running a flash based HD.

If load is high or cameras don't seem to work lower the following:

  • Resolution
  • FPS (on camera only)
  • Analysis zone size or change from Mocord to Record. See: Link here.
  • Limit analysis FPS (motion detection uses the most CPU)
  • Use an external HDD for the DB and video storage.
  • Alpine has a RAM only install that may wear down the sd card less.


GPU Memory

User from the forum reports that adjusting GPU memory will improve RPI4 performance with ZM (this is only needed when using motion detection. If you passthrough direct to the hdd, it can be skipped). [1][2]

piflipper:  I had the same issue, to solve it I upped the GPU memory to 512MB, via raspi-config and everything started working. Now have 3 cameras working without any issues.
fatboy: Working *great* now! Increase GPU memory: /boot/config.txt - gpu_mem=512

RPI Image for ZM

There is a pre-made RPI image for Zoneminder at https://zmrepo.zoneminder.com Based on Raspbian Lite, and tested on RPI3b.

Only adjustment needed may be to increase GPU_MEM slightly.

Hardware h264

https://forums.zoneminder.com/viewtopic.php?f=40&t=30565

Resources

Zoneminder Blogspot - Notes on Various Single Board Computers