* improve index.html for wz_mini webserver
* shared top for dynamically generated base index
* base documentation for go2rtc in webserver
It seems like there should be more but I didn't immediately see any...
* Added auto bind feature for offline / cloud-less setup
Automatically sets bindOk=1 when WiFi settings are detected without
needing the camera to interact with the Wyze cloud. This feature
can be enabled when ENABLE_AUTO_BIND=true is set in wz_mini.conf
* Added 'WiFi Connected' audio message when QR code is valid
* Fixed the auto bind script improperly checking WiFi status
/configs isn't mounted during the init phase from the SD card and
as a result, the checks for whether bindOk=0 done by the init
script was ineffective. The script now mounts it if necessary before
checking.
* Updated autobind feature to use ENABLE_SELFHOSTED_MODE option
The feature to update the bindOk value will now use the same
`ENABLE_SELFHOSTED_MODE` option as the self-hosted iCamera patch.
This feature should only be used by advanced users in isolated
networks or when the user does not intend to use the Wyze App or
cloud services.
* Updated ENABLE_SELFHOSTED_MODE to false by default
The default should be to rely on Wyze servers. Ooops.
* Fixed configbackup init script not backing up files
The /configs directory isn't mounted at this point in the boot process,
as a result this backup doesn't actually work and just copies an empty
directory every time.
* Tested on T20 and added missing /configs mount in backup script
* Added NTP service to startup
A NTP service script will run a NTP client on a custom NTP server
in order to synchronize the camera's clock. This may be useful in
cases where the camera has to use a local NTP server rather than
the one hard coded in iCamera.
To use this, simply set your desired NTP server in the `NTP_SERVER`
option in `wz_mini.conf`.
* Kill timesync if a custom NTP server is used
When using a custom NTP server, the timesync service with its
hard-coded NTP servers should not be running.
* Added iCamera patch option to fix intermittent network issues
This commit adds a ENABLE_ICAMERA_PATCH option to wz_mini.conf which
will patch the iCamera binary on the most recent firmware version so
that the device doesn't try bouncing the wireless interface when
iCamera is unable to reach the internet.
The iCamera program will be patched as part of the boot process when
`ENABLE_ICAMERA_PATCH=true` is set in wz_mini.conf. This patch can
be undone by setting `ENABLE_ICAMERA_PATCH=false` and then rebooting.
* Updated iCamera patch boot script to uninstall patch on failure
In case of an unsupported firmware update / downgrade, the iCamera
patch will uninstall itself and revert back to the stock executable.
* Set ENABLE_ICAMERA_PATCH default to false
The iCamera patch shouldn't be enabled unless network issues are
present. The user can toggle this option if they intend to run
the Wyze Cam on an isolated network.
* Fixed wait_for_icamera pgrep when running patched iCamera
The iCamera process may not be at /system/bin/iCamera if we run
the patched version of it.
This function is used to ensure that iCamera's running before
certain things happen. A search for just 'iCamera' should be
sufficient for this use case.
* Updated the iCamera patch feature as ENABLE_SELFHOSTED_MODE
This should make it clear this option should only be used in self-hosted
scenarios as it will break functionality with the Wyze App or other Cloud
services.
* Added iCamera patch support for v2 firmware 4.9.8.1002
This iCamera patch should handle the Wyze Cam v2 firmware 4.9.8.1002
and prevent the firmware from restarting the wireless network after
being unable to connect to the Wyze servers.
* Fixed iCamera build date check
Check was grepping for 'Build' which may include the build time
instead of build date.
* Updated readme for selfhosted iCamera patch feature
* Patched LED lights for v2 firmware
After connecting to WiFi, the blue LED status light will no longer blink.
* Changed the v2 status LED to remain on when connected
Looking at Wyze's documentation, the LED is supposed to be on when
it's connected and working. The off state from the last commit was
for the powered off state only.