Skip to main content

A Python SDK for controlling GoPro cameras, optimized for multi-camera COHN scenarios

Project description

GoPro SDK for Python

CI Documentation PyPI version Python versions License: MIT

A production-ready Python SDK for controlling GoPro cameras, specifically designed and optimized for multi-camera COHN (Camera on Home Network) scenarios.

Features

  • Multi-Camera Support: Efficient concurrent control of multiple GoPro cameras
  • Persistent COHN Configuration: Save and restore COHN settings without reconfiguration
  • Optimized Connection Management: Eliminate unnecessary connection cycles and resource waste
  • Robust State Tracking: Accurate connection state management for COHN mode
  • Production-Ready Error Handling: Comprehensive exception handling and recovery mechanisms

See Why This SDK? for detailed rationale and comparison with OpenGoPro.

Quick Start

uv add gopro-sdk-py
# Or use pip
pip install gopro-sdk-py
import asyncio
from gopro_sdk import GoProClient

async def main():
    client = GoProClient(identifier="GoPro 1234")
    await client.open_ble()
    await client.configure_cohn(ssid="your-wifi", password="password")
    await client.set_shutter(on=True)
    await client.close()

asyncio.run(main())

Documentation

📖 Full Documentation

Contributing

Contributions are welcome! Please check out our documentation for development setup and guidelines.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Support

Related Projects

Note: This SDK builds upon OpenGoPro's protocol specifications and reuses its protobuf definitions, BLE UUIDs, and command constants. We acknowledge and appreciate GoPro's excellent work in documenting and open-sourcing the camera control protocol.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gopro_sdk_py-1.0.4.tar.gz (203.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gopro_sdk_py-1.0.4-py3-none-any.whl (64.2 kB view details)

Uploaded Python 3

File details

Details for the file gopro_sdk_py-1.0.4.tar.gz.

File metadata

  • Download URL: gopro_sdk_py-1.0.4.tar.gz
  • Upload date:
  • Size: 203.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for gopro_sdk_py-1.0.4.tar.gz
Algorithm Hash digest
SHA256 665dd03919aa560a66f6af20d16d7c9495ea779f539117b15e10ea1cad1abe74
MD5 7c79fc90a137d2c6e0d9ad47a0917bf9
BLAKE2b-256 6287dc8f3c372ab78533e11670ab6b4ed8635992b3cb8b73b1d92337485654e2

See more details on using hashes here.

Provenance

The following attestation bundles were made for gopro_sdk_py-1.0.4.tar.gz:

Publisher: release.yml on sean2077/gopro-sdk-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gopro_sdk_py-1.0.4-py3-none-any.whl.

File metadata

  • Download URL: gopro_sdk_py-1.0.4-py3-none-any.whl
  • Upload date:
  • Size: 64.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for gopro_sdk_py-1.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 6900b254112d2b77b3549278dafa94b0df716061b9093da25e31f52c0a10e23c
MD5 0491762592467998d9c15cff298b6c0b
BLAKE2b-256 8e104021c2f48c1fe66326a7549cb80c08cd2a7bfd9c67a28140c9f352845b58

See more details on using hashes here.

Provenance

The following attestation bundles were made for gopro_sdk_py-1.0.4-py3-none-any.whl:

Publisher: release.yml on sean2077/gopro-sdk-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page