goprowifihack icon indicating copy to clipboard operation
goprowifihack copied to clipboard

How to get current camera status?

Open ghost opened this issue 6 years ago • 5 comments

Hi! How to get current camera status? How to get the same thing that is displayed on the status display of the camera? For example, how to get the battery status, the number of records (photos or videos) or the current video resolution settings? I control the camera without problems, but how to get current data from it?

  • GoPro Camera(s): 3+ Black
  • Firmware Version:
  • Steps to reproduce:
  • Happens every time? [Y/N]:

ghost avatar Nov 05 '18 19:11 ghost

from goprocam import GoProCamera
from goprocam import constants

gpCam = GoProCamera.GoPro(constants.auth)

gpCam.infoCamera("model_name")
print(gpCam.getStatus(constants.Hero3Status.SpotMeter))
print(gpCam.getStatus(constants.Hero3Status.TimeLapseInterval))
print(gpCam.getStatus(constants.Hero3Status.FOV))
print(gpCam.getStatus(constants.Hero3Status.Beep))
print(gpCam.getStatus(constants.Hero3Status.LED))
print(gpCam.getStatus(constants.Hero3Status.AutoOff))
print(gpCam.getStatus(constants.Hero3Status.VideoRes))
print(gpCam.getStatus(constants.Hero3Status.FPS))
print(gpCam.getStatus(constants.Hero3Status.Loop))
print(gpCam.getStatus(constants.Hero3Status.WhiteBalance))
print(gpCam.getStatus(constants.Hero3Status.IsRecording))
print(gpCam.getStatus(constants.Hero3Status.PicRes))
print(gpCam.getStatus(constants.Hero3Status.TimeRecordedMins))
print(gpCam.getStatus(constants.Hero3Status.TimeRecordedSecs))
print(gpCam.getStatus(constants.Hero3Status.Charging))
print(gpCam.getStatus(constants.Hero3Status.PicturesTaken))
print(gpCam.getStatus(constants.Hero3Status.VideoRemaining))
print(gpCam.getStatus(constants.Hero3Status.VideosTaken))

KonradIT avatar Nov 05 '18 20:11 KonradIT

Thanks for the quick response! But I do not know how to apply these commands. I apologize. I needed to more accurately describe my question. I am using ESP8266 and Arduino IDE. Commands are passed as follows: http://10.5.5.9/param1/PARAM2?t=PASSWORD&p=%OPTION How to make a request to get the data? I read this: https://github.com/KonradIT/goprowifihack/blob/master/HERO3/CameraStatus.md And I tried to create a request: http://10.5.5.9/camera/sx?t=PASSWORD&p=%01 But in response I get the code "410": command error

ghost avatar Nov 05 '18 20:11 ghost

The status URI is http://10.5.5.9/camera/sx?t=PASSWORD

Then parse the bytes.

KonradIT avatar Nov 06 '18 11:11 KonradIT

Could you ellaborate or point me to an example of how to parse the bytes in the response for the camera status for the Hero 3. I am able to get status updates for Hero 4 and later cameras, but I'm not sure for the Hero 3. Thanks.

nespotts avatar Nov 24 '18 00:11 nespotts

@nespotts sure, byte boundaries are here: https://github.com/KonradIT/goprowifihack/blob/master/HERO3/CameraStatus.md

A working code can be found here: https://github.com/KonradIT/gopro-py-api/blob/master/goprocam/GoProCamera.py#L220

Basically I pass the byte boundaries as an argument which returns the integer.

You can use my API written in Python to parse the data.

KonradIT avatar Nov 24 '18 11:11 KonradIT