Pages: [1] 2 3 ... 7 Next   Go Down
  Print  
Author Topic: General EOS 40D development discussion  (Read 41256 times)
1 Member and 1 Guest are viewing this topic.
DataGhost
Developers
Sr. Member
****

Karma: +62/-0
Offline Offline

Posts: 311


EOS 40D, S5IS


« on: 08 / September / 2008, 17:19:50 »

Ok, this is popping up on more and more sites, so maybe it's a good idea to say this to all impatient people out there: this is a tech demo. It is not easy to use. It still requires postprocessing. There is no download. I don't need anyone to 'test' unless I specifically ask for it. It is done when it is done, I have a lot of other things which are more important so it could be a while.

Hi Smiley

First of all, watch this thing.

Now I'd like this thread to be a place to discuss possible features the 40D still needs. Also, some general ideas about actually developing something would be useful. I have the strong feeling that it will not be easily possible to include EOS support in CHDK, due to the huge mechanical/hardware differences and different addon needs. There is also a lot of stuff in common for all powershots which might not be applicable to DSLRs at all. I can already see the CHDK source littered with #ifdef EOS lines. The general idea I have now is to create a separate, new program, somewhat based on CHDK but not really the same thing, built again from the ground up, possibly borrowing some useful parts from CHDK (menu system? scripting).

Anyway, some of the things on my to-do-someday list:
  • Movie mode
    - Live view stops after a period of inactivity or without movement. I'm not entirely sure how they are doing it but if you keep the camera in motion, it won't stop. Maybe some (LV-related?) powersave functions can save the day.
    - Compression/buffering. The data stream will likely be big and need to be compressed somehow. Buffering might also be an issue, since the camera won't write much faster than 8MB/s to CF, regardless of the card.
    - AF. Only option is to lower the mirror again and focus. This might not really be an issue, though. Because there is no sound, users won't hear the mirror slam down and up again, and the sound won't be out-of-sync if we decide to skip the blank frames. Sooo... we can skip the blank frames, resulting in 'instant' AF. This won't really work with moving subjects as they'll change instantly. It seems that the firmware does have some strings, in the middle of code (!), to suggest LV contrast AF. My bet is that they couldn't get it finished or that they couldn't get the movie mode finished and decided to 'scrap' it all together. The code seems to be there and possibly complete but I don't know how to use it yet.

  • AF Microadjustment
    - Some language strings seem to be present but this may be common to all EOS cameras. I hope I can get the necessary code from the 1D3 but I don't know how to decrypt the main payload of .fir files yet.
    - Own implementation might be possible by just adjusting focus after focus lock.

  • Mode dial 'lock'
    Someone told me the mode dial annoyed him and he was happy his 1D3 has buttons instead, so it won't accidentally go into another mode when putting it into or removing it from the camera bag. Valid issue, although I haven't encountered something like that myself yet. I have two possible solutions:
    Save the wheel state into NVRAM somehow so that after powering down and powering up the camera, the wheel state is still known to the software. Then either of these (possibly user-selectable):
    - Override the wheel state to the previous setting if it changed while the camera was turned off. Display a warning on the LCD. Override by turning the mode dial to something else (and back again, probably).
    - Just display a warning on the LCD and don't override the mode dial.

  • Integration into the Canon menu system
    Shouldn't really be hard, just requires some more RE. Would be awesome if it worked Smiley

  • Override basic modes to act as C4, C5, ..., C9
  • Find a use for the DP button
    Make it programmable if it's not required for something like ALT mode (see 'Integration into the Canon menu system').

I'd be happy to elaborate on the movie mode thing a bit after some responses.
Edit: oh yeah, it would also be interesting to know who else has a 40D and is planning/willing to help. Feedback from non-owners is also appreciated (GrAnd, ewavr, ...?) regarding the chdk-vs-new-project thing.
« Last Edit: 24 / September / 2008, 11:19:25 by DataGhost » Logged
PhyrePhoX
Global Moderator
Hero Member
*****

Karma: +121/-27
Offline Offline

Posts: 1624


Coders Humiliate DSLR Kiddies


« Reply #1 on: 08 / September / 2008, 17:34:53 »

couldnt really believe it when you first talked about it in irc, but i guess your video now proves it. also we finally got to see you, though i wonder how you can be seen when you are a ghost, especially when viewed in a mirror. Wink
good luck with your project, and i hope you dont forget the s5is Wink
Logged

