supplierdeeply

Camera crashes

  • 39 Replies
  • 4210 Views
*

Offline JvdP

  • ***
  • 174
Camera crashes
« on: 05 / March / 2014, 14:46:51 »
Advertisements
I'm using an SD card extension from eBay (link)on 2 of my IXUS 240 HS running Ultimate.lua. I'm having issues with keeping them running and the culprit seems to be the extensions.

This is of course not a surprise since the camera was never made to send the signal to and SD half a meter from the camera, but I was hoping I could get this to work since I want to be able to switch SD cards without touching the camera (timelapse...).

I'm pretty sure the crash is caused when CHDK wants to write the JPG to the SD card, but is seems to happen quite randomly. Sometimes it crashes soon after the script started taking photos, sometimes it doesn't crash at all.

Is there anything I can do to make this run more stable?

Here is a ROM log of one of the crashes. The last picture taken was 13:45, the exact time of the crash.

Code: [Select]
ASSERT!! SsCreateJpeg.c Line 1519
Occured Time  2014:03:04 13:45:21
Task ID: 50266217
Task name: DvlpSeqTask
SP: 0x00592AB0
StackDump:
0x00000000
0xFF0A5094
0x000005EF
0x0000000B
0x00003588
0x00004800
0x00100000
0x0009DCF4
0x006AAC00
0x00000000
0x0009DDA4
0xFF0A5818
0x0000003C
0x00001FFF
0x4CB34400
0x00000000
0x4CFCDA00
0x00001FFF
0x00000005
0x0000000B
0x00001FFF
0x4CFCDA00
0x00001FFF
0x4CB34400
0x00000000
0x00000040
0x00000018
0x000000A0
0x00000078
0x00000040
0x00000018
0x00000000
0x00000000
0x00000000
0x00003588
0x0009DCF4
0x00003588
0x00000001
0x0009DCF4
0x0000820F
0x00000000
0xFF0A65E0
0x00000000
0x0009D978
0x00000000
0x0009DDA4
0x00003588
0xFF0A6128
0x0068860C
0x0068860C
0x00592BD4
0x00000000
0x00000000
0x006B1E28
0x60000013
0x006B1E28
0x00592BD0
0x00000000
0x19980218
0x19980218
0x19980218
0x00686218
0x00000000
0x0017F1A8
0x00000000
0x0000B6FC
0x19980218
0x19980218
0x19980218
0x19980218
0x19980218
0xFF21A9AC
0x00000000
0x0017F1B4
0x0054148C
0x19980218
0x19980218
0x0068738C
0x19980218
0x19980218
0x0003A010
ShootConDump:
0a 0c 0b 00 00 01 02 07 08 09
CameraConDump:
07 0a 02 0d 09 01 0f 0f 0f 0f
00541120: UI:Button:0x000009A1:PressSwOne
00541120: UI:DSIC:25,0
00541120: SS:PreBuf
00541120: UI:ShootState:0x1
00541120: UI:ShtCon_Activate
00541120: UI:DispSw: Lock
00541120: UI:ShtCon_PrepareCapture
00541130: UI:DSIC:61,0
00541130: UI:ScreenLock
00541130: UI:ScreenUnLock
00541130: UI:ScreenLock
00541130: UI:Reduce ScreenUnLock
00541130: UI:LogicalEvent:0x3135:adr:0,Para:0
00541130: SS:LoadTest:10
00541130: SS:PreCapt
00541150: UI:ShootState:0x2
00541150: UI:ClearEventComp
00541150: UI:DisplayPhysicalScreenCBR
00541150: UI:Re ScreenUnLock
00541150: UI:ScreenUnLock
00541160: UI:DisplayPhysicalScreenCBR
00541350: UI:ShootSeqToUI:0x203b:adr:0x4e0c,Para:19980
00541360: UI:DSIC:69,0
00541500: UI:ShootSeqToUI:0x2006:adr:0x45,Para:69
00541500: UI:ShtCon_SetPreCapt
00541500: UI:DSIC:62,1
00541500: UI:ScreenLock
00541530: UI:Button:0x000009A3:PressSwTwo
00541550: UI:ScreenUnLock
00541560: UI:Button:0x000009A4:UnpressSwTwo
00541560: UI:Button:0x000009A2:UnpressSwOne
00541560: UI:_ResetShootingMode
00541570: UI:_EntryPrepareShoot
00541570: UI:ShootState:0x7
00541570: UI:ShootState:0x8
00541570: UI:ShootState:0x9
00541570: UI:DSIC:14,0
00541580: UI:_MuteOn
00541580: UI:DSIC:43,0
00541580: UI:DispSwCon_MuteOnPhysicalScreen
00541580: UI:Window MuteOn
00541580: UI:MuteOnPhysicalScreen
00541580: SS:Shoot
00541590: UI:DSIC:63,0
00541590: UI:ScreenLock
00541600: UI:ScreenUnLock
00541610: UI:ScreenLock
00541610: UI:Reduce ScreenUnLock
00541620: UI:ScreenLock
00541620: UI:ScreenUnLock
00541620: UI:DisplayPhysicalScreenCBR
00541620: UI:DisplayPhysicalScreenCBR
00541630: UI:DisplayPhysicalScreenCBR
00541650: UI:ShootSeqToUI:0x2022:adr:0xfffffdf5,Para:-523
00541650: UI:DSIC:64,0
00541910: SS:EvfFocusChecker Cbr
00541910: SS:EvfFocusChecker Cbr
00541910: UI:ShootSeqToUI:0x2007:adr:0x9e0f,Para:40463
00541910: SS: Raw[1]
00541910: SS: Raw[1]
00541910: SS: Raw[1]
00541910: UI:ShootSeqToUI:0x2001:adr:0,Para:0
00541910: UI:Sht_CancelStrobeChargeTimer
00541910: UI:DSIC:4c,0
00541910: UI:_CaptureStanbyForReview
00542330: UI:ShootSeqToUI:0x2008:adr:0x9e0f,Para:40463
00542330: UI:_MuteOff
00542330: UI:DSIC:44,0
00542330: UI:DispSwCon_MuteOffPhysicalScreen
00542330: UI:Window MuteOff
00542330: UI:MuteOffPhysicalScreen
00542330: UI:ShootState:0xA
00542330: UI:ShtCon_StartReview
00542330: UI:_EntryActionReview
00542330: SS:StartRev
00542330: UI:ScreenLock
00542330: UI:ScreenUnLock
00542330: UI:LogicalEvent:0x311f:adr:0,Para:0
00542330: UI:ShootState:0xC
00542330: SS:ExitShoot
00542470: UI:DSIC:45,0
00542470: UI:ScreenLock
00542470: UI:ScreenUnLock
00542470: UI:DSIC:48,0
« Last Edit: 05 / March / 2014, 14:50:51 by JvdP »

