Host implementation of the Crow serial protocol.
Project description
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
.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file crow-serial-0.4.0.tar.gz
.
File metadata
- Download URL: crow-serial-0.4.0.tar.gz
- Upload date:
- Size: 14.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
2f8d639a32ccc18be085e8a1ab41809f67c097ae514095db556f60c43635fcb5
|
|
MD5 |
fd6340ca75969b8e4f41c1a5d1d8b7a4
|
|
BLAKE2b-256 |
dbfe14a46541a455dca135d6939887dc285709df561326bcfc23517a2ed121f0
|