update init scripts

This commit is contained in:
Alfonso Gamboa 2022-08-05 19:37:32 -07:00
parent dd9e226e16
commit eac0ce955b
46 changed files with 1624 additions and 951 deletions

View File

@ -10,7 +10,7 @@ if [ -d /opt/wz_mini/tmp/log_gather ] ; then
rm -rf /opt/wz_mini/tmp/log_gather rm -rf /opt/wz_mini/tmp/log_gather
create_dir create_dir
else else
create_dir create_dir
fi fi
echo "copy wz_mini logs" echo "copy wz_mini logs"

View File

@ -1,24 +1,41 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: Bind mount system files.
# Description: Replace specific system files with our customized versions via bind mount
### END INIT INFO
source /opt/wz_mini/wz_mini.conf . /opt/wz_mini/wz_mini.conf
echo "Replace stock busybox" case "$1" in
mount --bind /opt/wz_mini/bin/busybox /bin/busybox start)
echo "Replace stock fstab" echo "#####$(basename "$0")#####"
mount --bind /opt/wz_mini/etc/fstab /etc/fstab
echo "Replace stock inittab" echo "Replace stock busybox"
mount --bind /opt/wz_mini/etc/inittab /etc/inittab mount --bind /opt/wz_mini/bin/busybox /bin/busybox
echo "Bind /etc/profile for local/ssh shells" echo "Replace stock fstab"
mount --bind /opt/wz_mini/etc/profile /etc/profile mount --bind /opt/wz_mini/etc/fstab /etc/fstab
if [ -d /lib/modules ]; then echo "Replace stock inittab"
mount --bind /opt/wz_mini/etc/inittab /etc/inittab
echo "Replace /etc/profile for local/ssh shells"
mount --bind /opt/wz_mini/etc/profile /etc/profile
if [ -d /lib/modules ]; then
echo "Mount kernel modules in /lib" echo "Mount kernel modules in /lib"
mount --bind /opt/wz_mini/lib/modules /lib/modules mount --bind /opt/wz_mini/lib/modules /lib/modules
fi fi
echo "Replace hostname" echo "Replace system hostname"
echo $CUSTOM_HOSTNAME > /opt/wz_mini/etc/hostname
mount --bind /opt/wz_mini/etc/hostname /etc/hostname echo $CUSTOM_HOSTNAME > /opt/wz_mini/etc/hostname
mount --bind /opt/wz_mini/etc/hostname /etc/hostname
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac

View File

@ -1,12 +1,30 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: Mount tmpfs
# Description: Mount tmpfs for system and wz_mini
### END INIT INFO
source /opt/wz_mini/wz_mini.conf ./opt/wz_mini/wz_mini.conf
echo "Mount wz_mini tmpfs" case "$1" in
mount -t tmpfs /opt/wz_mini/tmp start)
echo "Create workspace directory" echo "#####$(basename "$0")#####"
mkdir /opt/wz_mini/tmp/.storage
echo "Mount wz_mini tmpfs"
mount -t tmpfs /opt/wz_mini/tmp
echo "Create workspace directory"
mkdir /opt/wz_mini/tmp/.storage
echo "Mounting global tmpfs"
mount -t tmpfs /tmp
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac
echo "Mounting global tmpfs"
mount -t tmpfs /tmp

View File

@ -1,5 +1,23 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: Setup BusyBox
# Description: Install BusyBox applets to wz_mini $PATH
### END INIT INFO
case "$1" in
start)
echo "#####$(basename "$0")#####"
echo "Install busybox applets"
mkdir /opt/wz_mini/tmp/.bin
/opt/wz_mini/bin/busybox --install -s /opt/wz_mini/tmp/.bin
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac
echo "Install busybox applets"
mkdir /opt/wz_mini/tmp/.bin
/opt/wz_mini/bin/busybox --install -s /opt/wz_mini/tmp/.bin

View File

@ -1,33 +1,55 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: Detect device model
# Description: Detect which model device we are, and configure the system accordingly
### END INIT INFO
##DETECT CAMERA MODEL & PLATFORM TYPE
#V2=WYZEC1-JZ
#PANv1=WYZECP1_JEF
#PANv2=HL_PAN2
#V3=WYZE_CAKP2JFUS
#DB3=WYZEDB3
#V3C=ATOM_CamV3C
#mtdblock9 only exists on the T20 platform, indicating V2 or PANv1 case "$1" in
if [ -b /dev/mtdblock9 ]; then start)
echo "#####$(basename "$0")#####"
##DETECT CAMERA MODEL & PLATFORM TYPE
#V2=WYZEC1-JZ
#PANv1=WYZECP1_JEF
#PANv2=HL_PAN2
#V3=WYZE_CAKP2JFUS
#DB3=WYZEDB3
#V3C=ATOM_CamV3C
#mtdblock9 only exists on the T20 platform, indicating V2 or PANv1
if [ -b /dev/mtdblock9 ]; then
mkdir /opt/wz_mini/tmp/params mkdir /opt/wz_mini/tmp/params
mount -t jffs2 /dev/mtdblock9 /opt/wz_mini/tmp/params mount -t jffs2 /dev/mtdblock9 /opt/wz_mini/tmp/params
touch /opt/wz_mini/tmp/.$(cat /opt/wz_mini/tmp/params/config/.product_config | grep PRODUCT_MODEL | sed -e 's#.*=\(\)#\1#') touch /opt/wz_mini/tmp/.$(cat /opt/wz_mini/tmp/params/config/.product_config | grep PRODUCT_MODEL | sed -e 's#.*=\(\)#\1#')
touch /opt/wz_mini/tmp/.T20 touch /opt/wz_mini/tmp/.T20
echo "$(cat /opt/wz_mini/tmp/params/config/.product_config | grep PRODUCT_MODEL | sed -e 's#.*=\(\)#\1#') detected"
umount /opt/wz_mini/tmp/params umount /opt/wz_mini/tmp/params
rm -rf /opt/wz_mini/tmp/params rm -rf /opt/wz_mini/tmp/params
elif [ -b /dev/mtdblock6 ]; then elif [ -b /dev/mtdblock6 ]; then
mkdir /opt/wz_mini/tmp/configs mkdir /opt/wz_mini/tmp/configs
mount -t jffs2 /dev/mtdblock6 /opt/wz_mini/tmp/configs mount -t jffs2 /dev/mtdblock6 /opt/wz_mini/tmp/configs
touch /opt/wz_mini/tmp/.$(cat /opt/wz_mini/tmp/configs/.product_config | grep PRODUCT_MODEL | sed -e 's#.*=\(\)#\1#') touch /opt/wz_mini/tmp/.$(cat /opt/wz_mini/tmp/configs/.product_config | grep PRODUCT_MODEL | sed -e 's#.*=\(\)#\1#')
touch /opt/wz_mini/tmp/.T31 touch /opt/wz_mini/tmp/.T31
echo "$(cat /opt/wz_mini/tmp/configs/.product_config | grep PRODUCT_MODEL | sed -e 's#.*=\(\)#\1#') detected"
umount /opt/wz_mini/tmp/configs umount /opt/wz_mini/tmp/configs
rm -rf /opt/wz_mini/tmp/configs rm -rf /opt/wz_mini/tmp/configs
fi fi
#Check for Car FW #Check for Car FW
if [ -f /opt/wz_mini/tmp/.WYZEC1-JZ ]; then if [ -f /opt/wz_mini/tmp/.WYZEC1-JZ ]; then
if cat /system/bin/app.ver | grep 4.55; then if cat /system/bin/app.ver | grep 4.55; then
touch /opt/wz_mini/tmp/.CAR touch /opt/wz_mini/tmp/.CAR
echo "Car FW detected!"
fi fi
fi fi
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac

View File

@ -1,7 +1,28 @@
#!/bin/sh #!/bin/sh
if [ -f /opt/wz_mini/tmp/.T20 ]; then ### BEGIN INIT INFO
# Provides:
# Short-Description: Mount /system
# Description: Mount /system for manipulation, before app_init.sh does
### END INIT INFO
case "$1" in
start)
echo "#####$(basename "$0")#####"
if [ -f /opt/wz_mini/tmp/.T20 ]; then
echo "mounting /system"
mount -t jffs2 /dev/mtdblock4 /system mount -t jffs2 /dev/mtdblock4 /system
elif [ -f /opt/wz_mini/tmp/.T31 ]; then elif [ -f /opt/wz_mini/tmp/.T31 ]; then
echo "mounting /system"
mount /dev/mtdblock3 /system mount /dev/mtdblock3 /system
fi fi
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac

View File

@ -1,52 +1,69 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: Inject commands into app_init.sh
# Description: Patch app_init.sh to inject wz_mini's init.d scripts
### END INIT INFO
source /opt/wz_mini/wz_mini.conf . /opt/wz_mini/wz_mini.conf
echo "Copy stock rcS" case "$1" in
cp /etc/init.d/rcS /opt/wz_mini/tmp/.storage/rcS start)
echo "Add verbose debugging to rcS" echo "#####$(basename "$0")#####"
sed -i '/^".*/aset -x' /opt/wz_mini/tmp/.storage/rcS
echo "Inject init.d scripts to rcS" echo "Copy stock rcS"
sed -i '/^# Run init script.*/i/opt/wz_mini/etc/rc.d/K01network \&\n' /opt/wz_mini/tmp/.storage/rcS cp /etc/init.d/rcS /opt/wz_mini/tmp/.storage/rcS
sed -i '/^# Run init script.*/i/opt/wz_mini/etc/rc.d/K03rcd\n' /opt/wz_mini/tmp/.storage/rcS
echo "Modify Global Paths in rcS" echo "Add verbose debugging to rcS"
sed -i '/sbin:/s/$/:\/opt\/wz_mini\/bin/' /opt/wz_mini/tmp/.storage/rcS sed -i '/^".*/aset -x' /opt/wz_mini/tmp/.storage/rcS
sed -i '/system\/\lib/s/$/:\/opt\/wz_mini\/lib/' /opt/wz_mini/tmp/.storage/rcS
#Custom PATH hooks echo "Inject init.d scripts to rcS"
#sed -i '/^# Run init script.*/i#Hook Library PATH here\nexport LD_LIBRARY_PATH=/tmp/test/lib:$LD_LIBRARY_PATH\n' /opt/wz_mini/tmp/.storage/rcS sed -i '/^# Run init script.*/i/opt/wz_mini/etc/rc.d/K01network \&\n' /opt/wz_mini/tmp/.storage/rcS
#sed -i '/^# Run init script.*/i#Hook system PATH here\nexport PATH=/tmp/test/bin:$PATH\n' /opt/wz_mini/tmp/.storage/rcS sed -i '/^# Run init script.*/i/opt/wz_mini/etc/rc.d/K03rcd\n' /opt/wz_mini/tmp/.storage/rcS
echo "Copy factory app_init.sh" echo "Modify Global Paths in rcS"
cp /system/init/app_init.sh /opt/wz_mini/tmp/.storage/app_init.sh sed -i '/sbin:/s/$/:\/opt\/wz_mini\/bin/' /opt/wz_mini/tmp/.storage/rcS
sed -i '/system\/\lib/s/$/:\/opt\/wz_mini\/lib/' /opt/wz_mini/tmp/.storage/rcS
echo "Replace factory app_init.sh path" #Custom PATH hooks
sed -i '/\/system\/init\/app_init.sh/,+4d' /opt/wz_mini/tmp/.storage/rcS #sed -i '/^# Run init script.*/i#Hook Library PATH here\nexport LD_LIBRARY_PATH=/tmp/test/lib:$LD_LIBRARY_PATH\n' /opt/wz_mini/tmp/.storage/rcS
sed -i '/Run init script.*/a /opt/wz_mini/tmp/.storage/app_init.sh \&\n' /opt/wz_mini/tmp/.storage/rcS #sed -i '/^# Run init script.*/i#Hook system PATH here\nexport PATH=/tmp/test/bin:$PATH\n' /opt/wz_mini/tmp/.storage/rcS
sed -i '/\/system\/init\/app_init.sh/,+2d' /opt/wz_mini/tmp/.storage/rcS echo "Copy factory app_init.sh"
cp /system/init/app_init.sh /opt/wz_mini/tmp/.storage/app_init.sh
if [[ "$DEBUG_ENABLED" == "true" ]]; then echo "Replace factory app_init.sh path"
sed -i '/\/system\/init\/app_init.sh/,+4d' /opt/wz_mini/tmp/.storage/rcS
sed -i '/Run init script.*/a /opt/wz_mini/tmp/.storage/app_init.sh \&\n' /opt/wz_mini/tmp/.storage/rcS
sed -i '/\/system\/init\/app_init.sh/,+2d' /opt/wz_mini/tmp/.storage/rcS
if [[ "$DEBUG_ENABLED" == "true" ]]; then
sed -i '/app_init.sh/,+4d' /opt/wz_mini/tmp/.storage/rcS sed -i '/app_init.sh/,+4d' /opt/wz_mini/tmp/.storage/rcS
sed -i '/^# Run init/i/bin/sh /etc/profile' /opt/wz_mini/tmp/.storage/rcS sed -i '/^# Run init/i/bin/sh /etc/profile' /opt/wz_mini/tmp/.storage/rcS
touch /tmp/dbgflag touch /tmp/dbgflag
elif [[ "$WEB_CAM_ENABLE" == "true" ]]; then elif [[ "$WEB_CAM_ENABLE" == "true" ]]; then
sed -i '/app_init.sh/,+4d' /opt/wz_mini/tmp/.storage/rcS sed -i '/app_init.sh/,+4d' /opt/wz_mini/tmp/.storage/rcS
sed -i '/^# Run init/i/opt/wz_mini/etc/rc.d/K02webcam &' /opt/wz_mini/tmp/.storage/rcS sed -i '/^# Run init/i/opt/wz_mini/etc/rc.d/K02webcam &' /opt/wz_mini/tmp/.storage/rcS
touch /tmp/dbgflag touch /tmp/dbgflag
elif [[ -d /opt/Upgrade ]]; then elif [[ -d /opt/Upgrade ]]; then
sed -i '/app_init.sh/,+4d' /opt/wz_mini/tmp/.storage/rcS sed -i '/app_init.sh/,+4d' /opt/wz_mini/tmp/.storage/rcS
sed -i '/^# Run init/i/bin/sh /etc/profile' /opt/wz_mini/tmp/.storage/rcS sed -i '/^# Run init/i/bin/sh /etc/profile' /opt/wz_mini/tmp/.storage/rcS
sed -i '/^# Mount configs.*/i/opt/wz_mini/bin/upgrade-run.sh &\n' /opt/wz_mini/tmp/.storage/rcS sed -i '/^# Mount configs.*/i/opt/wz_mini/bin/upgrade-run.sh &\n' /opt/wz_mini/tmp/.storage/rcS
touch /tmp/dbgflag touch /tmp/dbgflag
fi fi
echo "Enable libcallback" echo "Enable libcallback"
if [[ "$LIBCALLBACK_ENABLE" == "true" ]] || ([[ "$RTSP_HI_RES_ENABLED" == "true" ]] || [[ "$RTSP_LOW_RES_ENABLED" == "true" ]]); then if [[ "$LIBCALLBACK_ENABLE" == "true" ]] || ([[ "$RTSP_HI_RES_ENABLED" == "true" ]] || [[ "$RTSP_LOW_RES_ENABLED" == "true" ]]); then
echo "set path for iCamera" echo "set path for iCamera"
sed -i 's/\/system\/bin\/iCamera/\/opt\/wz_mini\/usr\/bin\/iCamera/g' /opt/wz_mini/tmp/.storage/app_init.sh sed -i 's/\/system\/bin\/iCamera/\/opt\/wz_mini\/usr\/bin\/iCamera/g' /opt/wz_mini/tmp/.storage/app_init.sh
fi fi
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac

