Building a 3D Photography Rig [Instructional]

Like most photographers, I am very well acquainted with Gear Acquisition Syndrome, otherwise known as “gear lust”. It’s the desire to replace my perfectly functional cameras and lenses with the latest and greatest tech. Or even worse, the need to collect new gear instead of replacing my current gear, including buying novelty or specialized techology. GAS is made even worse by frequenting photography forums like PhotoMarket, where users buy and sell all manner of camera bodies, lenses, and accessories. One camera that gets listed there every so often is the Nishika N8000. The N8000 is a four-lens film camera whose developed shots can be combined to create GIFs like this:

The effect that the camera creates always interested me, as the novelty would be great for parties and celebrations, and it’s an interesting way to create depth in photography that you can’t really get with normal stills. But the ~$200 price tag attached to the camera was something that I couldn’t justify. So I set out to recreate the effect with gear I already had or could borrow from friends.




The Controller

The basic idea was to have four cameras lined up in an arc to replicate the four lenses of the N8000. To add an extra challenge, however, the cameras all needed to fire at the same time for the effect to be complete.

I explored several ways to fire multiple cameras while researching for this project. My first thought was to tether all four cameras to my laptop via USB and use software like digiCamControl to fire them simultaneously. Unfortunately, due to hardware limitations, there would be latency of anywhere from 100-400ms introduced between each camera firing. While a lag like that would only amount to about one to two seconds of latency between camera one and camera four, it would still ruin any shot with significant movement or action by causing cameras #1 and #4 to capture different shots.

Back to the drawing board then. If a digital shutter trigger was going to cause delays between shots then I needed to go analogue. Fortunately most Canon DSLRs these days have a remote shutter port – which allows me to fire the camera using a remote control like this.

I ordered one from Amazon and cracked it open. Much to my surprise, the internals of the shutter release seemed quite simple. My suspicion was confirmed over at, who have stripped down remote shutter controls for every major camera brand.

As their diagram shows, both the shutter and focus on the camera are controlled by a simple 3-pole 2.5mm jack. For my purposes, all I needed to consider was the shutter release, as the cameras would take different lengths of time to focus and cause an asynchronous capture.

Now that I know how the trigger works, it’s time to expand it to work with multiple cameras. My first attempt was very rudimentary, simply splicing the original cable with another one and triggering them together. This worked, but not as effectively as I would have wanted:

With a proof of concept completed I wanted to expand it to four cameras. This is where I ran into my second big problem. While wiring just two trigger cables together works decently, soldering a board with four cables gave me issues in both latency and circuit completion. There were several revisions but I ended up scrapping them for a new design that is more versatile and safer. Enter the Arduino Nano.


The Arduino

The Nano is a microprocessor that allows me to run programs to send signals to the Nano’s various digital output pins. Using the Nano I followed the same basic principle from my first version: run a signal to four outputs that will trigger my cameras.

For those interested, my final schematic is here.

