Obtained an Previous Canon Point-and-Shoot Digital camera? Hack It

Photo showing a Raspberry Pi and an old digital camera.

Photo: Randi Klett

Resurrected Tech: With a Raspberry Pi and the correct computer software, an aged digital digital camera can be network enabled and used for assignments unsuitable for both a smartphone camera or an pricey DSLR.

A ten years is a extensive time in technology—long more than enough for a technological know-how to go from hot products to conspicuously out of date to retro interesting. In 2010, Information Source’s David Schneider wrote about a hack to supplant the firmware in Canon point-and-shoot cameras and insert new functions, these types of as motion detection. As it turns out, at the time place-and-shoot cameras have been around their zenith of attractiveness. Given that then, although compact stand-alone digital cameras are even now staying created, their product sales have shrunk radically. As the smartphone digicam became the most ubiquitous kind of digital camera on the planet, position-and-shoot cameras uncovered on their own relegated to the back again of the closet.

That was definitely the situation with our Canon PowerShot S80. My spouse acquired it in 2008 generally to document her paintings in involving specialist photo shoots, and a couple yrs later we changed it with a mirrorless Nikon 1 J-1 with interchangeable lenses. So when I observed the S80 though decluttering not too long ago, I wondered: Was it just e-waste now, or could it be combined with today’s technological innovation to do intriguing points?


Pictures: Stephen Cass

Empire States: A application triggered the S80 at unique premiums to capture slow alterations through the day and much more immediate variations at dusk.

I made a decision the fantastic exam scenario for my S80 was variable time-lapse photography. This is a endeavor for which even an 11-year-outdated electronic camera, with its much larger optics, can compete with today’s smartphones on image good quality. This state of affairs can make mobility a moot position, but the process also necessitates a lot more sophistication than even CHDK—the open up-supply firmware substitution David Schneider wrote about in 2010—can simply supply by itself.

My S80’s original firmware had a functionality that would choose a photograph at fixed intervals of between 1 and 60 minutes, in 1-minute increments. CHDK presents a script that permits a far more high-quality-grained increment of 1 second, but I desired to test time-lapse images of the Empire Point out Constructing, which we happen to have a good look at of from Spectrum’s New York business office. Throughout the day, the light adjustments gradually, so I preferred to shoot just one photograph each and every couple minutes. At dusk, however, the lights on and all over the developing modifications more substantially, so I preferred images taken at a a lot quicker rate.

The very first issue was to exam my digital camera. It’s a credit score to Canon that despite many years of disuse, all the parts sprang to daily life. The only challenge was on the battery aspect. I experienced three batteries, a single of which refused to cost at all, and two some others I no for a longer period trusted for a extensive-duration experiment, so I located a DC adapter on eBay that powers the digital camera from a wall socket.

Then I mounted CHDK. Luckily, this is a person of those people unusual parts of open up-supply software program for which the documentation is a complete and intelligible wiki. Looking up the guidelines for my S80, I determined its present-day firmware, which turned out to be 1.00f. Only the 1.00g version is appropriate with CHDK, so I followed the directions to update the manufacturing facility firmware, the major impediment to which was getting the suitable utility computer software to open up the 7z structure that the firmware file was compressed with.

A cross-system device called Adhere tends to make finishing the CHDK set up straightforward: Fall a photograph taken with a digital camera on to the tool’s interface and it analyzes the metadata and downloads the specific variation of CHDK demanded onto a SD card. Launching CHDK on my digital camera just demands placing the ready card in and urgent the S80’s “shortcut” button.

CHDK presents an interface for distant command of the digicam by using the USB connection usually applied to down load images straight to a Pc. A selection of packages can use this PTP standard, which includes chdkptp, which offers both equally a command line variation and a graphical person interface (GUI) variation that lets you see what is getting exhibited in the viewfinder display live. One of the pleasant matters about chdkptp is that a precompiled binary, bundled with required supporting libraries, is offered for the Raspberry Pi, therefore eradicating dependency hell.

I ran into two problems, which have been resolved following lookups of CHDK’s user boards. The 1st was that chdkptp could not link to the S80—a helper procedure on the Pi was grabbing the relationship, assuming I wished to download images. The easiest alternative was to obtain the offending course of action employing a “ps -ax | grep gphoto2” command, and “kill -9” it. (This is effective only on a for each-session foundation if you want to permanently disable the helper, you’ll have to edit some deep configuration documents.)

My camera and chdkptp could now join, but I however couldn’t truly just take a photograph. This was solved by composing a script with some method commands I found on a forum. CHDK operates the script when I press the camera’s shutter, and then it is delighted to settle for remote commands.

Screen shot of new features added by CHDK.

Picture: Stephen Cass

UI Update: CHDK adds several other characteristics to old cameras.

To employ my variable time-lapse schedule, I wrote a limited Python application on the Pi. I seemed up the time of the sunset and established the Python plan to check the clock. Outdoors a 50 percent-hour window all-around sunset it would get a picture each 10 minutes, and a person just about every 30 seconds within the window. To handle the S80, I just issued an OS get in touch with to the chdkptp command line device that linked and activated the shutter—that is, os.program(“./chdkptp.sh -c -eshoot”).

I still left the system running from the early afternoon until dusk, and when I returned I experienced 113 photographs, which I dumped into iMovie to make a time-lapse video clip. Ta-da!

Now that I have my proof of idea, it would be a easy activity to compose a Python script that could obtain the situations of dawn and sunset and change alone quickly. I can also save pictures specifically to the Pi. Then I could entry and obtain these images remotely around a wi-fi network, enabling for the selection of leaving the digicam and Pi in put for extensive durations of time for actually epic time-lapse movies.

This article seems in the December 2019 print problem as “Hack Your Outdated Stage-and-Shoot.”

Leave a Reply

Your email address will not be published. Required fields are marked *