View File

@ -1,15 +1,30 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: Change system password
# Description: Replace system password with wz_mini's version
### END INIT INFO
source /opt/wz_mini/wz_mini.conf . /opt/wz_mini/wz_mini.conf
echo "Replace stock password" case "$1" in
cp /opt/wz_mini/etc/shadow /opt/wz_mini/tmp/.storage/shadow start)
if [[ "$DEBUG_PASSWORD" == "true" ]]; then echo "#####$(basename "$0")#####"
sed -i 's/:[^:]*/:/' /opt/wz_mini/tmp/.storage/shadow
echo "Remove stock password"
fi
mount --bind /opt/wz_mini/tmp/.storage/shadow /etc/shadow echo "Replace stock password"
chmod 400 /etc/shadow cp /opt/wz_mini/etc/shadow /opt/wz_mini/tmp/.storage/shadow
if [[ "$DEBUG_PASSWORD" == "true" ]]; then
sed -i 's/:[^:]*/:/' /opt/wz_mini/tmp/.storage/shadow
echo "Remove stock password"
fi
mount --bind /opt/wz_mini/tmp/.storage/shadow /etc/shadow
chmod 400 /etc/shadow
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac

View File

@ -1,15 +1,28 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: Check for first boot of wz_mini
# Description: Check to see if this is the first time wz_mini is booting, if it is, play an audio prompt
### END INIT INFO
source /opt/wz_mini/etc/rc.common . /opt/wz_mini/wz_mini.conf
source /opt/wz_mini/wz_mini.conf . /opt/wz_mini/etc/rc.common
if [ -e /opt/wz_mini/etc/.first_boot ]; then
case "$1" in
start)
echo "#####$(basename "$0")#####"
if [ -e /opt/wz_mini/etc/.first_boot ]; then
echo "First boot already completed" echo "First boot already completed"
else else
echo "First boot, initializing" echo "First boot, initializing"
if [ -f /opt/wz_mini/tmp/.T20 ]; then touch /opt/wz_mini/etc/.first_boot
#May need different gpio for PANv1 #May need different gpio for PANv1
#We don't rmmod this module, as it is marked [permanent] by the kernel on T20 #We don't rmmod this module, as it is marked [permanent] by the kernel on T20
if [ -f /opt/wz_mini/tmp/.T20 ]; then
insmod /opt/wz_mini/lib/modules/3.10.14/extra/audio.ko sign_mode=0 insmod /opt/wz_mini/lib/modules/3.10.14/extra/audio.ko sign_mode=0
LD_LIBRARY_PATH='/opt/wz_mini/lib' /opt/wz_mini/bin/audioplay_t20 /opt/wz_mini/usr/share/audio/init_v2.wav $AUDIO_PROMPT_VOLUME LD_LIBRARY_PATH='/opt/wz_mini/lib' /opt/wz_mini/bin/audioplay_t20 /opt/wz_mini/usr/share/audio/init_v2.wav $AUDIO_PROMPT_VOLUME
else else
@ -17,11 +30,11 @@ else
/opt/wz_mini/bin/audioplay_t31 /opt/wz_mini/usr/share/audio/init.wav $AUDIO_PROMPT_VOLUME /opt/wz_mini/bin/audioplay_t31 /opt/wz_mini/usr/share/audio/init.wav $AUDIO_PROMPT_VOLUME
rmmod audio rmmod audio
fi fi
fi fi
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac
if [ -f /opt/wz_mini/etc/.first_boot ]; then
echo "Not first_boot"
else
echo "Set first_boot"
touch /opt/wz_mini/etc/.first_boot
fi

View File

