0 Carrier sense multiple access (CSMA)
sh123 edytuje tę stronę 2022-12-28 12:13:42 +02:00

alt text

  • Carrier detection is used when sketch is built based on RadioLib library with USE_RADIOLIB flag
  • Also, additional flag cfg.LoraUseCad/CFG_LORA_USE_CAD) must be set to true
  • CSMAp is utilized by this project as per KISS specification. TX path is executed only when there is no incoming data returned by LoRa::parsePacket and TX path is executed with probability p (CSMA persistence), configured by const Loraprs::Service::CfgCsmaPersistence in loraprs_service.h. Random value is selected between 0 and 255 and TX is executed only when it is lower than CfgCsmaProbBoundary.
  • To decrease TX probability in case of high traffic use lower value. Loraprs::ServiceCsmaSlotTimeMs configures the amount of time in milliseconds to wait if transmission was not performed due to persistence, select lower value for lower TOA (time on air). It is also possible to dynamically override these parameters with KISS P 0x02 and SlotTime 0x03 command codes from the client.