finished the hub's logic, half done with the interfaces, and hopefully working on pi logic soon

This commit is contained in:
2025-06-05 22:38:26 -04:00
parent f61de84b4a
commit a94823b44a
8 changed files with 304 additions and 266 deletions

View File

@ -1,14 +1,15 @@
# The Specifications for ROSE
Extensions to the protocol may change the specifications, see the
Development on the protocol may change the specifications, see the
devlogs for specific decisions on changes.
## Packet specifications
### Packet size
This is determined by the users after considering their applications
during compilation/synthesis of their ROSE setup, the size must be a
power of 2 (and long enough, >16 bytes is recommended).
### Header
#### (1 byte) Command + packet size
- Packet sizes are chosen out of 4 predetermined sizes. Using only 2
bits in this byte to be represented.
- Commands are 6 bits with 64 possibilities, see the **Commands**
#### (1 byte) Command
- Commands are 8 bits with 256 possibilities, see the **Commands**
section for details.
#### (1 byte) Destination address
@ -19,13 +20,14 @@ devlogs for specific decisions on changes.
### Payload
Via commands, leading or trailing bytes in the payload can also be
repurposed to timestamps or other feature extensions.
repurposed to feature extensions.
### (1 byte) CRC-8
To ensure delivery.
## Commands
TBD.
1. `[CMD: 0]` Idle.
2. `[CMD: 1]` Send packet.
### Feature Extensions
#### [CMD: TBD] Include timestamp
#### [CMD: TBD] Include sequence number