Skip to content
Elahd Bar-Shai edited this page Jun 15, 2021 · 20 revisions

Installing on Wyze Plug and Wyze Bulb

Requirements

  1. Wyze Plug (model WLPP1) or Wyze Bulb (model WLPA19). These are both the old, pre-2021 version of each device.
  2. A third party firmware URL. I've only tested Tasmota 9.2's full build. esp2ino should work with ESPurna, esphome, and any other firmware package built using the ESP8266 Arduino framework.
  3. A computer that supports Python. esp2ino is confirmed to work in Windows, MacOS, and Linux (Ubuntu).

If you're brave enough to test a different device or a different third party firmware, please open a GitHub issue or submit a pull request with a change to this document.

Instructions

Setup your Wyze device using the Wyze app

Set up your Wyze Plug or Bulb using the official Wyze app. If you're setting up the device for the first time, don't update firmware when prompted.

Load esp2ino onto your Wyze device

  1. Download the WyzeUpdater package for your operating system from esp2ino's releases page. If you don't see a package for your operating system, see Running WyzeUpdater From Source.

  2. From the command prompt, use WyzeUpdater to get a list of your Wyze devices:

    • MacOS: ./wyze_updater_macos list
    • Windows: ./wyze_updater_win.exe list
    • Linux: ./wyze_updater_linux list

    When prompted, enter your username, password, and OTP to log in.

  3. Find the Wyze device you want to flash and copy its Device MAC.

  4. Use WyzeUpdater to load esp2ino on to the device, replacing DEVICEMAC with the value obtained in the prior step:

    • MacOS:

      sudo ./wyze_updater_macos update -s -d DEVICEMAC -f https://github.com/elahd/esp2ino/releases/latest/download/esp2ino.bin
      
    • Windows:

      Use a command prompt with administrator privileges.

      ./wyze_updater_win.exe update -s -d DEVICEMAC -f https://github.com/elahd/esp2ino/releases/latest/download/esp2ino.bin
      
    • Linux:

      sudo ./wyze_updater_linux update -s -d DEVICEMAC -f https://github.com/elahd/esp2ino/releases/latest/download/esp2ino.bin
      
  5. Wait a few minutes for esp2ino to load onto your Wyze device...

Use esp2ino to flash custom firmware

  1. Connect to esp2ino by going to http://esp2ino.local in a web browser. esp2ino will try to connect to your Wi-Fi network using the network credentials saved by Wyze's firmware. See Troubleshooting Wi-Fi if you can't access esp2ino.

    esp2ino in a Web Browser

  2. Use esp2ino's Download Backup button to download a backup of your factory firmware. Keep this somewhere safe in case you want to switch back to your factory firmware in the future.

  3. Use the Select Replacement Firmware dropdown to tell esp2ino which third party firmware you want to load. Select Tasmota to have esp2ino automatically install the latest version of Tasmota, or select Cutom URL to provide your own firmware URL.

    See Requirements for Third Party Firmware for notes on providing your own firmware. If you want to install firmware that you've downloaded onto your computer, see Uploading Firmware From Your Computer.

  4. Click Install to push the new firmware onto the device. esp2ino will show progress as it works:
    esp2ino in Progress esp2ino Success

  5. Wait for your device to boot into its new firmware. Better yet, walk away. After the first boot, your device will be unresponsive for a few minutes while esp2ino rearranges files. It's critical that you don't mess around with the device during this time. No button pushing, unplugging, reloading the web page, etc.

  6. With some firmware (like Tasmota), you'll know that your device is ready for use when you can access the Tasmota Wi-Fi network. With other firmware, you'll know the device is ready when it connects to your router.

Tasmota Device Templates

Wyze Plug

{"NAME":"WyzePlugWLPP1","GPIO":[0,0,0,0,0,56,0,0,21,0,17,0,0],"FLAG":0,"BASE":18}

(via Tasmota Device Templates Repository)

Wyze Bulb

{"NAME":"Wyze Bulb","GPIO":[5728,0,0,0,0,0,0,0,0,416,417,0,0,0],"FLAG":0,"BASE":48}

(via Tasmota Device Templates Repository)

Clone this wiki locally