Skip to main content

A Python library for interfacing with the ST3215 smart servo.

Project description

Python-ST3215

wakatime PyPI Version Python Versions License Downloads Issues

Python-ST3215 is a lightweight and intuitive Python library for communicating with ST3215 Smart Servos over a serial bus. It provides a high-level interface for reading and writing servo parameters, controlling motion, and working with the servo memory map.

Features

  • Simple API for controlling ST3215 servos
  • High-level wrapper for movement and parameter access
  • Helpful exceptions for robust applications
  • Fully typed and documented through docstrings
  • Tested against Waveshare ST3215 hardware

Installation

Install via pip:

pip install python-st3215

Quick Start

from python_st3215 import ST3215, ServoNotRespondingError

controller = ST3215("/dev/ttyUSB0")

try:
    servo = controller.wrap_servo(1)
    print("Current location:", servo.sram.read_current_location())
except ServoNotRespondingError:
    print("Servo not responding")
finally:
    controller.close()

Examples

A collection of example scripts is available in the examples/ directory. These cover tasks such as motion control, serial communication tests, reading/writing parameters, and more.

Documentation

The library is fully documented through docstrings. Hover over classes and functions in your editor to see type hints, parameter descriptions, and usage notes.

Hardware Compatibility

Brand SKU Product
Waveshare 22414 ST3215 Series Serial Bus Servo

Memory Table

The complete memory map is documented in MEMORY_TABLE.md.

License

This project is licensed under the GPL-3.0-or-later license. See the LICENSE file for full details.

Supporting the Project

If this library has been useful to you, consider supporting its development: https://ko-fi.com/alessiodam

Download files

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

Source Distribution

python_st3215-1.1.0.tar.gz (402.7 kB view details)

Uploaded Source

Built Distribution

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

python_st3215-1.1.0-py3-none-any.whl (25.7 kB view details)

Uploaded Python 3

File details

Details for the file python_st3215-1.1.0.tar.gz.

File metadata

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

File hashes

Hashes for python_st3215-1.1.0.tar.gz
Algorithm Hash digest
SHA256 52f53d50de305826340979785e8786d68d029b3985ae40e5ee8b703463e1a2d6
MD5 34d93ddad3216ef7e3882df252d53bfa
BLAKE2b-256 0b907e83b0abd0bd1393e73521f61e45ef0f46ddbc2d161230cda17b1ef85cfc

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_st3215-1.1.0.tar.gz:

Publisher: release.yml on alessiodam/python-st3215

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

File details

Details for the file python_st3215-1.1.0-py3-none-any.whl.

File metadata

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

File hashes

Hashes for python_st3215-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2564ed6fe949c77c4cfb83b9d052d34233630cb2ebf774bd3fe1ee88b44168d7
MD5 ea54e2f1c10574ccf5e5500813dfa66a
BLAKE2b-256 de67179697fac69f0012a73d5e7d77d62bdc40902940e2ada94065bc30e1ff86

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_st3215-1.1.0-py3-none-any.whl:

Publisher: release.yml on alessiodam/python-st3215

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