Ricoh Theta X Setting static IP over Web API

Christopher,

Super basic question: The camera._setAccessPoint API doc says v1.10.1 or later is required for X. Are you running the latest firmware with the X?

Jesse

Hi Craig,
thank you for aour answer. I ran the request for setting the accespoint/static IP when I was connect with ricoh theta in access point mode. But in client mode the ricoh theta still has a dynamic Ip assigned by my test router that is different to the static IP I tried to set before. When running the request for “camera._listAccessPoints” I get a different response compared to the response I got in the Ap mode:

HTTP/1.1 401 Unauthorized
WWW-Authenticate: Digest realm="RICOH THETA X", qop="auth", nonce="tqgZBhYQTRa3Reb64Vtbjg==", algorithm=MD5
Content-Length: 0
Content-Type: text/html

So the command did not work properly in client mode.

Hi Jesse,
I already double checked that, I am running version 1.20.0.

regarding the camera models I currently just have ricoh theta X at my office.

client mode comparison of V, Z1, and X with static IP assignment

THETA V fw 3.70.1

THETA V Result - Static IP Assignment Works

Test 1 with THETA X

In THETA X test 1, the V and the X are using the same Rosewill router

THETA X Result #1 - Static IP Assignment Fails

failure: no route using THETA X

test 2 with THETA X using Google brand router

using different router.

  • Using API attempted to assign 192.168.86.110 as static IP

THETA X result #2 - fail

  • router assigned 192.168.86.49 (incorrect dynamic IP)

This is different from the expected behavior and different than the THETA V behavior.

replicate test with RICOH THETA Z1 with fw 2.10.3 and Google router

  • Using API attempted to assign 192.168.86.110 as static IP

Z1 Result - success

  • router assigned 192.168.86.110

router assigned IP address as expected. Behavior is the same as THETA V and different from THETA X.


conclusion

The behavior of the THETA X appears to be different from the THETA Z1 and and THETA V. The THETA V and Z1 appear to behave per the documentation.

Suggest @jcasman ask RICOH engineering if there is a way to set the static IP address of the THETA X for client mode operation

1 Like

@craig I’ll connect with you on these tests on Monday before I communicate with RICOH.

@jcasman

I performed 4 tests using three different camera models and two different routers.

The THETA V and Z1 work the same on both of the routers tested. They are assigned a static IP address per the documentation.

The THETA X works differently from the V and Z1 and is assigned a dynamic IP address with the same command that works with a static IP address on the V and Z1.

Ok, thanks for this Information. My colleague suspected that the problem may just affect ricoh theta x, but we weren´t able to test it since our ricoh theta v is currently in another country. And also thanks for connecting with the engineering team to find a solution for ricoh theta x, because we have two of them and would be happy if could use them :D.

As an interim solution, can you configure the router to assign a static IP to the THETA X using the MAC address of the THETA X?

Since my “router” is a SPOT robot there are not many options for configurating the AP settings and I am pretty sure I can´t set a static IP over that way. But I will double check tomorrow. Thanks for your suggested solution.

We want to encourage RICOH to get the X API for static IP settings to be the same as the Z1 and V. However, if a permanent solution requires a firmware modification, that solution will take time. As an interim solution, you may need to control the IP address with a network router that assigns static IP addresses to specified hardware that are identified by the MAC address.

Isn’t the SPOT robot and the THETA X connecting to a separate Wi-Fi router?

If the spot robot is connecting in client mode to an on-site router and the THETA X is connecting in client mode to an onsite router, then you should be able to set IP address based on a MAC address table on the wifi router.

On my router, the setting is:

image

image

It may be inconvenient or not possible for you to get admin access to the router at the job site.

Actually the docker service from boston dynamics we want to use with the camera requires the SPOT in AP mode. And there is sadly no configuration option for the router inside SPOT. So we will try to get a Ricoh Theta V from another department of our company during we wait for a fix or firmware adjustment from Ricoh.
Thank you again for your comprehensive help and hints.

Hi community,

we are currently facing the same issue using the 1.30.0 firmware. We currently assign static ip to the camera through the router, we just wanted to understand if there is a plan to fix the camera._set_access_point behaviour on the Ricoh Theta X.

