A Single Pixel Digital Camera with Arduino

[Jordan] managed to cobble together his own version of a low resolution digital camera using just a few components. The image generated is pretty low resolution and is only in grey scale, but it’s pretty impressive what can be done with some basic hardware.

The heart of the camera is the image sensor. Most consumer digital cameras have tons of tiny receptors all jammed into the sensor. This allows for a larger resolution image, capturing more detail in a smaller space. Unfortunately this also usually means a higher price tag. [Jordan’s] sensor includes just a single pixel. The sensor is really just an infrared photodiode inside of a tube. The diode is connected to an analog input pin on an Arduino. The sensor can be pointed at an object, and the Arduino can sense the brightness of that one point.

In order to compile an actual image, [Jordan] needs to obtain readings of multiple points. Most cameras do this using the large array of pixels. Since [Jordan’s] camera only has a single pixel, he has to move it around and take each reading one at a time. To accomplish this, the Arduino is hooked up to two servo motors. This allows the sensor to be aimed horizontally and vertically. The Arduino slowly scans the sensor in a grid, taking readings along the way. A Processing application then takes each reading and compiles the final image.

Since this camera compiles an image so slowly, it sometimes has a problem with varying brightness. [Jordan] noticed this issue when clouds would pass over while he was taking an image. To fix this problem, he added an ambient light sensor. The Arduino can detect the amount of overall ambient light and then adjust each reading to compensate. He says it’s not perfect but the results are still an improvement. Maybe next time he can try it in color.

A Remote for CHDK Cameras Made Possible with Arduino

[AlxDroidDev] built himself a nice remote control box for CHDK-enabled cameras. If you haven’t heard of CHDK, it’s a pretty cool software modification for some Canon cameras. CHDK adds many new features to inexpensive cameras. In this case, [AlxDroidDev] is using a feature that allows the camera shutter to be activated via USB. CHDK can be run from the SD card, so no permanent modifications need to be made to the camera.

[AlxDroidDev’s] device runs off of an ATMega328p with Arduino. It operates from a 9V battery. The circuit contains an infrared receiver and also a Bluetooth module. This allows [AlxDroidDev] to control his camera using either method. The device interfaces to the camera using a standard USB connector and cable. It contains three LEDs, red, green, and blue. Each one indicates the status of a different function.

The Arduino uses Ken Shirrif’s IR Remote library to handle the infrared remote control functions. SoftwareSerial is used to connect to the Bluetooth module. The Arduino code has built-in functionality for both Canon and Nikon infrared remote controls. To control the camera via Bluetooth, [AlxDroidDev] built a custom Android application. The app can not only control the camera’s shutter, but it can also control the level of zoom.

DIY Single Pixel Digital Camera

[Artlav] wanted to build a digital camera, but CCDs are expensive and don’t respond well to all wavelengths of light. No problem, then, because with a photodiode, a few stepper motors, the obligatory Arduino, and a cardboard box, it’s pretty easy to make one from scratch.

The camera’s design is based on a camera obscura – a big box with a pinhole in one side. This is all a camera really needs as far as optics go, but then there’s the issue of digitizing the faint image projected onto the rear of the camera. That’s fine, just build a cartesian robot inside the box and throw a photodiode in there.

There are a few considerations when choosing a photodiode for a digital camera. Larger photodieodes have higher noise but lower resolution. [Artlav] has been experimenting with a few diodes, but his options are limited by export control restrictions.

Even with the right photodiode, amplifying the tiny amount of current – picoamps in some cases – is hard. The circuit is extremely sensitive to EMI, and it’s inside a box with stepper motors pulled from the scrap bin. It’s amazing this thing works at all.

Still, [Artlav] was able to get some very high resolution images across a huge range of wavelengths. He’s even getting a few images in mid-wave infrared, turning this homebrew digital camera into the slowest thermal imaging camera we’ve ever seen.

3D Printed Camera Battery Emulator

There are certainly battery hungry devices out there on the market and, unless you do some serious research before the purchase of said device, you really don’t know how it will perform. Needless to say, some of us get stuck with power hog device, and it seriously sucks because changing out batteries often is expensive and just plain annoying.

If you couldn’t tell, I am speaking from experience, my old Sony DSC-H5 camera works great with the exception of needing new batteries every hour. And if you get cheap batteries, the camera won’t even turn on! There’s a USB connector on the camera but it is only for transferring data and there is also no DC input jack. The entire situation is a totally bummer.

I’m happy (or disappointed) that I am not alone in the world. [Phil] wrote into the HaD tip line to tell us about his solution to this very problem. He has a Canon SD1000 camera and although the battery works fine he needs it to work at an altitude of 15km in order to take some sunrise photos. Cold weather testing (in the fridge freezer) showed that the battery isn’t going to cut the mustard for the hour-long flight. The rest of the balloon-lifted unit already has a battery pack and the plan would be to tap into that to power the camera. Unfortunately his camera, like mine, doesn’t have a DC input jack and can not be powered off the USB port.

