roleoroleo / yi-hack-Allwinner

Custom firmware for Yi 1080p camera based on Allwinner platform
MIT License
444 stars 66 forks source link

Support for YI Home 3 FW 8.3.0.0A_201912271707 #300

Closed torcuat closed 4 months ago

torcuat commented 3 years ago

Hi. I just bought a Yi Home Camera on amazon.es whose name is IFUSY32VBU and fw 8.3.0.0A_201912271707.

I tried the y25ga_0.2.6 release and I think I may have bricked it (stuck with yellow led on). Interesting to note, the files on the sd card end with *.done extension...

Any clues on how I could fix it and wether it could be supported ?

roleoroleo commented 3 years ago

Try a previous version.

torcuat commented 3 years ago

Thanks but I really think I bricked it and I hadn't made any backups.

Before it did something and stayed with the blue blinking led. Then, when I tried to reset it with the button on the back it got bricked and it does nothing but lighting the yellow led, no matter whats in the sd card.

roleoroleo commented 3 years ago

I will check if I have a backup.

torcuat commented 3 years ago

Thank you, I would really appreciate that, otherwise my cam is dead.

pablitofernandez commented 3 years ago

Hello,

On Friday I bought exactly the same camera with the same type of serial number and same firmware. Same as @torcuat I tried the y25ga_0.2.6 and ended up bricking the camera after trying to reset it by hitting the reset button on the back of the camera.

The same Friday I bought exactly the same model of camera, which arrived yesterday. I did a backup correctly and instead of the last one I flashed this version y25ga_0.1.9.tar.gz (I found it in another issue). Everything ok, RTSP, web server, etc. Then I tried to update to the latest version (y25ga_0.2.6) from the web server ui.The process finished but only telnet is active, no web server, no rtsp or anything else.

The next thing I tried was to install older firmwares, from 0.1.9 upwards. The last version that works correctly is 0.2.3. If I try to flash 0.2.4, 0.2.5 or 0.2.6 I end up with telnet as the only active service. From telnet I have tried to do a ps and a top, and I don't see neither the httpd nor the ssh process running for example. The /home/yi-hack directory exists, but the /home/yi-hack/www directory does not exist.

I have tried with 3 different MicroSD (Samsung 64Gbs, Samsung 32Gbs and Sandisk 8Gbs) and with the same results.

I hope this information is helpful for debugging and that we manage to install the latest version on this camera model.

Thank you!

roleoroleo commented 3 years ago

Ok, I will check it.

torcuat commented 3 years ago

Hello,

On Friday I bought exactly the same camera with the same type of serial number and same firmware. Same as @torcuat I tried the y25ga_0.2.6 and ended up bricking the camera after trying to reset it by hitting the reset button on the back of the camera.

The same Friday I bought exactly the same model of camera, which arrived yesterday. I did a backup correctly and instead of the last one I flashed this version y25ga_0.1.9.tar.gz (I found it in another issue). Everything ok, RTSP, web server, etc. Then I tried to update to the latest version (y25ga_0.2.6) from the web server ui.The process finished but only telnet is active, no web server, no rtsp or anything else.

The next thing I tried was to install older firmwares, from 0.1.9 upwards. The last version that works correctly is 0.2.3. If I try to flash 0.2.4, 0.2.5 or 0.2.6 I end up with telnet as the only active service. From telnet I have tried to do a ps and a top, and I don't see neither the httpd nor the ssh process running for example. The /home/yi-hack directory exists, but the /home/yi-hack/www directory does not exist.

I have tried with 3 different MicroSD (Samsung 64Gbs, Samsung 32Gbs and Sandisk 8Gbs) and with the same results.

I hope this information is helpful for debugging and that we manage to install the latest version on this camera model.

Thank you!

Hi, would you be so kind as to share the backup you made, so I try to unbrick mine?

pablitofernandez commented 3 years ago

Sure thing, I can upload it in a few hours once I'm at home. @roleoroleo is there anything I have to hide of my backup with sensitive data?

roleoroleo commented 3 years ago

Share only mtdblock3. I don't remember exactly (because it depends on the model) but it shouldn't contain sensitive data.

roleoroleo commented 3 years ago

On Friday I bought exactly the same camera with the same type of serial number and same firmware. Same as @torcuat I tried the y25ga_0.2.6 and ended up bricking the camera after trying to reset it by hitting the reset button on the back of the camera.

The same Friday I bought exactly the same model of camera, which arrived yesterday. I did a backup correctly and instead of the last one I flashed this version y25ga_0.1.9.tar.gz (I found it in another issue). Everything ok, RTSP, web server, etc. Then I tried to update to the latest version (y25ga_0.2.6) from the web server ui.The process finished but only telnet is active, no web server, no rtsp or anything else.

Maybe a problem when the update script decompresses the archive. Probably the archive is too big for /tmp file system. I need to check it. From 0.2.3 to 0.2.4 I added 300KB.

pablitofernandez commented 3 years ago

I can try to flash 0.2.4 again and send you any log if you need it.

pablitofernandez commented 3 years ago

@torcuat here you have the backup bin file: mtdblock3.bin

roleoroleo commented 3 years ago

@pablitofernandez Could you try this version? y25ga_0.2.6.tar.gz

pablitofernandez commented 3 years ago

@roleoroleo It's working!!! Thanks so much! So it was a problem about the /tmp file system?

I can send you any log if you want more info.

Thanks!

image

pablitofernandez commented 3 years ago

Ok just some quick first notes, sometimes when I try to access the RTSP stream with VLC for example, the camera restarts on its own. I have disabled all services except: Httpd, SSH, RTSP and NTPD.

roleoroleo commented 3 years ago

Probably a problem with the size of /tmp. I added swap memory during setup phase.

To avoid restarts, enable swap file.

pablofernandez-deusto commented 3 years ago

You are right again, with swap file I have no more restarts. Now the problem I have is I cant have audio enabled in the rtsp stream. I have tried all audio options but I cant see the audio stream being transmited. I don't know if maybe its better to open another issue.

Thanks!

EDIT: I have user/password enabled for the rtsp stream.

roleoroleo commented 3 years ago

Please, try it without user and password.

pablofernandez-deusto commented 3 years ago

I have just tried with no user/password, Same results.

image

Also If I try to stream the audio only stream it does not connect to it.

pablitofernandez commented 3 years ago

Just for testing purposes I have killed the process and launch it manually like I saw in another issue:

killall wd_rtsp.sh
killall rRTSPServer
RRTSP_RES=high RRTSP_AUDIO=aac RRTSP_USER=test RRTSP_PWD=test ./rRTSPServer

And now I see this in VLC: image

So launching it manually seems to be working 🤷‍♂️

pablitofernandez commented 3 years ago

Some more information, although I can see the codec of the audio transmitting in VLC I can't actually hear anything coming from the cam. There is no sound.

roleoroleo commented 3 years ago

Please, post your config.

pablitofernandez commented 3 years ago

Ok its quite erratic, now it seems to be working (with sound) if I put this command manually:

RRTSP_RES=high RRTSP_AUDIO=aac RRTSP_USER=test RRTSP_PWD=test ./rRTSPServer

This is my system.conf

HTTPD=yes
TELNETD=no
SSHD=yes
FTPD=no
BUSYBOX_FTPD=no
DISABLE_CLOUD=no
REC_WITHOUT_CLOUD=no
MQTT=no
RTSP=yes
RTSP_STREAM=high
RTSP_AUDIO=aac
SPEAKER_AUDIO=yes
ONVIF=yes
ONVIF_WSDD=yes
ONVIF_PROFILE=high
ONVIF_WM_SNAPSHOT=no
NTPD=yes
NTP_SERVER=pool.ntp.org
PROXYCHAINSNG=no
SWAP_FILE=yes
RTSP_PORT=554
ONVIF_PORT=80
HTTPD_PORT=8080
USERNAME=########
PASSWORD=########
TIMEZONE=CET-1CEST,M3.5.0,M10.5.0/3
FREE_SPACE=0
FTP_UPLOAD=no
FTP_HOST=
FTP_DIR=
FTP_DIR_TREE=no
FTP_USERNAME=
FTP_PASSWORD=
FTP_FILE_DELETE_AFTER_UPLOAD=yes
SSH_PASSWORD=############
CRONTAB=
roleoroleo commented 3 years ago