*

Offline srsa_4c

  • ******
  • 3530
Re: Camera crashes
« Reply #1 on: 05 / March / 2014, 17:21:19 »
The assert doesn't seem to be directly related to file system operations, and I have no idea what it means. If the issue only happens when using that extension cable, then obviously the extension cable is at fault. IMHO it's a simple passive extender, either the multiple dozen MHz digital signals of the SD communication lines get distorted over the specs or it picks up some electric noise from the outside...
You could either use one of those WIFI cards or USB to transfer the images to a nearby (small) computer. Or, you could try to open the socket end of the extender, and see if you can resolder the wires of the cable. If you can, shorten the cable as much as possible.

*

Offline JvdP

  • ***
  • 174
Re: Camera crashes
« Reply #2 on: 06 / March / 2014, 04:52:36 »
I was thinking that perhaps there is a way to make CHDK retry writing to the SD if it fails, but this is pretty advanced core development so it's not feasible.

Of course I could do some kind of RaspberryPi config but this adds serious cost. So for now I was planning on doing what you also suggested; make a new cable which is shorter.

Thank you for the help! I will report back results.

*

Offline JvdP

  • ***
  • 174
Re: Camera crashes
« Reply #3 on: 07 / March / 2014, 06:57:16 »
I have now made a new extension and I'm running the camera with it. I will have to find out in a few days if it works.


*

Offline JvdP

  • ***
  • 174
Re: Camera crashes
« Reply #4 on: 09 / March / 2014, 16:57:26 »
The camera has been running with the new extension for many hours now, it seems to work! Still have to try the other camera's but I'm hopeful.

Also, I got a new idea for using a longer extension. Perhaps I could use one of these powered SD Breakout modules. Not sure though, they're quite expensive for just a tryout.

*

Offline srsa_4c

  • ******
  • 3530
