Hardware Interface Packages

The Bluesky library does not provide direct support for communicating with real hardware. Instead, we define a high-level abstraction: the Bluesky Hardware Interface. This allows different experimentalists to use different hardware control systems.

The following packages provide support for real hardware communication from Bluesky:


EPICS integration for Bluesky. Reference implementation for hardware interface.


Lightweight package with a focus on SCPI.


Tango integration for Bluesky. Incomplete and experimental early work.


Communication with SPEC instruments.


yaq integration for Bluesky.

Importantly, you may mix hardware interfaces from multiple different packages within the same RunEngine. Please note that the above packages are developed and maintained separately from Bluesky itself.

Are you maintaining a Python Package which provides hardware communication functionality? The Bluesky Hardware Interface is a simple set of attributes and methods that can easily be added to your existing classes. Please consider supporting our interface specification to unlock the full capabilities of the Bluesky ecosystem for your supported hardware. Let us know if you add Bluesky support so we can add you to the above list.