began work on the central routing logic, updated some documentation
This commit is contained in:
31
protocol.md
Normal file
31
protocol.md
Normal file
@ -0,0 +1,31 @@
|
||||
# The Specifications for ROSE
|
||||
Extensions to the protocol may change the specifications, see the
|
||||
devlogs for specific decisions on changes.
|
||||
|
||||
## Packet specifications
|
||||
### 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**
|
||||
section for details.
|
||||
|
||||
#### (1 byte) Destination address
|
||||
- This can refer to any end-device or fabric within the network
|
||||
|
||||
#### (1 byte) Source address
|
||||
- This can refer to any end-device or fabric within the network
|
||||
|
||||
### Payload
|
||||
Via commands, leading or trailing bytes in the payload can also be
|
||||
repurposed to timestamps or other feature extensions.
|
||||
|
||||
### (1 byte) CRC-8
|
||||
To ensure delivery.
|
||||
|
||||
## Commands
|
||||
TBD.
|
||||
### Feature Extensions
|
||||
#### [CMD: TBD] Include timestamp
|
||||
#### [CMD: TBD] Include sequence number
|
Reference in New Issue
Block a user