====== LoRa: RF Parameters, Power, Regulations ====== ===== Parameters ===== ==== Spreading factor (SF)==== According to SX1276 datasheet: * At SF 6, SNR of -5dB is required * At SF 12, -20dB. * 2.5dB change between SFs. ===== Data Rate ===== Varies with several settings. There is a [[https://unsigned.io/understanding-lora-parameters/|calculator]] from the person who makes [[nyan:related|Reticulum]]. At 250kHz BW, data rate maybe between 10.94 kbps and 366 bps. The default from Meshtastic gives 1.07 kbps. Assuming 1kbps, and 10% duty cycle, each radio can send 100bps on average. 60 mins * 60 secs * 100 bps / 8 = 45 kBytes / hour. In a mesh, this must include traffic from other boats. If 1/10th of the traffic is originated locally, the node could send 4.5kB/h of it's own data. This is all assuming the channel is fully utilised by this system, without interference or any retransmissions needed. With CSMA, actual channel utilisation will be much less than 100%, perhaps 50% - 80% depending on number of nodes and details of CSMA algorithm. It would be safer to design a system that is useful at about 2kB/h. N.B. Headers have yet to be allowed for. I have also not allowed for any network / mesh management overhead, or admin messages. With good clear line of sight over the water it may be possible to use a smaller spreading factor, which would give higher data rate and reduce interference with Meshtastic or other systems using slower spreading factors. In case SF7 was usable, we would get x10 data rate, so 20kB/h. In the US regime, there is much more bandwidth to play with, and no duty cycle limit. It could be worth looking at using multiple channels. What can be done with 2kB/h? 12 SMS messages. A custom weather report message might be squashed into 15 - 20 bytes. ====== Regulation ====== * e.r.p is power equivalent to that input to a perfect dipole. * e.i.r.p is power to an isotropic radiator. * Perfect dipole has 2.15 dBi gain. ===== 868MHz UK / EU ===== 500mW e.r.p (27dBm) is allowed from 869.40 to 869.65 MHz, with max 10% duty cycle, or another interference reduction method. Regulations: IR2030/1/19, EN 300 220. This is just a small portion near the top of the 868 MHz band. Most of it has lower power limits. [[https://www.ofcom.org.uk/__data/assets/pdf_file/0028/84970/ir-2030.pdf|IR2030, Ofcom]] There is no note about bandwidth limit there, as there is in some other parts, so presumably can use all of it, giving 250kHz BW centred on 869.525 MHz. Meshtastic defaults to 869.525 MHz, 250kHz BW. Further limits on usage in relation to LoRa one may see are probably just rules of The Things Network. The Things Network uses channels defined by LoRaWAN people, with max 16dBm (40mW) eirp. Most of the frequencies I see in the linked Ofcom document though are max 25mW or 10mW erp. (40mW eirp is around 25mW erp though, maybe that is it.) ===== 433 MHz UK / EU ===== Power limits are lower than 868MHz but propagation losses should be less. Worth considering. 433 MHz LoRa modules can also be used under amateur radio terms. I suspect noise and channel utilisation maybe the more important factors in band choice. Also consider antenna size, and similarity to ===== 915 MHz US / Canada / Others (South America / Caribbean?) ===== 30dBm (1W) limit. Also an amateur band. [[https://ised-isde.canada.ca/site/spectrum-management-telecommunications/en/learn-more/key-documents/consultations/canadian-table-frequency-allocations-sf10759#s2.2|Canadian Band Plan]] ===== Amateur ===== 868 MHz band is not available for UK amateurs, but 433 MHz is. 433MHz amateur band also contains licence exempt space that can be used by LoRa. [[https://rsgb.services/public/bandplans/docs/rsgb_band_plan_2023.pdf|UK Amateur Bandplan]] ===== LoRa WAN ===== LoRa WAN is a network built on top of LoRa. The standard does not apply to general LoRa use, but maybe of interest to see what frequencies, bandwidth, etc. they use. [[https://lora-alliance.org/wp-content/uploads/2020/11/lorawan_regional_parameters_v1.0.3reva_0.pdf]] ===== Tools ===== [[https://unsigned.io/website/loramon/|LoRaMon]] - LoRa packet sniffer using RNode code on LILYGO boards. ===== Bibliography ===== [[https://arxiv.org/pdf/1607.08011.pdf|Understanding the Limits of LoRaWAN]] [[https://www.etsi.org/deliver/etsi_en/300200_300299/30022001/03.01.01_60/en_30022001v030101p.pdf|ETSI Short Range Devices, Technical characteristics and methods of measurement]] (e.g. how to measure duty cycle)