2 stable releases

new 1.0.1 May 15, 2024
1.0.0 Mar 14, 2023

#1021 in Embedded development

Download history 76/week @ 2024-01-20 24/week @ 2024-01-27 45/week @ 2024-02-03 50/week @ 2024-02-10 77/week @ 2024-02-17 141/week @ 2024-02-24 46/week @ 2024-03-02 109/week @ 2024-03-09 75/week @ 2024-03-16 40/week @ 2024-03-23 97/week @ 2024-03-30 57/week @ 2024-04-06 84/week @ 2024-04-13 33/week @ 2024-04-20 10/week @ 2024-04-27 12/week @ 2024-05-04

165 downloads per month

MIT/Apache

255KB
4.5K SLoC

scpi-rs

Quickstart Fuzzing codecov

These crates attempts to implement the IEE488.2 / SCPI protocol commonly used by measurement instruments and tools.

Scope

The crate does not support any transport layer, it only reads ascii-strings ([u8]) and writes ascii responses.

It does not implement any higher level functions/error handling other than SCPI parsing and mandated registers/commands(optional).

Project organisation:

  • scpi - SCPI/488.2 parser and command tree library.
  • scpi-contrib - Contribution library, provides default implementations for mandatory commands and abstractions for SCPI subsystems.
  • scpi-derive - Procedural macro support library, creates enums understood by Scpi (See ScpiEnum) and some internal library stuff.

Getting started

Look at the examples in scpi or scpi-contrib.

Contribution

Contributions are welcome in the form of pull request, issues or examples are welcome.

License

This project is licensed under the following licenses:

Dependencies

~4MB
~71K SLoC