@ -1,9 +1,19 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: Load kernel modules
# Description: Load kernel modules depending on model and configuration
### END INIT INFO
source /opt/wz_mini/etc/rc.common . /opt/wz_mini/wz_mini.conf
source /opt/wz_mini/wz_mini.conf . /opt/wz_mini/etc/rc.common
if [[ "$ENABLE_RTL8189FS_DRIVER" == "true" ]] || [[ "$ENABLE_RTL8189FS_DRIVER" == "" ]]; then case "$1" in
start)
echo "#####$(basename "$0")#####"
if [[ "$ENABLE_RTL8189FS_DRIVER" == "true" ]] || [[ "$ENABLE_RTL8189FS_DRIVER" == "" ]]; then
echo "Enable 8189fs" echo "Enable 8189fs"
if [ -f /opt/wz_mini/tmp/.WYZEC1-JZ ]; then if [ -f /opt/wz_mini/tmp/.WYZEC1-JZ ]; then
sed -i 's/\/driver\/rtl8189ftv.ko/\/opt\/wz_mini\/lib\/modules\/3.10.14\/extra\/8189fs.ko rtw_power_mgnt=0 rtw_enusbss=0 rtw_drv_log_level=0/g' /opt/wz_mini/tmp/.storage/app_init.sh sed -i 's/\/driver\/rtl8189ftv.ko/\/opt\/wz_mini\/lib\/modules\/3.10.14\/extra\/8189fs.ko rtw_power_mgnt=0 rtw_enusbss=0 rtw_drv_log_level=0/g' /opt/wz_mini/tmp/.storage/app_init.sh
@ -14,24 +24,23 @@ if [[ "$ENABLE_RTL8189FS_DRIVER" == "true" ]] || [[ "$ENABLE_RTL8189FS_DRIVER" =
elif [ -f /opt/wz_mini/tmp/.ATOM_CamV3C ]; then elif [ -f /opt/wz_mini/tmp/.ATOM_CamV3C ]; then
sed -i 's/\/system\/driver\/rtl8189ftv.ko/\/opt\/wz_mini\/lib\/modules\/3.10.14\_\_isvp_swan_1.0\_\_\/extra\/8189fs.ko rtw_power_mgnt=0 rtw_enusbss=0 rtw_drv_log_level=0/g' /opt/wz_mini/tmp/.storage/app_init.sh sed -i 's/\/system\/driver\/rtl8189ftv.ko/\/opt\/wz_mini\/lib\/modules\/3.10.14\_\_isvp_swan_1.0\_\_\/extra\/8189fs.ko rtw_power_mgnt=0 rtw_enusbss=0 rtw_drv_log_level=0/g' /opt/wz_mini/tmp/.storage/app_init.sh
fi fi
fi fi
if [[ "$ENABLE_ATBM603X_DRIVER" == "true" ]] || [[ "$ENABLE_ATBM603X_DRIVER" == "" ]]; then if [[ "$ENABLE_ATBM603X_DRIVER" == "true" ]] || [[ "$ENABLE_ATBM603X_DRIVER" == "" ]]; then
echo "Enable atbm603x_wifi_sdio" echo "Enable atbm603x_wifi_sdio"
if [ -f /opt/wz_mini/tmp/.ATOM_CamV3C ]; then if [ -f /opt/wz_mini/tmp/.ATOM_CamV3C ]; then
sed -i 's/\/thirdlib\/atbm603x_wifi_sdio.ko/\/opt\/wz_mini\/lib\/modules\/3.10.14\_\_isvp_swan_1.0\_\_\/extra\/atbm603x_wifi_sdio.ko atbm_printk_mask=0/g' /opt/wz_mini/tmp/.storage/app_init.sh sed -i 's/\/thirdlib\/atbm603x_wifi_sdio.ko/\/opt\/wz_mini\/lib\/modules\/3.10.14\_\_isvp_swan_1.0\_\_\/extra\/atbm603x_wifi_sdio.ko atbm_printk_mask=0/g' /opt/wz_mini/tmp/.storage/app_init.sh
elif [ -f /opt/wz_mini/tmp/.T31 ] && ! [ -f /opt/wz_mini/tmp/.ATOM_CamV3C ]; then elif [ -f /opt/wz_mini/tmp/.T31 ] && ! [ -f /opt/wz_mini/tmp/.ATOM_CamV3C ]; then
sed -i 's/\/system\/driver\/atbm603x_wifi_sdio.ko/\/opt\/wz_mini\/lib\/modules\/3.10.14\_\_isvp_swan_1.0\_\_\/extra\/atbm603x_wifi_sdio.ko atbm_printk_mask=0/g' /opt/wz_mini/tmp/.storage/app_init.sh sed -i 's/\/system\/driver\/atbm603x_wifi_sdio.ko/\/opt\/wz_mini\/lib\/modules\/3.10.14\_\_isvp_swan_1.0\_\_\/extra\/atbm603x_wifi_sdio.ko atbm_printk_mask=0/g' /opt/wz_mini/tmp/.storage/app_init.sh
fi fi
fi fi
if [ -f /opt/wz_mini/tmp/.CAR ] || [[ "$ENABLE_CAR_DRIVER" == "true" ]]; then if [ -f /opt/wz_mini/tmp/.CAR ] || [[ "$ENABLE_CAR_DRIVER" == "true" ]]; then
echo "Enable cp210x serial driver for car" echo "Enable cp210x serial driver for car"
modprobe cp210x modprobe cp210x
fi fi
#RTSP SERVER if ([[ "$RTSP_HI_RES_ENABLED" == "true" ]] || [[ "$RTSP_LOW_RES_ENABLED" == "true" ]]) && ! [[ -e /tmp/dbgflag ]]; then
if ([[ "$RTSP_HI_RES_ENABLED" == "true" ]] || [[ "$RTSP_LOW_RES_ENABLED" == "true" ]]) && ! [[ -e /tmp/dbgflag ]]; then
if [[ "$RTSP_LOW_RES_ENABLED" == "true" ]] && [[ "$RTSP_HI_RES_ENABLED" == "true" ]]; then if [[ "$RTSP_LOW_RES_ENABLED" == "true" ]] && [[ "$RTSP_HI_RES_ENABLED" == "true" ]]; then
if [ -f /opt/wz_mini/tmp/.T20 ]; then if [ -f /opt/wz_mini/tmp/.T20 ]; then
echo "Load video loopback driver at video6 video7" echo "Load video loopback driver at video6 video7"
@ -57,18 +66,18 @@ if ([[ "$RTSP_HI_RES_ENABLED" == "true" ]] || [[ "$RTSP_LOW_RES_ENABLED" == "tru
insmod /opt/wz_mini/lib/modules/3.10.14__isvp_swan_1.0__/extra/v4l2loopback.ko video_nr=1 insmod /opt/wz_mini/lib/modules/3.10.14__isvp_swan_1.0__/extra/v4l2loopback.ko video_nr=1
fi fi
fi fi
fi fi
if [[ "$ENABLE_NFSv4" == "true" ]]; then if [[ "$ENABLE_NFSv4" == "true" ]]; then
insmod $KMOD_PATH/kernel/lib/oid_registry.ko insmod $KMOD_PATH/kernel/lib/oid_registry.ko
insmod $KMOD_PATH/kernel/net/dns_resolver/dns_resolver.ko insmod $KMOD_PATH/kernel/net/dns_resolver/dns_resolver.ko
insmod $KMOD_PATH/kernel/fs/nfs/nfsv4.ko insmod $KMOD_PATH/kernel/fs/nfs/nfsv4.ko
insmod $KMOD_PATH/kernel/net/sunrpc/auth_gss/auth_rpcgss.ko insmod $KMOD_PATH/kernel/net/sunrpc/auth_gss/auth_rpcgss.ko
echo "NFSv4 enabled" echo "NFSv4 enabled"
fi fi
if [[ "$ENABLE_IPTABLES" == "true" ]]; then if [[ "$ENABLE_IPTABLES" == "true" ]]; then
insmod $KMOD_PATH/kernel/net/netfilter/x_tables.ko insmod $KMOD_PATH/kernel/net/netfilter/x_tables.ko
insmod $KMOD_PATH/kernel/net/ipv4/netfilter/ip_tables.ko insmod $KMOD_PATH/kernel/net/ipv4/netfilter/ip_tables.ko
@ -85,28 +94,28 @@ if [[ "$ENABLE_IPTABLES" == "true" ]]; then
echo "iptables IPv6 enabled" echo "iptables IPv6 enabled"
fi fi
fi fi
if [[ "$ENABLE_WIREGUARD" == "true" ]]; then if [[ "$ENABLE_WIREGUARD" == "true" ]]; then
insmod $KMOD_PATH/kernel/net/ipv4/tunnel4.ko insmod $KMOD_PATH/kernel/net/ipv4/tunnel4.ko
insmod $KMOD_PATH/kernel/net/ipv4/ip_tunnel.ko insmod $KMOD_PATH/kernel/net/ipv4/ip_tunnel.ko
insmod $KMOD_PATH/kernel/net/wireguard/wireguard.ko insmod $KMOD_PATH/kernel/net/wireguard/wireguard.ko
echo "Wireguard enabled" echo "Wireguard enabled"
fi fi
if [[ "$ENABLE_CIFS" == "true" ]]; then if [[ "$ENABLE_CIFS" == "true" ]]; then
insmod $KMOD_PATH/kernel/fs/cifs/cifs.ko insmod $KMOD_PATH/kernel/fs/cifs/cifs.ko
echo "CIFS enabled" echo "CIFS enabled"
fi fi
if [[ "$ENABLE_USB_STORAGE" == "true" ]]; then if [[ "$ENABLE_USB_STORAGE" == "true" ]]; then
insmod $KMOD_PATH/kernel/drivers/scsi/scsi_mod.ko insmod $KMOD_PATH/kernel/drivers/scsi/scsi_mod.ko
insmod $KMOD_PATH/kernel/drivers/scsi/sd_mod.ko insmod $KMOD_PATH/kernel/drivers/scsi/sd_mod.ko
insmod $KMOD_PATH/kernel/drivers/usb/storage/usb-storage.ko insmod $KMOD_PATH/kernel/drivers/usb/storage/usb-storage.ko
echo "usb_storage enabled" echo "usb_storage enabled"
fi fi
if [[ "$ENABLE_EXT4" == "true" ]]; then if [[ "$ENABLE_EXT4" == "true" ]]; then
if [ -f /opt/wz_mini/tmp/.T20 ]; then if [ -f /opt/wz_mini/tmp/.T20 ]; then
insmod $KMOD_PATH/kernel/lib/crc16.ko insmod $KMOD_PATH/kernel/lib/crc16.ko
fi fi
@ -115,9 +124,9 @@ if [[ "$ENABLE_EXT4" == "true" ]]; then
insmod $KMOD_PATH/kernel/fs/mbcache.ko insmod $KMOD_PATH/kernel/fs/mbcache.ko
insmod $KMOD_PATH/kernel/fs/ext4/ext4.ko insmod $KMOD_PATH/kernel/fs/ext4/ext4.ko
echo "ext4 support enabled" echo "ext4 support enabled"
fi fi
if [[ "$BONDING_ENABLED" == "true" ]]; then if [[ "$BONDING_ENABLED" == "true" ]]; then
if [[ "$BONDING_LINK_MONITORING_FREQ_MS" == "" ]]; then if [[ "$BONDING_LINK_MONITORING_FREQ_MS" == "" ]]; then
BONDING_LINK_MONITORING_FREQ_MS="100" BONDING_LINK_MONITORING_FREQ_MS="100"
fi fi
@ -137,8 +146,15 @@ if [[ "$BONDING_ENABLED" == "true" ]]; then
BONDING_FAIL_OVER_MAC="0" BONDING_FAIL_OVER_MAC="0"
fi fi
# Insert the bonding driver into the kernel echo "Insert the bonding driver into the kernel"
insmod $KMOD_PATH/kernel/drivers/net/bonding/bonding.ko mode=active-backup miimon="$BONDING_LINK_MONITORING_FREQ_MS" downdelay="$BONDING_DOWN_DELAY_MS" updelay="$BONDING_UP_DELAY_MS" primary="$BONDING_PRIMARY_INTERFACE" fail_over_mac="$BONDING_FAIL_OVER_MAC" insmod $KMOD_PATH/kernel/drivers/net/bonding/bonding.ko mode=active-backup miimon="$BONDING_LINK_MONITORING_FREQ_MS" downdelay="$BONDING_DOWN_DELAY_MS" updelay="$BONDING_UP_DELAY_MS" primary="$BONDING_PRIMARY_INTERFACE" fail_over_mac="$BONDING_FAIL_OVER_MAC"
echo "Network bonding enabled" echo "Network bonding enabled"
fi fi
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac

View File

@ -1,14 +1,25 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: Backup critical device files
# Description: Backup /configs and /params directory, these files are unique to the device, and if lost the camera is unusable.
### END INIT INFO
#CAMERA CONFIGURATION FILES BACKUP . /opt/wz_mini/wz_mini.conf
if [ -d /opt/.wz_backup ]; then
case "$1" in
start)
echo "#####$(basename "$0")#####"
if [ -d /opt/.wz_backup ]; then
echo "Factory config backup directory missing" echo "Factory config backup directory missing"
else else
echo "Creating factory config backup directory" echo "Creating factory config backup directory"
mkdir /opt/.wz_backup mkdir /opt/.wz_backup
fi fi
if [ -f /opt/wz_mini/tmp/.T31 ]; then if [ -f /opt/wz_mini/tmp/.T31 ]; then
echo "T31 platform backup" echo "T31 platform backup"
if [ -d /opt/.wz_backup/configs ]; then if [ -d /opt/.wz_backup/configs ]; then
echo "Factory configs backup directory present, not backing up again" echo "Factory configs backup directory present, not backing up again"
@ -16,7 +27,7 @@ if [ -f /opt/wz_mini/tmp/.T31 ]; then
echo "Backup /configs" echo "Backup /configs"
cp -R /configs/ /opt/.wz_backup/ cp -R /configs/ /opt/.wz_backup/
fi fi
elif [ -f /opt/wz_mini/tmp/.T20 ]; then elif [ -f /opt/wz_mini/tmp/.T20 ]; then
echo "T20 platform backup" echo "T20 platform backup"
if [ -d /opt/.wz_backup/configs ]; then if [ -d /opt/.wz_backup/configs ]; then
echo "Factory configs backup directory present, not backing up again" echo "Factory configs backup directory present, not backing up again"
@ -31,5 +42,11 @@ elif [ -f /opt/wz_mini/tmp/.T20 ]; then
echo "Backup /params" echo "Backup /params"
cp -R /params/ /opt/.wz_backup/ cp -R /params/ /opt/.wz_backup/
fi fi
fi fi
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac

View File

@ -1,5 +1,23 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: Start ssh daemon
# Description: Run the dropbear ssh daemon
### END INIT INFO
echo "Run dropbear ssh server" . /opt/wz_mini/wz_mini.conf
/opt/wz_mini/bin/dropbear -R -s -g
case "$1" in
start)
echo "#####$(basename "$0")#####"
echo "Running dropbear ssh server"
/opt/wz_mini/bin/dropbear -R -s -g
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac

View File

@ -1,8 +1,27 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: Check for terminfo directory
# Description: Provide the proper terminfo files for nano and shells
### END INIT INFO
if [ -d /opt/wz_mini/usr/share/terminfo ]; then . /opt/wz_mini/wz_mini.conf
case "$1" in
start)
echo "#####$(basename "$0")#####"
if [ -d /opt/wz_mini/usr/share/terminfo ]; then
echo "Terminfo already present" echo "Terminfo already present"
else else
echo "Terminfo not present, extract" echo "Terminfo not present, extract"
tar xf /opt/wz_mini/usr/share/terminfo.tar -C /opt/wz_mini/usr/share/ tar xf /opt/wz_mini/usr/share/terminfo.tar -C /opt/wz_mini/usr/share/
fi fi
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac

View File

@ -1,7 +1,26 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: Disable factorycheck
# Description: On T31 devices, we must disable factory check to prevent it from unmounting our binds.
### END INIT INFO
if [ -f /opt/wz_mini/tmp/.T31 ]; then . /opt/wz_mini/wz_mini.conf
case "$1" in
start)
echo "#####$(basename "$0")#####"
if [ -f /opt/wz_mini/tmp/.T31 ]; then
mount --bind /opt/wz_mini/bin/factorycheck /system/bin/factorycheck mount --bind /opt/wz_mini/bin/factorycheck /system/bin/factorycheck
touch /tmp/usrflag touch /tmp/usrflag
echo "Replace factorycheck with dummy, to prevent bind unmount" echo "Replace factorycheck with dummy, to prevent bind unmount"
fi fi
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac

View File

@ -1,14 +1,25 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: WLAN HW Init check
# Description: Make sure the WLAN hardware is functional and initialized before proceeding.
### END INIT INFO
#Wait for wlan hardware to be intitialized in app_init.sh, this must be blocking. . /opt/wz_mini/etc/rc.common
while true; do case "$1" in
if ifconfig wlan0 | grep "HWaddr"; then start)
echo "wlan0 hwaddr is up" echo "#####$(basename "$0")#####"
break
else #Wait for wlan hardware to be intitialized in app_init.sh, this must be blocking.
echo "wlan0 hwaddr not ready yet..." #Lets come up with a solution for some cameras with failed wlan hw, someone on reddit mentioned it"
sleep 5 echo "Waiting for wlan hw init"
fi
done wait_for_wlan $(basename "$0")
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac

View File