Thank you and best regards,
Salvatore

1 Like

I don’t work for RICOH, but I have informally spoken to representatives from RICOH about this. I believe there are plans to fix this. However, I cannot provide a guarantee or timeline. I will pass on your information to RICOH.

Thank you so much @craig for the efforts, very appreciated.

Best regards,
Salvatore

1 Like

@jcasman @craig Is there any update regarding the fixing of the Ricoh Theta X API or can you give me a contact who could tell me that? Because we are currently working with a Rioh Theta V but also have some Ricoh Theta X, so we would like to plan how we can use these in the next months. But the possible usage depends on the functionality of the API. So it would be nice if we could get a roughly estimation how long it may take to update/fix the API. Do we talk about weeks, months or years?
Best regards
Chris

@ChrisFromStrabag thank you for asking your question. I’ll try and find someone at RICOH to answer your question.

@ChrisFromStrabag We sent you a DM here with some more information. Did you see it?

Yes, I saw it. Thank you very much for this information.

1 Like

Firmware 1.40.0 appears to resolve this issue.

Step 1: Set IP Address to 192.168.205 using WebAPI in AP Mode

In the first image, I set the IP address to 192.168.205.199.

The router I am using for the THETA X client mode is on the 192.168.205.255 subnet.

The THETA X must be assigned an IP address on the same subnet as your router.

Step 2: Change THETA X Into Client Mode

In the next image, I’ve set the camera is client mode.

image

image

Step 3: Verify THETA X is Assigned Static IP Address Assigned in Step 1

Step 4: Test with Client Mode API Calls

NOTE: Use Digest Authentication

I am using a Windows laptop to test the client mode commands. The Windows laptop is on the same subnet as the router and the THETA X.

device IP Address
Windows 11 laptop sending commands to THETA X: 192.168.205.116
Router Gateway 192.168.205.154
THETA X with static IP address 192.168.205.199

Alternate Tests Using curl

Test with curl. Note that the IP address is the static IP address assigned in step 1.

curl -D - --digest -u "THETAYR14010001:14010001" "http://192.168.205.199/osc/info"
HTTP/1.1 200 OK
Connection: Keep-Alive
User-Agent: Dalvik/2.1.0 (Linux; U; Android 10; RICOH THETA X Build/QKQ1.210402.001)
X-Content-Type-Options: nosniff
Content-Length: 433
Content-Type: application/json; charset=utf-8

{"api":["/osc/info","/osc/state","/osc/checkForUpdates","/osc/commands/execute","/osc/commands/status"],"apiLevel":[2],"_bluetoothMacAddress":"58:38:79:46:F8:ED","endpoints":{"httpPort":80,"httpUpdatesPort":80},"firmwareVersion":"1.40.0","gps":true,"gyro":true,"manufacturer":"Ricoh Company, Ltd.","model":"RICOH THETA X","serialNumber":"14010001","supportUrl":"https://theta360.com/en/support/","uptime":5687,"_wlanMacAddress":" -"}

POST Example

curl -D - --digest -u "THETAYR14010001:14010001" -X POST "http://192.168.205.199/osc/state"
HTTP/1.1 200 OK
Connection: Keep-Alive
User-Agent: Dalvik/2.1.0 (Linux; U; Android 10; RICOH THETA X Build/QKQ1.210402.001)
X-Content-Type-Options: nosniff
Content-Length: 533
Content-Type: application/json; charset=utf-8

{"fingerprint":"FIG_0739","state":{"_apiVersion":2,"_batteryInsert":true,"batteryLevel":1.0,"_batteryState":"charged","_cameraError":[],"_captureStatus":"idle","_capturedPictures":0,"_currentMicrophone":"Internal","_currentStorage":"IN","_function":"normal","_latestFileUrl":"http://192.168.1.1/files/104RICOH/R0030040.JPG","_mySettingChanged":false,"_pluginRunning":false,"_pluginWebServer":false,"_recordableTime":3480,"_recordedTime":0,"_storageID":"412176649172527ab3d5edabb50a7d69","storageUri":"http://192.168.205.199/files/"}}
1 Like