Closed jimsmt closed 2 years ago
Unfortunately this firmware is encrypted, so emmc dump is needed. I see uboot has support for mmc, do you have mmc slot on board?
I noticed that too before I used the mmc write command to flash the uimage.bin file to EMMC chip. Now I can’t even boot to kernel, uboot says can’t find kernel image :( tftp 0x82000000 uimage.bin then bootm 0x82000000 gave the same result
Seems you can’t update the kernel partition in uboot, you can only do that in the web panel, there should be a decryption process before writing kernel files to EMMC chip
Yes there’s a micro SD card slot, I will try to get a dump of the other partitions which I haven’t overwritten tomorrow, and contact Uniview support to see if I can get a replacement
I tried the micro-SD card slot, but the mmc command inside uboot can only find the onboard emmc chip. I will send the device back to UNV support service, they will likely replace the PCB board. I will continue to try to get the partition dumps after I got it back
uboot # mmcinfo
Device: himci
Manufacturer ID: 15
OEM: 100
Name: 8GTF4
Tran Speed: 200000000
Rd Block Len: 512
MMC version 5.1
High Capacity: Yes
Bus Width: 4-bit
Erase Group Size: 512 KiB
HC WP Group Size: 8 MiB
User Capacity: 7.3 GiB ENH WRREL
User Enhanced Start: 0 Bytes
User Enhanced Size: 8 MiB
Boot Capacity: 4 MiB ENH
RPMB Capacity: 512 KiB ENH
uboot # mmc dev 0
scan edges:2 p2f:6 f2p:1
mix set temp-phase 3
scan elemnts: startp:120 endp:111
Tuning SampleClock. mix set phase:[03/07] ele:[10d/15]
** First descriptor is NOT a primary desc on 0:1 **
switch to partitions #0, OK
mmc0(part 0) is current device
uboot # mmc dev 1
MMC Device 1 not found
no mmc device at slot 1
uboot # mmc dev 2
MMC Device 2 not found
no mmc device at slot 2
Refer to this message from our telegram channel
also found I can use md.b to display memory in hex.. I also found a python program to convert this back into binary. Seems to work...
this will be extremely long but possible...
Unfortunately the nand chip is already flashed with encrypted image, and UNV refused my request to replace a PCB board, now I'm looking for another same model to get a dump, this will take some time
The method you mentioned could be very useful when there's no tftp upload function or no network access at all, could you please give the name of that python program, thanks
I made some search and found that the xxd command in debian can directly convert the copy-pasted hex texts to binary file, but it does take a long time
xxd -r -seek -0x82000000 input.txt output.bin
0x82000000 is the memory offset
https://github.com/smorin/hextool/blob/master/hexdump.py prolly this, but xxd will work too, but it will generate a 2gig file, which you will have to cut manually later
but it will generate a 2gig file, which you will have to cut manually later
Use the -seek parameter to ignore the none existing contents before
Just curious, Is it possible to create an uimage together with rootfs inside it, so we can load it into memory by tftp and boot into it with the bootm command, then mount the partitions to get a dump
It's possible, but much easier is to use nfsroot
I've just noticed that you've asked about cv500 family, have you checked available sensors? I see yours is there....
I've just noticed that you've asked about cv500 family, have you checked available sensors? I see yours is there....
Thanks but I didn't asked about cv500, I don't have one either. Currently I have 3516av100+imx185, 3516av200+imx385, 3516dv100+imx385 and 3516dv300+sc4210
3516dv300 is 3516cv500
thanks, so do I need to install the cv500 firmware instead of 3516dv300?
install firmware for your soc, but they share same family, so there will be same files in all of them
Hi, I have manged to get a dump of the emmc chip, please let me know if you still need them, attached are the libsns files libsns.zip
root@root:/nfs/HIC5641# ./ipctool
---
chip:
vendor: HiSilicon
model: 3516DV300
ethernet:
mac: "6c:xxxxxxxx"
u-mdio-phyaddr: 1
phy-id: 0xffffffff
d-mdio-phyaddr: 0
ram:
total: 2048M
media: 1535M
firmware:
kernel: "4.9.37 (SMP Thu Oct 29 16:38:14 CST 2020)"
toolchain: gcc version 6.3.0 (HC&C V100R002C00B017_20180728)
sdk: "Hi3516CV500_MPP_V2.0.1.0 B090 Release (Jan 14 2019, 20:23:45)"
main-app: mwareserver
sensors:
- vendor: SmartSens
model: SC4210
control:
bus: 0
type: i2c
addr: 0x60
Hi, I have an Uniview camera with Hi3516DV300, CMOS sensor is SmartSens SC4210. It has 2GB memory and 8GB onboard EMMC storage. As told in another issue, you can add support for this sensor if I have the .so files for the sensor.
Unfortunately, the shell access is limited to only a few commands, the uboot tftp command is limited to download only, so I can't get a dump of the EMMC chip. But I do have a firmware image for upgrade. The entire firmware is more than 500MB large, I can't upload it here on github, so I upload it somewhere else: https://ufile.io/se1e8xam or https://tmpsend.com/grGCGuh0 The uimage.bin is 12MB large
Please take a look and see if you can extract the .so files from it
Thank you very much