void setup() {
    // put your setup code here, to run once:
    pinMode(12, OUTPUT);
    pinMode(7, INPUT_PULLUP);

void loop() {
    // put your main code here, to run repeatedly:
    if ( digitalRead(7) == LOW) {
        digitalWrite(12, HIGH); // sets the digital pin 12 on
        digitalWrite(12, LOW);
        delay(100); // sets the digital pin 12 off
    } else {
        digitalWrite(12, LOW);

This is the final version of my multi-camera trigger. The Arduino is running the above program which monitors to pin 7, connected to the button. When the button is pushed, a high signal is sent to pin 12. That signal is then sent down the four optocouplers wired in series and passed to the four 3.5mm jacks on the right side.

Using four 3.5mm cables and four 2.5mm to 3.5mm adapters, I can connect the cameras to the Arduino, powered externally by a battery pack through the mini-USB port on the board.


The Base

Now with the controller taken care of, I needed to build a base for the cameras to rest on.

Using three layers of foam poster board I cut out and glued the main structure together:

I drew an arc on the board and used removable velcro strips to create mounts for the cameras.

Once that was done, I used some more foam board to create mounts on the bottom for the light stands and a small box to hold the trigger and battery pack.

It’s not pretty but it works!!



With all the pieces necessary, I was able to assemble the final product:

First Use

Now to test it! While there will be more examples added to this blog in the future, and to our Instagram account, I quickly put together an example to show all of you.

To edit the photos together properly, I added the files into a Photoshop project and layered them so that the hat was in the same position and at the same scale. Then I used this tutorial from HubSpot to export the GIF.


Other Uses

Having an Arduino control the logic also let’s me change how the project works! In a couple of minutes I can import some new code and turn my multi-trigger into a time-lapse controller and create videos like the one below.

That’s It!!

Using ~$50 of supplies and borrowing a few cameras from friends I was able to replicate a novelty camera effect instead of purchasing yet another camera for my collection.

If you liked this project and would like to see more, please consider subscribing to our newsletter!

Faster Lightroom Editing Using the X-Touch Mini

Adobe Lightroom is one of the most, if not the most, popular photo editing software in the world. 

But editing photos in Lightroom can be tedious, especially when you have large quantities of photos to get through. 

Using Lightroom’s sliders to edit each picture individually takes time and can feel repetitive, and can even strain your hand unnecessarily. Especially in projects like this previous one, where I am editing similar pictures together to create GIFs.

So today I want to look at a way to reduce that strain, speed up editing time, and simplify the process overall. 

I’ll be using a popular MIDI board, the Behringer X-Touch Mini, and the free software MIDI2LR, to create a simpler, more time effective way to edit my photos.


This project requires a MIDI board, I recommend the X-Touch, as it will make following this tutorial very easy. 

The MIDI Board:

So what is a MIDI board? 

MIDI boards are controller boards usually used for musical applications. 

Many come attached to keyboards like the one below. 

But there are MIDI boards available that come solely with command buttons, and are used by musicians, DJs, Twitch streamers, video editors, and many other types of creators. 

MIDI boards are used to send commands over USB to a computer, often to audio or video software. 

Most have an onboard chip and can be programmed to function unattached to a computer. 

Many DJs or musicians use them to execute audio effects or play certain music. Great examples of how they can be used for this purpose can be seen here.

But for our purposes, the MIDI board will be used to send commands to Lightroom. 

The X-Touch MIDI board has eight digital dials,which can be turned or pressed, 16 function buttons, and two layer buttons.


The layer buttons allows for A and B layers.

Changing the layer changes the commands used by the 32 functions, expanding the total programmable buttons to a whopping 64. 

Unfortunately, Lightroom does not come with MIDI support built-in, so there needs to be a way to bridge the gap between the board and Lightroom.


MIDI2LR is middle-man software that connects to Lightroom. It reads commands from the MIDI board and sends them into Lightroom. 

The interface of MIDI2LR is fairly simple.

We can save or load configurations for the board using the buttons at the top. 

The meat of MIDI2LR is in the configuration located in the middle of the window. 

The left side denotes the button of the board, and the right is the command to be sent into Lightroom. 

Clicking on the command button will load all of the available Lightroom’s functions we can use – and it’s almost every single one.

Setting up MIDI2LR for basic editing:

After installing MIDI2LR and plugging in the MIDI controller, a basic editing profile can be set up. 

The top eight dials will be programmed to control Lightroom’s basic slider operations such as temperature, tint, and exposure.

 All you need to do is open MIDI2LR and Lightroom, making sure that MIDI2LR says “Connected to LR” at the top:

MIDI2LR Connected to LR check

Then, simply turn dial 1 on the board and the MIDI command will appear in MIDI2LR. 

From there, select “Temperature” under the “Basic” section in the command selection menu. 

 MIDI2LR Menus

Do the same for the other seven dials. Use those steps to configure the eight dials to the following: 

MIDI Command
LR Command
CC: 0
CC: 1
CC: 2
CC: 3
CC: 4
CC: 5
CC: 6
CC: 7

Now that the basic dials are all set, buttons should be programmed to reset the sliders to zero. 

Luckily the X-Touch MIDI board allows for each dial to be pushed down as well. 

So those will be set the same way, by pushing the dials and selecting the effect.

MIDI Command
LR Command
Note: 0
Reset Temperature
Note: 1
Reset Tint
Note: 2
Reset Exposure
Note: 3
Reset Contrast
Note: 4
Reset Highlights
Note: 5
Reset Shadows
Note: 6
Reset Whites
Note: 7
Reset Blacks

Moving back into Lightroom and selecting a picture, the dials can now be used to change the image effect slider values. 

And because the X-Touch uses electronic dials, moving to another image will reset the dials to start from zero!

Setting up MIDI2LR with my basic corrections in mind:

Here is an example of a basic Lightroom editing process:

  1. Import the images
  2. Head to “Develop”
  3. Cull the images I do not want by marking them as unselected
  4. Select all
  5. Apply auto adjustments
  6. Apply lens corrections
  7. Deselect all
  8. Refine adjustments individually
  9. Select all
  10. Export

Doing this by hand would require extensive use of the keyboard and mouse. 

But by programming buttons on the X-Touch, the entire editing process can be completed without leaving the MIDI board. 

The bottom 16 function buttons will be used to complete this workflow. The first four are going to be set as such:

MIDI Command
LR Command
Note: 8
Switch to Develop
Note: 9
Previous Photo
Note: 10
Next Photo
Note: 11
Mark as Rejected

The first button opens Develop, the next two navigate between photos in the carousel, and the fourth sets a given image as rejected. 

This covers the first three steps of the workflow after importing. 

The entire library can be navigated and images can be rejected until the only images remaining are ones that will be exported after editing is completed. 

The next commands, select-all and deselect-all,  add a layer of depth, but are still fairly simple to set up. Head into the plug-in settings for MIDI2LR inside of Lightroom. 

MIDI2LR Keybinding Menu

Here, key commands can be added. The command to select all is CTRL+A (CMD+A in OSX) and deselect all is CTRL+D (CMD+D in OSX). 

All that’s needed to add these as key commands is to select the CTRL checkbox and type “a” or “d” in the input box, respectively. 

Then add these key commands to the X-Touch the same way as any other command. 

Key commands are located in “Keyboard Shortcuts for Users” 

MIDI2LR Shortcuts Menu

To finish off this part of the workflow, the next button will be set to auto-tone, to get a baseline for finer adjustments later in the process. 

MIDI Command
LR Command
Note: 12
Select All (Key Command 1)
Note: 13
Deselect All (Key Command 2)
Note: 14
Auto Tone

At this point in the workflow, fine adjustments are made to each image using the eightdials that were set-up earlier. 

Once this is completed, lens adjustments are added to correct for distortion. This will be mapped to the eighth button below the dials.

MIDI Command
LR Command
Note: 15
Enable Lens Corrections

Finally, with all of the images edited and ready delivery, export needs to be mapped. This will be another key command. 

In Plugin-Extras -> MIDI2LR options, map the export command by checking the boxes for CTRL and SHIFT, and then type “e” in the input box.

Further Uses:

There is almost no end to what can be accomplished in Lightroom using MIDI2LR and the X-Touch. 

But below are some extended functions that may be useful for everyday photo-editing projects.

Applying Presets:

Preset application is also available as MIDI2LR commands. The process to apply user presets is very similar to what is outlined above. 

Instead of using the MIDI2LR settings menu in Lightroom, the “Develop Presets” menu will be used. 

Enter the menu under “Plugin Extras” -> “MIDI2LR” -> “Develop Presets.” 

The menu is divided into tabs for the number associated with the developed preset (Tab 1 represents user developed preset 1 through 4). 

In the first box on the left of the interface, select the preset to be used. 

Select “Okay” and head back to MIDI2LR. Then set a new function button the same way as above. 

MIDI Command
LR Command
Note: 16

Heading back into Lightroom, pressing the newly mapped function button will apply the selected preset!


With two available layers, there are still eight dials that have not been accounted for. 

These can be mapped to any function in Lightroom, but more commonly used sliders such as those available in the detail panel may be ideal. 

This can be done using the same process, with one adaptation. 

Before mapping the function button, change the layer used on the X-Touch from A to B. 

Then turn the dial and map Luminance Smoothing and press the dial and map Reset Luminance Smoothing.

MIDI Command
LR Command
CC: 11
Luminance Smoothing
Note: 24
Reset Luminance Smoothing

The same can be done for Sharpening, Detail, Masking, etc. 


Vignetting is another commonly used (if not overused) function in Lightroom. Again, just take an unused dial, map it in MIDI2LR, and get to work!

MIDI Command
LR Command
CC: 12
Post Crop Vignette Amount
Note: 25
Reset Post Crop Vignette Amount


Cropping is another function that can be manipulated using the X-Touch. 

While conventional drag-to-frame cropping is not ideal to control with dials, what can be used is the rotate-crop function that allows for straightening images.

MIDI Command
LR Command
CC: 13
Straighten Angle
Note: 26
Reset Crop

And that’s it!

MIDI boards come in affordable options, especially the X-Touch. 

Picking one up on Amazon and downloading free software will open up whole new possibilities in Lightroom and streamline your photo-editing workflow. 

If you have any questions, or want to tell me about your specific setup using MIDI2LR, please comment down below! 



Best Way to Secure Your Collection

There’s no worse feeling than sitting down to edit some photos, plugging your external drive into your computer, and hearing a ticking sound like something out of Peter Pan.  That evil, evil ticking sound which means that the data reading arms in your drive have failed or are failing. 

Nothing appears in your file manager, and there seems to be no way to get to your drive. It’s gone, and it had all of your clients’ data for the last two years and all of your personal files as well.

That’s no good!

Today I’m going to go over some ways to avoid that situation, and the best ways to secure your photo (or general data) collection.



The 3-2-1 Rule

We’ll start off with the 3-2-1 rule for data storage. The rule basically says that you should have three copies of your data, in at least two different places, and one of them should be offsite.

In my opinion, the bare minimum should be two copies with one offsite. A fire, flood, or other natural disaster could destroy your property, including you storage devices. So it’s important to have another hard or cloud copy in a location that is not your home or office.

We’ll come back to this rule in a bit, but now let’s talk about your different storage options.


Physical Storage

Physical storage is going to count as any storage medium you can hold in your hands: external hard drives, internal hard drives, solid state drives, flash drives, etc. This includes the drives in your laptops!

Storage options come in a variety of different sizes, and drive capacity is growing every year. Small form factor drives (2.5inches)
come in capacities ranging from 1 Terabyte to 4 Terabytes There are also more rugged options available for the adventure photographers out there.

Larger 3.5 inch drives are going to give you massive capacity gains at the cost of form factor. One of my favorite drives is the 8 Terabyte Western Digital Easystore drive, and I’ll explain why later in this post. WD also offers a 10 Terabyte version of that drive.

If you really need to keep things compact, there are external solid state drives available in both 1 Terabyte and 2 Terabytes.

But we’ll want to follow the 3-2-1 rule, so if you want to use external drives, you need to pick up two of them, using one as a

It would become very tedious to copy files to both drives every time, but there’s a fix for that in our next storage solution!

RAID Storage

RAID, or Redundant Array of Independent Disks, is a method of data storage using multiple hard drives connected together via software. 

There are several different versions of raid storage, but for now we’ll focus on RAID 1. 

RAID 1 is direct mirroring of data. With two drives, this would mean that any data copied to the first drive would be identically copied to the second drive. This gives you an automatic, software-managed backup. 

There are several ways to accomplish RAID 1 storage. The simplest way, for those who don’t want to get too technical, would be something like this. The WD 12 TBMy Book can be changed from RAID 0 to RAID 1, giving you 6 TB of mirrored storage. 

If a drive in the My Book fails, the other drive will continue to work and maintain all of the data that would have been lost from the first drive. 

Another solution is something like the Synology DS218+.  The DS218+ does not come with drives, but you can put in two (of the same) drives of any capacity and use the built-in software to configure them in RAID 1. The advantage here comes from the ease of switching drives in and out. If one of the RAID 1 drives fails, it can be pulled out and replaced with another drive of the same capacity and the data from the surviving drive will be copied over. 

Most Synology cases can be used as Network Attached Storage, or NAS’s.. This means that while you can plug the synology directly to your computer via USB, you can also connect it to your home network and access the files externally and on any computer on the same network. This is especially useful when doing remote work, so that you can back up your photos or videos while still on the road. 

Synology also sells storage solutions with more drive bays, including the DS1819+, which allows you to insert eight hard drives. Eight hard drives get expensive though, with 8Tb Barracuda drives coming in at $185. Using the DS1819+ that puts your total at ~$2500 with eight full drive bays. 

That’s where my favorite drives come in handy – the 8Tb Western Digital – with a process called “drive shucking.”

Drive Shucking

While the 8TB WD drive comes in an external case and is accessed via USB, inside is just a regular internal hard drive. The price of the WD at the time of writing is $140. This is the sale price, the MSRP is $180, similar to the Barracuda drives. But looking at the sales history via CamelCamelCamel, we’ll see that the drive is almost always on sale! And some other retailers like BestBuy have had the drive for $129. 

Buying the drives on sale will save you several hundred dollars on your total cost, and the only work that has to be done is to remove the drive from the enclosure. 

While that may seem complicated, this particular drive is so popular for shucking that there are countless video and text guides for removing the drive. After practicing with one drive, doing another only takes about five minutes, and in doing so you save ~$40!


One other type of storage I want to talk about is UnRAID. UnRAID is standalone RAID software. It is not free, but the license costs are more than fair for what you get. 

UnRAID runs as an independent operating system off of a USB drive. This means that instead of buying a Synology unit, you can put together a Network Attached Storage unit using individual parts, load up your hard drives and plug in your UnRAID USB.

I’ll be doing a separate write-up to document building an UnRAIDsystem using cost efficient parts. 

Cloud Storage

Now I want to run through data backup solutions in the cloud. Cloud storage is the same as regular storage, it just lives on remote servers provided by the cloud storage company. This provides an affordable option to have your data backed up offsite, fulfilling part of the 3-2-1 rule. 

There are two different types of cloud storage we’ll want to look at: backup storage and active cloud storage. 

Backup storage is a cloud backup that cannot be browsed online, meaning the only purpose is to have a remote copy of your storage. 

An example of backup storage is BackBlaze. For $60 a year, Backblaze provides backups for an unlimited amount of data. Installing the software is simple, and the interface is very user-friendly. 

Here you can see that I have almost 4TB backed-up to BackBlaze. In case of a data loss, I can replace my drives and use BackBlaze’s software to restore all of my files.

The other type of cloud storage is active storage. Google provides active cloud storage in the form of Google Drive. Using GSuite for businesses, we can upload unlimited* files and they can be viewed and downloaded individually. This is ideal for remote editing and uploading, so we can backup data on the go. 

*Google says that unlimited storage is available only to businesses with five or more users, but many customers have found that they can use unlimited storage with only one user. 

Putting it All Together

So now that we’ve looked at several different ways to secure our data, let’s run through a use-case that complies with the 3-2-1 data storage rules. 

Local Storage: 

Our local storage is going to be the DS1819+ in RAID 1 using the Western Digital 8Tb Easystore drives removed from their enclosures. This provides us with 32TB of usable storage with an identical 32TB backup. 

Remote Storage: 

Our remote storage is going to be the exact same setup but at a remote location, such as with  friend or family member, or at a work office. When properly connected to the remote network, we can copy the data from our local storage to our remote storage for a safe backup. 

Cloud Storage:

Finally we’ll use BackBlaze to provide another remote backup for redundancy. This will take some time to fully back up our data if the collection is large, but it is fully worth the peace of mind to have another secure backup in case of emergency. 

Final Thoughts:

A severe data loss can be catastrophic. Besides the potential to lose all of your personal documents, you could also lose hundreds or thousands of dollars of your customers’ work. Investing the money now in a comprehensive data backup solution could save you heartache and business in the future. 

“You don’t own any data that is not backed up, you are simply renting it from fate.”