@ -1,8 +1,25 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: Enable/Disable IPv6
# Description: Enable/Disable IPv6 based on the user configuration
### END INIT INFO
source /opt/wz_mini/wz_mini.conf . /opt/wz_mini/wz_mini.conf
if ! [[ "$ENABLE_IPV6" == "true" ]]; then case "$1" in
start)
echo "#####$(basename "$0")#####"
if ! [[ "$ENABLE_IPV6" == "true" ]]; then
sysctl -w net.ipv6.conf.all.disable_ipv6=1 sysctl -w net.ipv6.conf.all.disable_ipv6=1
echo "ipv6 disabled" echo "ipv6 disabled"
fi fi
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac

View File

@ -1,9 +1,19 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: Wireguard support
# Description: Enable Wireguard support
### END INIT INFO
source /opt/wz_mini/etc/rc.common . /opt/wz_mini/wz_mini.conf
source /opt/wz_mini/wz_mini.conf . /opt/wz_mini/etc/rc.common
if [[ "$ENABLE_WIREGUARD" == "true" ]]; then case "$1" in
start)
echo "#####$(basename "$0")#####"
if [[ "$ENABLE_WIREGUARD" == "true" ]]; then
if [[ "$WIREGUARD_IPV4" != "" ]]; then if [[ "$WIREGUARD_IPV4" != "" ]]; then
@ -27,6 +37,14 @@ if [[ "$ENABLE_WIREGUARD" == "true" ]]; then
/opt/wz_mini/bin/wg set wg0 peer "$WIREGUARD_PEER_PUBLIC_KEY" allowed-ips "$WIREGUARD_PEER_ALLOWED_IPS" endpoint "$WIREGUARD_PEER_ENDPOINT" persistent-keepalive "$WIREGUARD_PEER_KEEP_ALIVE" /opt/wz_mini/bin/wg set wg0 peer "$WIREGUARD_PEER_PUBLIC_KEY" allowed-ips "$WIREGUARD_PEER_ALLOWED_IPS" endpoint "$WIREGUARD_PEER_ENDPOINT" persistent-keepalive "$WIREGUARD_PEER_KEEP_ALIVE"
/opt/wz_mini/bin/busybox ip route add "$WIREGUARD_PEER_ALLOWED_IPS" dev wg0 /opt/wz_mini/bin/busybox ip route add "$WIREGUARD_PEER_ALLOWED_IPS" dev wg0
fi fi
else else
echo "Wireguard disabled" echo "Wireguard disabled"
fi fi
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac

View File

@ -1,6 +1,25 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: Set system hostname
# Description: Set system hostname
### END INIT INFO
source /opt/wz_mini/wz_mini.conf . /opt/wz_mini/wz_mini.conf
case "$1" in
start)
echo "#####$(basename "$0")#####"
echo "Set hostname to $CUSTOM_HOSTNAME"
hostname $CUSTOM_HOSTNAME
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac
echo "Set hostname to $CUSTOM_HOSTNAME"
hostname $CUSTOM_HOSTNAME

View File

@ -1,11 +1,34 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: Start daemon at boot time
# Description: Enable service provided by daemon.
### END INIT INFO
source /opt/wz_mini/wz_mini.conf . /opt/wz_mini/wz_mini.conf
if [[ "$ENABLE_LOCAL_DNS" == "true" ]]; then case "$1" in
start)
echo "#####$(basename "$0")#####"
if [[ "$ENABLE_LOCAL_DNS" == "true" ]]; then
dnsmasq -C /opt/wz_mini/etc/dnsmasq.conf dnsmasq -C /opt/wz_mini/etc/dnsmasq.conf
rm -f /tmp/resolv.conf rm -f /tmp/resolv.conf
cp /opt/wz_mini/etc/resolv.conf /tmp/resolv.conf cp /opt/wz_mini/etc/resolv.conf /tmp/resolv.conf
echo "dnsmasq enabled" echo "dnsmasq enabled"
fi fi
;;
stop)
pkill dnsmasq
;;
restart)
$0 stop
$0 start
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
;;
esac

View File

@ -1,9 +1,32 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: Basic Web Server
# Description: If enabled, start the httpd web server
### END INIT INFO
source /opt/wz_mini/wz_mini.conf . /opt/wz_mini/wz_mini.conf
if [[ "$WEB_SERVER_ENABLED" == "true" ]]; then case "$1" in
start)
echo "#####$(basename "$0")#####"
if [[ "$WEB_SERVER_ENABLED" == "true" ]]; then
httpd -p 80 -h /opt/wz_mini/www httpd -p 80 -h /opt/wz_mini/www
echo "httpd enabled" echo "httpd enabled"
fi fi
;;
stop)
pkill dnsmasq
;;
restart)
$0 stop
$0 start
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
;;
esac

View File

@ -1,18 +1,33 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: Remote USB Accessory Support
# Description: If enabled, support remote usb accessories using socat
### END INIT INFO
source /opt/wz_mini/etc/rc.common . /opt/wz_mini/etc/rc.common
source /opt/wz_mini/wz_mini.conf . /opt/wz_mini/wz_mini.conf
remote() { remote() {
wait_for_wlan_ip $(basename "$0")
wait_for_wlan_ip echo "#####$(basename "$0")#####"
if [[ "$REMOTE_SPOTLIGHT" == "true" ]]; then if [[ "$REMOTE_SPOTLIGHT" == "true" ]]; then
/opt/wz_mini/bin/socat pty,link=/dev/ttyUSB0,raw tcp:"$REMOTE_SPOTLIGHT_HOST":9000 & /opt/wz_mini/bin/socat pty,link=/dev/ttyUSB0,raw tcp:"$REMOTE_SPOTLIGHT_HOST":9000 &
echo "Remote accessory support enabled" echo "Remote accessory support enabled"
else else
echo "Remote accessory support disabled" echo "Remote accessory support disabled"
fi fi
} }
remote & case "$1" in
start)
remote &
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac

View File

@ -1,9 +1,29 @@
#!/bin/sh #!/bin/sh
source /opt/wz_mini/etc/rc.common ### BEGIN INIT INFO
# Provides:
# Short-Description: Store WLAN HW Address
# Description: Store the WLAN HW Address for use by other scripts
### END INIT INFO
wait_for_wlan_wpa . /opt/wz_mini/etc/rc.common
cat /sys/class/net/wlan0/address | tr '[:lower:]' '[:upper:]' > /opt/wz_mini/tmp/wlan0_mac storemac() {
echo "store original mac" wait_for_wlan_wpa $(basename "$0")
echo "#####$(basename "$0")#####"
cat /sys/class/net/wlan0/address | tr '[:lower:]' '[:upper:]' > /opt/wz_mini/tmp/wlan0_mac
echo "store original mac"
}
case "$1" in
start)
storemac
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac

View File

@ -1,8 +1,31 @@
#!/bin/sh #!/bin/sh
source /opt/wz_mini/wz_mini.conf ### BEGIN INIT INFO
# Provides:
# Short-Description: Start RTSP Server
# Description: Provide RTSP Streaming Video over IP
### END INIT INFO
if [[ "$RTSP_HI_RES_ENABLED" == "true" ]]; then . /opt/wz_mini/wz_mini.conf
RTSP=/opt/wz_mini/log/v4l2rtspserver
if [[ -e $RTSP.log || -L $RTSP.log ]] ; then
i=0
while [[ -e $RTSP.log.$i || -L $RTSP.log.$i ]] ; do
let i++
done
mv $RTSP.log $RTSP.log.$i
RTSP=$RTSP
fi
touch -- "$RTSP".log
case "$1" in
start)
echo "#####$(basename "$0")#####"
if [[ "$RTSP_HI_RES_ENABLED" == "true" ]]; then
if [ -f /opt/wz_mini/tmp/.T20 ]; then if [ -f /opt/wz_mini/tmp/.T20 ]; then
HI_VIDEO_DEV="/dev/video6" HI_VIDEO_DEV="/dev/video6"
@ -15,11 +38,11 @@ if [[ "$RTSP_HI_RES_ENABLED" == "true" ]]; then
fi fi
echo "Enable video ch 0" echo "Enable video ch 0"
/opt/wz_mini/bin/cmd video 0 on /opt/wz_mini/bin/cmd video 0 on > /dev/null
if [[ "$RTSP_HI_RES_ENABLE_AUDIO" == "true" ]]; then if [[ "$RTSP_HI_RES_ENABLE_AUDIO" == "true" ]]; then
echo "Enable audio ch 0" echo "Enable audio ch 0"
/opt/wz_mini/bin/cmd audio 0 on /opt/wz_mini/bin/cmd audio 0 on > /dev/null
AUDIO_CH="-C 1" AUDIO_CH="-C 1"
AUDIO_FMT="-a S16_LE" AUDIO_FMT="-a S16_LE"
DEVICE1="$HI_VIDEO_DEV,hw:0,0" DEVICE1="$HI_VIDEO_DEV,hw:0,0"
@ -28,13 +51,13 @@ if [[ "$RTSP_HI_RES_ENABLED" == "true" ]]; then
echo "rtsp audio disabled" echo "rtsp audio disabled"
fi fi
else else
echo "rtsp disabled" echo "rtsp disabled"
fi fi
if [[ "$RTSP_LOW_RES_ENABLED" == "true" ]]; then if [[ "$RTSP_LOW_RES_ENABLED" == "true" ]]; then
if [ -f /opt/wz_mini/tmp/.T20 ]; then if [ -f /opt/wz_mini/tmp/.T20 ]; then
LOW_VIDEO_DEV="/dev/video7" LOW_VIDEO_DEV="/dev/video7"
@ -43,7 +66,7 @@ if [[ "$RTSP_LOW_RES_ENABLED" == "true" ]]; then
fi fi
echo "Enable video ch 1" echo "Enable video ch 1"
/opt/wz_mini/bin/cmd video 1 on /opt/wz_mini/bin/cmd video 1 on > /dev/null
if [[ "$RTSP_PASSWORD" = "" ]]; then if [[ "$RTSP_PASSWORD" = "" ]]; then
RTSP_PASSWORD=$(cat /opt/wz_mini/tmp/wlan0_mac) RTSP_PASSWORD=$(cat /opt/wz_mini/tmp/wlan0_mac)
@ -51,7 +74,7 @@ if [[ "$RTSP_LOW_RES_ENABLED" == "true" ]]; then
if [[ "$RTSP_LOW_RES_ENABLE_AUDIO" == "true" ]]; then if [[ "$RTSP_LOW_RES_ENABLE_AUDIO" == "true" ]]; then
echo "Enable video ch 1" echo "Enable video ch 1"
/opt/wz_mini/bin/cmd audio 1 on /opt/wz_mini/bin/cmd audio 1 on > /dev/null
AUDIO_CH="-C 1" AUDIO_CH="-C 1"
AUDIO_FMT="-a S16_LE" AUDIO_FMT="-a S16_LE"
DEVICE2="$LOW_VIDEO_DEV,hw:2,0" DEVICE2="$LOW_VIDEO_DEV,hw:2,0"
@ -60,25 +83,47 @@ if [[ "$RTSP_LOW_RES_ENABLED" == "true" ]]; then
echo "rtsp audio disabled" echo "rtsp audio disabled"
fi fi
else else
echo "rtsp disabled" echo "rtsp disabled"
fi fi
if [[ "$RTSP_LOW_RES_ENABLED" == "true" ]] || [[ "$RTSP_HI_RES_ENABLED" == "true" ]]; then if [[ "$RTSP_LOW_RES_ENABLED" == "true" ]] || [[ "$RTSP_HI_RES_ENABLED" == "true" ]]; then
echo "delay RTSP for iCamera" echo "delay RTSP for iCamera"
#This delay is required. Sometimes, if you start the rtsp server too soon, live view will break on the app. #This delay is required. Sometimes, if you start the rtsp server too soon, live view will break on the app.
sleep 5 sleep 5
if [[ "$RTSP_AUTH_DISABLE" == "true" ]]; then if [[ "$RTSP_AUTH_DISABLE" == "true" ]]; then
LD_LIBRARY_PATH=/opt/wz_mini/lib /opt/wz_mini/bin/v4l2rtspserver $AUDIO_CH $AUDIO_FMT -F0 -P "$RTSP_PORT" $DEVICE1 $DEVICE2 & echo "Starting RTSP server"
LD_LIBRARY_PATH=/opt/wz_mini/lib LD_PRELOAD=/system/lib/libsetunbuf.so /opt/wz_mini/bin/v4l2rtspserver $AUDIO_CH $AUDIO_FMT -F0 -P "$RTSP_PORT" $DEVICE1 $DEVICE2 > $RTSP.log 2>&1 &
else else
LD_LIBRARY_PATH=/opt/wz_mini/lib /opt/wz_mini/bin/v4l2rtspserver $AUDIO_CH $AUDIO_FMT -F0 -U "$RTSP_LOGIN":"$RTSP_PASSWORD" -P "$RTSP_PORT" $DEVICE1 $DEVICE2 & echo "Starting RTSP server"
LD_LIBRARY_PATH=/opt/wz_mini/lib LD_PRELOAD=/system/lib/libsetunbuf.so /opt/wz_mini/bin/v4l2rtspserver $AUDIO_CH $AUDIO_FMT -F0 -U "$RTSP_LOGIN":"$RTSP_PASSWORD" -P "$RTSP_PORT" $DEVICE1 $DEVICE2 > $RTSP.log 2>&1 &
fi fi
sleep 1 sleep 1
echo "Set imp variables via helper" echo "Set imp variables via helper"
/opt/wz_mini/usr/bin/imp_helper.sh > /dev/null 2>&1 & /opt/wz_mini/usr/bin/imp_helper.sh > /dev/null 2>&1 &
fi fi
sync;echo 3 > /proc/sys/vm/drop_caches
;;
stop)
pkill v4l2rtspserver
cmd video 0 off
cmd audio 0 off
cmd video 1 off
cmd audio 1 off
pkill imp_helper.sh
;;
restart)
$0 stop
$0 start
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
;;
esac
sync;echo 3 > /proc/sys/vm/drop_caches

