Use the USIS controller and manipulate your spectros from the comfort of your home

USIS: the standard protocol for astronomical spectroscopy

During the development of the UVEX motorization module, we formalized the communication protocol between the computer and the equipment. This is the USIS protocol (for Universal Spectroscope Interface Specification).

In future, we will use this protocol for all our hardware and software developments, and we invite the astronomy community to do likewise. Having a standard not only reduces development efforts (both hardware and software), but also means that observers will eventually be able to interoperate between USIS instruments and USIS software.

This protocol is based on properties, and a number of commands that can be used to query or modify these properties. In the case of UVEX, for example, the network angle is one of these properties, which can be read or modified.

We have designed this protocol to be very generic, meaning that the same software can communicate with different USIS devices. For example, we have introspection functions, which can be used to query the equipment for a list of available properties, as well as their type.

To ensure that this protocol is widely used in the community, we have put in place a few important elements:

– The specification itself is freely accessible on Shelyak’s public Github account.

– We’ve developed a USIS library in C (Usis.h), which integrates the complete protocol, and which can be used on Raspberry Pi Pico or Arduino-based developments. For UVEX, we’re using this library with a Pico.

– We’re also making available a compiled file that implements a few simple properties to simulate a “USIS device”. It’s a .uf2 file that can easily be downloaded into a Pico to turn it into a USIS simulator. The file can be downloaded here.

Of course, the specification may evolve according to new needs. N’hésitez pas à nous solliciter si vous avez des questions, ou des suggestions.