[Phil] decided to make a 3D printed battery emulator. It sits in place of the stock battery and holds bare wire where the batteries terminals normally are. The other end of the wires are run out of the camera to a voltage regulator that converts the battery pack’s 6 volts down to the 3.9 that the camera needs.

Continue reading “3D Printed Camera Battery Emulator”

Full SHTTTRRR Control Lets You Take Your Time…

[Glitchmaker] loves photography and wrote in to tell us about his newest project. He has a Canon 1000D camera but, unfortunately, it does not have time lapse capability. So, instead of shelling out a chunk of change for a new camera [Glitchmaker] decided to make an external shutter control device that can continue to instruct the camera to take photos at predetermined intervals. He calls his project: SHTTTRRR. You didn’t think that meant something else, did you?

You can see the unassuming box above, there is just enough stuff packed in there to get the job done, nothing extra or fancy. Luckily, the Cannon camera has a remote shutter input jack that only requires connecting one pin to another in order to take a photo. Inside the box is an ATTINY45 microcontroller. It reads the button pushes from the single panel-mounted button and calculates the time between two button presses. That time between button presses determines the frequency of the photos taken. At the appropriate times, the ATTINY45 signals a transistor to connect the two appropriate pins on the camera’s remote shutter input jack. The device continues to tell the camera to take photos until it is shut off. The result is a series of time-lapse photos that was previously not possible on that camera!

This is a simple project that solves a problem and gets the job done. What’s better than that? [Glitchmaker] is proud of the SHTTTRRR he made and also learned a bunch about programming the ATTINY45 along the way. Check a video of it working after the break.

Continue reading “Full SHTTTRRR Control Lets You Take Your Time…”

Multiplexing Pi Cameras

The Raspberry Pi and its cool camera add-on is a great way to send images and video up to the Intertubes, but what if you want to monitor more than one scene? The IVPort can multiplex up to sixteen of these Raspi camera modules, giving the Pi sixteen different views on the world and a ridiculously high stack of boards connected to the GPIO header.

The Raspberry Pi’s CSI interface uses high-speed data lines from the camera to the CPU to get a lot of image data quickly. Controlling the camera, on the other hand, uses regular old GPIOs, the same kind that are broken out on the header. We’ve seen builds that reuse these GPIOs to blink a LED, but with a breakout board with additional camera connectors, it’s possible to use normal GPIO lines in place of the camera port GPIOs.

The result is a stackable extension board that splits the camera port in twain, allowing four Raspi cameras to be connected. Stack another board on top and you can add four more cameras. A total of four of these boards can be stacked together, multiplexing sixteen Raspberry Pi cameras.

As far as the obvious, ‘why’ question goes, there are a few interesting things you can do with a dozen or so computer controlled cameras. The obvious choice would be a bullet time camera rig, something this board should be capable of, given its time to switch between channels is only 50ns. Videos below.

Continue reading “Multiplexing Pi Cameras”

Towards More Interesting Instant Cameras

When [Ch00f] was getting jeans rung up at Nordstroms, he noticed how fast thermal receipt printers can put an image on a piece of paper. This observation isn’t unique to the circles [Ch00f] frequents – there are a few small receipt paper printers out there that connect to the Internet, iPhones, and a whole bunch of other Kickstarter-friendly keyword devices.

Nevertheless, a device that can make a hard copy of an image quickly and cheaply isn’t something you just stop thinking about. After rolling the concept around in his head for a few years, [Ch00f] finally came up with the perfect build – a camera.

The hardware for the build is based around an STM32F4 Discovery board. It’s a bit overpowered for this sort of application, and this is one of [Ch00f]’s first adventures in ARM-land. The rest of the hardware consists of a thermal receipt printer and a JPEG camera, the latter of which replaced a cellphone CMOS camera module that was lost in a move.

A custom camera requires a custom enclosure, and for this [Ch00f] made something remarkable. The entire enclosure is CNC milled out of a beautiful piece of figured walnut. The end result looks far too good for a prototype, but it does polish up nicely with a bit of linseed oil.

Now [Ch00f] has an instant camera that takes the idea of a Polaroid and turns it into something that produces a print for tenths of a cent. There’s a time-lapse function – just a zip tie on the shutter button – filters with the help of highlighters, and the ability to record movies in flipbook format.

It’s a great project, and also something that will make for a great crowdfunding campaign. [Ch00f] has already started work on this. He already has a sleek, modern-looking website that requires far too much scrolling than should be necessary – the first step to a winning Kickstarter. [Ch00f] also learned a lot about ARMs, DMA, dithering, gamma correction, and the JPEG format, but that’s not going to get anyone to open up their wallet. You know what will? A slick video. You’ll find that below.

Continue reading “Towards More Interesting Instant Cameras”