--- this is a upgraded and better version of my first tutorial called "wireless tethered shooting with any DSLR camera V2. This tutorial is NOT compatible with the version 1.0 of the TP-Link MR-3040! You need version 2.0 or above to follow this tutorial. If you have version 1.0 then you should follow the version 2 of this tutorial that can be found HERE ---

Newer DSLR Cameras allow you to shoot tethered wirelessly over your wifi lan. Unfortunately most cameras don't support this tecnology. BUT! There is a solution! You can make use of cheap credit card sized, wifi routers to build your own system for less than 50$! First of all, a special thanks goes to Michael, the programmer of "VirtualHere". He made special changes to his software to make this project possible. Ok guys, here it comes.. its just to have my butt backed up.. :) Disclaimer: While following precisely every step should be quite easy and nothing should go wrong, there still is the possibility that something doesnt work out... (for example, router battery dies on you while you are flashing the firmware). In any case, the router is recoverable via advanced techniques that will not be discussed here. If those techniques are too complicated for you then you most likely bricked and lost your router. In any case I am not responsible for any kind of damage caused to things or persons by this project.

Step 1: Description, What You Need...

This project aims to give wireless compatibility to any camera. The project is easy to follow and requires about 10 minutes to complete. Just pay attentio to the version of your hardware (version 1.0 or 2.x) as only 2.x is compatible! This new version of this project allows you to use the 3-position switch on the side of the router to decide if you want your system set up as a Access point, if you want it to join a network or if you want to update the entwork settings and flash a new firmware via USB stick. It may sound complicated but its really easy and everything will be explained in this tutorial!

Here is the list of what you need:

- ANY DSLR Camera (or normal camera) that supports tethered shooting via USB cable (basically every DSLR camera around will do it)

- TP-Link MR3040 (MUST be version 2.0 or above is better) costs around 50$

- lan cable for initial setup (one is included in the MR3040)

- A PC that will be your "client" for showing the pictures

Step 2: Setting Up the PC

There is not much to do on the PC!

All you have to do is download the VirtualHere client from this page: https://www.virtualhere.com/usb_client_software

Download the client that works best for your system!

Step 3: Changing From the Original Firmware to the OpenWRT Firmware

When you get your router you have to replace the firmware with OpenWRT. If you already have a Openwrt build on your router from previous projects then you can skip to the end of this step.

First we need to flash it with a special firmware that is sort of a intermediate firmware. It is used to bypass the TP-Link firmware check. So all we have to do is download the file and flash it! here we go:


Notice the ending "factory.bin". This means that this image is meant to be flashed as long as you still are on the original firmware. Now, after downloading disable your wifi adapter to avoid IP conflicts, and connect your TP-Link MR3040 router to your PC via the lan cable that came with it. Open the browser and go to the page and login using the default username and password (admin/admin). Now go to the firmware update page (see image), hit "browse" and select the firmware you just downloaded and flash it!

after about a minute the flashing process is finished and you can access your router at the address (note that the IP address changed!)

Step 4: Installing the Custom Firmware

First of all, put the 3-pos switch to the "AP" position.

Next, download the custom firmware from here:


Now in the top menu of your router's interface click on "system" and go to the backup and restore page. From there you can flash the new firmware.

ATTENTION: you must uncheck the "preserve settings" check, else the flashing process will not overwrite the system settings with the new ones stored in the image. The new image does not have a user interface so once flashed it is not so easy to restore. Currently your wifi acts as an access point called "wifi photo" and the password to access it is "password". Your ethernet port has a fixed IP address: and if for any reason the wifi does not work, then you can access your router via ethernet cable by assigning to your network card a fixed ip address that matches the router's one. Ok,at this point you can reenable your wireless adapter on your pc! If you want to use the router as an access point then you are good to go, but i recomend to finish the reading anyway to understand what the other 2 positions on the switch do.

Step 5: The 3-Position Switch...

By now you have used the 3 position switch already. You have put it to the AP position.

AP position

This position makes the router work in Access point mode. Basically the router generates its own network, and you can connect to it with your laptop or pc as when you join a normal wifi network. As stated in the previous step the wifi network is called "wifi photo" and the password to access it is "password". If you change to AP from WISP it will require two reboots in order to take effect. just turn it on, wait 2 minutes, turn it off, and turn it on again. This is only if you change from WISP to AP.

WISP position

This position allows the router to join an existing network. before we can do so we need to set up the network credentials and name to be able to join the network. This will be described next and makes use of the third and last position. If you change to WISP from AP it will require two reboots in order to take effect. just turn it on, wait 2 minutes, turn it off, and turn it on again. This is only if you change from AP to WISP.

3G/4G position

This position is used to update the network settings and to flash a new firmware. Lets look into the two options in detail:

- Updating the network settings

Download this file and put it as it is onto a USB stick: http://www.igormasin.it/wirelessJN

Open the file with notepad (ATTENTION, do not use wordpad or word or any other rich text editor! use the simple notpad or equivalent!) and edit these entries to match your wifi settings:


option encryption 'YOUR_WIFI_ENCRYPTION_FOR_EXAMPLE_psk2'


