Theta Connection Over USB to Windows

I wanted to share about success with connecting to a Theta camera from a Windows computer over a USB cable.

I have been working on a software driven connection to a Theta camera over USB from a Windows device. Most of the information available on this forum for the USB SDK is oriented towards Linux. In a previous post I asked about the Ricoh USB SDK, but that is for DSLR camera, not Thetas.

In the thread about USB connectivity to Thetas, there was a mention of the Windows MTP/WPD SDK for mobile devices. However, there was no detail given, and the link to Microsoft developer post did not give any actual examples. After poking around in various places I have found both example code and relatively good explanations of how the code works. The example code worked as-is to connect to a Theta device. I was able to modify the code to add simple camera control features such as triggering the shutter button to capture an image.

The example code comes from a Microsoft repository on github.

An explanation of how to add additional camera controls is given here. This is for getting the number of stored objects on the device, but the same basic code can be used for the “capture” command instead.

The MTP spec gives the details of which commands use the “without_data” or “with_data” commands, and the associated properties for each of the “SendCommand” calls. I have MTPforUSB-IFv1.1.pdf, from MTPv1_1.zip. I can’t remember where I found that.

I am using a Theta SC2 (waiting for the Z1 to be available again), Windows 10 64bit, and MS Visual Studio 2017.

I believe that it would be straightforward to build a full SDK that handles all the supported USB commands for Theta devices. I have not had enough time to put all that together yet.

3 Likes