TL;DR: Using gphoto2 with PTP/IP seems to give us a full control of Ricoh THETA without proprietary softwares nor hardwares. Ricoh THETA (and also gphoto2) are awesome.
We can connect a THETA with a PC through a USB or a Wireless LAN. Both of them use PTP, but seem to have some difference: for instance, we cannot set an exposure compensation value through a USB. Connecting through a Wireless LAN gives more control.
THETA behaves as a Wireless LAN access point. Please connect it. That's all. Now you can do anything by using gphoto2 with PTP/IP mode:
$ # Create a command alias. $ theta() { gphoto2 --port=ptpip:192.168.1.1 "--camera=PTP/IP Camera" "$@" } $ # Set date/time in localtime. $ # Because My THETA is a Japanese version, add JST+09 == +32400 sec. $ theta --set-config datetime=$(($(date +%s) + 32400)) $ # Set an exposure compensation to -0.3EV. $ theta --set-config exposurecompensation=7 $ # Take a picture. $ theta --trigger-capture $ # Retrieve all files (I recommended to do this with USB connection $ # because of slowness). $ theta --get-all-files $ ...
The pictures can be seen by the viewers that support equirectangular projected images.
THETA has a compass and an accelerometer. The 3-DoF orientation data are stored in the EXIF, whose format has been reverse-engineered by @xanxys_.
/main/settings/datetime /main/status/serialnumber /main/status/manufacturer /main/status/cameramodel /main/status/deviceversion /main/status/vendorextension /main/status/batterylevel /main/capturesettings/exposurecompensation 0 -> +2.0EV 1 -> +1.7EV 2 -> +1.3EV 3 -> +1.0EV 4 -> +0.7EV 5 -> +0.3EV 6 -> 0.0EV 7 -> -0.3EV 8 -> -0.7EV 9 -> -1.0EV 10 -> -1.3EV 11 -> -1.7EV 12 -> -2.0EV /main/other/5001 same as /main/status/batterylevel /main/other/5010 same as /main/capturesettings/exposurecompensation /main/other/5011 same as /main/settings/datetime /main/other/502c volume /main/other/d006 ?? type: text /main/other/d801 ?? type: text /main/other/d802 ?? (seems not to affect images) /main/other/d803 time to sleep, in seconds /main/other/d805 Wi-Fi SSID /main/other/d806 Wi-Fi password /main/other/d807 Wi-Fi channel