View File

@ -1,8 +1,17 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: Start rtsp service
# Description: Enable RTMP Streaming Video
### END INIT INFO
source /opt/wz_mini/wz_mini.conf . /opt/wz_mini/wz_mini.conf
if ([[ "$RTSP_LOW_RES_ENABLED" == "true" ]] || [[ "$RTSP_HI_RES_ENABLED" == "true" ]]) && [[ "$RTMP_STREAM_ENABLED" == "true" ]] && ([[ "$RTSP_LOW_RES_ENABLE_AUDIO" == "true" ]] || [[ "$RTSP_HI_RES_ENABLE_AUDIO" == "true" ]]); then case "$1" in
start)
echo "#####$(basename "$0")#####"
if ([[ "$RTSP_LOW_RES_ENABLED" == "true" ]] || [[ "$RTSP_HI_RES_ENABLED" == "true" ]]) && [[ "$RTMP_STREAM_ENABLED" == "true" ]] && ([[ "$RTSP_LOW_RES_ENABLE_AUDIO" == "true" ]] || [[ "$RTSP_HI_RES_ENABLE_AUDIO" == "true" ]]); then
if [[ "$RTMP_STREAM_DISABLE_AUDIO" == "true" ]]; then if [[ "$RTMP_STREAM_DISABLE_AUDIO" == "true" ]]; then
RTMP_AUDIO="no_audio" RTMP_AUDIO="no_audio"
fi fi
@ -10,5 +19,18 @@ if ([[ "$RTSP_LOW_RES_ENABLED" == "true" ]] || [[ "$RTSP_HI_RES_ENABLED" == "tru
#Follow the delay from the RTSP server #Follow the delay from the RTSP server
sleep 5 sleep 5
/opt/wz_mini/bin/rtmp-stream.sh "$RMTP_STREAM_SERVICE" "$RTMP_AUDIO" & /opt/wz_mini/bin/rtmp-stream.sh "$RMTP_STREAM_SERVICE" "$RTMP_AUDIO" &
fi fi
;;
stop)
pkill dnsmasq
;;
restart)
$0 stop
$0 start
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
;;
esac

View File

@ -23,38 +23,38 @@ elif [ -f /opt/wz_mini/tmp/.WYZE_CAKP2JFUS ]; then
fi fi
wait_for_wlan() { wait_for_wlan() {
while true; do while true; do
if ifconfig wlan0 | grep "HWaddr"; then if ifconfig wlan0 | grep "HWaddr" > /dev/null; then
break break
fi fi
echo "Network HW not ready yet, try again in 5 seconds" echo "$1: Network HW not ready yet, try again in 5 seconds"
sleep 5 sleep 5
done done
} }
wait_for_wlan_wpa() { wait_for_wlan_wpa() {
while true; do while true; do
if [ -e /tmp/wpa_supplicant.conf ]; then if [ -e /tmp/wpa_supplicant.conf ]; then
break break
fi fi
echo "wpa_supplicant not initialized yet, try again in 5 seconds" echo "$1: wpa_supplicant not initialized yet, try again in 5 seconds"
sleep 5 sleep 5
done done
} }
wait_for_wlan_ip() { wait_for_wlan_ip() {
while true; do while true; do
if ifconfig wlan0 | grep "inet addr"; then if ifconfig wlan0 | grep "inet addr" > /dev/null; then
break break
fi fi
echo "IP Address not aquired yet, try again in 5 seconds" echo "$1: IP Address not acquired yet, try again in 5 seconds"
sleep 5 sleep 5
done done
} }
wait_for_icamera() { wait_for_icamera() {
while ! pgrep -f "/system/bin/iCamera" > /dev/null; do while ! pgrep -f "/system/bin/iCamera" > /dev/null; do
sleep 5 sleep 5
done done
} }

View File

@ -1,14 +1,14 @@
#!/bin/sh #!/bin/sh
source /opt/wz_mini/etc/rc.common . /opt/wz_mini/etc/rc.common
source /opt/wz_mini/wz_mini.conf . /opt/wz_mini/wz_mini.conf
if [ -e /tmp/dbgflag ]; then if [ -e /tmp/dbgflag ]; then
echo "debug enabled, network.d disabled." echo "debug enabled, network.d disabled."
exit 0 exit 0
fi fi
wait_for_wlan wait_for_wlan $(basename "$0")
for i in /opt/wz_mini/etc/network.d/S??* ;do for i in /opt/wz_mini/etc/network.d/S??* ;do
@ -28,10 +28,10 @@ for i in /opt/wz_mini/etc/network.d/S??* ;do
# No sh extension, so fork subprocess. # No sh extension, so fork subprocess.
$i start $i start
;; ;;
esac esac
done done
wait_for_wlan_ip wait_for_wlan_ip $(basename "$0")
for i in /opt/wz_mini/etc/rc.local.d/* ;do for i in /opt/wz_mini/etc/rc.local.d/* ;do
@ -51,7 +51,7 @@ for i in /opt/wz_mini/etc/rc.local.d/* ;do
# No sh extension, so fork subprocess. # No sh extension, so fork subprocess.
$i start $i start
;; ;;
esac esac
done done

View File

@ -19,7 +19,7 @@ export WZMINI_CFG=/opt/wz_mini/wz_mini.conf
echo "welcome to wz_cam.sh" echo "welcome to wz_cam.sh"
echo "PID $$" echo "PID $$"
if [ -f /opt/wz_mini/tmp/.T31 ]; then if [ -f /opt/wz_mini/tmp/.T31 ]; then
cp /opt/wz_mini/etc/uvc.config /opt/wz_mini/usr/bin/uvc.config cp /opt/wz_mini/etc/uvc.config /opt/wz_mini/usr/bin/uvc.config
@ -47,10 +47,10 @@ echo "PID $$"
sleep 1 sleep 1
#Set dwc2 ID_PIN driver memory echo "Set dwc2 ID_PIN driver memory"
devmem 0x13500000 32 0x001100cc devmem 0x13500000 32 0x001100cc
devmem 0x10000040 32 0x0b000096 devmem 0x10000040 32 0x0b000096
#wipe the bits to set the ID_PIN echo "Wipe dwc2 memory bits to set the ID_PIN"
devmem 0x10000040 32 0x0b000FFF devmem 0x10000040 32 0x0b000FFF
sleep 1 sleep 1

View File

@ -23,5 +23,5 @@ for i in /opt/wz_mini/etc/rc.d/S??* ;do
# No sh extension, so fork subprocess. # No sh extension, so fork subprocess.
$i start $i start
;; ;;
esac esac
done done

View File

@ -19,5 +19,5 @@ dmesg > $DMESG_LOG.log 2>&1
echo "Deleting logs older than 5 boots..." echo "Deleting logs older than 5 boots..."
find /opt/wz_mini/log -name '*log*' | while read file; do find /opt/wz_mini/log -name '*log*' | while read file; do
[ "${file#/opt/wz_mini/log/*log.}" -gt 5 ] && rm -v "$file" [ "${file#/opt/wz_mini/log/*log.}" -gt 5 ] && rm -v "$file"
done done

View File

@ -1,9 +1,20 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: Extract Swap archive
# Description: Enable required swap file for system. System will crash without it.
### END INIT INFO
source /opt/wz_mini/etc/rc.common . /opt/wz_mini/wz_mini.conf
source /opt/wz_mini/wz_mini.conf . /opt/wz_mini/etc/rc.common
if [ -e /opt/wz_mini/swap.gz ]; then case "$1" in
start)
echo "#####$(basename "$0")#####"
if [ -e /opt/wz_mini/swap.gz ]; then
if [ -f /opt/wz_mini/tmp/.T20 ]; then if [ -f /opt/wz_mini/tmp/.T20 ]; then
LD_LIBRARY_PATH='/opt/wz_mini/lib' /opt/wz_mini/bin/audioplay_t20 /opt/wz_mini/usr/share/audio/swap_v2.wav $AUDIO_PROMPT_VOLUME LD_LIBRARY_PATH='/opt/wz_mini/lib' /opt/wz_mini/bin/audioplay_t20 /opt/wz_mini/usr/share/audio/swap_v2.wav $AUDIO_PROMPT_VOLUME
else else
@ -15,14 +26,20 @@ if [ -e /opt/wz_mini/swap.gz ]; then
gzip -d /opt/wz_mini/swap.gz gzip -d /opt/wz_mini/swap.gz
mkswap /opt/wz_mini/swap mkswap /opt/wz_mini/swap
sync;echo 3 > /proc/sys/vm/drop_caches sync;echo 3 > /proc/sys/vm/drop_caches
else else
echo "Swap archive missing, not extracting" echo "Swap archive missing, not extracting"
fi fi
#SWAP FILE IS REQUIRED FOR OPERATION! if [[ "$ENABLE_SWAP" == "true" ]] && [[ -e /opt/wz_mini/swap ]]; then
if [[ "$ENABLE_SWAP" == "true" ]] && [[ -e /opt/wz_mini/swap ]]; then
echo "Swap file found, enable" echo "Swap file found, enable"
/opt/wz_mini/bin/busybox swapon /opt/wz_mini/swap /opt/wz_mini/bin/busybox swapon /opt/wz_mini/swap
else else
echo "Swap file missing" echo "Swap file missing"
fi fi
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac

View File

@ -1,13 +1,24 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: USB Ethernet Support
# Description: Enable USB Ethernet adapter support and kernel module
### END INIT INFO
source /opt/wz_mini/etc/rc.common . /opt/wz_mini/etc/rc.common
source /opt/wz_mini/wz_mini.conf . /opt/wz_mini/wz_mini.conf
if [[ "$ENABLE_USB_ETH" == "true" ]]; then case "$1" in
start)
echo "#####$(basename "$0")#####"
if [[ "$ENABLE_USB_ETH" == "true" ]]; then
insmod $KMOD_PATH/kernel/drivers/net/usb/usbnet.ko insmod $KMOD_PATH/kernel/drivers/net/usb/usbnet.ko
# Auto-Detect an Ethernet Driver and load it echo "Auto-Detect an Ethernet Driver and load it"
if [[ "$ENABLE_USB_ETH_MODULE_AUTODETECT" == "true" ]]; then if [[ "$ENABLE_USB_ETH_MODULE_AUTODETECT" == "true" ]]; then
for DEVICE in `lsusb | awk '{print $6}'| tr '[:upper:]' '[:lower:]'`; do for DEVICE in `lsusb | awk '{print $6}'| tr '[:upper:]' '[:lower:]'`; do
case $DEVICE in case $DEVICE in
@ -38,7 +49,7 @@ if [[ "$ENABLE_USB_ETH" == "true" ]]; then
done done
fi fi
# Manually load any other Ethernet Drivers if asked for echo "Manually load any other Ethernet Drivers if asked for"
if [[ "$ENABLE_USB_ETH_MODULE_MANUAL" != "" ]]; then if [[ "$ENABLE_USB_ETH_MODULE_MANUAL" != "" ]]; then
for i in $(echo "$ENABLE_USB_ETH_MODULE_MANUAL" | tr "," "\n") for i in $(echo "$ENABLE_USB_ETH_MODULE_MANUAL" | tr "," "\n")
do do
@ -50,4 +61,11 @@ if [[ "$ENABLE_USB_ETH" == "true" ]]; then
else else
echo "USB Ethernet disabled" echo "USB Ethernet disabled"
fi fi
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac

View File

@ -1,9 +1,19 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: USB Direct Networking
# Description: Enable USB Direct Networking kernel modules and support
### END INIT INFO
source /opt/wz_mini/etc/rc.common . /opt/wz_mini/etc/rc.common
source /opt/wz_mini/wz_mini.conf . /opt/wz_mini/wz_mini.conf
if [[ "$ENABLE_USB_DIRECT" == "true" ]]; then case "$1" in
start)
echo "#####$(basename "$0")#####"
if [[ "$ENABLE_USB_DIRECT" == "true" ]]; then
HOST_MACADDR=$(echo "$CUSTOM_HOSTNAME"|md5sum|sed 's/^\(..\)\(..\)\(..\)\(..\)\(..\).*$/02:\1:\2:\3:\4:\5/') HOST_MACADDR=$(echo "$CUSTOM_HOSTNAME"|md5sum|sed 's/^\(..\)\(..\)\(..\)\(..\)\(..\).*$/02:\1:\2:\3:\4:\5/')
if [ -f /opt/wz_mini/tmp/.T20 ]; then if [ -f /opt/wz_mini/tmp/.T20 ]; then
@ -13,10 +23,10 @@ if [[ "$ENABLE_USB_DIRECT" == "true" ]]; then
sleep 1 sleep 1
devmem 0x13500000 32 0x001100cc devmem 0x13500000 32 0x001100cc
else else
#Set dwc2 ID_PIN driver memory echo "Set dwc2 ID_PIN driver memory"
devmem 0x13500000 32 0x001100cc devmem 0x13500000 32 0x001100cc
devmem 0x10000040 32 0x0b000096 devmem 0x10000040 32 0x0b000096
#wipe the bits to set the ID_PIN, only for the V3. echo "wipe dwc2 memory bits to set the ID_PIN, only for the V3"
devmem 0x10000040 32 0x0b000FFF devmem 0x10000040 32 0x0b000FFF
fi fi
@ -31,7 +41,14 @@ if [[ "$ENABLE_USB_DIRECT" == "true" ]]; then
echo "USB Direct enabled" echo "USB Direct enabled"
else else
echo "USB Direct disabled" echo "USB Direct disabled"
fi fi
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac

View File

@ -1,9 +1,17 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: USB RNDIS Tethering Support
# Description: Enable USB RNDIS Tethering kernel modules and support
### END INIT INFO
source /opt/wz_mini/etc/rc.common . /opt/wz_mini/etc/rc.common
source /opt/wz_mini/wz_mini.conf . /opt/wz_mini/wz_mini.conf
if [[ "$ENABLE_USB_RNDIS" == "true" ]]; then case "$1" in
start)
if [[ "$ENABLE_USB_RNDIS" == "true" ]]; then
if [[ "$ENABLE_USB_ETH" == "true" ]] || [[ "$ENABLE_USB_DIRECT" == "true" ]]; then if [[ "$ENABLE_USB_ETH" == "true" ]] || [[ "$ENABLE_USB_DIRECT" == "true" ]]; then
echo "RNDIS is not compatible with ENABLE_USB_ETH or ENABLE_USB_DIRECT. Please enable only ENABLE_USB_RNDIS" echo "RNDIS is not compatible with ENABLE_USB_ETH or ENABLE_USB_DIRECT. Please enable only ENABLE_USB_RNDIS"
else else
@ -15,7 +23,13 @@ if [[ "$ENABLE_USB_RNDIS" == "true" ]]; then
fi fi
echo "USB RNDIS enabled" echo "USB RNDIS enabled"
else else
echo "USB RNDIS disabled" echo "USB RNDIS disabled"
fi fi
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac

View File

@ -1,15 +1,20 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: Configure alternate networking
# Description: Configure networking that is not onboard WLAN
### END INIT INFO
source /opt/wz_mini/etc/rc.common . /opt/wz_mini/etc/rc.common
source /opt/wz_mini/wz_mini.conf . /opt/wz_mini/wz_mini.conf
alternate_iface() { alternate_iface() {
if [[ "$ENABLE_USB_ETH" == "true" ]] || [[ "$ENABLE_USB_DIRECT" == "true" ]] || [[ "$ENABLE_USB_RNDIS" == "true" ]]; then if [[ "$ENABLE_USB_ETH" == "true" ]] || [[ "$ENABLE_USB_DIRECT" == "true" ]] || [[ "$ENABLE_USB_RNDIS" == "true" ]]; then
wait_for_wlan_wpa $(basename "$0")
wait_for_wlan_wpa echo "#####$(basename "$0")#####"
##Fool iCamera by renaming the hardline interface to wlan0
echo "Renaming interfaces" echo "Renaming interfaces"
ifconfig $ALT_IFACE down ifconfig $ALT_IFACE down
@ -30,6 +35,17 @@ alternate_iface() {
} }
if ! [[ "$BONDING_ENABLED" == "true" ]]; then case "$1" in
start)
if ! [[ "$BONDING_ENABLED" == "true" ]]; then
alternate_iface & alternate_iface &
fi fi
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac

View File

@ -1,12 +1,19 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: Network bonding support
# Description: Enable bonding support as configured by user
### END INIT INFO
source /opt/wz_mini/etc/rc.common . /opt/wz_mini/etc/rc.common
source /opt/wz_mini/wz_mini.conf . /opt/wz_mini/wz_mini.conf
bonding_setup() { bonding_setup() {
#we need to wait until wlan0 is up with the modified HWaddr echo "#####$(basename "$0")#####"
wait_for_wlan_wpa
echo "waiting until wlan0 is up with the modified HWaddr"
wait_for_wlan_wpa $(basename "$0")
##Fool iCamera by renaming the hardline interface to wlan0 ##Fool iCamera by renaming the hardline interface to wlan0
@ -73,6 +80,16 @@ bonding_setup() {
} }
if [[ "$BONDING_ENABLED" == "true" ]] && ([[ "$ENABLE_USB_ETH" == "true" ]] || [[ "$ENABLE_USB_DIRECT" == "true" ]]); then
case "$1" in
start)
if [[ "$BONDING_ENABLED" == "true" ]] && ([[ "$ENABLE_USB_ETH" == "true" ]] || [[ "$ENABLE_USB_DIRECT" == "true" ]]); then
bonding_setup & bonding_setup &
fi fi
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac

View File

@ -1,18 +1,31 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: Disable coredump
# Description: Disable dumpload and disable kernel coredump support
### END INIT INFO
source /opt/wz_mini/etc/rc.common . /opt/wz_mini/etc/rc.common
set -x
core() { core() {
wait_for_wlan_wpa $(basename "$0")
#Kill dumpload so it won't waste cpu or ram gathering cores and uploading them when something crashes echo "#####$(basename "$0")#####"
wait_for_wlan_wpa
echo "killing dumpload" echo "Killing dumpload"
/opt/wz_mini/bin/busybox pkill -f dumpload /opt/wz_mini/bin/busybox pkill -f dumpload
echo "Setting kernel core pattern"
sysctl -w kernel.core_pattern='|/bin/false' > /dev/null
} }
sysctl -w kernel.core_pattern='|/bin/false' case "$1" in
start)
core &
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac
core &

View File

@ -1,8 +1,17 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: FW Upgrade Intercept
# Description: Intercept FW Upgrades from vendor
### END INIT INFO
source /opt/wz_mini/wz_mini.conf . /opt/wz_mini/wz_mini.conf
if [[ "$DISABLE_FW_UPGRADE" == "true" ]]; then case "$1" in
start)
echo "#####$(basename "$0")#####"
if [[ "$DISABLE_FW_UPGRADE" == "true" ]]; then
mkdir /tmp/Upgrade mkdir /tmp/Upgrade
mount -t tmpfs -o size=1,nr_inodes=1 none /tmp/Upgrade mount -t tmpfs -o size=1,nr_inodes=1 none /tmp/Upgrade
#Setting this host causes iCamera to segfault, lets ignore it for now #Setting this host causes iCamera to segfault, lets ignore it for now
@ -10,7 +19,16 @@ if [[ "$DISABLE_FW_UPGRADE" == "true" ]]; then
#mount --bind /opt/wz_mini/tmp/.storage/hosts /etc/hosts #mount --bind /opt/wz_mini/tmp/.storage/hosts /etc/hosts
/opt/wz_mini/bin/busybox inotifyd /opt/wz_mini/usr/bin/watch_up.sh /tmp:n > /dev/null 2>&1 & /opt/wz_mini/bin/busybox inotifyd /opt/wz_mini/usr/bin/watch_up.sh /tmp:n > /dev/null 2>&1 &
echo "Firmware updates disabled" echo "Firmware updates disabled"
else else
echo "Firmwware updates enabled, monitor script running"
mkdir /tmp/Upgrade mkdir /tmp/Upgrade
/opt/wz_mini/bin/busybox inotifyd /opt/wz_mini/usr/bin/watch_up.sh /tmp:n > /dev/null 2>&1 & /opt/wz_mini/bin/busybox inotifyd /opt/wz_mini/usr/bin/watch_up.sh /tmp:n > /dev/null 2>&1 &
fi fi
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac

View File

@ -1,23 +1,38 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: MP4WRITE Support
# Description: Prevent system trashing with mp4write support provided by libcallback, temporary video files are written direct to media instead of /tmp
### END INIT INFO
source /opt/wz_mini/etc/rc.common . /opt/wz_mini/etc/rc.common
source /opt/wz_mini/wz_mini.conf . /opt/wz_mini/wz_mini.conf
mp4write() { mp4write() {
wait_for_icamera wait_for_icamera
if [[ "$ENABLE_MP4_WRITE" == "true" ]]; then echo "#####$(basename "$0")#####"
if [[ "$ENABLE_MP4_WRITE" == "true" ]]; then
if [ -f /opt/wz_mini/tmp/.T20 ]; then if [ -f /opt/wz_mini/tmp/.T20 ]; then
echo "mp4_write is not supported on T20" echo "mp4_write is not supported on T20"
else else
/opt/wz_mini/bin/cmd mp4write on /opt/wz_mini/bin/cmd mp4write on > /dev/null
echo "mp4_write enabled" echo "mp4_write enabled"
fi fi
else else
echo "mp4_write disabled" echo "mp4_write disabled"
fi fi
} }
mp4write & case "$1" in
start)
mp4write &
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac

View File

@ -1,8 +1,25 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: Enable NightDrop support
# Description: Prevent the system from dropping FPS during night mode
### END INIT INFO
source /opt/wz_mini/wz_mini.conf . /opt/wz_mini/wz_mini.conf
if [[ "$NIGHT_DROP_DISABLE" == "true" ]]; then case "$1" in
start)
echo "#####$(basename "$0")#####"
if [[ "$NIGHT_DROP_DISABLE" == "true" ]]; then
echo "Night Drop Disable, Enabled" echo "Night Drop Disable, Enabled"
touch /opt/wz_mini/tmp/.nd touch /opt/wz_mini/tmp/.nd
fi fi
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac

View File

@ -1,8 +1,27 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: Disable Motor
# Description: Disable Motor on specified devices
### END INIT INFO
source /opt/wz_mini/wz_mini.conf . /opt/wz_mini/wz_mini.conf
if [[ "$DISABLE_MOTOR" == "true" ]]; then case "$1" in
start)
echo "#####$(basename "$0")#####"
if [[ "$DISABLE_MOTOR" == "true" ]]; then
echo "Motor Disabled" echo "Motor Disabled"
touch /opt/wz_mini/tmp/.ms touch /opt/wz_mini/tmp/.ms
fi else
echo "Motor enabled"
fi
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac

View File

@ -1,23 +1,39 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: Set system FPS
# Description: Set system FPS if greater than factory defaults
### END INIT INFO
source /opt/wz_mini/wz_mini.conf . /opt/wz_mini/wz_mini.conf
#Set system FPS if greater than default case "$1" in
start)
if [ $RTSP_HI_RES_FPS -gt 20 ]; then echo "#####$(basename "$0")#####"
echo "Seting system FPS if greater than default"
if [ $RTSP_HI_RES_FPS -gt 20 ]; then
if cat /configs/.user_config | grep fps; then if cat /configs/.user_config | grep fps; then
sed -i "s/fps.*/fps\=$RTSP_HI_RES_FPS/" /configs/.user_config sed -i "s/fps.*/fps\=$RTSP_HI_RES_FPS/" /configs/.user_config
else else
sed -i "/\[SETTING\].*/a fps=$RTSP_HI_RES_FPS" /configs/.user_config sed -i "/\[SETTING\].*/a fps=$RTSP_HI_RES_FPS" /configs/.user_config
fi fi
elif [ $RTSP_LOW_RES_FPS -gt 20 ]; then elif [ $RTSP_LOW_RES_FPS -gt 20 ]; then
if cat /configs/.user_config | grep fps; then if cat /configs/.user_config | grep fps; then
sed -i "s/fps.*/fps\=$RTSP_LOW_RES_FPS/" /configs/.user_config sed -i "s/fps.*/fps\=$RTSP_LOW_RES_FPS/" /configs/.user_config
else else
sed -i "/\[SETTING\].*/a fps=$RTSP_LOW_RES_FPS" /configs/.user_config sed -i "/\[SETTING\].*/a fps=$RTSP_LOW_RES_FPS" /configs/.user_config
fi fi
fi fi
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac

View File

@ -1,13 +1,31 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: Start cron daemon
# Description: Enable cron service
### END INIT INFO
source /opt/wz_mini/etc/rc.common . /opt/wz_mini/etc/rc.common
source /opt/wz_mini/wz_mini.conf . /opt/wz_mini/wz_mini.conf
autostart_crond() { autostart_crond() {
wait_for_wlan_ip wait_for_wlan_ip $(basename "$0")
/opt/wz_mini/tmp/.bin/crond -b -c /opt/wz_mini/etc/cron/
echo "#####$(basename "$0")#####"
/opt/wz_mini/tmp/.bin/crond -b -c /opt/wz_mini/etc/cron/
} }
if [[ "$ENABLE_CRONTAB" == "true" ]]; then
autostart_crond & case "$1" in
fi start)
if [[ "$ENABLE_CRONTAB" == "true" ]]; then
autostart_crond &
fi
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac

View File

@ -1,28 +1,43 @@
#!/bin/sh #!/bin/sh
### BEGIN INIT INFO
# Provides:
# Short-Description: Store syslogs
# Description: Enable storing of syslogs to media
### END INIT INFO
source /opt/wz_mini/etc/rc.common . /opt/wz_mini/etc/rc.common
source /opt/wz_mini/wz_mini.conf . /opt/wz_mini/wz_mini.conf
syslog_save() { syslog_save() {
wait_for_icamera
wait_for_icamera echo "#####$(basename "$0")#####"
if [[ "$ENABLE_SYSLOG_SAVE" == "true" ]]; then if [[ "$ENABLE_SYSLOG_SAVE" == "true" ]]; then
echo "Store syslog logs" echo "Store syslog logs"
SYSLOG_LOG=/opt/wz_mini/log/syslog SYSLOG_LOG=/opt/wz_mini/log/syslog
if [[ -e $SYSLOG_LOG.log || -L $SYSLOG_LOG.log ]] ; then if [[ -e $SYSLOG_LOG.log || -L $SYSLOG_LOG.log ]] ; then
i=0 i=0
while [[ -e $SYSLOG_LOG.log.$i || -L $SYSLOG_LOG.log.$i ]] ; do while [[ -e $SYSLOG_LOG.log.$i || -L $SYSLOG_LOG.log.$i ]] ; do
let i++ let i++
done done
mv $SYSLOG_LOG.log $SYSLOG_LOG.log.$i mv $SYSLOG_LOG.log $SYSLOG_LOG.log.$i
SYSLOG_LOG=$SYSLOG_LOG SYSLOG_LOG=$SYSLOG_LOG
fi fi
touch -- "$SYSLOG_LOG".log touch -- "$SYSLOG_LOG".log
logread -F > $SYSLOG_LOG.log & logread -F > $SYSLOG_LOG.log &
fi fi
} }
syslog_save & case "$1" in
start)
syslog_save &
;;
*)
echo "Usage: $0 {start}"
exit 1
;;
esac

