RICOH THETA V and Z1 require following steps to start using Bluetooth API.
RICOH THETA X does not require these steps.
- Bluetooth authentication
- Acquire and set shooting properties
- Shoot a still image
- Check for file saving
- Wake camera up from sleep
Below, the Bluetooth device is called Central device, RICOH THETA is called Peripheral device.
RICOH THETA authenticates a central device via Web API and Bluetooth API. The camera does not use pairing.
Register the central device UUID to camera from Web API command camera._setBluetoothDevice, and turn the Bluetooth module ON with option _bluetoothPower.
POST /osc/commands/execute
{
"name": "camera._setBluetoothDevice",
"parameters": {
"uuid": "01234567-89ab-cdef-0123-456789abcdef"
}
}
{
"name": "camera._setBluetoothDevice",
"state": "done",
"results": {
"deviceName": "00101234"
}
}
POST /osc/commands/execute
{
"name": "camera.setOptions",
"parameters": {
"options": {
"_bluetoothPower": "ON"
}
}
}
{
"name": "camera.setOptions",
"state": "done"
}
Search RICOH THETA V/Z1 with the deviceName, which should be equal to the serial number, obtained during registration. Once RICOH THETA V/Z1 is found, set the central device UUID using Bluetooth API Auth Bluetooth Device to establish authenticate.
Service: "0F291746-0C80-4726-87A7-3C501FD3B4B6" (Bluetooth Control Command)
Characteristic: "EBAFB2F0-0E0F-40A2-A84F-E2F098DC13C3" (Auth Bluetooth Device)
Property: Write
Value: "01234567-89ab-cdef-0123-456789abcdef"
Acquire the shooting properties.
The following shows an example of acquiring the ISO sensitivity (ISO.)
Service: "1D0F3602-8DFB-4340-9045-513040DAD991" (Shooting Control Command)
Characteristic: "ABB94D51-189F-455B-951D-ABE9B0333080" (ISO)
Property: Read
0x4001
Set the shooting properties.
The following shows an example of setting ISO sensitivity to 400.
Service: "1D0F3602-8DFB-4340-9045-513040DAD991" (Shooting Control Command)
Characteristic: "ABB94D51-189F-455B-951D-ABE9B0333080" (ISO)
Property: Write
Value: 0x9001
Operate the shutter. The command used depends on whether still images are shot by single shooting or continuous shooting.
Set File Format and Capture Mode at first, and shoot a single still image by command Take Picture or shoot images or video continuously by command Continuous Shooting. The example for single still image shooting is as follows.
Service: "1D0F3602-8DFB-4340-9045-513040DAD991" (Shooting Control Command)
Characteristic: "E8F0EDD1-6C0F-494A-95C3-3244AE0B9A01" (File Format)
Property: Write
Value: 0x00
Service: "1D0F3602-8DFB-4340-9045-513040DAD991" (Shooting Control Command)
Characteristic: "78009238-AC3D-4370-9B6F-C9CE2F4E3CA8" (Capture Mode)
Property: Write
Value: 0x00
Service: "1D0F3602-8DFB-4340-9045-513040DAD991" (Shooting Control Command)
Characteristic: "FEC1805C-8905-4477-B862-BA5E447528A5" (Take Picture)
Property: Write
Value: 0x01
The shooting status notification tells us completion of file save: Take Picture for single still image or Continuous Shooting for continuous shooting. The notification does not depend on the type of API. For example, the shooting status notification will be changed by shutter button of the camera.
Service: "1D0F3602-8DFB-4340-9045-513040DAD991" (Shooting Control Command)
Characteristic: "FEC1805C-8905-4477-B862-BA5E447528A5" (Take Picture)
Property: Notify
Value: 0x00
Some services become disabled when the camera goes to sleep. In that case, wake the camera up by Camera Power and start from 1. Bluetooth authentication again.
Service: "8AF982B1-F1FF-4D49-83F0-A56DB4C431A7" (Camera Status Command)
Characteristic: "B58CE84C-0666-4DE9-BEC8-2D27B27B3211" (Camera Power)
Property: Write
Value: 0x01