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.3.tar.gz (203.2 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.3-py3-none-any.whl (61.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: gopro_sdk_py-1.0.3.tar.gz
  • Upload date:
  • Size: 203.2 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.3.tar.gz
Algorithm Hash digest
SHA256 82e4f8920fee71572d1466ebfc535e12281dcfe4b87a63ea32963e5d629fa7fd
MD5 c0648f4729f418138c73e0a6bd6b5c4f
BLAKE2b-256 35f01e6eb4e36bb42d7cac8e6650b31fc599c08c19a6526a5dc9c1e4c22c08b7

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: gopro_sdk_py-1.0.3-py3-none-any.whl
  • Upload date:
  • Size: 61.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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 6c45df82caed6c54589dba14d10b4f80b631fa59fb9da183fd32687e161a27f6
MD5 61a581b4a12f4866702fa4ec351a116d
BLAKE2b-256 8fb51e805ee9602cab31eea081684d1b7f2f242b535c5a2aaf0efafad6f74de6

See more details on using hashes here.

Provenance

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