fudgey
Global Moderator
Hero Member
*****

Karma: +64/-1
Offline Offline

Posts: 699

a570is


« Reply #2 on: 08 / September / 2008, 19:21:28 »

I don't have a DSRL nor planning on getting one but I still think this is great progress!  Big Grin

You're probably right about keeping it separate from the point&shoot code if it seems remarkably different from what we're used to. I wouldn't be surprised if the Canon p&s and dslr developers sat in different cities and never talked to each other Grin

BTW I once looked at all the menu functions visible in the a570is firmware and thought that learning how to use them would be a marvelous way to totally waste a week or two to sheer vanity Tongue.
Logged
reyalp
Sr. Member
****

Karma: +48/-0
Offline Offline

Posts: 295


« Reply #3 on: 08 / September / 2008, 20:52:36 »

As far as code goes, a reasonable approach might be a separate EOS subtree, but still use whatever files are generic (the ui handling stuff, ubasic and/or lua core etc).

This will probably require a bit of re-factoring in the main tree, but in the long run would be beneficial to both projects.

Don't have a DSLR or plan to get one ATM, but if one falls in my lap I'd definitely be interested in contributing Wink
Logged
theDarkHorse
Newbie
*

Karma: +0/-0
Online Online

Posts: 7


« Reply #4 on: 09 / September / 2008, 08:41:50 »

The link to the movie's not working right now...

Instinctively, I feel that it's going to be quite difficult porting CHDK to a dSLR such as the 40D, and it may be easier to start afresh, borrowing useful code like reyalp suggested. I own a 40D and I'm absolutely happy to help out when I can (when exams aren't in the way Tongue)

As for movie mode, I'm guessing the buffer's something like 128MB in size (17-burst RAW at ~6fps), which may be enough room to work with?

I'm interested to see what's going to happen next Wink
Logged
Sylvain G.
Newbie
*

Karma: +0/-0
Offline Offline

Posts: 5


« Reply #5 on: 09 / September / 2008, 08:58:44 »

I have a 40D and I'd be willing to help given risks are properly defined Smiley
AFAIK, CHDK on digicams was pretty much harmless but I think I've read it would be slightly more complicated with dslrs (firmware hack instead of bootstrapping?).
Logged
DataGhost
Developers
Sr. Member
****

Karma: +62/-0
Offline Offline

Posts: 311


EOS 40D, S5IS


« Reply #6 on: 09 / September / 2008, 09:14:37 »

256MB, RAW+JPEG is about 16MB and my camera slows down after 13 or so. 13*16=208 plus some room for the OS, display, etc. Also, a string in the firmware suggests 256MB and eh... I have a 256MB memory dump... so I guess it has 256MB Smiley

Movie seems to be down indeed, strange. I can't access the server either. [ Edit: it's up again. ]

Sylvain G.: It's possible to execute code using a modified .FIR file, the camera will load and decrypt it (takes about 14 seconds) and then execute it. Very annoying when testing stuff but ah well. Booting by means of AUTOEXEC.BIN file is just slightly harder, a value in the NV memory needs to be changed so the camera will consider it. It should be harmless but I don't know what side-effects it might have until someone tests it. Anyway, enabling this boot method requires a modified .FIR file to set that value properly.
« Last Edit: 09 / September / 2008, 09:17:02 by DataGhost » Logged
theDarkHorse
Newbie
*

Karma: +0/-0
Online Online

Posts: 7


« Reply #7 on: 09 / September / 2008, 09:29:20 »

What resolution did you take the video at? 360x214 seems a bit weird...Tongue
Logged
martkorn
Newbie
*

Karma: +0/-0
Offline Offline

Posts: 3


« Reply #8 on: 09 / September / 2008, 11:04:02 »

How about the chances for more pictures (my be 9) with wider EV span (may be +-4EV) in auto exposure bracketing... for HDRI generating?
Logged
blubbi
Newbie
*

Karma: +0/-0
Offline Offline

Posts: 1


« Reply #9 on: 09 / September / 2008, 12:50:15 »

Nice work!!!

What I would like to see on my 40D:

  • ISO 50 and 6400
  • Auto ISO which uses full ISO range (50 to 6400)
  • Micro AF adjustment
  • Scripting support
  • Full flexible auto exposure bracketing (free choice of EV and pictures taken between min/max value)

And maybe, if it does not make to much trouble, a phaser to eliminate disturbing objects/people  Cool

By the way, does anyone know if AF adjustment on the 50D/1DMIII is possible with lenses other than Canon.

Kind regards
blubbi
Logged
DataGhost
Developers
Sr. Member
****

Karma: +62/-0
Offline Offline

Posts: 311


EOS 40D, S5IS


« Reply #10 on: 09 / September / 2008, 15:43:36 »

Nice work!!!

What I would like to see on my 40D:

  • ISO 50 and 6400 RAW PP

  • Auto ISO which uses full ISO range (50 to 6400) RAW PP
 
  • Micro AF adjustment
  • Scripting support
  • Full flexible auto exposure bracketing (free choice of EV and pictures taken between min/max value)

The sensor only goes from ISO 100 to 1600 as far as I know, and 3200 is just ISO1600 + one stop. ISO 50 is 100 - 1 stop and ISO 6400 is 1600 + 2 stops. I don't really see an advantage for having that in the camera. Only thing may be auto ISO up to 1600 instead of 800.

theDarkHorse: Indeed, it's a strange resolution. I wasn't really thinking Smiley The camera outputs 720x214 to the display (live view buffer), strange as it may be, and the aspect ratio from that is way off. I just cut it in half (360) while I actually should have used 320. My bad but not important enough to redo my movie thing :p
Logged
martkorn
Newbie
*

Karma: +0/-0
Offline Offline

Posts: 3


« Reply #11 on: 09 / September / 2008, 16:45:03 »

On my original Canon 40d box, there is written "100-1600 ISO range, expandable to L:50 and H:3200".

Of course there isn't any feature in the menus (as of version 1-0-8) ... but maybe, they (the Canon marketing gnomes) have deactivated it... and therefore it could possibly be reactivated.  Big Grin
Logged
DataGhost
Developers
Sr. Member
****

Karma: +62/-0
Offline Offline

Posts: 311


EOS 40D, S5IS


« Reply #12 on: 09 / September / 2008, 17:01:12 »

C.Fn I-3: ISO expansion, enables H (3200). I can't select L anywhere, just H. Also, I don't have such a line on my box (17-85 kit). Anyway, fact remains that it's non-native and just done by the camera's postprocessing.
Logged
Sylvain G.
Newbie
*

Karma: +0/-0
Offline Offline

Posts: 5


« Reply #13 on: 09 / September / 2008, 23:08:58 »

C.Fn I-3: ISO expansion, enables H (3200). I can't select L anywhere, just H. Also, I don't have such a line on my box (17-85 kit). Anyway, fact remains that it's non-native and just done by the camera's postprocessing.

Not to divert the thread from its original path but AutoISO implementation on 40D is currently lacking a lot to make it meaningful so extending it 1600 is, IMHO, wasted efforts.
I've been thinking this over for a while and observing competitors and it seems a possible work around already lies in the 1D(or s) mkIII custom functions.
Please read :

-quite long I must admit, aging post so a few statements may be wrong as I learnt later.
Canon EOS 50D - 10D Forum: Digital Photography Review

-on CHDK forums, post #8
1D mark3 firmware on 40D

As a sidenote, 1D(s) mkIII still lacks this possibility in M mode, which would be ultimately nice.

Of course, "copying" mkIII C.Fn and logic is one way of doing it and I'd welcome pretty much anything that will vary ISO speed according to user defined thresholds (think "action photography in rapidly changing lighting conditions")

So yes, I'm HEAVILY interested in anything related to hacking/CORRECTING functionalities to the 40D Smiley

Thanks for reading,

Sylvain
« Last Edit: 09 / September / 2008, 23:12:07 by Sylvain G. » Logged
lukg
Full Member
***

Karma: +9/-1
Offline Offline

Posts: 162


Eos 450D+18-55is & Powershot S5is - 1.01a


« Reply #14 on: 10 / September / 2008, 00:22:27 »

 Shocked  Shocked
I've always known that Dataghost would have been the Eos pioneer, never had any doubts Big Grin
Logged
Pages: [1] 2 3 ... 7 Next   Go Up
  Print  
 
Jump to: