Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ricoh THETA Z1 Overheating During USB Live Streaming #51

Open
suganuamtec opened this issue Feb 16, 2025 · 4 comments
Open

Ricoh THETA Z1 Overheating During USB Live Streaming #51

suganuamtec opened this issue Feb 16, 2025 · 4 comments
Assignees

Comments

@suganuamtec
Copy link

Environment:

  • Camera Model: Ricoh THETA Z1
  • Firmware Version: 2.10
  • Streaming Method: USB wired stream

Software Used:

  • Streaming: GStreamer
  • Camera Control: gphoto2
  • Library: thetauvc

Problem Description:

  • The Ricoh THETA Z1 heats up significantly when live streaming via USB.
  • If the temperature becomes too high, the camera shuts down automatically.
  • There is a need to monitor the internal temperature to safely close the stream before an unexpected shutdown occurs.

Question:

  • Is there a gphoto2 command that allows monitoring the camera’s or boards internal temperature?
  • If not, are there alternative ways to retrieve temperature data programmatically?

Reference:

@DaisukeHohjoh DaisukeHohjoh self-assigned this Feb 17, 2025
@DaisukeHohjoh
Copy link
Contributor

Hi @suganuamtec

We are sorry for your inconvenience.

Is there a gphoto2 command that allows monitoring the camera’s or boards internal temperature?

Unfortunately, THETA Z1 does not provide such USB-API to get internal temperature directly.

If not, are there alternative ways to retrieve temperature data programmatically?

Possible solution is getting the property 0xD006 ErrorInfo using USB-API.
https://github.com/ricohapi/theta-api-specs/blob/main/theta-usb-api/property/error_info.md

You can use gphoto2 command to get this property like this, even during USB live-streaming mode.

gphoto2 --get-config=/main/other/d006

If you get the value of 0x00100000, it means temperature warning (board). In your case, you need to stop USB live-streaming to prevent thermal shutdown at this timing. As a precaution, there is no error code about thermal warning (battery). If the battery temperature reaches to the safety threshold, Theta Z1 will thermal shutdown soon without no warning before it. I recommend to charge battery as 100% in advance, to prevent causing battery heat by USB charging.

Best regards,
Daisuke Hohjoh

@codetricity
Copy link

from Z1 firmware 3.10.2, the WebAPI documentation indicates that /osc/state will return _boardTemp and _batteryTemp.
https://github.com/ricohapi/theta-api-specs/blob/main/theta-web-api-v2.1/protocols/state.md

During live streaming with the USB, I guess there is no way to access these values?

Note that from the forum, I saw that @suganuamtec is using the Z1 in a case on a drone. The case is filled with nitrogen with no inlet and outlet. In the future, they may add some way to circulate the gas.

In the meantime, this technique may be enough:

gphoto2 --get-config=/main/other/d006

If you get the value of 0x00100000, it means temperature warning (board). In your case, you need to stop USB live-streaming to prevent thermal shutdown at this timing.

@suganuamtec
Copy link
Author

@codetricity thank you for highlighting the issue

When gphoto2 --get-config=/main/other/d006 is issued I get the following output

Image

The value I get is 24 which corresponds to 0x00011000.

Any idea what this error value corresponds to?

@DaisukeHohjoh
Copy link
Contributor

The value I get is 24 which corresponds to 0x00011000.
Any idea what this error value corresponds to?

ErrorInfo has a bitmask structure.
24 is 0x0000_0008 (8) + 0x0000_0010 (16) so that it is the following errors.

  • 0x00000008: Clock unset
  • 0x00000010: Electronic compass error

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants