Hacker News new | past | comments | ask | show | jobs | submit login
Camera Pi – DSLR Camera with Embedded Computer (davidhunt.ie)
106 points by yossilac on Aug 19, 2012 | hide | past | favorite | 30 comments



Very cool! What saddens me is that there is already an embedded computer on the camera! There is just not a good way to program it.

While there are some great efforts, like Magic Lantern, to reverse engineer and improve the firmware, I wish the producers just made the source part of their product. (I don't believe their trade secrets are that valuable to be honest. Not more valuable than letting people builds apps for your camera, at least)


The amazing CHDK: http://chdk.wikia.com/wiki/CHDK_in_Brief for those who aren't aware of it. If I could ensure a new camera was supported, that alone would be enough to make me buy it over any competing models.


The story of how the CHDK was born is really amazing. Remember that "print" button on your camera, the one you never use? It has a light on it. Apparently someone coaxed their camera into outputting the source code of the firmware getting the "print" button to flash on and off.....


Reminds me of how people cracked the iPod Nano (I think) firmware - one of the first steps was exploiting a buffer overrun and dumping the bootloader acoustically, through the clicker. There's a page somewhere with a photo of an iPod and a mike, all in styrofoam.


BTW, CHDK doesn't use any exploit or vulnerability as all Canon cameras can boot from the SD memory, you only need to know the firmware file format, that it is of course already documented by the folks from CHDK.


Also worth pointing out the Magic Lantern Firmware[1] that supercharges low end Canon DSLRs.

[1] - http://magiclantern.wikia.com/wiki/Magic_Lantern_Firmware_Wi...


The 5D mark II for which it was originally developed could hardly be considered low end. The official firmware at the time was just extremely lacking for film makers. (it's only very lacking these days).

Unrelated: Trammell Hudson, the guy who started Magic Lantern has done a lot of other interesting stuff - such as open source helicopter control software.


I was referring to the support for other lower-end DSLRs like the 550d rather than the 5D mark II, although I didn't know it was originally developed for the 5D mark II, thanks.


There were briefly some Sony cameras that had hackable built in OS. An open firmware or at least apps (Instagram in camera) would be great. Too late now perhaps as the compact camera market is shrinking and DSLRs are premium products?



Here is my rant, as an experimental (panorama, gigapixel) photographer: Canon, Nikon, and the rest of them will go to their graves keeping their firmware closed and un-scriptable. It is a tragedy. Mobile phones and the Gopro are eating their lunch. The fact that there is even a (niche) market for things like the Eye-fi (wifi sd card) goes to show how utterly clueless and behind the times these dinosaur camera companies really are.


Yeah. A great example of how people go wrong when makers focus on the product they're building rather than the people they're building it for.

As a programmer, my natural inclination is to sit in my fortress of arrogance and build the thing that I "know" they need. But learning how to do user testing, user interviews, and customer development has persuaded me that the important moment isn't when the product ships, it's when somebody actually uses it.

I almost never use my non-phone camera anymore because the point for me isn't taking a picture, it's doing something with it. Which camera companies would know if they treated anthropologists with the same respect as CCD scientists.


That's a nice thought. But the real reason they do it is market segmentation; e.g. when I looked at it two years ago, the Canon T3i was infinitely better and cost less than any IP camera out there. If they let you stream out of it live, it would kill the ip camera market. So they don't.


If they did it only for purposes of market segmentation, they would have long ago made something that about the size of a point-n-shoot but that was as convenient for getting the photos up and out as a smartphone.

They haven't. That doesn't mean they have forced me into buying a fancier camera, and therefore getting more money. Instead they've pushed me into doing almost all my casual shooting with an (inferior) smartphone.

Besides, market segmentation is a good idea only as long as nobody else is going to disrupt your precious segments. If they will, then you might as well disrupt them yourself.

Established organizations have trouble thinking like that, though, because their ignorance of actual use combines with political desire to avoid change. Thus, Kodak.


I'll believe it when I see it.

Nikon and Canon's target market, photographers, want to spend their time taking photos, not writing code for their camera.

Besides, most of the "possibilities" listed in the article are already available on a lot of cameras (like the intervalometer), better done in post processing (like previewing on ipad), or easily done using a $20 wireless remote control.

Don't get me wrong, it's cool that he's hacking on his camera, but I don't see Nikon and Canon ever promoting it or going out of their way to make it easier.


Some Canon cameras are scriptable natively ( http://chdk.wikia.com/wiki/Canon_Basic ) and also using the CHDK extension. I understand the vendor's position on this, the market for scriptable cameras is tiny, you can easily destroy your camera with the wrong script and as any programmable device, your scriptable camera could catch a virus (http://www.youtube.com/watch?v=t6ZJ4cmc2o8)


This is Stanford's take on what can be done if you could fully program the computer in your camera and it had the sensors of a smartphone: http://graphics.stanford.edu/projects/camera-2.0/


As a hobbyist photographer this definitely sounds interesting in terms of allowing more control over the camera (especially automated uses, build your own timelapse, get past the 30s long exposure instead of having to buy a $150 canon timer remote, et cetera). But doing anything with image manipulation and transfer (maybe there's a reason Eye-fi hasn't moved into the DSLR space -- no CF version, only Class 6 speeds) seems like a daunting task for the pi..

For those more familiar with the Raspberry Pi, does it actually have enough performance to move big RAW files around? A 5D3 will output ~30MB RAWs and in a shoot you may end up with 500+ of them. Having a Pi transfer/move/adjust them sounds like a slog.


The Pi does about 10MB/s over the network, I believe.

As for image manipulation, sadly, the Pi is fairly fast by embedded standards, but running general-purpose software on a full-blown OS takes a lot away.

For comparison, the original Xbox used an x86 of the same clock speed.


> running general-purpose software on a full-blown OS takes a lot away

Which is why we any predefined image manipulation should avoid the ARM core and jump straight to the rather powerful GPU. I think it even supports OpenCL, so there should be software out there that could work with it.


The GPU on the Pi can't/won't support OpenCL. That doesn't stop one from writing a GPGPU program in GLSL.


    >For comparison, the original Xbox used an x86 of the same clock speed
which is fairly useless as a point of comparison, as not only is it the completely different arm architecture, but it is also Arm V6 (arm11), whereas even our smartphones have been arm v7 (cortex A8, A9, A15) for the last couple of years. If i had to equate it to an x86 clock speed, i'd say 400mhz was possibly a fraction generous.


Sure, they aren't the same, but they ought to be in the same ballpark.



This could be really great if they release an API to interact with the camera hardware. The article linked above takes a negative view, citing old Android versions and so on, but I think this is really a step in the right direction.


FYI you need a powered USB hub to attach that wifi dongle.

I also got one of those small Realtek RTL8188SU wifi dongles and found that it worked very poorly. I don't know if it was the particular vendor I got mine from or the drivers or that particular chipset, but the interface would just stop working if you tried to do anything data intensive or prolonged on it. SSH and VNC were unusable.


I've had good success with the RTL8188SU. Direct onto the Raspberry Pi, no hub needed. Worked away through it, ssh'd in, transferring images, etc for several hours, didn't have to touch it once. It does get a tad warm, though, but not hot enough to worry about.


He does mention resetting the USB port after every image transfer, so maybe that solves that problem as well.


That's a pain in the neck.

I steam 720p video for hours on end over a IOGear GWU625 (Realtek RTL8191S) with no problems.

(Requires powered hub AFAIK, I don't think I tried it without though).


Yeah this is the one I got:

http://www.amazon.com/Airlink-compatible-Wireless-Mini-USB-A...

I suppose a thing that small and cheap is too good to be true.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: