Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror
×
Hardware Hacking Graphics Programming Software Technology

Closed Digital Cameras - Does Anyone Care? 506

Karamchand asks: "Free Software and open standards are ubiquitous in the server and even desktop area. But why does nobody seem to care about openness in digital cameras? I couldn't find a single hint as to what main processor my camera uses (I guess many use ARMs and others use TI DSPs), and while searching for information about (re-)programming digital cameras, I had to give up (apart from the scriptable Digita OS which was used by some discontinued cameras by Kodak, HP et al). Do you know of any efforts in this direction, whether they are actual disassembling/programming of cameras or asking vendors to get more open?" I still have my Kodak DIGITA-based camera from several years ago and I loved the flexibility, even though the performance is poor by today's standards (long cycle times, poor battery life, etc). Why are digital camera manufacturers keeping the lid on the capabilities of their products, when digital cameras could be so much more than their film-based counterparts?
This discussion has been archived. No new comments can be posted.

Closed Digital Cameras - Does Anyone Care?

Comments Filter:
  • by Lord Kano ( 13027 ) on Wednesday January 19, 2005 @05:24PM (#11412683) Homepage Journal
    I don't care how my digicam does it, as long as the files are available to me in a format that I can use.

    My visioneer camera gives me .jpgs and .avis that I can get via a USB cable. It makes no difference to me how they end up on the flash memory device.

    LK
  • Re:Obvious reason (Score:3, Informative)

    by oneiron ( 716313 ) on Wednesday January 19, 2005 @05:24PM (#11412685)
    I think he meant that they could be 'so much more' in that they could function in camera-like ways that extend beyond the capabilities of their film-based counterparts. That's how I interpreted it, anyway.

    As it is, digital cameras still can't take the place of film in all situations. 'Open' cameras could serve to narrow the gap.
  • Re:Obvious reason (Score:2, Informative)

    by jszymkowski ( 323091 ) on Wednesday January 19, 2005 @05:27PM (#11412711)
    The firmware for the Canon EOS Digital Rebel was recently hacked (by some guy in Russia IIRC) to enable functions only available on it's big brother the 20D. Besides, the 20D having a magnesium body compared to the Rebel's plastic body, there really aren't any other differences. The price difference is about $300 - $400 however.
  • Re:Umm no (Score:2, Informative)

    by Big_Al_B ( 743369 ) on Wednesday January 19, 2005 @05:27PM (#11412719)
    Well, I had a Canon G2 that required a firmware upgrade to solve a "blue screen of death" type of problem.
  • Re:Camera hardware (Score:5, Informative)

    by jdcook ( 96434 ) on Wednesday January 19, 2005 @05:35PM (#11412824)
    The Canon Digital Rebel (a/k/a 300D) is in many ways a crippled version of the Canon 10D. A Russian hacker developed a version of the firmware that unlocks much of the hidden potential of this camera.
  • by `Sean ( 15328 ) <sean@ubuntu.com> on Wednesday January 19, 2005 @05:37PM (#11412854) Homepage Journal
    Here's the main info page that gives an English overview of all the hacked features: http://www.bahneman.com/liem/photos/tricks/digital -rebel-tricks.html [bahneman.com]
  • Re:Obvious reason (Score:3, Informative)

    by galaxy300 ( 111408 ) <daltonrooney@@@gmail...com> on Wednesday January 19, 2005 @05:41PM (#11412902) Homepage
    I bought a new Nokia 3390 on Ebay for $30 a couple of months ago. This is the most basic, easy to use and straightforward model I could find. No fancy ringtones, no camera etc. Batteries and accessories are cheap, and the thing is solid as a rock. No problems with reception, and it's not brick heavy, either.

    This is because I bought a fancy, camera/color screen/PDA phone from T-Mobile when I opened my acount a year ago and it *sucked*. No reception whatsoever, random blinkouts where the OS would become responsive. Whatever - I don't need no stinkin' fancy pants phone.
  • Re:Crippleware (Score:3, Informative)

    by radish ( 98371 ) on Wednesday January 19, 2005 @05:44PM (#11412930) Homepage
    You can get a hacked bios for the dRebel, and some of the missing features are added. Many of the interesting ones aren't though, because the hardware is not the same, regardless of what some people may have you believe.
  • Re:Obvious reason (Score:2, Informative)

    by fitten ( 521191 ) on Wednesday January 19, 2005 @05:44PM (#11412936)
    There are places where you can't bring a camera, either still or movie. Granted, the number of folks who have to worry about that is relatively small, but some of us will be hurt.
  • by Rude Turnip ( 49495 ) <.valuation. .at. .gmail.com.> on Wednesday January 19, 2005 @05:45PM (#11412945)
    Unfortunately, Verizon neuters the Bluetooth capabilities of their phones to force you into using their for-pay services to send pictures and get programs/ringtones, etc.
  • by floateyedumpi ( 187299 ) on Wednesday January 19, 2005 @05:54PM (#11413053)
    A perfect example of how a very lightweight programmable interface would be really useful: a common problem in digital (and film) photography is limited dynamic range. A scripting interface to a digital camera could help overcome this.

    First the problem. Just to give you some walking around numbers, typical desktop displays offer about 7-8 stops of contrast (e.g. 100:1), high-end plasma TV's offer 10 stops (1200:1), typical natural scenes have a dynamic range of about 18 stops, and the human eye, at a single pupil dilation, can appreciate about 17 stops (well matched to natural, sun-illuminated scenes, not by accident!). When you allow for the adjustment of human vision to illumination conditions, the human brain-eye system can appreciate about 30 stops of dynamic range (a factor of 1 billion:1!), from the faintest star to full-on sunlight. Needless to say, it is impossible to come anywhere close to this with consumer imaging technology.

    An interesting way to expand dynamic range and alleviate the problem is to take several exposures with an increasing sequence of exposure times. Typically, to maintain focus and field depth, you'd keep the aperture fixed, keep the CCD gain fixed, and only vary exposure time. With a simple programmable interface to a digital camera, you'd be able to roll your own HDR mode, "scripting" the camera to e.g., take a quick succession of 5 frames separated in exposure time by 1 stop, and store them all in an aptly named sub-directory on your flash card. Trivial to implement, if provided the hooks. Combining the 5 exposures with suitable post-processing can then simulate much large contrast than normally available. An example of this technique is here [huji.ac.il]. As it is, we just have to hope the camera manufacturers provide something like this for us (at whatever price point they find compelling).

  • Re:Some People... (Score:5, Informative)

    by cbiffle ( 211614 ) on Wednesday January 19, 2005 @05:58PM (#11413096)
    Personally, I like to have a nice, working, manufacturer supported camera more than I like having a 1337 LEENOOKS-2000 fuzzy image device. But then, I also stopped using Gimp and Linux in favor of Mac and Photoshop, so flame on.

    I really hope the parent was tongue-in-cheek. In terms of a modern digital camera, my DiMAGE A2:

    1. Turn it into a temporary USB data storage device if it has a USB port on it

    Check.

    2. If it has audio capability, turn it into a digital audio recorder that works kind of like a mini-cassette recorder (ie. shitty quality, but lots of record time)

    Check. The video function works fine for this, and if you leave the lens cap on, the black-frame video takes up almost no space.

    3. Make it into a "cam" that can be attached to your PC for live web cam stuff

    Check.

    4. Turn it into a video recorder for short clips in a format like MJPEG

    Check. You have, y'know, used a digital camera, right? MJPEG's been the main video capture format for years, only now being supplanted with MPEG4.

    7. Set it up for motion sensitive mode. It will span a picture only when something in the field of view moves
    8. Or similar to above, in motion sensitive mode with USB, it could just dump the image straight to your PC whenever there is motion. Imagine combining this with a laptop to work as a spycam...


    Check, check.

    That said:

    5. Make it into an e-book reader that can read PDF or Postscript docs (after all many digital cameras have scroll wheels and multiple menu buttons, etc...)
    6. Play some old school video games on them: Space Invaders, Pac Man, maybe even Doom. Doom's been done before...
    9. MP3 or Ogg Vobis player the works from CD or Flash media (again if your camera has audio capability)
    10. A USB video monitor. Combine your camera with a Mac Mini and a foldup KB and mouse and you have a pretty compact but powerful system for travelling. (Yes, I don't mind squinting at small screens)


    The fascination people have with putting Ogg/DOOM/eBooks on random objects amuses the hell out of me. I have a Vorbis player on my iPaq, and an eBook reader on my iPod, and never use either of them. As for porting games...oi. I recommend a GameBoy.

    In response to the original poster, my camera's a MIPS, according to my firmware disassembly. Here's something I'm amazed nobody has mentioned:

    My camera's firmware contains a TCP stack, PPP implementation, SMTP implementation, and dinky FTP server. It's pretty clear that the manufacturer intends (or intended) to release a modem of some sort. Yet, nobody seems to have mentioned network connectivity!
  • Re:Obvious reason (Score:1, Informative)

    by Anonymous Coward on Wednesday January 19, 2005 @05:59PM (#11413102)
    If the area is classified, you shouldn't have a cellphone in there anyway.
  • Re:Obvious reason (Score:4, Informative)

    by pchan- ( 118053 ) on Wednesday January 19, 2005 @06:40PM (#11413568) Journal
    As an embedded systems engineer, I'll tell you why:

    1) The firmware is highly hardware dependant. You will not be porting this to any other hardware, you won't use it anywhere else. It is of little use to anyone not using your same PCB.
    2) There is proprietary, licensed software included, that cannot be redistributed. Particularly the following:
    (a) The focus control software (this is the DSP software that figures out when the image is in focus).
    (b) The CCD filtering software.
    (c) The OS, if any, may be licensed from a third party.
    3) There is no way to interface to these devices without a proprietary hardware device costing possibly thousands of Dollars. For example, a common camera chip is the TI DSC24, which can be reprogrammed via a specific JTAG emulator, and requires TI's Code Composer Studio compiler to develop for the DSP part of it. Even if you had this stuff, you won't find a JTAG header on the production boards. This is not a Tivo hack, the number of people that would be able to actually apply a hack to this device is limited to the people who can solder a JTAG interface, or desolder the flash and reprogram it on a flash programmer. This means that even if one guy in Norway can do something cool with this camera, he can't share it with the world.
  • Re:Obvious reason (Score:1, Informative)

    by Anonymous Coward on Wednesday January 19, 2005 @06:48PM (#11413667)

    I'd like to get ccd-over-time with the shutter open. I realize that's probably not feasible with current hardware, let alone markettable, so it's kindof irrelevant to the open software question.


    This would actually be pretty difficult. CCD's don't really work that way (but maybe that's what you meant by not feasible with current hardware). They're like bins that fill up with light, but they're dumped out every time you read them. This wouldn't cause a major problem, i.e. you could just read over and over as quickly as possible and add the results together, except that you introduce "shot noise" each time you read out the CCD. Some of this would average out when adding together all the short readouts, but the noise would be a lot higher in the final image that in an image collected in one shot for the same total collection time.
  • Re:Obvious reason (Score:4, Informative)

    by phsdv ( 596873 ) on Wednesday January 19, 2005 @07:28PM (#11414017) Journal
    As an electronics engineer with a few years of embedded engineering experience, I do not agree with your statement about JTAG. What you are telling is correct, however most modern cameras can be programmed by putting a special named file on your flash card and by selecting the right commands in the menu you can reprogram your OS or firmware in the camera.

    On the Nikon D70 for example there are even 2 different firmwares you can update. Does anyone know which 2 processors are used in the D70? I understand one is used for the user interface and the other for the signal processing(DSP)

    So no technical reason to stop us disassembling the code (lateste update for example) and make some changes or extensions and reprogram your camera.

    With an JTAG connection debugging would be way easier. Although, we might be able to use the USB port for feeding debuging data back to a PC.

    The only real problem I see, is if you really mess up the firmware, you might block the possibility to reprogram the firmware and you end up with a non functional camera...

    In the case of the D70 we could start with the DSP only, assuming the other processor can still reprogram the firmware in case of an 'accident'.

  • by Anonymous Coward on Wednesday January 19, 2005 @07:45PM (#11414203)
    - Canon D30/D60/10D/20D: 8086 microcontroller running ROM-DOS

    - Canon 1D/1Ds: PowerPC running VxWorks

    - Canon 1D/1Ds Mark II: ARM running VxWorks

    - Canon Powershot Sxxx/Axxx cameras: MIPS, some may use ARM.

    - Nikon D-SLRs (D2X, D2H, D100, D70): Fujitsu FR-V, running FR/OS (some FR-V chips run Linux too!)

    - Nikon Coolpix cameras: SPARC, uses Sierra OEM toolkit

    - Sigma/Foveon SD10/SD20: ARM, running Foveon toolkit on custom FPGA
  • by Anonymous Coward on Wednesday January 19, 2005 @08:50PM (#11414872)
    Olympus makes an SDK of Active X controls [olympus.com] available for their cameras. Not quite the same as hacking the camera directly, and yeah, you gotta work in an MS world with Active X enabled. However, it is only about $40US
    From the web site description...
    "The Olympus Developer Program is a collection of tools that allow the software developer to control and access OLYMPUS digital cameras and digital voice recorders. With these tools developers can, for example, remotely capture and download a picture from a compatible Olympus digital camera or convert DSS files from a compatible Olympus digital voice recorder to WAV."

    The showcase section shows several companies that have rolled the SDK into full applications. And why arent these Open Source? Because the people at the company want to earn money to pay for their toys.

  • I care (Score:3, Informative)

    by Kris_J ( 10111 ) * on Wednesday January 19, 2005 @08:50PM (#11414874) Homepage Journal
    And I'd really like someone to write a rehuff for my DC260 since jpegoptim [ldreams.net] shaves roughly 10% on average off the size of its photos. That's almost 20 extra shots I can fit on the current card with the current settings.

    The Kodak DC range absolutely rock. Not only are they open with the OS, allowing 3rd party extensions, but they use a standard card and standard batteries. This means that they hold their value a lot better than other cameras with expensive batteries, less available cards or no way to update them for newer techniques or standards.

"The one charm of marriage is that it makes a life of deception a neccessity." - Oscar Wilde

Working...