Skip to content

A simple tool to handle some mundane tasks that are required when modifying Wyze camera firmware.

License

Notifications You must be signed in to change notification settings

MelonSmasher/WyzeFirmwareTool

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

99 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Wyze Firmware Tool

A simple tool to handle some mundane tasks that are required when modifying Wyze camera firmware.

What does it do?

This tool downloads, unpacks, mods, and repacks Wyze firmware files.

Camera Support

  • 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.

Mods

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!

NFS

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.

Dangers

WyzeHacks

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.

You'll shoot your eye out kid!

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!

Pre-Built Firmware

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.

Generate Your Own Firmware

Setup

I've only tested this on Ubuntu 20.

System Prerequisites

Install the following with your package manager:

  • python3
  • pip
  • u-boot-tools
  • mtd-utils
  • squashfs-tools / squashfs (macOS)

Install

git clone https://github.com/MelonSmasher/WyzeFirmwareTool.git
pip install -r requirements.txt

Usage

This program requires sudo to manage the JFFS2 image.

Modify a specific firmware version

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

Modify the RTSP firmware

To modify the official RTSP firmware, run the following:

sudo ./wyzefwtool --rtsp --usb-ethernet --telnet-server --no-extra-mods

All command options

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.

About

A simple tool to handle some mundane tasks that are required when modifying Wyze camera firmware.

Topics

Resources

License

Stars

Watchers

Forks