Crow Serial Protocol Implementation
Status: experimental
The Crow protocol is designed to allow a PC to control several microcontrollers using a single serial line. The protocol itself has a simple half-duplex, command/response format with basic error checking provided by Fletcher-16 checksums.
In Crow, the top-level software that generates commands is called a client. The client runs on the host, and it passes the command to a host implementation. The host implementation creates a command packet and sends it over the serial line. A device implementation receives the packet and then passes the command to a service running on that device. The service performs the command and may send a response, depending on the circumstances.
A command has the following properties:
- address: 1-31 for a specific device, or 0 to broadcast to all devices.
- port: 0-255, where open ports are registered to specific services.
- response expected: if true, the host will wait for a response; if false, the device must not respond.
- payload: 0-2047 bytes of binary data.
A response has just one property, the payload, which is also 0-2047 bytes of binary data.
This project contains a host implementation as well as a Crow admin client.
The Crow admin client can be used to send the commands ping, echo, host_presence,
get_device_info, get_open_ports, and get_port_info.
Metadata
Release files for crow-serial 0.4.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| crow-serial-0.4.0.tar.gz | 14.0 kB | Without provenance | Details for crow-serial-0.4.0.tar.gz |
Release files / crow-serial-0.4.0.tar.gz
| Download URL | crow-serial-0.4.0.tar.gz |
|---|---|
| Size | 14.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2f8d639a32ccc18be085e8a1ab41809f67c097ae514095db556f60c43635fcb5
|
|
BLAKE2b-256 checksum How to use checksums |
dbfe14a46541a455dca135d6939887dc285709df561326bcfc23517a2ed121f0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Security for crow-serial 0.4.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.