awdl-frame-parser 0.1.2

A parser for AWDL data and action frames.
Documentation

AWDL frame parser

Support

Frame types

  • action
    • MIF
    • PSF
  • data(coming soon)

TLV

  • Arpa
  • Version
  • Synchronization parameters
  • Channel sequence
  • Election parameters
  • Election parameters v2
  • Synchronization tree
  • Data path state
  • HT capabilities
  • VHT capibilities
  • Service parameters
  • Service response

Features

The parser was designed to be able to run in low flash environments(i.e. ESP32, wasm). To reduce size there is currently the option to disable the "read" or "write" feature, which will strip this functionality from the library. Other than that, there is the option to remove certain TLV parsers from the library, by turning of their respective features.

TLV feature
Arpa dns_sd_tlvs
Version version_tlv

Do note please, that although the parsers are not yet present, the features are. Also some parsers where bundled into one feature. For more information on this refer to Milan Stute's dissertation.

no_std

Execution in no_std environments is possible, as long as an allocator is present.

Credits

Although the actual parser was written by me, the reverse engineering of the AWDL protocol was conducted by Milan Stute and SeeMoo-Lab. So kudos to them. I would als like to mention sharksforarms the initial creator of the amazing deku crate, which powers the parser.