The config is ok. Could you check the command line when the daemon starts (when audio doesn't work)? Get the process id with ps and get the command line with: cat /proc/PID/cmdline

pablitofernandez commented 3 years ago

The output is just:

rRTSPServer

roleoroleo commented 3 years ago

Please try the environment: cat /proc/PID/environment

pablitofernandez commented 3 years ago

There you go

USER=rootRRTSP_MODEL=y25gaRRTSP_AUDIO=aacSHLVL=5LD_LIBRARY_PATH=/lib:/usr/lib:/home/lib:/home/qigan/lib:/home/app/locallib:/home/lib:/home/yi-hack/lib:/tmp/sd/yi-hack/libHOME=/OLDPWD=/partitions=boot@mtdblock1:rootfs@mtdblock2:home@mtdblock3:env@mtdblock4:mfg@mtdblock5:conf@mtdblock6:UDISK@mtdblock7earlyprintk=sunxi-uart,0x05000000boot_type=3cma=0TERM=vt102PATH=/usr/bin:/usr/sbin:/bin:/sbin:/home/base/tools:/home/app/localbin:/home/base:/home/base/tools:/home/yi-hack/bin:/home/yi-hack/sbin:/home/yi-hack/usr/bin:/home/yi-hack/usr/sbin:/tmp/sd/yi-hack/bin:/tmp/sd/yi-hack/sbinRRTSP_RES=highuboot_message=2018.05-00002-g932b424-dirty(12/13/2019-18:21:53)RRTSP_PWD=*********SHELL=/bin/shRRTSP_USER=*******PWD=/home/appTZ=CET-1CEST,M3.5.0,M10.5.0/3RRTSP_PORT=554

pablitofernandez commented 3 years ago

BTW /proc/PID/environment is not found I had to type /proc/PID/environ

roleoroleo commented 3 years ago

The environment is ok. The problem happens only with aac or even with xlaw?

pablitofernandez commented 3 years ago

I have tried with all audio modes. Same result.

roleoroleo commented 3 years ago

Another try please. If you kill rRTSPServer when it doesn't work and wait for it to restart (by watchdog), it works?

pablitofernandez commented 3 years ago

Another try please. If you kill rRTSPServer when it doesn't work and wait for it to restart (by watchdog), it works?

Yes, when the watchdog restart the process it's working correctly!

pablitofernandez commented 3 years ago

BTW which audio codec is the best?

roleoroleo commented 3 years ago

BTW which audio codec is the best?

It depends. Alaw and ulaw are light and require low cpu resouces. But some programs don't support it (eg. ha). Aac requires high cpu resources.

pablitofernandez commented 3 years ago

When you say AAC requires high CPU resources you mean YiCamera CPU resources or client CPU resources? If its YICAM resources should it run better if I disable services like ONVIF, Yi Cloud, etc?

I asking because I would like to integrate the cam with HA, and if AAC is que only compatible codec ...

thanks!!!!!

roleoroleo commented 3 years ago

I mean cam resources. If you want to use ha, I advise you to use these custom components:

with alaw/ulaw audio.

roleoroleo commented 3 years ago

Yes, when the watchdog restart the process it's working correctly!

Please try to extend the sleep after rmm starts. Edit /home/yi-hack/script/system.sh and change sleep from 6 to 10

        LD_LIBRARY_PATH="/home/yi-hack/lib:/lib:/usr/lib:/home/lib:/home/qigan/lib:/home/app/locallib" ./rmm &
        sleep 10
        dd if=/tmp/audio_fifo of=/dev/null bs=1 count=8192

at lines 127 and 154.

pablitofernandez commented 3 years ago

Yes, when the watchdog restart the process it's working correctly!

Please try to extend the sleep after rmm starts. Edit /home/yi-hack/script/system.sh and change sleep from 6 to 10

        LD_LIBRARY_PATH="/home/yi-hack/lib:/lib:/usr/lib:/home/lib:/home/qigan/lib:/home/app/locallib" ./rmm &
        sleep 10
        dd if=/tmp/audio_fifo of=/dev/null bs=1 count=8192

at lines 127 and 154.

With this little tweak is working correctly, tried with alaw and aac, both working when I restart the camera normally.

Thanks so much @roleoroleo !!

roleoroleo commented 3 years ago

I will update the repo.

torcuat commented 3 years ago

@torcuat here you have the backup bin file: mtdblock3.bin

Thank you very much, it worked!

meyomey commented 3 years ago

Hi, i have two bricked cameras here (base version 8.3.0.0A_201912271707, model suffix y25ga). After updating to 0.2.6, both no longer boot. I have a backup of another camera of the same type, but I don't know exactly where to enter the commands to copy it back? How is it possible to stop the boot at the U-Boot prompt? This are my current boot messages:

Camera1:

[38]HELLO! BOOT0 is starting Nov 14 2019 20:01:31! [43]BOOT0 commit : 81c18ee [46]board init start [48]set pll start [50]set pll end [52][pmu]: bus read error [54]board init ok [56]chip id check OK [58]DRAM BOOT DRIVE INFO: V0.41 [61]DRAM CLK = 528 MHz [63]DRAM Type = 2 (2:DDR2,3:DDR3) [67]DRAMC read ODT off. [69]DRAM ODT off. [71]DRAM SIZE =64 M [78]DRAM simple test OK. [80]rtc standby flag is 0x0, super standby flag is 0x0 [86]dram size =64 [88]spinor id is: c8 40 18, read cmd: 03 [92]Succeed in reading toc file head. [96]The size of toc is 6c000. [170]Entry_name = optee [173]Entry_name = u-boot [178]Entry_name = dtb [181]Jump to secend Boot. MESSAGE: [0x0] TEE-CORE: OP-TEE version: sun8iw19p1_v0.6.0-12-g97f2688 #1 2019年 11月 08日 星期五 08:26:51 UTC arm ERROR: [0x0] TEE-CORE:platform_standby_fdt_parse:126: no pmu node ERROR: [0x0] TEE-CORE:sunxi_twi_parse_from_dt:84: no pmu node

U-Boot 2018.05-00002-g932b424-dirty (Dec 13 2019 - 18:21:53 +0800) Allwinner Tec hnology

[00.249]CPU: Allwinner Family [00.252]Model: sun8iw19 I2C: ready [00.257]DRAM: 64 MiB [00.259]Relocation Offset is: f9f6a000 [00.276]secure enable bit: 0 [00.278]pmu_axp2101_probe pmic_bus_read fail [00.282]drivers/sunxi_power/pmu_axpnull.c pmu_axpnull_probe 26 axpdummy probe [00.289]bmu_axp2101_probe pmic_bus_read fail [00.293]BMU: AXPNULL [00.296]CPU=816 MHz,PLL6=600 Mhz,AHB=200 Mhz, APB1=100Mhz MBus=132Mhz [00.302]gic: sec monitor mode [00.304]flash init start [00.307]workmode = 0,storage type = 3 SF: Detected gd25q128 with page size 256 Bytes, erase size 64 KiB, total 16 MiB [00.319]sunxi flash init ok [00.322]Loading Environment from SUNXI_FLASH... OK [00.342]sprite_led_gpio start [00.347]update dts root_partition is rootfs set root to /dev/mtdblock2 [00.355]update part info [00.357]update bootcmd [00.359]No ethernet found. [00.361]get mem for descripter OK !

[00.587]Card did not respond to voltage select! card0 init failed No sd-card insert,will normal boot Hit any key to stop autoboot: 0

Booting kernel from Legacy Image at 45000000 ...

Image Name: ARM OpenWrt Linux-4.9.118 Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 2080440 Bytes = 2 MiB Load Address: 40008000 Entry Point: 40008000 [01.937]Starting kernel ...

[ 0.000000] ion_mem_reserve: err format for ion reserve list! [ 0.112511] ion_heap_create: Invalid heap type 4 [ 0.119935] sunxi_i2c_probe()2209 - [i2c1] warning: failed to get regulator i d [ 0.147735] uart uart0: get regulator failed [ 0.175374] sunxi-wlan wlan: request pincrtl handle for device [wlan] failed [ 0.183723] sunxi-wlan wlan: get gpio chip_en failed [ 0.206062] mtd: partition "UDISK" is out of reach -- disabled [ 0.217426] VE: get debugfs_mpp_root is NULL, please check mpp [ 0.217426] [ 0.490997] mmc:failed to get gpios [ 0.534458] sunxi-mmc sdc1: smc 1 p1 err, cmd 52, RTO !! [ 0.541311] sunxi-mmc sdc1: smc 1 p1 err, cmd 52, RTO !! [ 0.551771] sunxi-mmc sdc1: smc 1 p1 err, cmd 8, RTO !! [ 0.558541] sunxi-mmc sdc1: smc 1 p1 err, cmd 5, RTO !! [ 0.565326] sunxi-mmc sdc1: smc 1 p1 err, cmd 5, RTO !! [ 0.572114] sunxi-mmc sdc1: smc 1 p1 err, cmd 5, RTO !! [ 0.578900] sunxi-mmc sdc1: smc 1 p1 err, cmd 5, RTO !! [ 0.585690] sunxi-mmc sdc1: smc 1 p1 err, cmd 55, RTO !! [ 0.592538] sunxi-mmc sdc1: smc 1 p1 err, cmd 55, RTO !! [ 0.599402] sunxi-mmc sdc1: smc 1 p1 err, cmd 55, RTO !! [ 0.606280] sunxi-mmc sdc1: smc 1 p1 err, cmd 55, RTO !! [ 0.613282] sunxi-mmc sdc1: smc 1 p1 err, cmd 1, RTO !! starting pid 465, tty '': '/etc/init.d/rcS boot'

Populating /dev using udev: [ 0.919551] udevd[470]: could not create /run/ude v: No such file or directory done

/home/app/init.sh not exist!

read-only file system detected...done starting pid 480, tty '/dev/console': '-/bin/sh'

BusyBox v1.27.2 () built-in shell (ash)

        __    __   _
        \ \  / /  | |
         \ \/ /   | |
          \  /    | |
          / /     | |
         /_/      |_|

Welcome to XiaoYi Linux.

root@xiaoyi:/#


Camera2:

root@xiaoyi:/# ^C[149]HELLO! BOOT0 is starting Nov 14 2019 20:01:31! [154]BOOT0 commit : 81c18ee [157]board init start [159]set pll start [161]set pll end [163][pmu]: bus read error [166]board init ok [168]chip id check OK [170]DRAM BOOT DRIVE INFO: V0.41 [173]DRAM CLK = 528 MHz [175]DRAM Type = 2 (2:DDR2,3:DDR3) [179]DRAMC read ODT off. [181]DRAM ODT off. [184]DRAM SIZE =64 M [190]DRAM simple test OK. [193]rtc standby flag is 0x0, super standby flag is 0x0 [198]dram size =64 [201]spinor id is: 1c 70 18, read cmd: 03 [205]Succeed in reading toc file head. [208]The size of toc is 6c000. [282]Entry_name = optee [285]Entry_name = u-boot [290]Entry_name = dtb [294]Jump to secend Boot. MESSAGE: [0x0] TEE-CORE: OP-TEE version: sun8iw19p1_v0.6.0-12-g97f2688 #1 2019年 11月 08日 星期五 08:26:51 UTC arm ERROR: [0x0] TEE-CORE:platform_standby_fdt_parse:126: no pmu node ERROR: [0x0] TEE-CORE:sunxi_twi_parse_from_dt:84: no pmu node

U-Boot 2018.05-00002-g932b424-dirty (Dec 13 2019 - 18:21:53 +0800) Allwinner Technology

[00.362]CPU: Allwinner Family [00.365]Model: sun8iw19 I2C: ready [00.369]DRAM: 64 MiB [00.372]Relocation Offset is: f9f6a000 [00.388]secure enable bit: 0 [00.390]pmu_axp2101_probe pmic_bus_read fail [00.394]drivers/sunxi_power/pmu_axpnull.c pmu_axpnull_probe 26 axpdummy probe [00.401]bmu_axp2101_probe pmic_bus_read fail [00.405]BMU: AXPNULL [00.408]CPU=816 MHz,PLL6=600 Mhz,AHB=200 Mhz, APB1=100Mhz MBus=132Mhz [00.414]gic: sec monitor mode [00.417]flash init start [00.419]workmode = 0,storage type = 3 SF: Detected en25qh128 with page size 256 Bytes, erase size 64 KiB, total 16 MiB [00.430]sunxi flash init ok [00.433]Loading Environment from SUNXI_FLASH... OK [00.464]sprite_led_gpio start [00.469]update dts root_partition is rootfs set root to /dev/mtdblock2 [00.478]update part info [00.480]update bootcmd [00.482]No ethernet found. [00.485]get mem for descripter OK !

card_caps:0x3000000a host_caps:0x3000003f Unrecognized filesystem type Nothing updated, start normal boot Hit any key to stop autoboot: 0

Booting kernel from Legacy Image at 45000000 ...

Image Name: ARM OpenWrt Linux-4.9.118 Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 2080440 Bytes = 2 MiB Load Address: 40008000 Entry Point: 40008000 [02.362]Starting kernel ...

[ 0.000000] ion_mem_reserve: err format for ion reserve list! [ 0.112266] ion_heap_create: Invalid heap type 4 [ 0.119630] sunxi_i2c_probe()2209 - [i2c1] warning: failed to get regulator id [ 0.147594] uart uart0: get regulator failed [ 0.175185] sunxi-wlan wlan: request pincrtl handle for device [wlan] failed [ 0.183565] sunxi-wlan wlan: get gpio chip_en failed [ 0.205754] mtd: partition "UDISK" is out of reach -- disabled [ 0.217119] VE: get debugfs_mpp_root is NULL, please check mpp [ 0.217119] [ 0.491756] mmc:failed to get gpios [ 0.540063] sunxi-mmc sdc1: smc 1 p1 err, cmd 52, RTO !! [ 0.546949] sunxi-mmc sdc1: smc 1 p1 err, cmd 52, RTO !! [ 0.557450] sunxi-mmc sdc1: smc 1 p1 err, cmd 8, RTO !! [ 0.564224] sunxi-mmc sdc1: smc 1 p1 err, cmd 5, RTO !! [ 0.571009] sunxi-mmc sdc1: smc 1 p1 err, cmd 5, RTO !! [ 0.577779] sunxi-mmc sdc1: smc 1 p1 err, cmd 5, RTO !! [ 0.584546] sunxi-mmc sdc1: smc 1 p1 err, cmd 5, RTO !! [ 0.591342] sunxi-mmc sdc1: smc 1 p1 err, cmd 55, RTO !! [ 0.598240] sunxi-mmc sdc1: smc 1 p1 err, cmd 55, RTO !! [ 0.605143] sunxi-mmc sdc1: smc 1 p1 err, cmd 55, RTO !! [ 0.612041] sunxi-mmc sdc1: smc 1 p1 err, cmd 55, RTO !! [ 0.619058] sunxi-mmc sdc1: smc 1 p1 err, cmd 1, RTO !! starting pid 471, tty '': '/etc/init.d/rcS boot'

Populating /dev using udev: [ 0.927051] udevd[476]: could not create /run/udev: No such file or directory done

--------------------------home app init.sh-------------------------- read-only file system detected...done starting pid 487, tty '/dev/console': '-/bin/sh'

BusyBox v1.27.2 () built-in shell (ash)

vm.dirty_background_ratio = 2 vm.dirty_expire_centisecs = 500 vm.dirty_ratio = 2

        __    __   _
        \ \  / /  | |
         \ \/ /   | |
          \  /    | |
          / /     | |
         /_/      |_|

Welcome to XiaoYi Linux.

root@xiaoyi:/# vm.dirty_writeback_centisecs = 100 fs.mqueue.msg_max = 256

checkdisk.c(get_tfcard_size_v2-105)[00:00:04.871]:TF card total size : 3780 MB

checkdisk.c(get_fs_type-251)[00:00:04.872]:FS TYPE : VFAT

checkdisk.c(get_cluster_size-313)[00:00:04.889]:cluster_size = 32768 Bytes

checkdisk.c(check_partion_vfat-152)[00:00:04.889]:TF Card checking ....

checkdisk.c(do_fat_check-117)[00:00:04.889]:Can fat check

checkdisk.c(do_fat_check-121)[00:00:05.020]:retBuf(fsck.fat 3.0.26 (2014-03-07) step 0 4 0x41: Dirty bit is set. Fs was not properly unmounted and some data may be corrupt. step 1 4 step 2 4 step 3 4 step 4 4 step 5 5 step 6 5 /dev/mmcblk0p1: 15 files, 886/120704 clusters )

checkdisk.c(do_fat_check-140)[00:00:05.030]:Mount sd ok.

checkdisk.c(check_partion_vfat-156)[00:00:05.030]:TF Card check finished.

checkdisk, main() ret_status(10000) checkdisk, main() ret_status(10000),g_sysconf_ptr->tf_status.stat(10000) ---update file(home_y20gam) Not exist--- --------------------------insmod sound-------------------------- [ 3.500130] --->sunxi_daudio_dev_probe<--- strat. [ 3.507000] --->sunxi_daudio_dev_probe<--- end. --------------------------insmod sensor-------------------------- [ 3.953972] 8189fs: section 3 reloc 9361 sym 'skb_pull': relocation 10 out of range (0xbf875fb0 -> 0xc01a6d2b) [ 3.982759] 8189fs: section 3 reloc 9361 sym 'skb_pull': relocation 10 out of range (0xbf951fb0 -> 0xc01a6d2b) insmod: can't insert '/home/base/wifi/8189fs.ko': invalid module format ifconfig: SIOCGIFFLAGS: No such device /home/app/init.sh: line 147: /home/yi-hack/script/system.sh: not found hue, start_with_reset = 1 @get_config()->g_sysconf.ssid == 0

#########is_sd_exit chg to: 10000<<<<<<<<<<<<<<<<<<<

roleoroleo commented 3 years ago

Press enter after the power on. The cam should stop. https://github.com/roleoroleo/yi-hack-Allwinner/wiki/Unbrick-the-cam

meyomey commented 3 years ago

Thanks! it works, but you have to wait for the very exact moment at "Hit any key to stop autoboot" Now i have written back the file mtdblock3.bin. Now i get this with inserted SD card:

root@xiaoyi:/# checkdisk.c(get_tfcard_size_v2-105)[00:00:05.346]:TF card total size : 30436 MB checkdisk.c(get_fs_type-251)[00:00:05.351]:FS TYPE : VFAT checkdisk.c(get_cluster_size-313)[00:00:05.369]:cluster_size = 32768 Bytes checkdisk.c(check_partion_vfat-152)[00:00:05.369]:TF Card checking .... checkdisk.c(do_fat_check-117)[00:00:05.370]:Can fat check checkdisk.c(do_fat_check-121)[00:00:05.737]:retBuf(fsck.fat 3.0.26 (2014-03-07) step 0 5 0x41: Dirty bit is set. Fs was not properly unmounted and some data may be corrupt. step 1 5 step 2 5 step 3 5 step 4 5 step 5 5 step 6 5 /dev/mmcblk0p1: 3 files, 4/973584 clusters ) checkdisk.c(do_fat_check-140)[00:00:05.742]:Mount sd ok. checkdisk.c(check_partion_vfat-156)[00:00:05.743]:TF Card check finished. checkdisk, main() ret_status(10000) checkdisk, main() ret_status(10000),g_sysconf_ptr->tf_status.stat(10000) ---update file(home_y25gam) Not exist--- --------------------------insmod sound-------------------------- [ 4.019507] --->sunxi_daudio_dev_probe<--- strat. [ 4.029880] --->sunxi_daudio_dev_probe<--- end. --------------------------insmod sensor--------------------------

without SD:

root@xiaoyi:/# cat: can't open '/sys/block/mmcblk0/device/cid': No such file or directory checkdisk, main() ret_status(10012) checkdisk, main() ret_status(10012),g_sysconf_ptr->tf_status.stat(10012) umount: can't unmount /tmp/sd: Invalid argument mount: mounting /dev/mmcblk0p1 on /tmp/sd failed: No such file or directory ---update file(home_y25gam) Not exist--- --------------------------insmod sound-------------------------- [ 3.576595] --->sunxi_daudio_dev_probe<--- strat. [ 3.586831] --->sunxi_daudio_dev_probe<--- end. --------------------------insmod sensor--------------------------

Any idea what can be wrong now? Thanks meyomey

roleoroleo commented 3 years ago

What's the problem? Does the cam start?

meyomey commented 3 years ago

Hi, the camera starts, but only the yellow LED lights up continuously. The camera cannot be connected to the app, no "waiting for connect" The reset button does not work.

roleoroleo commented 3 years ago

Post the whole log starting from power on, if you have serial cable connected.

meyomey commented 3 years ago

Here is the complete log:

[212]HELLO! BOOT0 is starting Nov 14 2019 20:01:31!
[217]BOOT0 commit : 81c18ee
[220]board init start
[222]set pll start
[225]set pll end
[226][pmu]: bus read error
[229]board init ok
[231]chip id check OK
[233]DRAM BOOT DRIVE INFO: V0.41
[236]DRAM CLK = 528 MHz
[238]DRAM Type = 2 (2:DDR2,3:DDR3)
[242]DRAMC read ODT  off.
[244]DRAM ODT off.
[247]DRAM SIZE =64 M
[253]DRAM simple test OK.
[256]rtc standby flag is 0x0, super standby flag is 0x0
[261]dram size =64
[264]spinor id is: c8 40 18, read cmd: 03
[268]Succeed in reading toc file head.
[271]The size of toc is 6c000.
[345]Entry_name        = optee
[349]Entry_name        = u-boot
[353]Entry_name        = dtb
[357]Jump to secend Boot.
MESSAGE: [0x0] TEE-CORE: OP-TEE version: sun8iw19p1_v0.6.0-12-g97f2688 #1 2019年                                                                                                                                                                              11月 08日 星期五 08:26:51 UTC arm
ERROR:   [0x0] TEE-CORE:platform_standby_fdt_parse:126: no pmu node
ERROR:   [0x0] TEE-CORE:sunxi_twi_parse_from_dt:84: no pmu node

U-Boot 2018.05-00002-g932b424-dirty (Dec 13 2019 - 18:21:53 +0800) Allwinner Tec                                                                                                                                                                             hnology

[00.425]CPU:   Allwinner Family
[00.428]Model: sun8iw19
I2C:   ready
[00.432]DRAM:  64 MiB
[00.435]Relocation Offset is: f9f6a000
[00.451]secure enable bit: 0
[00.453]pmu_axp2101_probe pmic_bus_read fail
[00.457]drivers/sunxi_power/pmu_axpnull.c pmu_axpnull_probe 26 axpdummy probe
[00.464]bmu_axp2101_probe pmic_bus_read fail
[00.468]BMU: AXPNULL
[00.471]CPU=816 MHz,PLL6=600 Mhz,AHB=200 Mhz, APB1=100Mhz  MBus=132Mhz
[00.477]gic: sec monitor mode
[00.480]flash init start
[00.482]workmode = 0,storage type = 3
SF: Detected gd25q128 with page size 256 Bytes, erase size 64 KiB, total 16 MiB
[00.494]sunxi flash init ok
[00.498]Loading Environment from SUNXI_FLASH... OK
[00.518]sprite_led_gpio start
[00.522]update dts
root_partition is rootfs
set root to /dev/mtdblock2
[00.530]update part info
[00.532]update bootcmd
[00.534]No ethernet found.
[00.537]get mem for descripter OK !

card_caps:0x3000000a
host_caps:0x3000003f
** Unrecognized filesystem type **
Nothing updated, start normal boot
Hit any key to stop autoboot:  0
## Booting kernel from Legacy Image at 45000000 ...
   Image Name:   ARM OpenWrt Linux-4.9.118
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    2080440 Bytes = 2 MiB
   Load Address: 40008000
   Entry Point:  40008000
[02.373]Starting kernel ...

[    0.000000] ion_mem_reserve: err format for ion reserve list!
[    0.111589] ion_heap_create: Invalid heap type 4
[    0.118885] sunxi_i2c_probe()2209 - [i2c1] warning: failed to get regulator i                                                                                                                                                                             d
[    0.146505] uart uart0: get regulator failed
[    0.174278] sunxi-wlan wlan: request pincrtl handle for device [wlan] failed
[    0.182662] sunxi-wlan wlan: get gpio chip_en failed
[    0.204955] mtd: partition "UDISK" is out of reach -- disabled
[    0.216480] VE: get debugfs_mpp_root is NULL, please check mpp
[    0.216480]
[    0.490697] mmc:failed to get gpios
[    0.539015] sunxi-mmc sdc1: smc 1 p1 err, cmd 52, RTO !!
[    0.545910] sunxi-mmc sdc1: smc 1 p1 err, cmd 52, RTO !!
[    0.556430] sunxi-mmc sdc1: smc 1 p1 err, cmd 8, RTO !!
[    0.563206] sunxi-mmc sdc1: smc 1 p1 err, cmd 5, RTO !!
[    0.569995] sunxi-mmc sdc1: smc 1 p1 err, cmd 5, RTO !!
[    0.576777] sunxi-mmc sdc1: smc 1 p1 err, cmd 5, RTO !!
[    0.583554] sunxi-mmc sdc1: smc 1 p1 err, cmd 5, RTO !!
[    0.590337] sunxi-mmc sdc1: smc 1 p1 err, cmd 55, RTO !!
[    0.597253] sunxi-mmc sdc1: smc 1 p1 err, cmd 55, RTO !!
[    0.604174] sunxi-mmc sdc1: smc 1 p1 err, cmd 55, RTO !!
[    0.611056] sunxi-mmc sdc1: smc 1 p1 err, cmd 55, RTO !!
[    0.618086] sunxi-mmc sdc1: smc 1 p1 err, cmd 1, RTO !!
starting pid 471, tty '': '/etc/init.d/rcS boot'
[RCS]: /etc/init.d/S01udev
Populating /dev using udev: [    0.928752] udevd[476]: could not create /run/ude                                                                                                                                                                             v: No such file or directory
done
[RCS]: /etc/init.d/S02app
[RCS]: /etc/init.d/S20urandom
--------------------------home app init.sh--------------------------
vm.dirty_background_ratio = 2
read-only file system detected...done
vm.dirty_expire_centisecs = 500
starting pid 489, tty '/dev/console': '-/bin/sh'

BusyBox v1.27.2 () built-in shell (ash)

vm.dirty_ratio = 2
vm.dirty_writeback_centisecs = 100
fs.mqueue.msg_max = 256

            __    __   _
            \ \  / /  | |
             \ \/ /   | |
              \  /    | |
              / /     | |
             /_/      |_|
 ------------------------------------
 Welcome to XiaoYi Linux.
 ------------------------------------

root@xiaoyi:/#
checkdisk.c(get_tfcard_size_v2-105)[00:00:05.350]:TF card total size : 30436 MB

checkdisk.c(get_fs_type-251)[00:00:05.355]:FS TYPE : VFAT

checkdisk.c(get_cluster_size-313)[00:00:05.373]:cluster_size = 32768 Bytes

checkdisk.c(check_partion_vfat-152)[00:00:05.373]:TF Card  checking ....

checkdisk.c(do_fat_check-117)[00:00:05.373]:Can fat check

checkdisk.c(do_fat_check-121)[00:00:05.742]:retBuf(fsck.fat 3.0.26 (2014-03-07)
step 0 5
0x41: Dirty bit is set. Fs was not properly unmounted and some data may be corru                                                                                                                                                                             pt.
step 1 5
step 2 5
step 3 5
step 4 5
step 5 5
step 6 5
/dev/mmcblk0p1: 3 files, 4/973584 clusters
)

checkdisk.c(do_fat_check-140)[00:00:05.748]:Mount sd ok.

checkdisk.c(check_partion_vfat-156)[00:00:05.748]:TF Card check finished.

checkdisk, main() ret_status(10000)
checkdisk, main() ret_status(10000),g_sysconf_ptr->tf_status.stat(10012)

checkdisk.c(main-477)[00:00:05.748]:Need update tf_status.stat,
old stat : 10012, new stat : 10000
---update file(home_y25gam) Not exist---
--------------------------insmod sound--------------------------
[    4.020030] --->sunxi_daudio_dev_probe<--- strat.
[    4.030401] --->sunxi_daudio_dev_probe<--- end.
--------------------------insmod sensor--------------------------
roleoroleo commented 3 years ago

There are no problem in the log. Please run the following commands: ps lsmod mount ls -laR /

meyomey commented 3 years ago

Thats the related log: putty.log

roleoroleo commented 3 years ago

The output of the ps command is not ok. Processes don't start. It's difficult to understand the problem. Probably something wrong in the startup procedure. Check if /home/app/init.sh is ok and try to run it manually.