China ipcam TFTP Crashed

rapsodi1

Young grasshopper
Joined
Sep 11, 2020
Messages
43
Reaction score
1
Location
turkey
Hello there

I have a problem..

I tried to upload firmware to a chinese camera via tftp.

I did a wrong operation. The command that caused the error was:

"setenv bootcmd tftp 0xc08008000 new.fls" - (new.fls is the compatible camera firmware in the root directory of tftpd32.)

the camera is constantly trying to start via tftp. and it doesn't start.

Where can I find the starting address of the camera?
 

catcamstar

Known around here
Joined
Jan 28, 2018
Messages
1,659
Reaction score
1,193
Tell us a little bit more about this cam. Brand, type, model, connection.
CC
PS. My Crystal ball died last night, sorry!
 

SouthernYankee

IPCT Contributor
Joined
Feb 15, 2018
Messages
5,170
Reaction score
5,320
Location
Houston Tx
Most every one in the Americas are still in BED.

The general rule is to NOT upgrade chinese hacked cameras. If it is not broken do not fix it.
 

alastairstevenson

Staff member
Joined
Oct 28, 2014
Messages
15,952
Reaction score
6,787
Location
Scotland
I did a wrong operation. The command that caused the error was:

"setenv bootcmd tftp 0xc08008000 new.fls" - (new.fls is the compatible camera firmware in the root directory of tftpd32.)

the camera is constantly trying to start via tftp. and it doesn't start.

Where can I find the starting address of the camera?
That should not have written any firmware to the flash.
But it will stop it booting.

Suggestion :
Interrupt the bootloader, and put the bootcmd variable back to its original value, then saveenv and reset.
 

rapsodi1

Young grasshopper
Joined
Sep 11, 2020
Messages
43
Reaction score
1
Location
turkey
That should not have written any firmware to the flash.
But it will stop it booting.

Suggestion :
Interrupt the bootloader, and put the bootcmd variable back to its original value, then saveenv and reset.
thanks for the reply. but I can't find its original value. is there a command to see the original value?
 

alastairstevenson

Staff member
Joined
Oct 28, 2014
Messages
15,952
Reaction score
6,787
Location
Scotland
but I can't find its original value.
So you didn't keep a transcript of what was originally set before you changed it?

is there a command to see the original value?
Suggestion :
List the bootloader environment variables and the commands available :

printenv
help

and post the results here.
 

alastairstevenson

Staff member
Joined
Oct 28, 2014
Messages
15,952
Reaction score
6,787
Location
Scotland
Pure guesswork - try this :
Code:
setenv bootcmd sf probe 0;sf read 0x82000000 0x100000 0x300000;bootm 0x82000000
saveenv
reset
edit
Or maybe this :
Code:
setenv bootcmd sf probe 0;sf read 0x807fffc0 0x80000 0x300000;bootm 0x807fffc0
saveenv
reset
 
Last edited:

rapsodi1

Young grasshopper
Joined
Sep 11, 2020
Messages
43
Reaction score
1
Location
turkey
Pure guesswork - try this :
Code:
setenv bootcmd sf probe 0;sf read 0x82000000 0x100000 0x300000;bootm 0x82000000
saveenv
reset
edit
Or maybe this :
Code:
setenv bootcmd sf probe 0;sf read 0x807fffc0 0x80000 0x300000;bootm 0x807fffc0
saveenv
reset
thanks a lot .. thanks to you the camera started to open again. now i will be more careful to solve the main problem.
 

alastairstevenson

Staff member
Joined
Oct 28, 2014
Messages
15,952
Reaction score
6,787
Location
Scotland
So the camera is working again?
That's good.

Next time you change something, make sure you know how it was before the change!
 

rapsodi1

Young grasshopper
Joined
Sep 11, 2020
Messages
43
Reaction score
1
Location
turkey
So the camera is working again?
That's good.

Next time you change something, make sure you know how it was before the change!

Yes, the camera was turned on again with the code you gave.

actually this is what I'm trying to fix. It might be a little interesting, I'll explain below.

