A470 Firmware 100e Not Powering on with CHDK - General Help and Assistance on using CHDK stable releases - CHDK Forum supplierdeeply

A470 Firmware 100e Not Powering on with CHDK

  • 7 Replies
  • 3438 Views
A470 Firmware 100e Not Powering on with CHDK
« on: 11 / June / 2013, 21:01:57 »
Advertisements
I have used a few A470's with firmware 102C successfully, but just got an A470 with 100e, and when I try to power on the camera with the SD card locked the camera begins to turn on and then loses power. Without CHDK the camera works fine. I downloaded the latest 100e build for A470. Anybody have a similar problem? Any help appreciated.

*

Offline reyalp

  • ******
  • 14082
Re: A470 Firmware 100e Not Powering on with CHDK
« Reply #1 on: 11 / June / 2013, 21:28:08 »
Are you sure you got the right files on the card? This is the symptom you would get if you somehow ended up with the diskboot.bin for the other camera on the card.

It's certainly possible something is broken with this port, but I'd suggest starting with a fresh format and install if you haven't already.
Don't forget what the H stands for.

Re: A470 Firmware 100e Not Powering on with CHDK
« Reply #2 on: 12 / June / 2013, 13:28:37 »
I followed all the steps I usually follow. This process works for all my cameras with the 102C firmware.

1) Put ver.req on the SD card and check the firmware version. For this camera it shows up as "Firmware Ver GM1.00E"
2) Download latest build. In this instance it is a470-100e-1.1.0-2860-full.
3) Use SDM/CHDK Installer for OSX. (This does the fresh format and install to my understanding).
3a) Select the unpackaged directory to copy the files over and prepare card. In this instance the files in the a470-100e-1.1.0-2860-full folder.
5) Lock the SD card and put it into the camera.

These steps work for all my cameras using 102c. I just did this once again, and I had the same issue. It starts top power on and then stops. If I unlock the SD card the camera operates normally again (without CHDK of course).

Is there anyway we can check if something is wrong with the port?

Re: A470 Firmware 100e Not Powering on with CHDK
« Reply #3 on: 12 / June / 2013, 13:40:49 »
If there is a CFG file on the card try deleting it.


*

Offline srsa_4c

  • ******
  • 4451
Re: A470 Firmware 100e Not Powering on with CHDK
« Reply #4 on: 12 / June / 2013, 13:48:48 »
Is there anyway we can check if something is wrong with the port?
If Microfunguy's advice doesn't help, you could try older CHDK releases.
Start with build 1982, from here (download the a470 1.00e zip and the common files zip packages). If that still doesn't boot, try the r1697 build. If the r1982 release boots, I'll make newer test versions.

*

Offline srsa_4c

  • ******
  • 4451
Re: A470 Firmware 100e Not Powering on with CHDK
« Reply #5 on: 12 / June / 2013, 20:58:43 »
I started looking into this, and  :blink:

@bootlegjedi
Can you try the attached build? Please report whether it works.

Code: [Select]
Index: platform/a470/sub/100e/boot.c
===================================================================
--- platform/a470/sub/100e/boot.c (revision 2862)
+++ platform/a470/sub/100e/boot.c (working copy)
@@ -85,7 +85,7 @@
                 "MOV     R0, #0xD3\n"
                 "MSR     CPSR_cxsf, R0\n"
                 "MOV     SP, #0x1000\n"
-                "LDR     R0, =0xFFC00210\n"
+                "LDR     R0, =0x6C4\n"
                 "LDR     R2, =0xEEEEEEEE\n"
                 "MOV     R3, #0x1000\n"
         "loc_FFC00200:\n"
@@ -392,7 +392,7 @@
 //
 // uAC_Boot:                   FFC5D48C
 // CreateTask_InitFileModules: FFC5EC48
-// task_InitFileModules:       FFC5F754
+// task_InitFileModules:       ffc5ebf8
 
 
 void __attribute__((naked,noinline)) sub_FFC1A4CC_my() { //#fs 
@@ -1357,6 +1357,8 @@
 "loc_FFC3C1A8:\n"
                 "MOV     R0, R8\n"
                 "BL      sub_FFCF8D9C\n" // Add FAT32 autodetect-code after this line\n"
+ "MOV   R1, R4\n"           //  pointer to MBR in R1
+ "BL    mbr_read_dryos\n"   //  total sectors count in R0 before and after call
 
                 // Start of DataGhost's FAT32 autodetection code
                 // Policy: If there is a partition which has type W95 FAT32, use the first one of those for image storage
@@ -1394,7 +1396,7 @@
                 "ORR     R1, R1, R3,LSL#16\n"
                 "LDRB    R3, [R4,#0x1C7]\n"
                 "LDRB    R2, [R4,#0x1BE]\n"
-                "LDRB    LR, [R4,#0x1FF]\n"  // replaced, see below
+                //"LDRB    LR, [R4,#0x1FF]\n"  // replaced, see below
                 "ORR     R1, R1, R3,LSL#8\n"
                 "LDRB    R3, [R4,#0x1C6]\n"
                 "CMP     R2, #0\n"
@@ -1407,9 +1409,9 @@
                 "ORR     R3, R3, R12,LSL#8\n"
                 "LDRB    R12, [R4,#0x1CA]\n"
                 "ORR     R3, R3, R12\n"
-                "LDRB    R12, [R4,#0x1FE]\n"  // replaced, see below
-                //"LDRB    R12, [LR,#0x1FE]\n"            // New! First MBR signature byte (0x55)
-                //"LDRB    LR, [LR,#0x1FF]\n"             //      Last MBR signature byte (0xAA)
+                //"LDRB    R12, [R4,#0x1FE]\n"  // replaced, see below
+                "LDRB    R12, [LR,#0x1FE]\n"            // New! First MBR signature byte (0x55)
+                "LDRB    LR, [LR,#0x1FF]\n"             //      Last MBR signature byte (0xAA)
                 "MOV     R4, #0\n"
                 "BNE     loc_FFC3C230\n"
                 "CMP     R0, R1\n"
Index: platform/a470/sub/101b/boot.c
===================================================================
--- platform/a470/sub/101b/boot.c (revision 2862)
+++ platform/a470/sub/101b/boot.c (working copy)
@@ -87,7 +87,7 @@
                 "MOV     R0, #0xD3\n"
                 "MSR     CPSR_cxsf, R0\n"
                 "MOV     SP, #0x1000\n"
-                "LDR     R0, =0xFFC00210\n"
+                "LDR     R0, =0x6C4\n"
                 "LDR     R2, =0xEEEEEEEE\n"
                 "MOV     R3, #0x1000\n"
         "loc_FFC00200:\n"
@@ -375,7 +375,7 @@
                 "STR     R3, [SP]\n"
                 //"LDR     R3, =0xFFC488A4\n"           // task_CaptSeqTask
                 "LDR     R3, =task_CaptSeqTask_my\n"            // task_CaptSeqTask
-                "LDR     R0, =0xFFC48C70\n"             // aCaptseqtask ; "CaptSeqTask"
+                "LDR     R0, =0xFFC48C60\n"             // aCaptseqtask ; "CaptSeqTask"
                 "MOV     R2, #0x1000\n"
                 "MOV     R1, #0x17\n"
                 "BL      sub_FFC0BBB8\n"                // uKernelMiscCreateTask o. CreateTaskStrict
@@ -396,7 +396,7 @@
 //
 // uAC_Boot:                   FFC5D48C
 // CreateTask_InitFileModules: FFC5EC48
-// task_InitFileModules:       FFC5F754
+// task_InitFileModules:       ffc5ebf8
 
 
 void __attribute__((naked,noinline)) sub_FFC1A4CC_my() { //#fs 

edit:attachment no longer necessary, removed
« Last Edit: 14 / June / 2013, 14:25:07 by srsa_4c »

Re: A470 Firmware 100e Not Powering on with CHDK
« Reply #6 on: 13 / June / 2013, 16:35:36 »
@srsa_4c
Just tried the attached build. It works! Thanks!

*

Offline srsa_4c

  • ******
  • 4451
Re: A470 Firmware 100e Not Powering on with CHDK
« Reply #7 on: 14 / June / 2013, 14:24:21 »
@srsa_4c
Just tried the attached build. It works! Thanks!
Thanks for the report, fix committed, autobuild versions should work again. If you find functional differences between 1.00e and 1.02c, be sure to report them.


 

Related Topics