One important piece of the controller is a FTDI USB chip. This is what connects the Arduino to the host computer and makes it possible to control the stacking process. The chip is either a part of the Arduino board, or added as a separate breakout board.
It's important that it's a FTDI chip, since it has some special features that we take advantage of. Specifically, we change the chip's device description in order to make the computer accept the device as a StackShot controller.
To configure the FTDI chip we use a program called FT_Prog (only available for Windows, but will run in virtualisation software on Mac OS X).
In order to communicate with the chip, we need to install the D2XX drivers. The application also requires Microsoft .NET Framework 4 installed on your system to run, so you might also need to download that before running FT_Prog.
When you have FT_Prog up and running, you should see something like this:
Connect your Arduino (or FTDI breakout board) and do a Scan and Parse if it doesn't show up in the Device Tree. When the device has been found it should look similar to this:
Once you see your chip in the Device Tree, navigate to the "USB String Descriptors" and open it up, then select the "Product Description" section:
Your Product Description will probably contain something like "FT232R USB UART". Change this field to "StackShot" (exactly as in the above screenshot).
Once this is changed you can write back your changes by clicking the "Program Devices" icon:
Simply click the Program button, and you're done!