A simple tool to handle some mundane tasks that are required when modifying Wyze camera firmware.
This tool downloads, unpacks, mods, and repacks Wyze firmware files.
- Wyze Cam v2
I only have a Wyze Cam v2 to mess around with. If you have a device you're willing to potentially brick feel free to mess around with this.
Below are the mods this tool will enable
- The
-u
/--usb-ethernet
switch enables USB ethernet adapter support for ASIX based adapters such as this one. - The
-d
/--disable-wlan
switch disables wireless on the camera. This switch implies the-u
switch and enables USB ethernet. - The
-t
/--telnet-server
switch enables a persistent telnet server on the camera. This option requires that you set a root password, you'll be prompted. - Custom user supplied mods. The tool will pause to allow you to make any custom modifications tht you'd like. The tool
will resume when any key is pressed in the terminal. This step can be skipped with the
-y
/--no-extra-mods
switch.
More to come!
I've attempted to get an NFS share to replace my SD Card. I've not had any stable success. I've since abandoned trying to implement it.
Instead, I'm using the RTSP firmware in combination with a local SD card which records events only, and a Shinobi server that connects to the cameras over RTSP.
The Shinobi server continuously records to an NFS share.
This workaround kinda gives me the best of both worlds.
There is a great mod for Wyze cameras called WyzeHacks. It's actually what inspired this project. Unfortunately there are some incompatibilities between firmware generated by this project and the hacks in that repository. I've bricked two cameras trying to combine the two, and have since given up on trying to make them work together. Be advised you need to pick one or the other, and if you go with WyzeHacks ensure you have flashed a stock firmware prior to enabling the hacks.
A serious heads up! Modifying firmware and flashing modified firmware on your device can brick it. That means you could be holding a $25 - $100 paperweight if something goes wrong! Please consider the risks before proceeding!
I'm NOT responsible if your device turns into an overpriced rock, lights on fire, or anything in between!
Please build your own firmware! Since you'll need to set your own telnet password and NFS connection info, there is no point for me to provide prebuilt firmware. Check out the section below on Generating Your Own Firmware.
I've only tested this on Ubuntu 20.
Install the following with your package manager:
- python3
- pip
- u-boot-tools
- mtd-utils
- squashfs-tools / squashfs (macOS)
git clone https://github.com/MelonSmasher/WyzeFirmwareTool.git
pip install -r requirements.txt
This program requires sudo to manage the JFFS2 image.
Pick a version number from this page.
sudo ./wyzefwtool -f <firmware-version> --usb-ethernet --telnet-server --no-extra-mods
# E.G: sudo ./wyzefwtool -f 4.9.6.218 --usb-ethernet --telnet-server --no-extra-mods
To modify the official RTSP firmware, run the following:
sudo ./wyzefwtool --rtsp --usb-ethernet --telnet-server --no-extra-mods
usage: wyzefwtool [-h] [-f [FIRMWARE_VERSION]] [-r] [-u] [-d] [-t] [-n] [-y]
optional arguments:
-h, --help show this help message and exit
-f [FIRMWARE_VERSION], --firmware-version [FIRMWARE_VERSION]
The version number of the firmware to modify
-r, --rtsp Download the RTSP firmware. If used the Firmware Version argument is ignored.
-u, --usb-ethernet Enable USB Ethernet support for ASIX based ethernet adapters.
-d, --disable-wlan Disabled the wifi connection. Requires that you enable USB ethernet support.
-t, --telnet-server Enable persistent telnet server on the camera. Requires that you set a root password.
-y, --no-extra-mods The tool will not wait for you to make extra custom modifications.