View File

@ -1 +1 @@
Wed Aug 3 03:03:52 PM PDT 2022 Fri Aug 5 07:37:04 PM PDT 2022

View File

@ -13,7 +13,7 @@ RE_RUN_DELAY=60
PARM=1 PARM=1
hi_res_monitor() { hi_res_monitor() {
if [[ "$RTSP_HI_RES_ENABLED" == "true" ]]; then if [[ "$RTSP_HI_RES_ENABLED" == "true" ]]; then
if [[ "$RTSP_HI_RES_ENC_PARAMETER" != "" ]]; then if [[ "$RTSP_HI_RES_ENC_PARAMETER" != "" ]]; then
if [ -f /opt/wz_mini/tmp/.T20 ]; then if [ -f /opt/wz_mini/tmp/.T20 ]; then
@ -74,14 +74,14 @@ if [[ "$RTSP_HI_RES_ENABLED" == "true" ]]; then
fi fi
low_res_monitor low_res_monitor
else else
echo "Hi-Res RTSP not enabled" echo "Hi-Res RTSP not enabled"
low_res_monitor low_res_monitor
fi fi
} }
low_res_monitor () { low_res_monitor () {
if [[ "$RTSP_LOW_RES_ENABLED" == "true" ]]; then if [[ "$RTSP_LOW_RES_ENABLED" == "true" ]]; then
if [[ "$RTSP_LOW_RES_ENC_PARAMETER" != "" ]]; then if [[ "$RTSP_LOW_RES_ENC_PARAMETER" != "" ]]; then
if [ -f /opt/wz_mini/tmp/.T20 ]; then if [ -f /opt/wz_mini/tmp/.T20 ]; then
@ -141,14 +141,14 @@ if [[ "$RTSP_LOW_RES_ENABLED" == "true" ]]; then
echo "No Low-Res imp variables enabled, exit" echo "No Low-Res imp variables enabled, exit"
break break
fi fi
else else
echo "Low-Res RTSP not enabled" echo "Low-Res RTSP not enabled"
if [[ "$RTSP_HI_RES_ENABLED" == "true" ]] && [ $PARM -gt 1 ]; then if [[ "$RTSP_HI_RES_ENABLED" == "true" ]] && [ $PARM -gt 1 ]; then
hi_res_monitor hi_res_monitor
else else
break break
fi fi
fi fi
} }
while true; do while true; do

View File

