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.1.tar.gz (202.3 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.1-py3-none-any.whl (60.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: gopro_sdk_py-1.0.1.tar.gz
  • Upload date:
  • Size: 202.3 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.1.tar.gz
Algorithm Hash digest
SHA256 d7f6b76bbd530e1f6def4f42be89a17d7d51a9d8c5025e64f92fefdcf759fa0f
MD5 941dcd6bd4789967b6a3435f23cff10c
BLAKE2b-256 2a6bd51dbc2553b0b02ed0fa6d55c9962198d9e9f9b4b1f8a88df80b6a86cd53

See more details on using hashes here.

Provenance

The following attestation bundles were made for gopro_sdk_py-1.0.1.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.1-py3-none-any.whl.

File metadata

  • Download URL: gopro_sdk_py-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 60.3 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 50f8f5924fa94aa4bc1e8d71b2295593b0ea008356a132e70f012033b720a9ab
MD5 82a82f53119864d9f9d7c000731360e2
BLAKE2b-256 d322b9f29b9208015add62b7e3b16f6675e42d2b80bfbfc26c31baeb0ff9ad67

See more details on using hashes here.

Provenance

The following attestation bundles were made for gopro_sdk_py-1.0.1-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