Controlling a Sony A100 DSLR using Arduino

Arduino controlling Sony A100 camera using 2x 4N25's

Sony DSLR cameras have a 3-pin remote port for use with a wired remote. Today, I’ll explore how we can use it to control the camera using our Arduino.

Continue reading



Filed under Arduino, Camera

Skycam Controller for The Last Shuttle Project

rcfisher Skycam Controller

This week, while visiting Los Angeles, I took the opportunity to have breakfast with Robert C. Fisher from The Last Shuttle Project. One neat thing I got to see is pictured above, the hardware used to control the ‘Skycam’ for capturing some cool video footage of the final space shuttle launch last year. Check out the video!

The hardware is a stock Arduino, with a protoshield on top. It features an RTC, status lights, a test switch, a piezo to detect the sound of the launch, and an opto-isolator to trigger focus and shutter lines. All that is protected by a sturdy little Pelican case. Quite a nice compact setup.

To handle the unique timing requirements of this shoot, the board is running an Arduino sketch I wrote, the Camera Controller.

This sketch was my first attempt to write a clock-based camera controller. I learned a bunch of lessons along the way that I’ve since incorporated into the next version.

Continue reading

Leave a comment

Filed under Arduino, Camera

FreeRTOS on Arduino

pingpair_freertos dataflow

As I’ve started to dig into [FreeRTOS], I have found too few useful compilable examples on how to get started. The FreeRTOS tutorial is complicated and theoretical. It doesn’t leave you with any working running code. The Officially Supported demo for STM32 works, but it’s way too complicated, and assumes you have lots of hardware. Not a great way to get started. Maple comes with a tragically simple freertos-blinky.cpp, but all it does is show you how to blink the LED. What’s next?? Fortunately, I came across a page of FreeRTOS examples for WSN430 that helped a lot.

In this blog post, I wanted to share my own experience with porting real code to FreeRTOS, which does something more useful than blink a light, but not something unfathomably complicated. Along the way, this will explain how to exploit many of the features of FreeRTOS

Get the code from github:

Continue reading


Filed under Arduino

Getting Started with nRF24L01+ using a Protoshield

RF24 Getting Started ProtoShield

This post follows the Getting Started with nRF24L01+ on Arduino. If the resulting board from that is a little too rough around the edges, it can be built instead on a proper prototype shield for a few more dollars.

Continue reading


Filed under Arduino, RF Radio

Control and Monitor Arduino Over the Web Using ENC28J60

NanodeUIP Webserver Screens

The NanodeUIP web server provides a mobile-optimized web page to control and monitor your Ethernet-connected Arduino. All you need is an Arduino and an ENC28J60-based Ethernet shield, or get a Nanode which combines the two together.

The home page shows the three functions the webserver can handle:

  • Monitor Buttons
  • Control Lights
  • Monitor Sensors

Continue reading


Filed under Arduino, Ethernet

Nordic FOB and nRF24L01+

Nordic FOB and nRF24L01+

Sparkfun sells a nifty little gadget to control your project remotely using nRF24L01+ radios. It’s a small key fob with 5 buttons, which transmits codes when you press each button. Today we’re going to explore how to receive those signals using the RF24 library. This is all thanks to Kirk Mower who sent me these units for Christmas. Thanks, Kirk! 🙂
Continue reading


Filed under Arduino, RF Radio

Arduino on Ice: Internet Radio via Shoutcast

Nanode streaming Internet Radio (close-up)

I’ve seen plenty Internet Radio examples out there on various platforms, but none on Arduino. Is 2K memory just too little to stream radio effectively? Thought it was time to find out. Turns out it’s no problem at all. Using uIP on ENC28J60 for networking and VS1053 for playback, a stock ATmega328p-based Arduino can stream Internet Radio no problem with plenty RAM to spare.

The example sketch discussed here is something of a “Hello, world.” of Internet Radio. It starts up, connects to a single hard-coded stream, and plays it forever. This makes it simple! Plug and listen. For this example, I’ll use the stream from, “Seattle’s Hottest Music” 🙂

Continue reading


Filed under Arduino, Audio, Ethernet