====== LoRa : un protocole de communication radio longue distance & low energy ====== Attention, il faut distinguer [[ LoRa ]] et [[ LoRaWAN ]]. [[ LoRa ]] est un protocole propriétaire de communication radio. [[ LoRaWAN ]] est un protocole de communication réseau couplé à une infrastructure de passerelles (gateways) qui permet à de court messages émis par Radio d'être reçu par des serveurs d'applications sur Internet. La page wikipedia FR est plutôt bien documentée ici, mais elle entremele LoRa et LoRaWAN : [[ https://fr.wikipedia.org/wiki/LoRaWAN | LoRaWAN ]]. * Achat de 2 transceiver (émetteur/récepteur) [[ e45-ttl-100 ]] **incompatible** LoRaWAN. * Achat d'une “Chistera-Pi” basé sur le [[rfm95]] compatible LoRaWAN. ===== Antennes ===== * [[antenne_radio ]] * [[ https://nicbkw.com/quick-dirty-antenna-comparison-for-lorawan/ ]] * [[ https://www.disk91.com/2016/technology/sigfox/sigfox-lora-and-antenna-design/ ]] * [[ https://www.ebds.eu/antennes/antennes-868mhz/ ]] * [[ https://www.ebds.eu/applications-docs/documentation/comment-choisir-une-antenne/ ]] ===== Build a gateway for the Thingnetwork ===== * From zero to LoRaWAN in a weekend https://github.com/ttn-zh/ic880a-gateway/wiki (conseils antenne) ===== Legislation 868 MHz ===== cf [[ https://www.disk91.com/2017/technology/internet-of-things-technology/all-what-you-need-to-know-about-regulation-on-rf-868mhz-for-lpwan/ ]] ===== Ressources ===== Un calculateur de link budget : [[ https://www.solwise.co.uk/link-budget.htm ]]. Cela permet de calculter la perte de gain aka la portée theorique de transmission d'un dispositif radio. Quelques infos experimentales sur les antennes, à creuser : [[ https://www.disk91.com/2016/technology/sigfox/sigfox-lora-and-antenna-design/ ]] DIY LoRa antenne : [[ https://bashtelorofscience.wordpress.com/2018/04/03/diy-lora-antenna/ ]] ===== Technologie ===== * RSSI (Radio Signal Strength Indicator) certains device mesure le RSSI * SNR calculé à partir du RSSI ? ===== Glossaire ===== * LoRa est un protocole de communication physique radio (permet de la communication à distance entre dispositifs radio). Il encadre la modulation en fréquence des dispositifs LORA. C'est un protocole propriétaire fermé. * LoRaWAN est une infrastructure d'équipement qui permet à des dispositifs LoRa de communiquer avec des applications déployés sur Internet. Néanmoins, il ne permet pas aux dispositifs LoRa d'accéder à Internet directement. * Une paserrelle LoRaWAN (gateway) permet à de petits dispositifs autonomes (objets connectées) de pouvoir accéder à Internet. Elle relaie les informations radio reçu vers des serveurs sur Internet avec le protocole IP. * RSSI: force du signal (signal strength) * SNR: rapport signal sur bruit (signal-to-noise ratio) * MIC: code d'integrité du message (message integrity code) * OTAA: activation à distance (Over The Air Activation) * SF: facteur d'étalement (spreading Factor) Plus le SF est élevé, plus la bande de fréquence utilisée par LoRa pour transmettre un message est élevé, plus la distance parcouru par le signal est grande et plus le débit de transmission est faible. ===== Notes ===== * En Europe, LoRa utilise la bande de fréquence libre de 868 MHz. * La fréquence recommandée par TTN est 868,10 MHz. * La gateway LoRaWAN écoute généralement sur plusieurs canaux simultanément (typiquement 8 ou plus). Cela permet à plusieurs dispositifs de communiquer avec la gateway simultanément. Chaque canal radio est monopolisé pendant une communiation. Si 2 devices communique simultanémént sur un meme canal, la communication est brouillé. * [[ https://www.thethingsnetwork.org/ | TTN ]]est une fédération LoRaWAN "open", qui permet si on la rejoins de proposer à tous d'utiliser notre gateway pour publier des données sur Internet, ou recevoir des données depuis Internet. * Le protocole LoRa définit le paramétrage du Data Rate qui permet de selectionner le débit de communication radio. Un faible débit permet une communication radio plus longue distance. * LoRaWAN definit 3 classes d'équipements qui determine comment l'équipement est autorisé à recevoir des messages d'un serveur. * Default MQTT handler of TTN : publish a JSON representation of uplink messages on topic /devices//up * Device registration sur TTN: https://www.thethingsnetwork.org/docs/devices/registration.html * Minimum 13 octets d'entête : MHDR (1) + DevAddr (4) + FCtrl (1) + FCnt (2) + Fport(1) + MIC(4) * RAK811 node: [[ https://www.hackster.io/naresh-krish/getting-started-with-the-rak811-lora-node-67f157 ]] {{tag>documentation theorie_fondamentale sans_fil max}}