Thingino
Thingino is an open-source firmware for Ingenic based IP cameras. This is a good alternative firmware for the Wyze Cam (v2, v3, but not the v4) as it has RTSP support with an up-to-date kernel/OS.
Installation
Josh at WL Tech Blog has made Thingino installers for all the supported cameras available from his GitHub repo:
Simply find the installer for your camera and follow the instructions provided.
Wyze cam v3
Installation on the Wyze Cam v3 is simple: You simply need to copy a few files to your SD card and then reboot the camera. You don't even need to touch it if you already have wz_mini_hacks installed as you just need to copy the files via SSH and reboot.
- Download the latest installer files from https://github.com/wltechblog/thingino-installers/tree/main/wyze-cam-3
- Extract the files and then upload it to the SD card. if you're using wz_mini_hacks with SSH enabled, you can just copy it via SSH:
$ for i in factory_t31_ZMC6tiIDQN thingino-wyze_cam3_t31al_gc2053_atbm6031.bin thingino-wyze_cam3_t31x_gc2053_atbm6031.bin thingino-wyze_cam3_t31x_gc2053_rtl8189ftv.bin ; do cat "$i" | ssh root@wyze-camera "cat - > /media/mmc/$i" ; done
- Reboot the camera and wait 2-3 minutes.
- You should see a wireless access point show up once this is done named "THINGINO-XXXX". Connect to it and then go to http://172.16.0.1/ to complete the setup. After you enter your password/wifi settings, you will see the MAC address of the device.
Frigate integration
Getting Thingino and Frigate with nvidia hardware acceleration seems to be a little tempermental with frequent issues that cause the detection and recording threads to crash. A few things that I had to do to make it work:
- If you use the sub stream, you shouldn't use hwaccel_args : preset-nvidia or else ffmpeg goes off the rails and then crashes
- If you want to use hwaccel_args: preset-nvidia, then don't use the sub stream as an input. You can still use it as a live stream.
This seems to work for me:
garage:
ffmpeg:
hwaccel_args: preset-nvidia
output_args:
record: preset-record-generic-audio-aac
inputs:
- path: rtsp://127.0.0.1:8554/wyze-garage?timeout=30
input_args: preset-rtsp-restream
roles:
- record
- detect
- audio
live:
stream_name: wyze-garage_sub
go2rtc:
streams:
wyze-garage:
- rtsp://thingino:thingino@ip:554/ch0#timeout=30
wyze-garage_sub:
- rtsp://thingino:thingino@ip:554/ch1#timeout=30
webrtc:
candidates:
- 10.1.2.30:8555
- stun:8555