Hacklet 97 – Camera Projects

We last covered camera projects way back in Hacklet #11. A ton of camera projects have been added to Hackaday.io since then. While the rest of the world is taking selfies, hackers, makers, and engineers have been coming up with new ways to hack their image capture devices. This week on the Hacklet, we’re taking a look at some of the best camera projects on Hackaday.io!

pixelzFirst up is [aleksey.grishchenko] with PiXel camera. PiXel is a camera and a live video display all in one, We wouldn’t exactly call it high-definition though! A Raspberry Pi uses its camera module to capture images of the world. [Aleksey] then processes those images and displays them on a 32 x 32 RGB LED matrix. This matrix is the same kind of tile used in large outdoor LED signs. The result is a surreal low resolution view of the world. Since the Pi, batteries, and camera all hide behind the LED matrix, there is an unobstructed view of the world around you. [Aleksey] used  [Henner Zeller’s] matrix library to make this hack happen.

imagerNext up is [Esben Rossel] with Linear CCD module. [Esben] is building a Raman spectrometer, much like 2014 Hackaday Prize finalist [fl@C@] with his own ramanPi. The heart of a spectrometer is the linear image capture device. Both of these projects use the same TCD1304 linear CCD. Linear Charge Coupled Devices (CCDs) are the same type of device used in flatbed document scanners. The output of the CCD is analog, so an ADC must be used to capture the data. [Esben] is using an STM32F401RE on a Nucleo board as the control logic. The ST’s internal ADC converts the analog signal to digital. From there, it’s time to process all the spectra.

wiimote-cam[Chiprobot] brings the classic Wii remote camera to the internet of things with
ESP8266 meets Wii Mote Camera. The Wii remote uses a camera which doesn’t output images, instead it plots the location of up to four IR LEDs. Normally these LEDs are located in the poorly named sensor bar that is sold with the Wii. Hackers have been using these cameras in projects for years now. [Chiprobot] paired his camera with the modern classic ESP8266 WiFi module. The ‘8266 is programmed to read data from the camera’s I2C bus. It then sends the data as an SVG request to the W3C website. W3C returns a formatted image based on those coordinates. The resulting image is a picture of the IR LEDs seen by the camera. Kind of like sending your negatives out to be developed.

photoboothFinally, we have [GuyisIT] with Raspberry Pi Photobooth. Photo booths are all the rage these days. First it was weddings, but now it seems like every kids party has one. [GuyisIT] didn’t rent a booth for his daughter’s birthday, he built one using his Raspberry Pi and Pi camera. The project is written in python, based upon [John Croucher’s] code. When the kids press a button, the Pi Snaps a series of pictures. The tiny Linux computer then joins and rotates the images while adding in some superhero themed graphics. Finally the Pi prints the image on to a photo printer. The biggest problem with this hack is re-triggering. The kids loved it so much, they kept pressing the big red button!

If you want to see more camera projects, check out our updated camera projects list! If I missed your project, don’t be shy! Just drop me a message on Hackaday.io. That’s it for this week’s Hacklet. As always, see you next week. Same hack time, same hack channel, bringing you the best of Hackaday.io!

Reverse Engineering a WiFi Security Camera

The Internet of Things is slowly turning into the world’s largest crappy robot, with devices seemingly designed to be insecure, all waiting to be rooted and exploited by anyone with the right know-how. The latest Internet-enabled device to fall is a Motorola Focus 73 outdoor security camera. It’s quite a good camera, save for the software. [Alex Farrant] and [Neil Biggs] found the software was exceptionally terrible and would allow anyone to take control of this camera and install new firmware.

The camera in question is the Motorola Focus 73 outdoor security camera. This camera connects to WiFi, features full pan, tilt, zoom controls, and feeds a live image and movement alerts to a server. Basically, it’s everything you need in a WiFi security camera. Setting up this camera is simple – just press the ‘pair’ button and the camera switches to host mode and sets up an open wireless network. The accompanying Hubble mobile app scans the network for the camera and prompts the user to connect to it. Once the app connects to the camera, the user is asked to select a WiFi connection to the Internet from a list. The app then sends the security key over the open network unencrypted. By this point, just about anyone can see the potential for an exploit here, and since this camera is usually installed outdoors – where anyone can reach it – evidence of idiocy abounds.

Once the camera is on the network, there are a few provisions for firmware upgrades. Usually, firmware upgrades are available by downloading from ‘private’ URLs and sent to the camera with a simple script that passes a URL directly into the shell as root. A few facepalms later, and [Alex]  and [Neil] had root access to the camera. The root password was ‘123456’.

While there’s the beginnings of a good Internet of Camera in this product, the design choices for the software are downright stupid. In any event, if you’re looking for a network camera that you own – not a company with a few servers and a custom smartphone app – this would be near the top of the list. It’s a great beginning for some open source camera firmware.

Thanks [Mathieu] for the tip.

Five Bucks, Three Parts: WiFi Camera Remote

