Read the statement by Michael Teeuw here.
Motion Detection with RaspiCam, Non-Module version
-
hi @bhepler ! thx for sharing your findings!i will try this settings later this week. before to get into it, could you please let me know if it will also work without a RaspiCam?? usb camera is ok? where did you put/hide your own cam? thx :)
-
@bibi I haven’t tried it with a USB cam, but it should work. In the config file, there is a switch to throw if you’re using a USB cam (and different switches to throw if you’re using a network cam - which raises interesting possibilities).
My camera is mounted above the monitor & behind the one-way acrylic. My monitor is smaller than my acrylic by about 2" on a side. This is good in that it’s a very clean installation and you don’t see a camera when you look at the mirror. It’s bad in that it cuts down on the light reaching the camera, preventing the facial recognition from working.
-
Hrm. New problem: After a few hours, the screen goes white. This obviously will not do. Back to the drawing board.
I found this in the motion log:
[1] [NTC] [ALL] [Nov 15 20:25:02] motion_loop: End of event 74 [1] [NTC] [ALL] [Nov 15 20:25:04] motion_loop: fps: 3.999920 idle 26.67% over 0.00% [1] [NTC] [ALL] [Nov 15 20:25:09] motion_loop: fps: 3.998465 idle 24.89% over 0.00% [1] [ERR] [ENC] [Nov 15 20:25:10] ffmpeg_put_frame: Error while writing video frame: [1] [NTC] [ALL] [Nov 15 20:25:10] motion_loop: Thread exiting [1] [INF] [ALL] [Nov 15 20:25:10] motion_cleanup: Calling vid_close() from motion_cleanup [1] [INF] [VID] [Nov 15 20:25:10] vid_close: calling video source cleanup [1] [ALR] [VID] [Nov 15 20:25:10] MMAL Camera cleanup [0] [NTC] [ALL] [Nov 15 20:25:11] main: Threads finished [0] [NTC] [ALL] [Nov 15 20:25:12] main: Motion terminating [0] [NTC] [ALL] [Nov 15 20:25:12] motion_remove_pid: Removed process id file (pid file). [0] [NTC] [ALL] [Nov 15 20:25:12] motion_remove_pid: Closing logfile (/tmp/motion.log).
-
I believe I have it cracked. The white screen was due to MMAL Motion crashing whilst writing a frame to disk. When Motion crashes, it apparently jacks up the video output.
My current solution is to use PM2 to monitor the motion process and restart it when necessary. I’m testing now. If it works for a few more days I’ll report back.
Adding motion to PM2:
pm2 start motion
. Be sure that the motion is not configured to run as a daemon (first option in config file). -
Hi, i do the same at first and restor my sw installation.
But after the same procedure of sw installation this error was again on top.I resolve, by my sw, the reason for that was: motion must start after pm2 startin mm.
My mm start’s automaticly after rebooting.
My motion also. => collision of SW.By doing motion in an cron job with delay time al was fun an running as iwant.
in my case i do following:
don’t foget to install screen.sudo apt-get intsall screen
My motion is running in a screen session.
then the cronjobcrontab -e
and set motion with following parameters:
@reboot sleep 150; screen -S motion -dmS sudo motion -c /home/pi/motion/motion-mmalcam.conf
i hope this is helpfull for you and other persons here.
-
Update: Having PM2 monitor the motion process seems to work quite well. However, I have now discovered that there is a memory leak somewhere in all of this. Using the MMM-SystemStats module, I can watch free memory trickle down throughout the day.
I’ve configured the Pi to reboot early each morning. That’s not an ideal situation, but it seems to have solved the problem. Good enough for me! And more importantly, good enough for the gift recipient.
-
have u increase the swapfile?
-
@lolobyte Negative, I have not. What would you recommend?
-
@bhepler
in general it’s not bad for a raspi3 to increase the swapfile from 100MB to a higher level.at first check your status:
sudo service dphys-swapfile status
U see something like this:● dphys-swapfile.service - LSB: Autogenerate and use a swap file
Loaded: loaded (/etc/init.d/dphys-swapfile)
Active: active (exited) since Mi 2016-11-30 13:17:14 CET; 6h ago
Process: 613 ExecStart=/etc/init.d/dphys-swapfile start (code=exited, status=0 /SUCCESS)Nov 30 13:17:13 raspi3 systemd[1]: Starting LSB: Autogenerate and use a swa…
Nov 30 13:17:14 raspi3 dphys-swapfile[613]: Starting dphys-swapfile swapfile…
Nov 30 13:17:14 raspi3 dphys-swapfile[613]: want /var/swap=1024MByte, checki…t
Nov 30 13:17:14 raspi3 dphys-swapfile[613]: done.
Nov 30 13:17:14 raspi3 systemd[1]: Started LSB: Autogenerate and use a swap…e.
Hint: Some lines were ellipsized, use -l to show in full.Maybe u have 100MB instead of 1024 like in my case.
If u want to change this value the edit your
sudo nano /etc/dphys-swapfile
change to this value and save your file
CONF_SWAPSIZE=1024
the do a
sudo dphys-swapfile setup
and activate your new swap level:
sudo dphys-swapfile swapon
thats all. Now your System can handle wit more than his physical RAM.
In My case i do in raspi-config a new
“Expand File system”
to reorganize the file system an reboot after that my raspi.
If you are a owner of a raspi 2 it’s more common to change the swap file to max 512MB.please inform me what’s your experience after this change
you can also check very niche your tasks mem, swap and other things in a ssh session on your PC with htop
sudo apt-get install htop
have a nice try
-
@lolobyte
Can U specify what this command does,. Am not sure if it isn’t doubling the motion command:@reboot sleep 150; screen -S motion -dmS sudo motion
(ignored the -c path part, cause renamed the config to motion.conf, so not needed)why is there two time motion - in it?
By the way it isn’t working on my mirror