# pySangaboard

This is the Python module that communicates with the Sangaboard, an open-source board for driving unipolar stepper motors. It also supports older versions of the Sangaboard based on an Arduino Nano and a pair of Darlington driver ICs.


## Contributors

- **Richard Bowman** (University of Glasgow, UK)  
  Wrote the initial version of the library when the board was specific to the OpenFlexure Microscope.

- **Julian Stirling** (Humanitarian Technology Trust, UK)  
  Contributed to the initial library and separated the codebase into an independent `sangaboard` package.

- **Boyko Vodenicharski** and **Filip Ayazi** (University of Cambridge, UK)  
  Added Python 3 support and endstop support.



## License

© 2026 Contributors. Released under the GNU GPL v3.0.


## Installation

Install from PyPI:

```bash
pip install sangaboard
```

## Documentation


The documentation is available on [Read the Docs](https://sangaboard.readthedocs.io/en/latest/index.html)

## Developer notes


### Publishing


```bash
pip install build twine
python -m build
twine check dist/*
twine upload dist/*
```
