This thread is rather old, therefore I would like to apologize for (presumably) bumping this one.
However, I have come across the same problem of downgrading a used Pentax K10D back to the firmware that allowed (easily opening the debug menu) and screw autofocus on lenses with a broken SDM (if screw-af is available, respectively). I do not own any broken SDM lens that also has screw-af, so I did some research only; just in case if it might be required at some time.
All still referenced sources providing information on how to alter the original firmware or providing the patched firmware themselves are incomplete or unavailable at the time of writing this post.
Therefore, I would like to share my findings on successfully downgrading (presumably any) PENTAX K10D firmware back to 1.10 in 2021 – as long as Pentax still provides the Original 1.10 firmware or if someone else can provide the original file. Possibly, this may be helpful for anyone wishing to downgrade his/her K10D firmware in 2021 (and beyond).
Later firmware versions can then be updated afterwards if required (e.g. to re-enable SDM etc.).
Since the patched (sometimes referred to as "hacked") firmware is not available any more, the firmware must be patched by oneself.
As described somewhere else, only the header of the Original firmware must be patched in order to allow downgrading.
Changing the version number of the firmware (in the header), however, is not sufficient and also not required at all. It seems to not have any effect and will not be applied when downgrading anyway.
DISCLAIMER: USE AT YOUR OWN RISK! I AM NOT RESPONSIBLE FOR ANY DAMAGE TO YOUR CAMERA!
Requirements:
- Knowledge how to open files using a hex editor
- Original Pentax K10D firmware 1.10, i.e., Firmware_Update_101.zip (Available from the link in #8)
- A working hex editor, of course (I highly recommend Okteta on any POSIX system and advise against using ghex since ghex showed some inconsistencies in the saved files – at least on my machine. Any other hex editor should work either.)
- Header-diff/-patch, previously available on the vietzon forum (unavailable today but still accessible from the Wayback Machine, any snapshot after December 2007 but before 2016 contains the required information that I also included below).
The respective header-diff between the patched (diff old) and the original (diff new) file was luckily posted there:
Quote: Code:
2c2
< 00000010 00 00 01 a5 00 01 2c 1e 00 00 00 00 01 1e 00 12 |......,.........|
---
> 00000010 00 00 01 a5 00 01 2c 1e 00 00 00 00 01 0a 00 08 |......,.........|
8,9c8,9
< 00000070 77 77 77 2e 6d 61 72 7a 65 63 69 6e 6f 2e 63 6f |www.marzecino.co|
< 00000080 6d 20 00 50 45 4e 54 41 58 00 4b 31 30 44 00 44 |m.PENTAX.K10D.D|
---
> 00000070 50 45 4e 54 41 58 20 43 6f 72 70 6f 72 61 74 69 |PENTAX Corporati|
> 00000080 6f 6e 00 50 45 4e 54 41 58 00 4b 31 30 44 00 44 |on.PENTAX.K10D.D|
(Source:
(Archived)http://www.vietzon.com/red/forums/viewtopic.php?f=7&t=33, accessed: 2021-05-16.)
The interesting lines are the first two which appear to disable the firmware version check and force overwriting the camera's firmware without changing the version number. The other lines in the diff only change the firmware authors, I suppose. I left them unchanged from the original.
So, basically, patching the firmware requires just to alter two Bytes in the second line (i.e., line number 00000010). Change the trailing bytes
That should be enough, other modifications to the firmware are not required, cf. attachment (screenshots):
- original.png: Original/non-altered firmware header. The bytes that must be patched/changed are highlighted.
- patched.png: Patched firmware header. The altered bytes are highlighted.
When downgrading ("updating") the firmware to 1.10, the current firmware version will be declared to update to, i.e., if version 1.30 is installed, the firmware declared "updating from version 1.30 to 1.30" (or so) in my case. Downgrading from an other version should behave accordingly. The installed firmware will be 1.10, though, even if it is not declared so and will also not be shown by the camera when checking the firmware version. Afterwards, I re-installed the original 1.10 firmware to clean-up the version number and mitigate any further issues that may possibly arise with the version string mismatch if there are any.
At this point you should have noticed that the version string in the firmware should not have any implications on the version string shown by the camera when downgrading with the patched firmware file.
Afterwards, updating to any higher version is possible using the regular update – and recommended – up to the version you require.
I did only test the downgrade back to 1.10 from 1.30 for research purposes. This approach should enable to revert to the old firmware whenever it will be required. Other versions (e.g. directly from 1.31 back to 1.20 to disable SDM etc.) might be also possible. But I did not test this right now.
Finally, I updated to the latest version available (1.31), because some of my lenses (DFA) have only SDM autofocus ability. Notwithstanding this, the 1.31 may also contain some further undocumented improvements as usual with Pentax firmware updates, which, I think, could be useful. Besides, I did not notice any difference in operation compared to the 1.30 firmware.
Perhaps, I will test downgrading from 1.31 in future. However, if downgrading is required, this should be the way how to proceed.