Close

Data layers

A project log for digital-walkie-talkie

long range, low power, modular

christoph-tackChristoph Tack 08/09/2020 at 21:150 Comments

Data link layer

LoRa

The walkie-talkie application doesn't need that amount of overhead. We can suffice with the OSI layer 2 provided by the wireless chipset:
Semtech SX127x Layer 2, Variable length frame

Depending on the chosen Codec2 bitrate, we'll have to transfer 8bytes 50 times/s down to 6bytes 25 times/s.

Libraries

  1. RadioLib
    • Support for some ham-radio protocols like AX.25
    • Limited higher layer2 support (no encapsulation of packets into frames, no flow control, no retransmissions)
  2. RadioHead
    • Supports acknowledgements on frames and re-transmissions, but no support for encapsulation of packets into frames.  The application has to split packets into frames and make sure these arrive.
    • SX1278 : no FSK support, only LoRa.
    • I refuse to add more modules to this library, as Mike McMauley heavily based his MRF89XA driver on my code without owing me credit for it.  Removing a copyright notice in a source code file is not a nice thing to do.
  3. RF24Network
    1. supports OSI layer 3 packetizing
    2. only supports nRF24
  4. LoRaLayer2 : maybe a bit heavy for our application. But at least this is tried and tested. Might be a good starting point.
  5. LowPowerLab : RFM69 only, OSI-layer2 support thrown together with hardware driver.  This would take some time to separate that nicely.

Discussions