Possible values for the "encryption" property are:

wep for WEP,

psk for WPA-PSK,

psk2 for WPA2-PSK,

Now save the file and turn OFF your router. Connect the USB stick to the router and turn the router on. Wait until the WIFI led blinks at 1 second intervals and unplug the usb. At this point the led stops flashing. Put the 3 Pos. switch in the AP or WISP position, turn the router off and back on. Wait two minutes, turn it off again and back on and your router will now use the new settings you have entered in the file.

- Flashing a new firmware

This firmware makes flashing a new software very easy. Same as above you must download the firmware you want to flash. Do NOT use this to flash the original firmware as it exceeds maximum size and will not work! Any other OpenWRT firmware will work ok. Once downloaded, put it on the USB stick and rename it to "up.bin". Turn the router OFF and connect the usb stick to the router. Turn the router on and wait for the "LAN" led to blink at 1 second intervals. at this point you must unplug the usbstick. The Lan led stops blinking and the WIFI led starts blinking. At this point you must put the 3 Position switch to the AP position. Once done the router starts writing the new firmware and will reboot on its own. DO NOT TURN THE ROUTER OFF at this point. After about 2 minutes the router will have rebooted and will be running in AP mode. The Flashing overwrites every network settings you previously wrote onto the router so you will have to upload them again. If you have both files (wirelessJN and up.bin) on your USB stick the sistem will only take wirelessJN into account.

Step 6: How to Use It

Its really easy to use! Just turn the router on, hook up your camera and start the virtualhere client on your pc!

Virtualhere will automatically detect the router within seconds. if it doesnt, then you need to add the IP address manually! Right click in virtual here and hit "add address". If you are in AP mode then the address to add is "", if you are in Join Network mode then you must look for the proper IP address in your main router's connected devices list.

When your router and camera get detected, right click on the device and hit "use device". the first time it will install the drivers.

Now it is as if your camera was connected directly to your PC and you can use it with your favorite software!