Re: Camera crashes
« Reply #5 on: 09 / March / 2014, 18:48:39 »
Also, I got a new idea for using a longer extension. Perhaps I could use one of these powered SD Breakout modules. Not sure though, they're quite expensive for just a tryout.
Those are meant to be used for microcontrollers and will probably do even worse at high speed due to the signal path.

*

Offline JvdP

  • ***
  • 174
Re: Camera crashes
« Reply #6 on: 10 / March / 2014, 03:23:37 »
I was thinking so too, but maybe if I "hotwire" it as in, I connect straight to the 9 pins but feed it with a supply voltage in addition?

*

Offline JvdP

  • ***
  • 174
Re: Camera crashes
« Reply #7 on: 10 / March / 2014, 09:32:54 »
I've had a new crash with the short extension and the ROM log looks pretty much the same. Not sure what to do now. Trying with a different (better) extension which I made yesterday.

Code: [Select]
ASSERT!! SsCreateJpeg.c Line 1519
Occured Time  2014:03:07 13:42:31
Task ID: 49873000
Task name: DvlpSeqTask
SP: 0x00592AB0
StackDump:
0x00000000
0xFF0A5094
0x000005EF
0x0000000B
0x00003588
0x00004800
0x00100000
0x0009DCF4
0x003B0600
0x00000000
0x0009DDA4
0xFF0A5818
0x0000003C
0x00001FFF
0x4CB34400
0x00000000
0x4CD15C00
0x00001FFF
0x00000005
0x0000000B
0x00001FFF
0x4CD15C00
0x00001FFF
0x4CB34400
0x00000000
0x00000040
0x00000018
0x000000A0
0x00000078
0x00000040
0x00000018
0x00000000
0x00000000
0x00000000
0x00003588
0x0009DCF4
0x00003588
0x00000001
0x0009DCF4
0x0000820F
0x00000000
0xFF0A65E0
0x00000000
0x0009DA74
0x00000000
0x0009DDA4
0x00003588
0xFF0A6128
0x0068860C
0x0068860C
0x00592BD4
0x00000000
0x00000000
0x006B1E28
0x60000013
0x006B1E28
0x00592BD0
0x00000000
0x19980218
0x19980218
0x19980218
0x00686218
0x00000000
0x0017F1C0
0x00000000
0x0000B6FC
0x19980218
0x19980218
0x19980218
0x19980218
0x19980218
0xFF21A9AC
0x00000000
0x0017F1CC
0x00541438
0x19980218
0x19980218
0x0068738C
0x19980218
0x19980218
0x0003A010
ShootConDump:
0a 0c 0b 00 00 01 02 07 08 09
CameraConDump:
07 0a 02 0d 09 01 0f 0f 0f 0f
06547120: UI:DispSw: Lock
06547120: UI:ShtCon_PrepareCapture
06547120: UI:DSIC:61,0
06547120: UI:ScreenLock
06547130: UI:ScreenUnLock
06547130: UI:ScreenLock
06547130: UI:Reduce ScreenUnLock
06547130: UI:LogicalEvent:0x3135:adr:0,Para:0
06547130: SS:LoadTest:10
06547130: SS:PreCapt
06547150: UI:ShootState:0x2
06547150: UI:ClearEventComp
06547150: UI:DisplayPhysicalScreenCBR
06547150: UI:Re ScreenUnLock
06547150: UI:ScreenUnLock
06547160: UI:DisplayPhysicalScreenCBR
06547340: UI:ShootSeqToUI:0x203b:adr:0x4e0c,Para:19980
06547350: UI:DSIC:69,0
06547490: UI:ShootSeqToUI:0x2006:adr:0x45,Para:69
06547490: UI:ShtCon_SetPreCapt
06547490: UI:DSIC:62,1
06547490: UI:ScreenLock
06547510: UI:Button:0x000009A3:PressSwTwo
06547540: UI:Button:0x000009A4:UnpressSwTwo
06547540: UI:Button:0x000009A2:UnpressSwOne
06547540: UI:ScreenUnLock
06547550: UI:_ResetShootingMode
06547560: UI:_EntryPrepareShoot
06547560: UI:ShootState:0x7
06547560: UI:ShootState:0x8
06547560: UI:ShootState:0x9
06547560: UI:DSIC:14,0
06547560: UI:_MuteOn
06547560: UI:DSIC:43,0
06547560: UI:DispSwCon_MuteOnPhysicalScreen
06547560: UI:Window MuteOn
06547560: UI:MuteOnPhysicalScreen
06547560: SS:Shoot
06547570: UI:DSIC:63,0
06547570: UI:ScreenLock
06547580: UI:ScreenUnLock
06547600: UI:ScreenLock
06547600: UI:Reduce ScreenUnLock
06547600: UI:ScreenLock
06547600: UI:Reduce ScreenUnLock
06547600: UI:DisplayPhysicalScreenCBR
06547600: UI:Re ScreenUnLock
06547600: UI:Reduce ScreenUnLock
06547610: UI:DisplayPhysicalScreenCBR
06547610: UI:Re ScreenUnLock
06547610: UI:ScreenUnLock
06547620: UI:DisplayPhysicalScreenCBR
06547640: UI:ShootSeqToUI:0x2022:adr:0xfffffdf5,Para:-523
06547640: UI:DSIC:64,0
06547910: SS:EvfFocusChecker Cbr
06547910: SS:EvfFocusChecker Cbr
06547910: UI:ShootSeqToUI:0x2007:adr:0xa068,Para:41064
06547910: SS: Raw[1]
06547910: SS: Raw[1]
06547910: SS: Raw[1]
06547910: UI:ShootSeqToUI:0x2001:adr:0,Para:0
06547910: UI:Sht_CancelStrobeChargeTimer
06547910: UI:DSIC:4c,0
06547910: UI:_CaptureStanbyForReview
06548330: UI:ShootSeqToUI:0x2008:adr:0xa068,Para:41064
06548330: UI:_MuteOff
06548330: UI:DSIC:44,0
06548330: UI:DispSwCon_MuteOffPhysicalScreen
06548330: UI:Window MuteOff
06548330: UI:MuteOffPhysicalScreen
06548330: UI:ShootState:0xA
06548330: UI:ShtCon_StartReview
06548330: UI:_EntryActionReview
06548330: SS:StartRev
06548330: UI:ScreenLock
06548330: UI:ScreenUnLock
06548330: UI:LogicalEvent:0x311f:adr:0,Para:0
06548330: UI:ShootState:0xC
06548330: SS:ExitShoot
06548510: UI:DSIC:45,0
06548510: UI:ScreenLock
06548520: UI:ScreenUnLock
06548520: UI:DSIC:48,0


