diff --git a/firmware_mod/config/motion.conf.dist b/firmware_mod/config/motion.conf.dist
index e1b751a8..bcc93b87 100644
--- a/firmware_mod/config/motion.conf.dist
+++ b/firmware_mod/config/motion.conf.dist
@@ -24,6 +24,7 @@ send_email=false
send_telegram=false
telegram_alert_type=image
send_matrix=false
+night_mode_event_delay=30
# General
group_date_pattern="+%Y-%m-%d/%H"
diff --git a/firmware_mod/scripts/common_functions.sh b/firmware_mod/scripts/common_functions.sh
index 2558c138..5c3d64f4 100755
--- a/firmware_mod/scripts/common_functions.sh
+++ b/firmware_mod/scripts/common_functions.sh
@@ -703,6 +703,7 @@ motion_mqtt_video(){
night_mode(){
case "$1" in
on)
+ touch /tmp/last-night
/system/sdcard/bin/setconf -k n -v 1
. /system/sdcard/config/autonight.conf
if [ -z "$ir_led_off" ] || [ $ir_led_off = false ]; then
@@ -713,6 +714,7 @@ night_mode(){
ir_cut off
;;
off)
+ touch /tmp/last-night
ir_led off
ir_cut on
/system/sdcard/bin/setconf -k n -v 0
diff --git a/firmware_mod/scripts/detectionOn.sh b/firmware_mod/scripts/detectionOn.sh
index 6ce197d6..38265e93 100644
--- a/firmware_mod/scripts/detectionOn.sh
+++ b/firmware_mod/scripts/detectionOn.sh
@@ -47,6 +47,15 @@ record_video () {
fi
}
+if [ -f /tmp/last-night -a -n "$night_mode_event_delay" -a "$night_mode_event_delay" -gt 0 ]; then
+ now_ts="$(date +%s)"
+ night_ts="$(/system/sdcard/bin/busybox stat -c %Y /tmp/last-night)"
+ dt="$(($now_ts-$night_ts))"
+ if [ "$dt" -lt "$night_mode_event_delay" ]; then
+ exit 0
+ fi
+fi
+
# Turn on the amber led
if [ "$motion_trigger_led" = true ] ; then
debug_msg "Trigger LED"
diff --git a/firmware_mod/www/cgi-bin/ui_motion.cgi b/firmware_mod/www/cgi-bin/ui_motion.cgi
index 37d88c15..ce25f9a5 100755
--- a/firmware_mod/www/cgi-bin/ui_motion.cgi
+++ b/firmware_mod/www/cgi-bin/ui_motion.cgi
@@ -51,7 +51,8 @@ if [ -n "$F_cmd" ]; then
echo "sendTelegram#:#${send_telegram}"
echo "telegramAlertType#:#${telegram_alert_type}"
echo "sendMatrix#:#${send_matrix}"
-
+ echo "nightModeEventDelay#:#${night_mode_event_delay}"
+
;;
save_config)
if [ -n "${F_motionDetection+x}" ]; then
@@ -74,7 +75,7 @@ if [ -n "$F_cmd" ]; then
echo -n "Motion color indicator set to "
echo -n $(echo $color | cut -d ' ' -f $(($F_motionIndicatorColor + 1)))
echo "
"
- fi
+ fi
fi
if [ -n "${F_motionTracking+x}" ]; then
F_motionTracking=$(printf '%b' "${F_motionTracking//%/\\x}")
@@ -221,6 +222,11 @@ if [ -n "$F_cmd" ]; then
rewrite_config /system/sdcard/config/motion.conf send_matrix $F_sendMatrix
echo "Send Matrix on motion set to $F_sendMatrix
"
fi
+ if [ -n "${F_nightModeEventDelay+x}" ]; then
+ F_nightModeEventDelay=$(printf '%b' "${F_nightModeEventDelay//%/\\x}")
+ rewrite_config /system/sdcard/config/motion.conf night_mode_event_delay $F_nightModeEventDelay
+ echo "Motion night mode delay set to $F_nightModeEventDelay
"
+ fi
if [ -n "${F_regions+x}" ]; then
F_regions=$(printf '%b' "${F_regions//%/\\x}")
rewrite_config /system/sdcard/config/motion.conf region_of_interest $F_regions
@@ -240,4 +246,3 @@ if [ -n "$F_cmd" ]; then
fi
exit 0
-
diff --git a/firmware_mod/www/motion.html b/firmware_mod/www/motion.html
index 7c22d195..eee661a2 100755
--- a/firmware_mod/www/motion.html
+++ b/firmware_mod/www/motion.html
@@ -273,6 +273,10 @@