the processors of these cameras deteriorate over time. we have processors that the manufacturer supplies to us. We use these processors on broken cameras. However, when we use these processors, everything works normally in the camera (entering the web interface, firmware update, etc.) but the image remains black. nothing but a black screen.

but

When we disassemble the processor of another working camera and plug it into the camera I mentioned, everything works fine. coming in the image.

"hi3518" on two processors.

I guess this is not a software problem. a hardware problem. what is your opinion??

btw sorry for my bad english. I hope you understand.
 

alastairstevenson

Staff member
Joined
Oct 28, 2014
Messages
15,952
Reaction score
6,787
Location
Scotland
the processors of these cameras deteriorate over time. we have processors that the manufacturer supplies to us. We use these processors on broken cameras. However, when we use these processors, everything works normally in the camera (entering the web interface, firmware update, etc.) but the image remains black. nothing but a black screen
Not an effect I've heard anything about, for that device.
But if the DSP is failing - I'd expect to see some evidence in the serial console.
Have you checked the power rails for correct voltage and lack of excess noise?

When we disassemble the processor of another working camera and plug it into the camera I mentioned, everything works fine. coming in the image.
That's a tricky activity. Presumably these are BGA (ball grid array) devices, quite difficult to dismount and replace.

I guess this is not a software problem. a hardware problem. what is your opinion??
How good is the SoC heat-sinking arrangement on the camera?
Maybe the SoC runs a bit hot and suffers from faster eletromigration than usual.
 

rapsodi1

Young grasshopper
Joined
Sep 11, 2020
Messages
43
Reaction score
1
Location
turkey
Not an effect I've heard anything about, for that device.
But if the DSP is failing - I'd expect to see some evidence in the serial console.
Have you checked the power rails for correct voltage and lack of excess noise?
yes the power values are normal.
Thanks again for your interest. When I go to the company tomorrow, I'll make a serial connection and send a screen video. please follow the topic.

That's a tricky activity. Presumably these are BGA (ball grid array) devices, quite difficult to dismount and replace.
yes, we have BGA devices that we use to replace this processor. This is how we try. We are one of Turkey's largest local firms. but we have never seen such a problem.

How good is the SoC heat-sinking arrangement on the camera?
Maybe the SoC runs a bit hot and suffers from faster eletromigration than usual.
Soc heat values also seem normal. There is nothing wrong. Tomorrow I will shoot the serial console video for you. thanks again for your help
 

rapsodi1

Young grasshopper
Joined
Sep 11, 2020
Messages
43
Reaction score
1
Location
turkey
So much better to simply record the serial console to a text file, such as the 'Copy all to clipboard' of PuTTY, or for very large volumes, the log to file facility.
Yes. I will do that too. There is a situation like this. It continues to send some data to the archive continuously after the Karnel is started. it never stops. A screenvideo with the diary I copied to the clipboard may be more helpful for you to understand the situation.
 

rapsodi1

Young grasshopper
Joined
Sep 11, 2020
Messages
43
Reaction score
1
Location
turkey
So much better to simply record the serial console to a text file, such as the 'Copy all to clipboard' of PuTTY, or for very large volumes, the log to file facility.
this is the putty output

I zipped because it gave an error when I added it as txt.
 

Attachments

Last edited:

alastairstevenson

Staff member
Joined
Oct 28, 2014
Messages
15,952
Reaction score
6,787
Location
Scotland
this is the putty output
I had a quick scan through.
I didn't see any comments about non-responding video hardware.
But clearly this is abnormal and anomalous :
[Trace]: GetLastIFrame 244: AVType = 8 VideoIndex = 1 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 8 VideoIndex = 0 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 8 VideoIndex = 2 VideoPos = 0

Is the video also missing when accessing via RTSP or something like ONVIF Device Manager?
 

rapsodi1

Young grasshopper
Joined
Sep 11, 2020
Messages
43
Reaction score
1
Location
turkey
I had a quick scan through.
I didn't see any comments about non-responding video hardware.
But clearly this is abnormal and anomalous :
[Trace]: GetLastIFrame 244: AVType = 8 VideoIndex = 1 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 8 VideoIndex = 0 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 8 VideoIndex = 2 VideoPos = 0

Is the video also missing when accessing via RTSP or something like ONVIF Device Manager?
I tried right now. here are the results:

It tries to connect and just stays there. does not give an error. but it doesn't connect
 

Attachments

rapsodi1

Young grasshopper
Joined
Sep 11, 2020
Messages
43
Reaction score
1
Location
turkey
Code:
[Trace]: GetLastIFrame 244: AVType = 8 VideoIndex = 1 VideoPos = 0
[Trace]: get_sock_request 1009: fd = 11
[Trace]: get_sock_request 1038: fd = 11 port = 25299
[Trace]: ParseProtocol 715: data = [Trace]: LongseAddFd 190 fd = 11
[Trace]: AddLSFd 186: fix_pos = 11 fd 11
[Trace]: GetLastIFrame 244: AVType = 8 VideoIndex = 2 VideoPos = 0
[Trace]: RemoveLSFd 281: Remove 10 fd 12
[Trace]: LSSendRecvSocketThread 1008: Video disconnect
[Trace]: GetLastIFrame 244: AVType = 10 VideoIndex = 0 VideoPos = 0
[Trace]: ProtocolLSNetworkProcess 7532: cmd = 258
[Trace]: ProtocolLSNetworkProcess 7540:MSGTYPE = 0
[Trace]: ProtocolLSNetworkProcess 7566: request uid = 4 get uit = 0, usCmd = 0X102
[Trace]: Process LongseProtocolAccess.c ProcessLSGetStream 1547
[Trace]: ProcessLSGetStream 1576: xxxxxxxxxxxxxxxxxxxxxxxxxxx
[Trace]: ProcessLSGetStream 1577: xxxxxxxxxxxxxxxxxxxxxxxxxxx
[Trace]: ProcessLSGetStream 1578: xxxxxxxxxxxxxxxxxxxxxxxxxxx
[Trace]: ProcessLSGetStream 1579: xxxxxxxxxxxxxxxxxxxxxxxxxxx
[Trace]: ProcessLSGetStream 1581: pStreamInfo->ucCH 0
[Trace]: ProcessLSGetStream 1583: pStreamInfo->ucVideoStreamType 0
[Trace]: ProcessLSGetStream 1591: pStreamInfo->ucVideoStreamType 0
[Trace]: ProtocolLSNetworkProcess 7644: cmd = 258 End
[Trace]: GetLastIFrame 244: AVType = 8 VideoIndex = 0 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 2 VideoIndex = 0 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 10 VideoIndex = 1 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 2 VideoIndex = 1 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 8 VideoIndex = 1 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 8 VideoIndex = 2 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 10 VideoIndex = 0 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 8 VideoIndex = 0 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 2 VideoIndex = 0 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 10 VideoIndex = 1 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 2 VideoIndex = 1 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 8 VideoIndex = 1 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 8 VideoIndex = 2 VideoPos = 0
[Trace]: get_sock_request 1009: fd = 12
[Trace]: get_sock_request 1038: fd = 12 port = 25555
[Trace]: ParseProtocol 715: data = [Trace]: LongseAddFd 190 fd = 12
[Trace]: AddLSFd 186: fix_pos = 12 fd 12
[Trace]: RemoveLSFd 281: Remove 11 fd 11
[Trace]: LSSendRecvSocketThread 1008: Video disconnect
[Trace]: GetLastIFrame 244: AVType = 10 VideoIndex = 0 VideoPos = 0
[Trace]: ProtocolLSNetworkProcess 7532: cmd = 258
[Trace]: ProtocolLSNetworkProcess 7540:MSGTYPE = 0
[Trace]: ProtocolLSNetworkProcess 7566: request uid = 4 get uit = 0, usCmd = 0X102
[Trace]: Process LongseProtocolAccess.c ProcessLSGetStream 1547
[Trace]: ProcessLSGetStream 1576: xxxxxxxxxxxxxxxxxxxxxxxxxxx
[Trace]: ProcessLSGetStream 1577: xxxxxxxxxxxxxxxxxxxxxxxxxxx
[Trace]: ProcessLSGetStream 1578: xxxxxxxxxxxxxxxxxxxxxxxxxxx
[Trace]: ProcessLSGetStream 1579: xxxxxxxxxxxxxxxxxxxxxxxxxxx
[Trace]: ProcessLSGetStream 1581: pStreamInfo->ucCH 0
[Trace]: ProcessLSGetStream 1583: pStreamInfo->ucVideoStreamType 0
[Trace]: ProcessLSGetStream 1591: pStreamInfo->ucVideoStreamType 0
[Trace]: ProtocolLSNetworkProcess 7644: cmd = 258 End
[Trace]: GetLastIFrame 244: AVType = 8 VideoIndex = 0 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 2 VideoIndex = 0 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 10 VideoIndex = 1 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 2 VideoIndex = 1 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 8 VideoIndex = 1 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 8 VideoIndex = 2 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 10 VideoIndex = 0 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 8 VideoIndex = 0 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 2 VideoIndex = 0 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 10 VideoIndex = 1 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 2 VideoIndex = 1 VideoPos = 0
[Trace]: get_sock_request 1009: fd = 11
[Trace]: get_sock_request 1038: fd = 11 port = 25811
[Trace]: ParseProtocol 715: data = [Trace]: LongseAddFd 190 fd = 11
[Trace]: AddLSFd 186: fix_pos = 13 fd 11
[Trace]: RemoveLSFd 281: Remove 12 fd 12
[Trace]: LSSendRecvSocketThread 1008: Video disconnect
[Trace]: GetLastIFrame 244: AVType = 8 VideoIndex = 1 VideoPos = 0
[Trace]: ProtocolLSNetworkProcess 7532: cmd = 258
[Trace]: ProtocolLSNetworkProcess 7540:MSGTYPE = 0
[Trace]: ProtocolLSNetworkProcess 7566: request uid = 4 get uit = 0, usCmd = 0X102
[Trace]: Process LongseProtocolAccess.c ProcessLSGetStream 1547
[Trace]: ProcessLSGetStream 1576: xxxxxxxxxxxxxxxxxxxxxxxxxxx
[Trace]: ProcessLSGetStream 1577: xxxxxxxxxxxxxxxxxxxxxxxxxxx
[Trace]: ProcessLSGetStream 1578: xxxxxxxxxxxxxxxxxxxxxxxxxxx
[Trace]: ProcessLSGetStream 1579: xxxxxxxxxxxxxxxxxxxxxxxxxxx
[Trace]: ProcessLSGetStream 1581: pStreamInfo->ucCH 0
[Trace]: ProcessLSGetStream 1583: pStreamInfo->ucVideoStreamType 0
[Trace]: ProcessLSGetStream 1591: pStreamInfo->ucVideoStreamType 0
[Trace]: ProtocolLSNetworkProcess 7644: cmd = 258 End
[Trace]: GetLastIFrame 244: AVType = 8 VideoIndex = 2 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 10 VideoIndex = 0 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 8 VideoIndex = 0 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 2 VideoIndex = 0 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 10 VideoIndex = 1 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 2 VideoIndex = 1 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 8 VideoIndex = 1 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 8 VideoIndex = 2 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 10 VideoIndex = 0 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 8 VideoIndex = 0 VideoPos = 0
[Trace]: GetLastIFrame 244: AVType = 2 VideoIndex = 0 VideoPos = 0
[Trace]: get_sock_request 1009: fd = 12

Also, while this "GetLastIFrame 244:" is constantly flowing, I enter the web interface and I am constantly trying to open the video in the "mainstream". The serial console shows the following data. Maybe we can come to an idea about the problem here?

I saw this in the codes above. When I click on the mainstream it shows this code:

"[Trace]: LSSendRecvSocketThread 1008: Video disconnect"

maybe this can be useful :(
 
Top