<p>Thank you for this tutorial.</p><p>I tried to use two TP-Link MR3040s with each connected to a dedicated PC so to do a multiple camera tethered shoot.</p><p>The modems have the same wifi name and password resulting in the laptops occasionally connecting to the wrong modem/camera.</p><p>Can I rename the TP-Link MR3040 from &quot;wifi photo&quot; to a unique name?</p><p>Can I also change the password?</p><p>I am a novice in computing. I installed putty but dont know where to start. I would appreciate any leads.</p><p>Thanks.</p>
<p>It's bit daunting if you're not used to command line stuff, but follow what I've put below and you should be ok.</p><p>Download and install PuTTY to get into it using an ethernet cable. Use the IP address that the router has when you're connected to it wirelessly. In my case it was So open PuTTY and enter that IP address, don't worry about anything else, leave it all as is. You might get a message about some certificate or something, but click yes and it'll load into busybox on the router.</p><p>I used root and password to log in, but might work left blank.</p><p>Navigate to /usr/bin/ using 'cd /usr/bin/'</p><p>Type 'vi wirelessAP' to edit the wireless config file.</p><p>Change SSID and password fields using arrow keys and typing your desired settings.</p><p>Once you're done, press escape and type ':w' to save and ':q!' to quit. press up so 'vi wirelessAP' comes up again and press return to make sure the edit worked. If the changes stayed in place, reboot the router, you're done.</p>
<p>Hey man :)</p><p>I have read your tutorial, and it is awesome! Thank you very much!!! I have flashed openwrt on my MR3040 (i have v2.1), but I need that wifi usb hub feature from your tutorial, and all your download links are dead :'( can you please send me your custom firmware on mail, or reupload files on dropbox (or something)?</p><p>Many thanks in advance</p><p>Negovan</p>
<p>Hello, updated the links in this tutorial.. best regards</p>
<p>Thanks a ton. You're a lifesaver</p>
Thanks man!!!<br><br>You are the best!!!
<p>Is there any chance to update the virtualhere server?</p>
<p>Every is working just fine!!! Macbook pro is recognising my 5d3 like regular usb device. AWESOME!!! Thank you man!!!</p>
<p>Hello,</p><p>I've got the DD-WRT on mine for dslrdashboard, but this would be massively more useful!</p><p>I'm<br> running into bother though, if I transfer the new firmware (with the <br>mid firmware transfered and confirmed working in between), I'm not <br>able to get into the router setup page via wifi or ethernet. PC connects<br> to wifi, ipconfig gives an address of for it but I can't <br>get into it. doesn't work either. Any ideas?</p><p>Fortunately, 3g/recovery switch position is working so I can roll back to the dslrcontroller firmware and get back into it. Odd.</p>
<p>HI, this is amazing! I've got it to work over my home wi-fi. I can now take photos all around the house and when I return to my computer they are already saved in a folder. I now plan to use this for photography work too.</p><p>One question. Is it possible to change the default IP address of the TP-Link MR3040 from to something else? If so, how?</p>
<p>What did you do to get yours on your network? I have issues as described by others. Please let me know.</p>
<p>Hi, I'm afraid I can't exactly remember how I did it. From memory, I followed the instructions and had to make a manual change to my router's IP address too.</p><p>I have to admit I've stopped using this wifi connection method now as I found it too unreliable and a pain to reconnect each time the signal was dropped.</p><p>Connecting to a new network when out and about was too fiddly and slow (which was one of the reasons I gave this a go), so this contributed towards no longer using this method.</p><p>Finally, I found carrying the router around whilst connected to my camera a pain too - not the extra weight, that was fine, but the bulk and cable coming out of the side kept getting in the way when hand holding the camera.</p><p>Good luck!</p>
<p>P.S. Thank you for the instructions :)</p>
<p>I want to use more than one USB device, how do I purchase a license to be able to do that given your mods. I have the MR3040 working with one USB share but need two. Also having issues getting on my wireless network. Tried your suggestions with htmod however nothing happen there.</p>
<p>I went through the steps and had it working until I tried the part -Updating the Network settings and after restarting the router only has the power light on no other lights come on. Is there a way to recover this or is it bricked?</p>
<p>the first option works like a charm :D</p><p>but I'm not able to connect it to my home's network ! could you please give us more details, like what is the extension of the settings file should be? .txt? i tried but it did not work, the LED did not blink.. <br>My home's network name is two words, should I put _ instead of the space ?!</p><p><br>your help is appreciated</p>
<p>Having a problem getting it to connect to my existing wifi network in WISP mode. Anyone have luck with that yet? Any tips?</p>
<p>I also have problems connecting it to another TP-Link router... I tried to receive help on the Official OpenWRT Forums without success... On the other hand I really love it how it works directly, so I am not giving up yet! I will write a direct message to the author of this post, maybe he will be able to help us!</p>
<p>Hello,</p><p>will this Version also work on a TP-Link TL-MR3020?</p><p>Best Regards</p><p>Andreas</p>
<p>Thanks for the tutorial. I tried to use your firmware with WISP-Mode but the MR-3040 doesnt connect to my WiFi. I tried others WiFis and the MR-3040 didnt connect to any of them. Therefore it must be caused by your firmware. I changed the WLAN-Settings through ssh ($ vi /usr/bin/wirelessJN) accordingly to your instructions and rebooted twice. I also tried your usb-storage approach with the 3G/4G position.</p><p>My wirelessJN looks like this:</p><p>---------------------------------<br>config wifi-device 'radio0'<br> option type 'mac80211'<br> option hwmode '11g'<br> option path 'platform/ar933x_wmac'<br> option htmode 'HT40-'<br> option txpower '30'<br> option country 'US'<br> option disabled '0'<br> option channel '1'<br><br>config wifi-iface<br> option network 'wwan'<br> option ssid 'o2-WLAN85'<br> option encryption 'psk2'<br> option device 'radio0'<br> option mode 'sta'<br> option key 'XXXXXXXXXXXX'</p><p>---------------------------------</p><p>Can you go into detail on how you build the image, so I can do it by myself. I'm familiar with the openwrt buildroot process. I also followed you thread at <a href="https://www.virtualhere.com/node/531" rel="nofollow"> https://www.virtualhere.com/node/531 </a> but you didnt post anything there.</p>
Hello! Sorry for the late reply! Try to play eith the htmode setting. Let me know if that makes a difference. I did not change anything from the original openwrt. I only added my scripts that replace the files taking them from the usb stick. Its the same as editing it manually.
<p>Hi, </p><p>I can access camera, import photos, but tethering is not working. Any Ideas?<br>I use canon 7D.<br>Thank in advance for help:)</p>
<p>Thanks for sharing this. It is great.</p><p>I would like to have Internet access at the same time that the camera is connected. I am using it as part of a social media photo booth system that sends the picture over internet at the same time as they are being downloaded.'</p><p>When I set the router under WISP mode I don't see the &quot;wifi photo&quot; SSID. What is the SSID I should connect the PC to?</p><p>Thank you!</p>
Hello! Sorry for the late reply! When the system is connected to your home router you have to connect to the same router. So they will be part of the same network..
<p>So I bought a second small tp-link adapter for internet connection but Windows 8.1 attempts to use internet through wifiphoto and doesn't allow me to connect otherwise. Any thoughts? Windows 8.1 does identifies both of them.</p>
There is a way to define what interface to use to access internet but i cannot remeber where to find it.. Try having a look in the IE settings.. :)
<p>I just read this after reading Version 2. I'm curious - why is the firmware download for the router from your website instead of the OpenWRT website? Have you made changes to their firmware? </p>
Yes i have added the needed scripts and programs for this to work... :)
<p>This works great. Installed the AP mode according to your V2 write up but then re-imaged and did the new version V3. Cool. Great write up!<br>Only one question; is there a way to change the default password?</p>
<p>thanks! :) Yes you can change the default password by going either via putty or via winsftp into the &quot;/usr/bin&quot; folder and editing the file called &quot;wirelessAP&quot;. after 2 reboots it should work with the new password! :)</p>

About This Instructable




More by sharkyenergy:Wireless Tethered Shooting With Any DSLR Camera V3! Wireless tethered shooting with any DSLR camera V2! Wireless tethered shooting with any DSLR camera 
Add instructable to: