Hacking Canon Point-and-Shoot Cameras
Pig Hogger writes "If you're stuck with a cheap Canon point-and-shoot camera and have feature envy over the neighbor's sophisticated latest model, fret not! According to this LifeHacker article, the CHDK project allows nearly complete programmatic control of cheap Canon point-and-shoot cameras, enabling users to add features, up to and including games and BASIC scripting."
What's the cheapest camera on the list?
One of our competitors trademarked the term "hypothesis". From now on, we will call them "boneheaded ideas".
Canon hacking has hit mainstream, it seems... with extra visibility I'm sure the higher ups in the company will soon know about them (no doubt the engineers already knew about the project). I LOVE my Canon cameras, so, I really hope Canon doesn't pull an Apple or a Creative and start intentionally guarding against firmware hacks because then my future purchases will have to go elsewhere.
Sidenote: I had an old A80 camera that's maybe 6 years old stopped taking pictures. Turns out there was an old technical bulletin about it in their KB and that Canon was offering free repairs to any affected unit regardless of its age. I sent it in and they did what they promised AND the turnaround was around a week.
More Twoson than Cupertino
I have long been aware of CHDK, and own one of the cameras that was recently added to their "list"... the S5-IS. I got as far as downloading the file and trying to make head or tail of the 'intructions'. Not even the worst offending Microsoft 'undocumented' feature you can think of is this badly documented. There is NO step by step guide that makes you feel confident at all about loading this onto your camera. Yes there are steps - more like leaps off the edge of the Grand Canyon! Huge gaps of logic, no finale of "now go take pictures". Until its presented in a less "hacker" style I don't think I can risk screwing up my Canon warranty, thank you!
Um, changing the firmware isn't going to put a LCD screen on the mirror. Apparently you haven't grasped how a SLR works.
The firmware probably isn't going to be able to get the shutter to go any faster reliably. What you need to use is a ND filter if you like wide apertures.
Certainly the scripting stuff could be used in a SLR.
If I have nothing to hide, don't search me
You like big apertures, and you can not lie?
Withstanding OR notwithstanding the DCMA, I think the developers and players could be literally figuratively "shooting themselves in the foot"... (LOL!)
Previously: "Linux... Toward the Sunrise..." Now: "Linux... Toward the-- No, now, part of Every Sunrise"
If it's anything like the 300D versus the 350D, they'll notice that people are hacking features back into the camera, and enable them by default on the newer model.
(Is there any alternative firmware for the 350D onwards, or have the hackers simply not bothered?)
Tedious Bloggy Stuff - hooray?
Later revisions of 54G routers had less memory, and slower processors. Such a gimped amount of memory it took a long time to get a build of Linux that would fit.
Learn something new.
I think the 450D has a live preview feature - so not exactly through the viewfinder, but a live histogram would be a funky addition.
Assuming it doesn't have it already - I'm happy with my old 350D.
Tedious Bloggy Stuff - hooray?
I tried it with my S2 IS. They really do a good job at maintaining the "soft" firmware.
Although, for RAW images, cheap point and shoot cameras don't have physical build, and lack everything that makes RAW images special. Taking RAW images with my camera was akin to storing 1 MB JPEG image into 3 MB RAW format.
Many older Canon cameras run VxWorks, apparently - and only recently have they moved on to something entirely of Canon's own devising...
Tedious Bloggy Stuff - hooray?
Isn't "RAW" really just an umbrella term for a number of competing and very ad-hoc formats?
Wired.com also mentioned this stuff recently. I tried it - awesome.
One of the coolest features is that at any time you can restore your camera to default settings just by turning it off - no permanent flashing of BIOS/firmware!
They have this on the new Rebel and I think maybe on the new 1D.
Actually, don't the shutter blades always fall at the same speed? Their speed is the flash sync, the fastest speed where the whole film is exposed at a single point in time, right?
Then to set the 'shutter speed', the time between the first shutter blade and the second shutter blade is changed.
At least, that is how Focal Plane shutters work. Leaf shutters are different.
If I have nothing to hide, don't search me
Later revisions of 54G routers had less memory, and slower processors. Such a gimped amount of memory it took a long time to get a build of Linux that would fit.
Or, they decided to reduce their manufacturing costs by only using the amount of memory & processor power needed to run their firmware.
Saving a buck per router adds up when you're making thousands (millions?) of them.
That's my understanding as well. The RAW from a Canon SLR might have no relation at al to a nikon to a sony, etc (or even between canon models, etc). They are just the unprocessed raw data that the cameras use internally. Thus the need for import filters for programs like photopshop, aperture, and lightroom to be able to read the files from different cameras.
I don't actually know about point-and-shoots (I assume they don't have conventional shutters, what with all the live-preview stuff) - but digital SLRs most definitely do.
Actually, the best way to imagine a dSLR is as a film SLR, but with an image sensor taking the place of the film. The half-silvered, hinged mirror is still there for the viewfinder, as is the autofocus and metering gubbins arranged beneath it - on older dSLRs, the image sensor only gets to play when the mirror hinges up, blocking light from getting in through the viewfinder, and the shutter opens.
(Ever wondered what that funny rubber rectangle is on the camera strap? It's for putting over the viewfinder when you're about to take a long exposure - light getting in can confuse the metering system that's in front of the shutter...)
Tedious Bloggy Stuff - hooray?
There's an open source project (Dcraw which aims to solve this problem.
The source code file can be found at this file
Vintage computer adverts: http://www.vintageadbrowser.com/computers-and-software-ads
What I'd like is some simple tweaks to the interface.
For instance, the ability to delete photos by range (e.g., this photo and all previous ones). Useful when you download the photos to the computer, forget to delete them from the camera, and discovers that after taking one more photo: shit! Now you have to delete all the other 400 photos one by one.
factor 966971: 966971
Because it's physically impossible on an SLR. In an SLR, you have the lens, that then is followed by a mirror. The mirror, in the "down" position, reflects the light from the lens through the prism viewfinder and then to your eye.
When you click the shutter, the mirror flips up (viewfinder goes dark), exposing the shutter which then opens and shuts the right amount of time the actual camera sensor.
That's not to say it's not possible to say, add a little cameraphone like sensor and offer a live preview (several dSLRs do this now), but historically, it wasn't possible. The light is either going to the main camera sensor, or the viewfinder. A small amount is actually reflected *down* for autofocus, though.
Though, as anyone knows, holding your camera at arm's length (so you can use the LCD as a viewfinder) sucks for camera shake. And most camera LCDs are of QVGA or lower resolution, so you miss out on all the nice little details youc an see through a real optical viewfinder like that on a dSLR...
I was OK with Linksys reducing the memory footprint, especially since they introduced the 54GL.
I was not enthused they forsake open source firmware (busybox) for closed source VxWorks, and then that Linksys or VxWorks put some checksums in their upload routines that tried to disallow altered firmware.
The fact the openWRT people finally overcame the checksums and shoehorned busybox into the gimped 45Gs (while retaining more features than VxWorks) shows it was technically possible. They were just taking the comfortable path rather than upholding the hacker roots of the 54G which made it such a success.
It was hardly done just to spite the hackers.
If your product still runs adequately with :
- less RAM (cheaper!)
- a slower processor (cheaper!)
Then you go ahead and make the change to:
- increase profit margins
- keep up with your competitors so they don't price you out of the market.
Pretty clear-cut business case. In their case, they went out of their way to provide the original model again, pretty much just for hackers. They could've just dropped the old version, y'know.
You are in a twisty maze of processor lines, all alike.
There is a lot of hype here.
The actual process is much more involved than just figuring out the order of the RGB info.
Kindness is the language which the deaf can hear and the blind can see. - Mark Twain
No, they renamed the original G to GL, jacked the price up $20, then came out with a new, shitty router that they named G for the same price that the better hardware had been before. And all this while hardware costs should have been going down anyway (as is the general trend in technology).
(Have you got a hint abut why people are pissed off yet?)
"[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz
For every hacker they retained by keeping the GL, they pissed off two others (like me) who resented being asked to pay $20 more than we had been for the same hardware (or the same price for inferior hardware). Prices on technology are supposed to go down, not up, as the product gets older!
Because of that bullshit, I'm specifically avoiding Linksys for my future router purchases.
"[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz
You are mostly correct.
On Canon SLRs the shutter blades travel as you describe. As the shutter speed gets faster, the delay between when the first/front curtain fires and the second/rear curtain fires gets shorter and shorter. At shutter speeds faster than X-sync (fastest shutter speed usable with flash), both curtains can be moving at the same time leaving a narrow slit between them. The width of that moving slit is effectively the shutter speed. The curtains always move at the same speed, just the delay between when they "fire" is altered.
On some more recent Nikons, the same is true up to 1/250, but then the imager becomes the gate. At shutter speeds faster than X-sync, the shutters stay open as if they were set to 1/250 even if you are at 1/8000. The imager simply captures for less time.
And on some Nikon cameras LCD shutters are being used.
It is a changing world for good old focal plane shutters.
I'm thinking about it, therefore I might be.
I discovered CHDK while trying to find a remote trigger solution for my high altitude balloon project. After destroying three digital cameras trying to make a remote shutter, I discovered CHDK and it's UBASIC capabilities. I used a hacked-up USB cable and a simple UBASIC script to trigger the shutter from my Arduino.
Cool stuff. The HDR and RAW capabilities are incredible, for a $200 camera.
I own and frequently use the 300D, and it's pretty obvious to any previous or current owner of this camera that this camera was Canon's experiment into consumer-priced SLRs, as it was nearly feature equivalent to the 10D (the only difference was the buffer size and 0.5 second shutter speed difference). The separation between the Rebels and the double-digit cameras has been widening ever since.
A great example is the Canon 400D and 450D. While they do take stunning pictures and are great SLR cameras in their own right, they are by far not on the same level of operation as the 30D and 40D, respectively. The feature and hardware gap are too great to upgrade those cameras to the higher-priced ones.
Regardless of which, I believe that Canon's offerings on the low-end have consistently been better than that of Nikon's, as their lowest end doesn't even come with a separate info screen (it's all software). On top of that, it's more expensive anyway.
You're making a video with your phone, when it rings. Unwilling to interrupt your filming, you hit the divert button, redirecting the call to your MP3 player. This annoys your offspring, who were watching a movie on it. To placate them, you tell them to fetch your video camera, which they can use to stream the same movie to your television in higher quality...
Repton.
They say that only an experienced wizard can do the tengu shuffle.
I would tell anyone who'd listen that if you own one of these cheapish but otherwise excellent point-and-shoot cameras (mine is a Canon Powershot A510), if you're looking for a great use for it, consider putting it to use as a Web cam, or a motion detector.
I spent quite a bit of time researching this project, and am not affiliated with either company I mention here, nor do I stand to gain from mentioning them. I only cite their names here b/c I was looking for a cheap way to get good quality, auto-recorded video and photo shots of hummingbirds and other birds visiting our feeder, and was amazed at how easy and cheap this was given the alternatives (crappy webcams, etc).
First step up was downloading PSremote, which works with most brands of point and shoots, but most particularly Cannon. It lets you control the camera entirely, from the zoom to the shutter speed and exposure -- from the computer, assuming it's connected to the PC using the supplied cable.
Add to that setup Webcam Zone Trigger, which interacts with that software to let you define "hotspots" and the level of motion detection that should trigger recording in those spots, and you now have a new life for that old camera you don't use anymore. Total cost: $100.
...because you never know who you're dealing with.
Some of us are long since bored with karma and just hang out here in the hopes of finding a good opportunity for a joke.
I have seen the future, and it is inconvenient.
When you upgrade firmware in a Canon camera, there is scope to run an application before the firmware upgrade. What CHDK does is trigger the upgrade process, but doesn't upgrade the firmware -- it just uses the firmware upgrade routine to run the CHDK code on top of the firmware. The camera still works, and the CHDK code has access to all the camera variables, allowing you to do pretty much anything you want. But the underlying firmware remains unchanged (and thus your warranty isn't void).
It's all rather neat, and the CHDK code is easy to hack around with (I've done so in the past).
....resented being asked to pay $20 more than we had been for the same hardware....
Without being privy to Linksys's internal discussions on this, again I would suggest that economies of scale come into it.
Eg.
- You, the manufacturer, introduce another model with equivalent performance that supersedes the old model.
- You recognise that there's a market for the old type , thus you want to keep the old model about for the hackers.
- You figure that you'll only sell 1/10th of previous volume you were selling, considering that the usual plebs that buy your routers don't give a damn about modding them.
- You need to make a profit on whatever you sell (you don't care about hackers *that* much).
- Your manufacturing plant in China says that it will cost x percent more per unit to do a smaller production run of the old model, what with warehousing, having to stock different parts,etc.
- You add x percent to cover the costs of this.
- You add y percent simply because you know you're now selling a specialty product and hackers will pay a premium for them.
This last percentage takes quite a bit of economic theory and experience to work out. I don't begrudge Linksys this premium. You do, and fair enough - everyone is different. It's the fine line between number of sales / total profit that they walk, and every manufacturer walks it.
You are in a twisty maze of processor lines, all alike.
There is a lot of hype here.
Ouch,
/temporarily/ ammend the active program for the duration of a single boot. It does not as you suggest change the firmware, which by definition is the nonvolatile program memory contained in the device. The original firmware remains safely ensconced in its usual place, it is merely substituted in whole or part with code from the boot "disk" - until the system is rebooted.
before carping about the prefix in someone else's, you should take out the adjective from your own.
Turns out it's not a "Firmware Change" either anymore than running a bootable linux CD under vmware on your mactop is a firmware hack.
What it is - and this is a critical point for warranty concerns, is the ability to