*

Offline srsa_4c

  • ******
  • 3530
Re: Camera crashes
« Reply #8 on: 10 / March / 2014, 15:50:05 »
I've had a new crash with the short extension and the ROM log looks pretty much the same.
Sorry to hear that...

I was thinking so too, but maybe if I "hotwire" it as in, I connect straight to the 9 pins but feed it with a supply voltage in addition?
Not sure what you mean with the additional supply voltage. The card is already powered. The above ebay breakout module only needs the regulator because the microcontroller in question can be one with a 5V supply (which can't be used for directly powering the SD card).
Perhaps you could use thicker wires for the supply and GND lines, but I'm not sure if the problem is related to voltage drop on the supply wires. You could also try an old, slower card...

Another idea: Try to produce a similar issue with a script: the camera can be in play mode, the script periodically dumps a few MB data to new files.

*

Offline philmoz

  • *****
  • 3056
    • Photos
Re: Camera crashes
« Reply #9 on: 10 / March / 2014, 17:49:32 »
I've had a new crash with the short extension and the ROM log looks pretty much the same. Not sure what to do now. Trying with a different (better) extension which I made yesterday.

Haven't done much hardware hacking for many years; but my guess would be crosstalk / ringing / noise on the ribbon cable.

From what I know of the SD spec you have 4 data lines plus a clock line running at 100-300Mhz.

You might need to run a ground line for each data line, and the clock line, as twisted pairs (one ground line twisted with each signal line).

You can buy twisted pair ribbon cable; but I imagine soldering it into a micro-SD card will be fiddly.

Phil.
CHDK ports:
  sx30is (1.00c, 1.00h, 1.00l, 1.00n & 1.00p)
  g12 (1.00c, 1.00e, 1.00f & 1.00g)
  sx130is (1.01d & 1.01f)
  ixus310hs (1.00a & 1.01a)
  sx40hs (1.00d, 1.00g & 1.00i)
  g1x (1.00e, 1.00f & 1.00g)

 

Related Topics