home

frame spec:

  • protocol version [2b]
    • 00 first version
    • 01 v1 (v0 compatible)
    • 10 v2 (v0,v1 compatible)
    • 11 v3 (incompatible with previous versions)
  • Frame context [3b]
    • 000 No context (contains hop list)
    • 001 Same connection
    • 010 Same message
    • 011 Termination (End stream)
    • 100 Reserved
    • 101 Same connection reply
    • 110 Same message reply
    • 111 Termination reply (End stream)
  • Misc flags [3b]
    • Require ack [1b]
    • Encrypted [1b]
    • Anonymous sender [1b]
  • Connection id [4B]
  • Message id [2B]
  • ?Hop list (only if Frame context == 000 no context)
    • realm [1B]
      • 2b address len
        • 00 4B
        • 01 8B
        • 10 16B
        • 11 cstr
      • 6b realm id
    • addr (>4B)
  • Payload type [1B]
  • Payload CRC [2B] (if set to 0 ignore)
  • Payload len [4B]
    • if 0xff 0xff 0xff 0xff then its stream and ends with termination packet
    • if 0xff 0xff 0xff 0xfe then the payload is cstring (terminated with 0x00 0x00)
  • Payload…

19B min packet

Mesh device spec:

DEFAULT) transmit frame (to next address, if crypto capable decrypt and transmit)

1) Get node info

2) Store key (if crypto capable signed key storage enabled)

3) Get neighbors

Realms

  • 00 000000 Lora mesh
  • 00 000001 IPv4 (UDP)
  • 10 000001 IPv6 (UDP)
  • 11 000001 DNS (UDP)

Payload type

[1b] (0 realm specific, 1 general type) [7b] type

General types (in decimal)

  • 0 text message
  • 1 file
  • 2 tar

Realm specific types