It’s just ridiculous how cheap and easy it is to do some things today that were both costly and difficult just two or three years ago. Case in point: Hackaday.io user [gamaral] built a WiFi remote control for his Canon E3 camera out of just three parts: an ESP8266 module, a voltage regulator, and a stereo plug that the camera uses as its remote trigger.

And the codebase is just about as minimal, although it’s not without its nice touches. Control is easy — just pull down a pin for focus or shutter. The ESP listens to a custom port, and when it gets the message, “presses” or “releases” the pins. It’s a good, simple example of how to work with the ESP IOT SDK.

The timing is all on the client side. [gamaral] knew that he was going to want to play around with how long to hold down the focus button, for instance, so he left that flexible. Using Netcat makes the client-side code completely trivial: echo -n "SHUTTER HOLD" | nc -w 1 -q 1 roosevelt 9021. Bam. And it worked first time. Check the well-done video just below for more details.

And keep your eye on [gamaral]’s Hackaday.io page, because he’s going to make another video when the PCBs arrive in the mail.

Continue reading “Five Bucks, Three Parts: WiFi Camera Remote”

Flat Camera Uses No Lens

Early cameras and modern cameras work pretty much the same way. A lens (or a pinhole acting as a lens) focuses an image onto a sensor. Of course, sensor, in this case, is a broad term and could include a piece of film that–after all–does sense light via a chemical reaction. Sure, lenses and sensors get better or, at least, different, but the basic design has remained the same since the Chinese built the camera obscura around 400BC (and the Greeks not long after that).

Of course, the lens/sensor arrangement works well, but it does limit how thin you can make a camera. Cell phone cameras are pretty skinny, but there are applications where even they are too thick. That’s why researchers at Rice University are working on a new concept design for a flat camera that uses no lens. You can see a video about the new type of camera below.

Continue reading “Flat Camera Uses No Lens”

Drive a Sony Camera with an ESP8266

Nearly everything has WiFi these days. [glaskugelsehen]’s Sony camera uses the wireless network to transfer photos to the computer, naturally, and it also has a remote-control application that’ll run on Android smartphones. [glaskugelsehen] doesn’t have an Android — but he does have shows us an ESP8266 that he turned into a WiFi-powered remote for the camera (Google translate into English).

Sony actually made [glaskugelsehen]’s work easy here. They have a publicly available API for the camera’s controls, and it’s all run by JSON sent over HTML HTTP POST. Which is to say, that it’s a piece of cake to script as long as you can send HTMLHTTP directives.

[glaskugelsehen]’s code, written in the Arduino environment for the ESP, first finds the camera’s WiFi network and authenticates to it. Then it sets the camera into remote-control mode, and takes over from there. So far, he’s only implemented taking still photos, but from the API it looks like you can also stop and start video recordings and more.

And yeah. We just wrote up another project doing virtually the same thing with a GoPro. [glaskugelsehen] read that too, and mentions it in his blog. We love it when people take inspiration from each other!

The Filmomat Home Film Processing System

The death of film has been widely reported, but technologies are only perfected after they’ve been made obsolete. It may not be instant photography, but there is at least one machine that will take 35mm film and 5×7″ prints and develop them automatically. It’s called the Filmomat, and while it won’t end up in the studios of many photographers, it is an incredible example of automation.

The Filmomat is an incredible confabulation of valves, tubes, and pumps that will automatically process any reasonably sized film, from 35mm to 5×7 color slides. The main body of the machine is an acrylic cube subdivided into different sections containing photo processing chemicals, rinse water, and baths. With a microcontroller, an OLED display, and a rotary encoder, different developing processes can be programmed in, the chemicals heated, developer agitated, and film processed. The Filomat is capable of storing fifty different processes that use three chemicals and a maximum of ten steps.

The video for this device is what sells it, although not quite yet; if enough people are interested, the Filmomat might be sold one day. This is likely the easiest film developing will ever get, but then again a technology is only perfected after it has been made obsolete.

Thanks [WhiteRaven] for sending this one in.

Continue reading “The Filmomat Home Film Processing System”

REM Detection Lets You Boss Around Your Dreams

[Michael] has been working on projects involving lucid dreaming for a long time. The recurring problem with most projects of this nature, though, is that they often rely on some sort of headgear or other wearable which can be cumbersome to actually sleep with. He seems to have made some headway on that problem by replacing some of the offending equipment with a small camera that can detect eye movements just as well as other methods.

The idea behind projects like this is that a piece of hardware detects when the user is in REM sleep, and activates some cue which alerts the sleeper to the fact that they’re dreaming (without waking them up). Then, the sleeper can take control of the dream. The new device uses a small camera that dangles in front of an eye, which is close enough to monitor the eye’s movement. It measures the amount of change between each frame, logs the movements throughout the night and plays audio tracks or triggers other hardware when eye movements are detected.

[Michael]’s goal is to eventually communicate from inside of a dream, and has gone a long way to achieving that goal. Now that this device is more comfortable and more reliable, the dream is closer to reality. [Michael] is looking for volunteers to provide sleep logs and run tests, so if you’re interested then check out the project!