Skip to main content

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)

Source distribution for crow-serial 0.4.0
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.

Release history Release notifications | RSS feed

This release

0.4.0 This release

1 release file No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page