@ -21,59 +21,59 @@ e344ffc55222c029c5d324037a5aa1f3 SD_ROOT/wz_mini/www/car/car.js
540acfdf2638c341e1d168f1af5203de SD_ROOT/wz_mini/www/car/car.css 540acfdf2638c341e1d168f1af5203de SD_ROOT/wz_mini/www/car/car.css
63b23f78d6703f0c9a2e970604104996 SD_ROOT/wz_mini/www/car/car.html 63b23f78d6703f0c9a2e970604104996 SD_ROOT/wz_mini/www/car/car.html
bd11d9a8352eca6a16554c87be50b2f5 SD_ROOT/wz_mini/www/index.html bd11d9a8352eca6a16554c87be50b2f5 SD_ROOT/wz_mini/www/index.html
9a30c16776ac6931a313de1a85f63367 SD_ROOT/wz_mini/etc/network.d/S16rtmp ad5cdda7609e706adb152c0c05e4133e SD_ROOT/wz_mini/etc/network.d/S16rtmp
89c8beceeaf22c8633476994baee9da2 SD_ROOT/wz_mini/etc/network.d/S09dnsmasq a09fe94aa6f18319db58947a1f252c3f SD_ROOT/wz_mini/etc/network.d/S09dnsmasq
6f914e6567dc00dcf988ddd7053f8b61 SD_ROOT/wz_mini/etc/network.d/S04wireguard b77697b15e4d6e32e6e2c8c07cbceee2 SD_ROOT/wz_mini/etc/network.d/S04wireguard
557060f9488606bb6817bde355b0c014 SD_ROOT/wz_mini/etc/network.d/S12remoteaccessory f533b22f12b6952e2567299fd58fc927 SD_ROOT/wz_mini/etc/network.d/S12remoteaccessory
ac71f3b06fd9d303ffef72f5790136f6 SD_ROOT/wz_mini/etc/network.d/S15v4l2rtspserver 5a3469d5e53cac8d59a0fb2feffaa9e3 SD_ROOT/wz_mini/etc/network.d/S15v4l2rtspserver
195323ca0d9fe26cbb26e67d808737ae SD_ROOT/wz_mini/etc/network.d/S01wlanhw d3ac671f88b6d639926b9f5f9a40da6e SD_ROOT/wz_mini/etc/network.d/S01wlanhw
4f191c79d1b755124a0dfa95dddca3e1 SD_ROOT/wz_mini/etc/network.d/S10httpd 6621e94ec289678afff70a2b51b42f77 SD_ROOT/wz_mini/etc/network.d/S10httpd
1e5365fc53f132424dec1ad73f21e9b9 SD_ROOT/wz_mini/etc/network.d/S03ipv6 9969970dc82daa31b41730ee460514b0 SD_ROOT/wz_mini/etc/network.d/S03ipv6
eaee762583ba295772686505711277f4 SD_ROOT/wz_mini/etc/network.d/S08hostname edebe65d895650235f05291618814ebe SD_ROOT/wz_mini/etc/network.d/S08hostname
d76cec0de3b51d741196771874197b8f SD_ROOT/wz_mini/etc/network.d/S14storemac 9f59e3c2c3a4c9b6600eb5385e29720c SD_ROOT/wz_mini/etc/network.d/S14storemac
32373fa3531a11c1aad41d12830b9c04 SD_ROOT/wz_mini/etc/dnsmasq.conf 32373fa3531a11c1aad41d12830b9c04 SD_ROOT/wz_mini/etc/dnsmasq.conf
34c6a4c3a941ff2becd9f487826d7692 SD_ROOT/wz_mini/etc/uvc.config 34c6a4c3a941ff2becd9f487826d7692 SD_ROOT/wz_mini/etc/uvc.config
893b4982bb2ff2862393956e95f7ad62 SD_ROOT/wz_mini/etc/init.d/S09firstboot 071acd61334923a9a3e5b799e012697e SD_ROOT/wz_mini/etc/init.d/S09firstboot
c857ea1bfa34bec22d706566977a2d39 SD_ROOT/wz_mini/etc/init.d/S11configbackup d59a0e8db7cec700c7ce4e7b2882e25e SD_ROOT/wz_mini/etc/init.d/S11configbackup
75bece2cfb62d4458256587b3421f756 SD_ROOT/wz_mini/etc/init.d/S10kmod 1b4037ffff5b86b31939ef20f2ec2a2c SD_ROOT/wz_mini/etc/init.d/S10kmod
97be853c83a323c58a165e0077978370 SD_ROOT/wz_mini/etc/init.d/S08passwd 5e27d90e6888f9665da2fb442ebd500c SD_ROOT/wz_mini/etc/init.d/S08passwd
4af68407a54722f24db5880e53c6c04b SD_ROOT/wz_mini/etc/init.d/S12ssh 8d9b5da920bf9c739517de3843631334 SD_ROOT/wz_mini/etc/init.d/S12ssh
234065de9a9a36fc2e8292993f00dd54 SD_ROOT/wz_mini/etc/init.d/S05mount b947e5bcb9cccaaf7d970f03732fab67 SD_ROOT/wz_mini/etc/init.d/S05mount
cabd10978939550aac36ec6072059194 SD_ROOT/wz_mini/etc/init.d/S01bind 0113d8e9beb7d393c61959889193ba0e SD_ROOT/wz_mini/etc/init.d/S01bind
507fe51058c50407828fb7026188e5ec SD_ROOT/wz_mini/etc/init.d/S03busybox 74f398e735e66f91bb5ff1ea42c3760d SD_ROOT/wz_mini/etc/init.d/S03busybox
a27d4a0dd6582ae51db92c35cf396ac3 SD_ROOT/wz_mini/etc/init.d/wz_init.sh a27d4a0dd6582ae51db92c35cf396ac3 SD_ROOT/wz_mini/etc/init.d/wz_init.sh
6387f4fcf1b40dc76d50eb1622526633 SD_ROOT/wz_mini/etc/init.d/S16factorycheck 93ac3cc23a532f73921244aa61b62362 SD_ROOT/wz_mini/etc/init.d/S16factorycheck
0704333eb4aa14e2c5b09282c626266a SD_ROOT/wz_mini/etc/init.d/S04model 95368f5581eff0e2f8eb1fac46b82c47 SD_ROOT/wz_mini/etc/init.d/S04model
997158df9e139fdfb1bf03b5d4ba895a SD_ROOT/wz_mini/etc/init.d/S14terminfo df3911f5443239982e184af022a15815 SD_ROOT/wz_mini/etc/init.d/S14terminfo
84155615b192fb92a62c932cae6d190e SD_ROOT/wz_mini/etc/init.d/S07inject 2feeb34a9031c4a8eaf62038a7c31c65 SD_ROOT/wz_mini/etc/init.d/S07inject
d5c528b391309f6c4a33ce4f3dc120de SD_ROOT/wz_mini/etc/init.d/S02tmpfs ce899168f0a576809238b338dec6a666 SD_ROOT/wz_mini/etc/init.d/S02tmpfs
e3034eac02d8eda9902ca9cf89f0a586 SD_ROOT/wz_mini/etc/inittab e3034eac02d8eda9902ca9cf89f0a586 SD_ROOT/wz_mini/etc/inittab
840aa9c26726201f7cffbf001bee193a SD_ROOT/wz_mini/etc/uvc_jxf22.config 840aa9c26726201f7cffbf001bee193a SD_ROOT/wz_mini/etc/uvc_jxf22.config
d41d8cd98f00b204e9800998ecf8427e SD_ROOT/wz_mini/etc/rc.local.d/.gitignore d41d8cd98f00b204e9800998ecf8427e SD_ROOT/wz_mini/etc/rc.local.d/.gitignore
99a800721bfe8a1b0e98f039175c12fd SD_ROOT/wz_mini/etc/wz_mini.conf.dist 99a800721bfe8a1b0e98f039175c12fd SD_ROOT/wz_mini/etc/wz_mini.conf.dist
4291fb00ec609b5b007ff9b3048e9248 SD_ROOT/wz_mini/etc/hosts 4291fb00ec609b5b007ff9b3048e9248 SD_ROOT/wz_mini/etc/hosts
21159766181abcce4cde59f54bb83962 SD_ROOT/wz_mini/etc/rc.common 00ca27c2a2da87016b258fa7445debd9 SD_ROOT/wz_mini/etc/rc.common
8b5e58acfcbb20034dc4873a08b45fd9 SD_ROOT/wz_mini/etc/profile 8b5e58acfcbb20034dc4873a08b45fd9 SD_ROOT/wz_mini/etc/profile
574a0198606cf3a2255843cd1ed7860a SD_ROOT/wz_mini/etc/cron/root 574a0198606cf3a2255843cd1ed7860a SD_ROOT/wz_mini/etc/cron/root
2c2df1b9cb603f9c31c46162d6ac307f SD_ROOT/wz_mini/etc/alsa/alsa.conf 2c2df1b9cb603f9c31c46162d6ac307f SD_ROOT/wz_mini/etc/alsa/alsa.conf
48c275a421535d8c21e7960545c684dc SD_ROOT/wz_mini/etc/rc.d/S18fps 482483f68e5f41e0c3792b2e77fc1028 SD_ROOT/wz_mini/etc/rc.d/S18fps
6635e9bba82d69245bbd3e47f50828d4 SD_ROOT/wz_mini/etc/rc.d/K01network 80650d58c240c642295448a72a49ad45 SD_ROOT/wz_mini/etc/rc.d/K01network
3053ed4b5fcd1dc8a38bb90e2ac5fff2 SD_ROOT/wz_mini/etc/rc.d/S17motor ca8d8d8a60b3dc255133151ba33e0eb3 SD_ROOT/wz_mini/etc/rc.d/S17motor
3c688f5e675c18b3431543c640649810 SD_ROOT/wz_mini/etc/rc.d/S10firmware 03ca145794cedfe4748692dd6341839e SD_ROOT/wz_mini/etc/rc.d/S10firmware
b8705ccc4f08347d3676bb57f737c2a1 SD_ROOT/wz_mini/etc/rc.d/K03rcd 5e81ec81999790b247ef2af25cc34cb6 SD_ROOT/wz_mini/etc/rc.d/K03rcd
6a252a0be94933afd55f72b613fab583 SD_ROOT/wz_mini/etc/rc.d/K02webcam ebfa49291afc96c4dd306101b7dec31c SD_ROOT/wz_mini/etc/rc.d/K02webcam
55d2f83605aea3ba553f3e984d582dc1 SD_ROOT/wz_mini/etc/rc.d/S07bonding 13b64fc52cb799b9575517830ca357ba SD_ROOT/wz_mini/etc/rc.d/S07bonding
4666beb9851dd915d924d05a9791489a SD_ROOT/wz_mini/etc/rc.d/S06networkalt de825dae173ec43983d6ffa1a293060e SD_ROOT/wz_mini/etc/rc.d/S06networkalt
dd8ced14fa4eeceaf3c49774e8762e9b SD_ROOT/wz_mini/etc/rc.d/S14nightdrop 10908c95aa008ffa6ae53c6583d16ad2 SD_ROOT/wz_mini/etc/rc.d/S14nightdrop
e6e927ae715137152178ff317d17b8f2 SD_ROOT/wz_mini/etc/rc.d/S03ethernet 264bd2ac40adf4c24c081b53f9763996 SD_ROOT/wz_mini/etc/rc.d/S03ethernet
b4a838e79e92355a8b016b0e482b22b5 SD_ROOT/wz_mini/etc/rc.d/S20cron 282e4e0ce3be2740403466bea0c380d9 SD_ROOT/wz_mini/etc/rc.d/S20cron
22b999594f237453f821b68248b34156 SD_ROOT/wz_mini/etc/rc.d/S13mp4write c64a9651df819401b04708736c29cf30 SD_ROOT/wz_mini/etc/rc.d/S13mp4write
769776b26247d680ca564c9af3288c91 SD_ROOT/wz_mini/etc/rc.d/S05rndis 28ddd36f07b39500630eccd16d9938aa SD_ROOT/wz_mini/etc/rc.d/S05rndis
19ff129af984cf133c92e9c524dda401 SD_ROOT/wz_mini/etc/rc.d/S01swap 8cd393bb2cda585061961dba143ae2bd SD_ROOT/wz_mini/etc/rc.d/S01swap
bbccf00adaf0b2494a98f18769e10a0f SD_ROOT/wz_mini/etc/rc.d/K15logging 17ab0c2db34671e4dcc05cc4e6b440ee SD_ROOT/wz_mini/etc/rc.d/K15logging
0b8a842db49b2fd5c9b1e24ebcb507fd SD_ROOT/wz_mini/etc/rc.d/S21syslog 55dfb3a95dec09663df5ae9da8e7a602 SD_ROOT/wz_mini/etc/rc.d/S21syslog
69840400ee805665a3a4913003cf60db SD_ROOT/wz_mini/etc/rc.d/S04usbdirect e76b57b067bc349fd3e977447b0316f4 SD_ROOT/wz_mini/etc/rc.d/S04usbdirect
093ae35263b39668da01bee03e81cbe9 SD_ROOT/wz_mini/etc/rc.d/S09coredump 70e289c992f46d69954f72b7550b9876 SD_ROOT/wz_mini/etc/rc.d/S09coredump
9e5591da95042bcca910403bde25dc60 SD_ROOT/wz_mini/etc/fstab 9e5591da95042bcca910403bde25dc60 SD_ROOT/wz_mini/etc/fstab
3962900301ef8743c68e42ecef4d2811 SD_ROOT/wz_mini/etc/passwd 3962900301ef8743c68e42ecef4d2811 SD_ROOT/wz_mini/etc/passwd
775b92a2052189e3e407cbceb548cae7 SD_ROOT/wz_mini/etc/rc.local 775b92a2052189e3e407cbceb548cae7 SD_ROOT/wz_mini/etc/rc.local
@ -127,7 +127,7 @@ e6a6a9dd8ce138686083a3d4303cea40 SD_ROOT/wz_mini/bin/iperf3
79d69cd251a8cdadd9957cdaec2034fc SD_ROOT/wz_mini/bin/rtmp-stream.sh 79d69cd251a8cdadd9957cdaec2034fc SD_ROOT/wz_mini/bin/rtmp-stream.sh
5d1359af0c7c5d326b8682a62f910620 SD_ROOT/wz_mini/bin/strace 5d1359af0c7c5d326b8682a62f910620 SD_ROOT/wz_mini/bin/strace
516118bfcc0f0ddc93fb9339b3c6a315 SD_ROOT/wz_mini/bin/xtables-multi 516118bfcc0f0ddc93fb9339b3c6a315 SD_ROOT/wz_mini/bin/xtables-multi
9be9aab45620d83fecc8b963954cf4f1 SD_ROOT/wz_mini/bin/gather_wz_logs.sh ba7475184c364fee8bba1f45b7c42070 SD_ROOT/wz_mini/bin/gather_wz_logs.sh
097cd91a56f2b0caea1dd87ae0e51a54 SD_ROOT/wz_mini/bin/screen 097cd91a56f2b0caea1dd87ae0e51a54 SD_ROOT/wz_mini/bin/screen
fbbc2a8f362d05fc31557b1a534b42c6 SD_ROOT/wz_mini/bin/wget fbbc2a8f362d05fc31557b1a534b42c6 SD_ROOT/wz_mini/bin/wget
35420095a770c9bb6177788842f55bba SD_ROOT/wz_mini/bin/dropbearconvert 35420095a770c9bb6177788842f55bba SD_ROOT/wz_mini/bin/dropbearconvert
@ -152,9 +152,9 @@ ac9f3a5d097d25d5d972c3d2ad288df9 SD_ROOT/wz_mini/usr/bin/ucamera_v2
1e64fdad40c82ecce420f71701ec3d6d SD_ROOT/wz_mini/usr/bin/watch_up.sh 1e64fdad40c82ecce420f71701ec3d6d SD_ROOT/wz_mini/usr/bin/watch_up.sh
b339aee882a5d1c943ad08e4282ec3fd SD_ROOT/wz_mini/usr/bin/iCamera-dbg b339aee882a5d1c943ad08e4282ec3fd SD_ROOT/wz_mini/usr/bin/iCamera-dbg
20b061689308b2cee7edf3b9b906bca7 SD_ROOT/wz_mini/usr/bin/ucamera 20b061689308b2cee7edf3b9b906bca7 SD_ROOT/wz_mini/usr/bin/ucamera
665690dd52c5398857142292c0c22742 SD_ROOT/wz_mini/usr/bin/imp_helper.sh 3e15a736b79854c35abb7fd4f7207064 SD_ROOT/wz_mini/usr/bin/imp_helper.sh
580b1b6e91e72b4a4fef7b21d8954403 SD_ROOT/wz_mini/usr/bin/getSensorType 580b1b6e91e72b4a4fef7b21d8954403 SD_ROOT/wz_mini/usr/bin/getSensorType
62059fad6d14d560f65b5bdbd1fd183b SD_ROOT/wz_mini/usr/bin/app.ver c78716b683ce1d2b180bfbfcfc02df42 SD_ROOT/wz_mini/usr/bin/app.ver
4c780f0455481d106d47d89f0ae04ed5 SD_ROOT/wz_mini/lib/uClibc.tar 4c780f0455481d106d47d89f0ae04ed5 SD_ROOT/wz_mini/lib/uClibc.tar
9afeb088e4cbabbe0b04033b560204d0 SD_ROOT/wz_mini/lib/libimp.so 9afeb088e4cbabbe0b04033b560204d0 SD_ROOT/wz_mini/lib/libimp.so
4100755cb6cc6e3b76da20c7e3690e16 SD_ROOT/wz_mini/lib/libalog.so 4100755cb6cc6e3b76da20c7e3690e16 SD_ROOT/wz_mini/lib/libalog.so