LEGO Nikon IR Remote




(You can skip the paragraph)
My sister has a Nikon D60 camera and is an active photographer. She had been begging for a remote control for the camera and this particular model doesn't have the option of wired remote, which would have been easier to make myself. The original ML-L3 remote costs something around 40$ in my local photo equipment shop. So I browsed the web a bit and found out that someone had recorded the remote signal and built a diy-version of the remote. I said to myself: "I can do that!" And so I did. The thing cost me some 7$, not counting the cost of the PCB  and time.

!!! This is by any means NOT my original idea. The construction and code written, however, is. If anyone feels offended by not being properly credited then let me know. !!!

The following instructable assumes that you have the equipment and skills to :
- Manufacture a PCB
- Program a microcontroller (in my case a PIC)
- Chop up/hollow out a LEGO brick
- Test the final product (you'll need a compatible camera or a friend with one)

Step 1: Parts List

The following parts will be needed:
- PIC12F509
- 5mm IR LED
- Momentary push-button
- Resistors of 100R and 100K, each 1/8W to save space
- Current limiting resistor for the LED, mine was 12R for a 130mA diode. Yours might be different.
- NPN transistor, I used BC547 because I had one already
- Two small button batteries, The ones I used are called D393, 393, LR754 or AG5 depending on the manufacturer

The batteries must fit in the LEGO block along with the rest of the circuitry.

Materials and tools needed are:
- 2x6 LEGO block and two 2x3 thin blocks so that the batteries can be accessed later.
- 5mm and 3.5mm drill bits to drill the holes for the LED and button
- Neelde-nose pliers to carve out the LEGO block, I realised that using knives or a dremel is just way too complicated and simple pliers do the trick well-enough.
- A good sharp knife to persuade the block to fit the batteries
- A file to shape the PCB
- Some super-glue
- Bits of double-sided foam-tape
- All the required materials to make and solder a copper circuit board

Step 2: Schematics and Board Layout

The schematic is pretty simple and the only tricky part is probably fitting it in the brick.

The second image includes my comments and third is the board. The thick square and circle in picture two are the outlines of the (partially) hollowed out brick interiors. I've decided to leave one tube inside the brick to support the batteries. The comments may seem confusing but you'll get it if you see the construction pictures later.

I have also included the schematic and board files in EAGLE cad format for your convenience.

Step 3: The Program

Of course, as you might guess just shining an LED at your camera won't do the trick. Infrared remote signals consist of a number of blinks with defined lengths and intervals. But it gets even more complicated. The whole signal is modulated at 38kHz, which means that the beam is switched on and off 38 000 times per second. For this we will need a computer. More percisely, a microcomputer. I used a PIC because I'm familiar with programing one and I have a programmer for it. I already bought four 12F509 ICs for another project which I gave up on some time ago.

The following signal has been measured from an original Nikon ML-L3 remote:
2.0ms on
27.8ms off
0.5ms on
1.5ms off
0.5ms on
3.5ms off
0.5 ms on
repeated once more after a 63.0 ms pause

I got these values form

Using roughly these times I wrote a code that modulates the output at pin 5 of the PIC and drives the LED via a transistor. The supplied assembly code is meant to work with the 4MHz internal oscillator and must be modified for any other clock frequencies. The hex file is guaranteed to work only on a 12F509 chip.

This is not the place to go over programming a microcontroller and there are plenty of instructables out there for that. Just make sure that the thing works for you before you start soldering everything together, it will be hard to fix anything after. I just built the circuit on a breadboard and switched on my sister's camera's remote shutter mode.

Step 4: A Board in a Brick

On the board layout there are two pieces of copper board. The one with traces and another one acting as the negative terminal. I have double-sided copper board but single-sided will work just as well. The negative terminal should be soldered or glued to the main board at a 90° angle. (See first picture)

You will also need to run a wire from the positive terminal to the switch on the board. The positive terminal is just a piece of metal I cut from a junk disposable camera circuit. Just use something that has some springyness and can be soldered to.

For now, don't solder the switch on just yet. Otherwise you'll have difficulties getting it inside the brick like I did. This is the last time to check if everything is working and the camera fires. All that is left to do now is make it presentable and hide the hideous solderwork in a brick.

The brick needs to be hollowed out, except for one cylinder that later turned out to be half a cylinder. A simple grab-and-twist with the pliers did a pretty good job. Also two holes need to be drilled. I had a 5mm LED so I drilled a 5mm hole for the LED and a 3.5mm hole for the button. Make sure you don't drill the holes in the wrong end like I did at first. Lucky, I had another brick to spare. Sorry, no picture of the drilled brick.

Before gluing it all together, dry fit everything and apply a file where neccesary. I've had to bend the transistor completely horisontal to fit it all. Using a smaller, probably surface mounted transistor would have been better but I didn't have any at the time.

I glued the positive terminal to the brick with superglue. The batteries are too small, so I added three layers of double-sided foam-tape covered with paper to both sides. I also added a piece of plastic for easy battery replacement. Pull on the tab to pop out the cells. After adding the battery padding check again if the bottom small bricks fit. I've had to amputate most of the nubs and file or cut down some others.

Step 5: Apply Glue Here

Before you even pop off the cap of the tube, there are some things to consider before slobbering glue all over it.

The switch is a mechanical part that needs to move to function. So try not to glue it shut. I applied some glue to the edge of the LED and the ex-cylinder. This should keep the board in place.

Also, as it happens, batteries tend to deplete during use and must eventually be replaced. Keeping that in mind I didn't glue the battery cover shut.

To keep the battery cover from falling off, as I glued the other bottom plate, I slided it toward the batteries so that the cover would later be held in place by tension.

Step 6: Ta-dah. Done

When glued, insert batteries and test it again. When the camera fires, pat yourself on the back for you have saved some money ($30 in my case) and hopefully learned something in the process.

Damn, it looks good.  And it's smaller than the original remote.  Ok, so it's been pointed out that it isn't actually smaller. I now make remotes into 2x4 LEGO blocks which is somewhat smaller than this here and uses surface mounted parts.

Now you can have fun photographing yourself or making super-steady tripod shots. It should be powerful enough to trigger even from 10 meters away with some aiming.



    • Fandom Contest

      Fandom Contest
    • Classroom Science Contest

      Classroom Science Contest
    • Growing Beyond Earth Maker Contest

      Growing Beyond Earth Maker Contest

    29 Discussions


    4 years ago on Introduction

    Hi. i am new to instructables as well as in electronics. i am interested in this circuit. but unfortunately i didn't find the Pic12F509 chip locally. Also online shopping is not available here. But i have few Pic12F675 chip in my hand right now.

    Can you please help me with that? Can you kindly compile the program for pic12F675 for me? Is there anyone who can give me the hex file specially for pic12F675 of this project?

    my mail address is



    Reply 8 years ago on Introduction

    Basically if you dont know the IR code, the only way to figure out is to capture it from an original remote. For that you may need an oscilloscope. I've used some software to measure signals through my laptop's microphone input. You just need to wire an IR sensitive diode to a 3.5mm jack and plug it in the mic input. Then you should be able to capture the signal. Better check out, if anyone else has already captured the code..

    I have absolutely no experience on an arduino. It's too expensive for me. :D


    8 years ago on Introduction

    Any idea how i could use a arduino instead of the PIC and also what the ir code sequence for a sony alpha 200 is??


    Reply 9 years ago on Introduction

    Sure, any microchip shoult be usable, although some might not have an internal oscillator so it may need an extra component or two. You will probably have to change the code to use another kind of chip, though. What were you thinking of using? I can only help you with PICs, sorry.


    9 years ago on Introduction

    I'm sorry to rain on the parade, but I do want to point out a couple things. I take it you're outside the US, because the ML-L3's street price here is generally $17-20, and I've never heard of more than $25. Shipped from NYC, they are about $23. And maybe more relevant to this project, eBay knockoffs are $2-5 shipped worldwide. So while this is fun & cool, it's hardly a money-saver.

    But the real criticism I have is your size comment. In the all-important 'thickness' dimension, the ML-L3 is 1/4 inch. Your design is more than twice this thick. I think this is the dimension that you're going to notice when you try to put it into a pocket. The ML-L3 is also slightly smaller volumetrically than yours.

    4 replies

    Reply 9 years ago on Introduction

    Well, for my defense I can say that yes, I live quite far from the US, thus by the time the remote reaches my country, it costs the equivalent of $40. Also, shipping costs at least $7. So for me it did save some money. And instead of waiting two weeks, I could make it in a few evenings. Making my own was better in every way.

    The size was never an objective. Otherwise I would have used smd parts and a lithium battery.


    Reply 9 years ago on Introduction

     lets not spew negative comments. It is a good build and is good starting point for people who want to learn pic's. (like me) It was also very creative in the housing area of the project. Good board each!


    Reply 9 years ago on Introduction

    I'm hardly 'spewing negativity'. I simply feel that readers should not be under the false impression that they're going to save money or space. Drop those unnecessary comments from the write-up, and I'd be praising it for its cool-factor.


    9 years ago on Introduction

    I have done something similar with an Arduino to remote control mine but it definitively lacked that cool form factor.
    Nice idea.

    I also second the tv-be gone idea  ;)
    I will give it a try if I find enough spare time.

    It will work with any Nikon camera that would work with the original ML-L3 remote control. Amazon states, that it will work for

    D40, D40x, D60, D80 & D90. I know for a fact that it also works on the D5000.