Thanks for providing your sample file. I’ll use the one with the TUYA section.
If you used the same version of wz_mini_hacks (I used GitHub - gtxaspec/wz_mini_hacks at f37d3a688027d2142340b62da7dcfc42c8ded73c commit) then the location should be fine. Otherwise they might have moved things around in the later versions. But I’d still check if partitions are mounted with “mount” command, and the logs with “dmesg” and “logread” commands. If there is something wrong, there should be some error messages.
Seems wyze_mini_hacks saves logs under wyze_mini/log/. I see a lot of repeated messages like these from log/wz_user.log. Seems it got stuck:
+ true
+ '[[' -d /media/mmc/wz_mini ]]
+ '[[' -d /media/mmcblk0p1/wz_mini ]]
+ echo 'sdcard not ready yet...'
sdcard not ready yet...
+ sleep 5
From log/v3_init.log, I see:
+ mount -t squashfs /dev/mtdblock3 /system
mount: mounting /dev/mtdblock3 on /system failed: Resource busy
+ /opt/wz_mini/etc/init.d/wz_post.sh
+ mount -t jffs2 /dev/mtdblock6 /configs
mount: mounting /dev/mtdblock6 on /configs failed: Resource busy
It is weird because I do see mtdblock6 is mounted to /configs when using the mount
command.
Many thanks @IIW. I’ve revived one of my dead v3 cameras with solid red light by copying over the missing .product_config
file! Even though it did show the same mounting error as I mentioned earlier. Also, just for any folks in the future, this revived camera did NOT have the .product_config
file. It is a different case from your original post, where you had a .product_config
with size zero.
Now I need to figure out why the other dead camera that does have .product_config
won’t revive after restoring the missing .timezone_config
file. I see from wz_mini_hack/log/v3_init.log that it stopped here:
################## to wait wifi vendor id ####################
Good camera will have something like these after that and continue:
################## [vendor:0x024c] rtl8189ftv wifi #################
Looks something wrong with communicating with wifi interface. I understand it is most likely a completely different issue. If you have any insights, please let me know. Otherwise, I am still extremely happy that I can revive one of my dead cameras Thanks again.
WiFi is located on a different board inside the camera from the board with CPU. You could try opening the camera and checking that the connectors connecting the two boards are fully plugged in.
Other ideas would be to copy all the partitions from a working camera to the broken one in hope that it is a software problem and not a hardware one.
Or you could try to do firmware upgrade from SD card if you haven’t tried it after restoring all other configuration files.
Thanks @IIW . Appreciate your input. Sorry, forgot to mention that I’ve tried firmware upgrade after I restored .timezone_config. It didn’t fix the issue. I will try the other two options that your suggested and poke around on my own. I will update if I can get it fixed. Otherwise, I will keep quiet. Because I anticipate it will be a very hard case. And I would feel guilty taking up too much of your time if I keep asking questions. Being able to revive the other camera following your instructions is already very satisfying
Damn! A different bug than the .product_config that can end up in a bricked cam v3?!?! That is scary!!!
Which version of firmware did you have on there (out of curiosity)?
Yes, apparently I am one of the unlucky
I was running official Wyze rtsp firmware. I did’t try to do anything. It just died on its own.
Oh wow!!! That is one hell of a coincidence!!! I got 7 cam v3 ALL ended up bricking with the earlier firmwares but I managed to bring them all back to life thanks to the product_config fix. Then I kept all cams updated except for one on which I put the last rtsp firmware. Coincidentally that one cam bricked twice on me since then while the others didn’t after almost a year!!! So not sure if that is just a coincidence but yeah… Suffice to say I have now the regular firmware branch on it. We will see how things go …
Jeff, if I understand correctly, I see your rtsp v3 bricked twice. Do you know the reason? How did you fix both times? Thanks.
Correct. Twice since when I installed the RTSP firmware (that is after getting that one cam v3 bricked once while the cam had the older regular firmware).
In all cases I managed to bring the cam back by restoring the product_config file every time. Now I have foregone the RTSP firmware altogether.
Ok, thanks for your info…
Hi, folks.
Purchased 3 v3 cams, set them up and just on next day one of the cams show red light and doesn’t connect. Tried to reflash, but purple color changes to red after some time and reflash fails.
Found this thread and tried to troubleshoot, but camera has product_config file and it’s not 0, but it doesn’t have timezone_config file. Checked other working cameras but they don’t have timezone_config also. On working cameras MD5 file size is smaller than product_config file size, but MD5 and product_config are matching between each other. On bricked cam MD5 is also smaller than product_config, but both files size differ from other cameras.
Any ideas, why this cam could brick?
Thank you.
Who cares, it’s still under warranty. Have it replaced.
Could try getting logs with “logread” or “dmesg” commands
Hi.
Appreciate your time helping me, Could you please guide me how to do it, as I’m complete noob.
Just want you guys know that product_config is not the only reason for bricking and want to help on troubleshooting for those who will encounter this issue.
Thanks.
Add
logread > /opt/logread.txt
dmesg > /opt/dmesg.txt
sync
where you inserted other commands, or at the end of the script. Or see if there are other logs saved on the SD card automatically.
Logread is empty.
Dmesg is below.
But strange thing, while waiting camera to boot with minihacks, I heard a click and solid red light changed to blinking red light. I pressed setup button and heard ready to connect prompt. Tried to connect, but it failed, saying “Cannot connect to local network”. I cannot reset camera, as it goes straight to solid red light. I powercycle camera with minihacks SD card inside and after several minutes solid red light changes to blinking red light again. Very strange. But seems like camera is not dead yet
I can send minihacks logs if they will help.
There is one thing that seems like connected to problem inside v3_init log:
> `[0214 19:37:02.255][A][iCam][shellcall.c:548](no.100000) cmd:[echo "# HUALAI DNS #" > /etc/resolv.conf]` > `[0214 19:37:02.268][A][iCam][shellcall.c:557](no.100000) msgque ret:[0]` > `[0214 19:37:02.268][A][iCam][shellcall.c:548](no.100000) cmd:[/sbin/ifconfig wlan0 down]` > ifconfig: SIOCGIFFLAGS: No such device > [0214 19:37:02.295][A][iCam][shellcall.c:557](no.100000) msgque ret:[0] > [0214 19:37:02.395][A][iCam][shellcall.c:548](no.100000) cmd:[ifconfig wlan0 hw ether D0:3F:27:B6:0F:D5] > ifconfig: SIOCSIFHWADDR: No such device > [0214 19:37:02.431][A][iCam][shellcall.c:557](no.100000) msgque ret:[0] > [0214 19:37:02.531][A][iCam][shellcall.c:548](no.100000) cmd:[/system/bin/restart_wlan0.sh] > ifconfig: SIOCGIFFLAGS: No such device **(this line repeats many times)** > > ../base/ipc/msg_queue.c,348:msgrcv error:7,Argument list too long > e[31m[0214 19:40:09.675][E][iCam][shellcall.c:504](no.100000) (msg_queue_rcv_wait) error > e[0m[0214 19:40:09.675][A][iCam][shellcall.c:557](no.100000) msgque ret:[-1] > [netService]dbg: Set net_state Callback Doing... > [0214 19:40:09.776][P][iCam][init.c:760]No SSID, waitting here... > [0214 19:40:09.776][I][iCam][timezone.c:519]filePath:[/configs/.timezone_config] > [0214 19:40:09.776][A][iCam][shellcall.c:548](no.100000) cmd:[echo "CST-0" > /etc/TZ] > ../base/ipc/msg_queue.c,348:msgrcv error:7,Argument list too long
There is 3 minutes period where ifconfig: SIOCGIFFLAGS: No such device is repeated and after that it continues with …/base/ipc/msg_queue.c,348:msgrcv error:7,Argument list too long and seems that it’s time when camera boots up with blinking red light instead of solid one.
And filePath:[/configs/.timezone_config] - as I wrote before, I don’t have such file on all my cameras, working or bricked.
Dmesg:
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Initializing cgroup subsys cpuacct
[ 0.000000] Linux version 3.10.14__isvp_swan_1.0__ (root@b07ac469547d) (gcc version 4.7.4 (Buildroot 2016.02) ) #45 PREEMPT Sat May 7 23:19:11 PDT 2022
[ 0.000000] bootconsole [early0] enabled
[ 0.000000] CPU0 RESET ERROR PC:50A90EB5
[ 0.000000] CPU0 revision is: 00d00100 (Ingenic Xburst)
[ 0.000000] FPU revision is: 00b70000
[ 0.000000] cgu_get_rate, parent = 1392000000, rate = 0, m = 0, n = 0, reg val = 0x081000ff
[ 0.000000] cgu_get_rate, parent = 1392000000, rate = 0, m = 0, n = 0, reg val = 0x081000ff
[ 0.000000] CCLK:1392MHz L2CLK:696Mhz H0CLK:270MHz H2CLK:270Mhz PCLK:135Mhz
[ 0.000000] Determined physical RAM map:
[ 0.000000] memory: 00534000 @ 00010000 (usable)
[ 0.000000] memory: 0007c000 @ 00544000 (usable after init)
[ 0.000000] User-defined physical RAM map:
[ 0.000000] memory: 06300000 @ 00000000 (usable)
[ 0.000000] Initrd not found or empty - disabling initrd
[ 0.000000] Zone ranges:
[ 0.000000] Normal [mem 0x00000000-0x062fffff]
[ 0.000000] Movable zone start for each node
[ 0.000000] Early memory node ranges
[ 0.000000] node 0: [mem 0x00000000-0x062fffff]
[ 0.000000] On node 0 totalpages: 25344
[ 0.000000] free_area_init_node: node 0, pgdat 80541550, node_mem_map 81000000
[ 0.000000] Normal zone: 198 pages used for memmap
[ 0.000000] Normal zone: 0 pages reserved
[ 0.000000] Normal zone: 25344 pages, LIFO batch:7
[ 0.000000] Primary instruction cache 32kB, 8-way, VIPT, linesize 32 bytes.
[ 0.000000] Primary data cache 32kB, 8-way, VIPT, no aliases, linesize 32 bytes
[ 0.000000] pls check processor_id[0x00d00100],sc_jz not support!
[ 0.000000] MIPS secondary cache 128kB, 8-way, linesize 32 bytes.
[ 0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768
[ 0.000000] pcpu-alloc: [0] 0
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping off. Total pages: 25146
[ 0.000000] Kernel command line: console=ttyS1,115200n8 mem=99M@0x0 rmem=29M@0x6300000 rdinit=/init mtdparts=jz_sfc:256K(boot),1984K(kernel),3904K(rootfs),3904K(app),1984K(kback),3904K(aback),384K(cfg),64K(para)
[ 0.000000] PID hash table entries: 512 (order: -1, 2048 bytes)
[ 0.000000] Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
[ 0.000000] Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
[ 0.000000] Memory: 92892k/101376k available (4088k kernel code, 8484k reserved, 1239k data, 496k init, 0k highmem)
[ 0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[ 0.000000] Preemptible hierarchical RCU implementation.
[ 0.000000] NR_IRQS:358
[ 0.000000] clockevents_config_and_register success.
[ 0.000015] Calibrating delay loop… 1391.00 BogoMIPS (lpj=6955008)
[ 0.087831] pid_max: default: 32768 minimum: 301
[ 0.092691] Mount-cache hash table entries: 512
[ 0.097620] Initializing cgroup subsys debug
[ 0.101876] Initializing cgroup subsys freezer
[ 0.107346] devtmpfs: initialized
[ 0.111527] regulator-dummy: no parameters
[ 0.115808] NET: Registered protocol family 16
[ 0.130798] bio: create slab at 0
[ 0.136284] jz-dma jz-dma: JZ SoC DMA initialized
[ 0.141209] usbcore: registered new interface driver usbfs
[ 0.146787] usbcore: registered new interface driver hub
[ 0.152192] usbcore: registered new device driver usb
[ 0.157384] (null): set:336 hold:337 dev=135000000 h=675 l=675
[ 0.163462] media: Linux media interface: v0.10
[ 0.168044] Linux video capture interface: v2.00
[ 0.172844] Advanced Linux Sound Architecture Driver Initialized.
[ 0.180192] Switching to clocksource jz_clocksource
[ 0.185122] cfg80211: Calling CRDA to update world regulatory domain
[ 0.192162] dwc2 otg probe start
[ 0.192193] jz-dwc2 jz-dwc2: cgu clk gate get error
[ 0.197114] DWC IN OTG MODE
[ 0.200511] dwc2 dwc2: Keep PHY ON
[ 0.203890] dwc2 dwc2: Using Buffer DMA mode
[ 0.208203] dwc2 dwc2: Core Release: 3.00a
[ 0.212396] dwc2 dwc2: DesignWare USB2.0 High-Speed Host Controller
[ 0.218720] dwc2 dwc2: new USB bus registered, assigned bus number 1
[ 0.225899] hub 1-0:1.0: USB hub found
[ 0.229630] hub 1-0:1.0: 1 port detected
[ 0.233726] dwc2 dwc2: DWC2 Host Initialized
[ 0.238180] dwc2 dwc2: enter dwc2_gadget_plug_change:2589: plugin = 1 pullup_on = 0 suspend = 0
[ 0.246996] dwc2 otg probe success
[ 0.247134] NET: Registered protocol family 2
[ 0.251930] TCP established hash table entries: 1024 (order: 1, 8192 bytes)
[ 0.258938] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.265416] TCP: Hash tables configured (established 1024 bind 1024)
[ 0.271862] TCP: reno registered
[ 0.275080] UDP hash table entries: 256 (order: 0, 4096 bytes)
[ 0.281001] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[ 0.287556] NET: Registered protocol family 1
[ 0.292179] RPC: Registered named UNIX socket transport module.
[ 0.298108] RPC: Registered udp transport module.
[ 0.302928] RPC: Registered tcp transport module.
[ 0.307643] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 0.314194] dwc2 dwc2: ID PIN CHANGED!
[ 0.512340] freq_udelay_jiffys[0].max_num = 10
[ 0.516765] cpufreq udelay loops_per_jiffy
[ 0.521180] 12000 59956 59956
[ 0.524518] 24000 119913 119913
[ 0.527890] 60000 299784 299784
[ 0.531334] 120000 599569 599569
[ 0.534888] 200000 999282 999282
[ 0.538397] 300000 1498924 1498924
[ 0.542187] 600000 2997848 2997848
[ 0.545814] 792000 3957159 3957159
[ 0.549522] 1008000 5036385 5036385
[ 0.553330] 1200000 5995696 5995696
[ 0.560732] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[ 0.567290] jffs2: version 2.2. © 2001-2006 Red Hat, Inc.
[ 0.573100] msgmni has been set to 181
[ 0.577776] io scheduler noop registered
[ 0.581782] io scheduler cfq registered (default)
[ 0.588230] jz-uart.1: ttyS1 at MMIO 0x10031000 (irq = 58) is a uart1
[ 0.595834] console [ttyS1] enabled, bootconsole disabled
[ 0.610068] brd: module loaded
[ 0.615034] loop: module loaded
[ 0.618770] zram: Created 2 device(s) …
[ 0.623086] logger: created 256K log ‘log_main’
[ 0.628182] jz TCU driver register completed
[ 0.632967] the id code = c84018, the flash name is GD25Q127C
[ 0.638888] JZ SFC Controller for SFC channel 0 driver register
[ 0.645045] 8 cmdlinepart partitions found on MTD device jz_sfc
[ 0.651138] Creating 8 MTD partitions on “jz_sfc”:
[ 0.656102] 0x000000000000-0x000000040000 : “boot”
[ 0.661506] 0x000000040000-0x000000230000 : “kernel”
[ 0.667108] 0x000000230000-0x000000600000 : “rootfs”
[ 0.672708] 0x000000600000-0x0000009d0000 : “app”
[ 0.677991] 0x0000009d0000-0x000000bc0000 : “kback”
[ 0.683522] 0x000000bc0000-0x000000f90000 : “aback”
[ 0.689001] 0x000000f90000-0x000000ff0000 : “cfg”
[ 0.694365] 0x000000ff0000-0x000001000000 : “para”
[ 0.699733] SPI NOR MTD LOAD OK
[ 0.703053] tun: Universal TUN/TAP device driver, 1.6
[ 0.708254] tun: (C) 1999-2004 Max Krasnyansky
[ 0.715019] wait stable.[289][cgu_msc0]
[ 0.718980] jzmmc_v1.2 jzmmc_v1.2.0: vmmc regulator missing
[ 0.725006] jzmmc_v1.2 jzmmc_v1.2.0: register success!
[ 0.730343] jzmmc_v1.2 jzmmc_v1.2.1: vmmc regulator missing
[ 0.736125] jzmmc_v1.2 jzmmc_v1.2.0: card inserted, state=0
[ 0.742134] jzmmc_v1.2 jzmmc_v1.2.1: register success!
[ 0.749585] TCP: cubic registered
[ 0.753445] NET: Registered protocol family 10
[ 0.758653] NET: Registered protocol family 17
[ 0.764028] input: gpio-keys as /devices/platform/gpio-keys/input/input0
[ 0.771147] drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
[ 0.777710] ALSA device list:
[ 0.780765] #0: Loopback 1
[ 0.785677] Freeing unused kernel memory: 496K (80544000 - 805c0000)
[ 1.001571] mmc0: new high speed SDHC card at address 0007
[ 1.007442] mmcblk0: mmc0:0007 SL16G 14.4 GiB
[ 1.013338] mmcblk0: p1
[ 2.367435] request spk en gpio 63 ok!
[ 2.367447] jz_codec_register: probe() successful!
[ 2.372509] cgu_set_rate, parent = 1392000000, rate = 2048000, n = 10875, reg val = 0x01002a7b
[ 2.372518] cgu_enable,cgu_i2s_spk reg val = 0x21002a7b
[ 2.372538] cgu_set_rate, parent = 1392000000, rate = 2048000, n = 10875, reg val = 0x01002a7b
[ 2.372545] cgu_enable,cgu_i2s_mic reg val = 0x21002a7b
[ 2.781881] dma dma0chan24: Channel 24 have been requested.(phy id 7,type 0x06 desc a42b3000)
[ 2.790973] dma dma0chan25: Channel 25 have been requested.(phy id 6,type 0x06 desc a42b2000)
[ 2.800156] dma dma0chan26: Channel 26 have been requested.(phy id 5,type 0x04 desc a42b1000)
[ 2.984450] codec_codec_ctl: set repaly channel…
[ 2.984494] cgu_set_rate, parent = 1392000000, rate = 4096000, n = 10875, reg val = 0x22002a7b
[ 2.984501] codec_codec_ctl: set sample rate…
[ 2.984799] codec_codec_ctl: set device…
[ 3.221555] codec_set_device: set device: speaker…
[ 7.281844] codec_codec_ctl: set CODEC_TURN_OFF…
[ 7.483364] cgu_enable,cgu_i2s_mic reg val = 0x21002a7b
[ 7.549946] request spk en gpio 63 ok!
[ 7.549958] jz_codec_register: probe() successful!
[ 7.555115] cgu_set_rate, parent = 1392000000, rate = 2048000, n = 10875, reg val = 0x21002a7b
[ 7.555127] cgu_enable,cgu_i2s_mic reg val = 0x21002a7b
[ 7.961882] dma dma0chan24: Channel 24 have been requested.(phy id 7,type 0x06 desc a4591000)
[ 7.970972] dma dma0chan25: Channel 25 have been requested.(phy id 6,type 0x06 desc a4590000)
[ 7.980152] dma dma0chan26: Channel 26 have been requested.(phy id 5,type 0x04 desc a458f000)
[ 7.997063] codec_codec_ctl: set repaly channel…
[ 7.997107] cgu_set_rate, parent = 1392000000, rate = 4096000, n = 10875, reg val = 0x22002a7b
[ 7.997115] codec_codec_ctl: set sample rate…
[ 7.997413] codec_codec_ctl: set device…
[ 8.231556] codec_set_device: set device: speaker…
[ 10.971641] codec_codec_ctl: set CODEC_TURN_OFF…
[ 11.173346] cgu_enable,cgu_i2s_mic reg val = 0x21002a7b
[ 12.531569] jzmmc_v1.2 jzmmc_v1.2.0: timeout 500ms op:25 w sz:65536 state:2 STAT:0x1E000580 DMALEN:0x00005600 blks:84/128 clk:enable clk_gate:enable
[ 17.061568] jzmmc_v1.2 jzmmc_v1.2.0: timeout 500ms op:25 w sz:65536 state:2 STAT:0x1E000580 DMALEN:0x00005800 blks:83/128 clk:enable clk_gate:enable
[ 17.571555] jzmmc_v1.2 jzmmc_v1.2.0: timeout 1000ms op:25 w sz:65536 state:2 STAT:0x1E000580 DMALEN:0x00005200 blks:86/128 clk:enable clk_gate:enable
and
commands are trying to configure WiFi interafce. If working cameras do not have “No such device” reply in their logs, then most likely something happened to WiFi chip on your bad camera and WiFi chip is not recognized anymore during bootup.
Seems like my cam is semi-alive, because I flashed 4.36.0.280 which I found on internet and I’m getting all those errors because of old firmware.
Today I flashed to latest version and camera is solid red again, it doesn’t turn to blinking red even after several hours. I got the logs, but nothing eye-catching there.
This is v3_init log:
+ export 'PATH=/bin:/sbin:/usr/bin:/usr/sbin:/opt/wz_mini/bin'
+ export 'PATH=/system/bin:/bin:/sbin:/usr/bin:/usr/sbin:/opt/wz_mini/bin'
+ export 'LD_LIBRARY_PATH=/system/lib:/opt/wz_mini/lib'
+ export 'LD_LIBRARY_PATH=/thirdlib:/system/lib:/opt/wz_mini/lib'
+ ifconfig lo up
+ mount -t squashfs /dev/mtdblock3 /system
mount: mounting /dev/mtdblock3 on /system failed: Resource busy
+ /opt/wz_mini/etc/init.d/wz_post.sh
+ mount -t jffs2 /dev/mtdblock6 /configs
mount: mounting /dev/mtdblock6 on /configs failed: Resource busy
+ '[' -f /system/init/app_init.sh ]
+ /system/init/app_init.sh
#############ubootddr = 540.000MHz ########
################## to wait wifi vendor id ####################
################## [vendor:0x024c] rtl8189ftv wifi #################
wz_user log ends with repeating:
+ true
+ '[[' -d /media/mmc/wz_mini ]]
+ '[[' -d /media/mmcblk0p1/wz_mini ]]
+ echo 'sdcard not ready yet...'
sdcard not ready yet...
+ sleep 5
I’m gonna compare logs from bad camera with working one in same conditions.