run_mmc.sh 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. #!/bin/sh
  2. set -x
  3. ##DO NOT ENABLE FW UPGRADE. FW UPGRADE CAN POTENTIALLY CORRUPT THE KERNEL REQUIRING YOU TO REFLASH THE STOCK FIRMWARE.
  4. DISABLE_FW_UPGRADE="true"
  5. HOSTNAME="WCV3"
  6. ENABLE_USB_ETH="false"
  7. ENABLE_USB_DIRECT="false"
  8. USB_DIRECT_MAC_ADDR="02:01:02:03:04:08"
  9. REMOTE_SPOTLIGHT="false"
  10. REMOTE_SPOTLIGHT_HOST="0.0.0.0"
  11. RTSP_ENABLED="false"
  12. RTSP_ENABLE_AUDIO="false"
  13. DEBUG_ENABLED="false"
  14. #####################################
  15. ##########CONFIG END#################
  16. #####################################
  17. echo "run_mmc.sh start" > /dev/kmsg
  18. swap_enable() {
  19. if [[ -f /media/mmc/wz_mini/swap ]]; then
  20. echo "swap exists, enable"
  21. swapon /media/mmc/wz_mini/swap
  22. else
  23. echo "swap missing, system stability with usb potentially comprimised"
  24. fi
  25. }
  26. if [[ "$ENABLE_USB_ETH" == "true" ]]; then
  27. swap_enable
  28. ifconfig eth0 down
  29. ifconfig wlan0 down
  30. /media/mmc/wz_mini/bin/busybox ip link set wlan0 name wlanold
  31. /media/mmc/wz_mini/bin/busybox ip addr flush dev wlanold
  32. /media/mmc/wz_mini/bin/busybox ip link set eth0 name wlan0
  33. ifconfig wlan0 up
  34. pkill udhcpc
  35. udhcpc -i wlan0 -x hostname:$HOSTNAME -p /var/run/udhcpc.pid -b
  36. # sleep 5
  37. mount -o bind /media/mmc/wz_mini/bin/wpa_cli.sh /bin/wpa_cli
  38. else
  39. echo "usb ethernet disabled"
  40. fi
  41. if [[ "$ENABLE_USB_DIRECT" == "true" ]]; then
  42. ##ONLY WORKS WITH g_ethernet enabled kernel
  43. ifconfig usb0 down
  44. ifconfig wlan0 down
  45. /media/mmc/wz_mini/bin/busybox ip link set wlan0 name wlanold
  46. /media/mmc/wz_mini/bin/busybox ip addr flush dev wlanold
  47. /media/mmc/wz_mini/bin/busybox ip link set usb0 name wlan0
  48. /media/mmc/wz_mini/bin/busybox ip link set wlan0 address $USB_DIRECT_MAC_ADDR
  49. ifconfig wlan0 up
  50. pkill udhcpc
  51. udhcpc -i wlan0 -x hostname:$HOSTNAME -p /var/run/udhcpc.pid -b
  52. sleep 5
  53. mount -o bind /media/mmc/wz_mini/bin/wpa_cli.sh /bin/wpa_cli
  54. else
  55. echo "usb direct disabled"
  56. fi
  57. if [[ "$DISABLE_FW_UPGRADE" == "true" ]]; then
  58. mkdir /tmp/Upgrade
  59. mount -t tmpfs -o size=1,nr_inodes=1 none /tmp/Upgrade
  60. echo -e "127.0.0.1 localhost \n127.0.0.1 wyze-upgrade-service.wyzecam.com" > /run/.storage/hosts_wz
  61. mount --bind /run/.storage/hosts_wz /etc/hosts
  62. fi
  63. if [[ "$REMOTE_SPOTLIGHT" == "true" ]]; then
  64. { sleep 10; /media/mmc/wz_mini/bin/socat pty,link=/dev/ttyUSB0,raw tcp:$REMOTE_SPOTLIGHT_HOST:9000; } &
  65. fi
  66. if [[ "$RTSP_ENABLED" == "true" ]]; then
  67. swap_enable
  68. mkdir /tmp/alsa
  69. cp /media/mmc/wz_mini/etc/alsa.conf /tmp/alsa
  70. if [[ "$RTSP_ENABLE_AUDIO" == "true" ]]; then
  71. LD_LIBRARY_PATH=/media/mmc/wz_mini/lib /media/mmc/wz_mini/bin/v4l2rtspserver -C 1 -a S16_LE /dev/video1,hw:Loopback,0 &
  72. else
  73. echo "rtsp audio disabled"
  74. LD_LIBRARY_PATH=/media/mmc/wz_mini/lib /media/mmc/wz_mini/bin/v4l2rtspserver -s /dev/video1 &
  75. fi
  76. else
  77. echo "rtsp disabled"
  78. fi
  79. echo "set hostname"
  80. hostname $HOSTNAME
  81. echo "clean up tail"
  82. pkill tail
  83. sleep 3
  84. #################################################
  85. ##############CUSTOM BEGIN#######################
  86. #################################################
  87. #Place commands here to run 30 seconds after boot
  88. #such as mount nfs, ping, etc
  89. #mount -t nfs -o nolock,rw,noatime,nodiratime 192.168.1.1:/volume1 /media/mmc/record &