Le transceiver LoRa Microchip® RN2483 Le module RN2483 Commandes essentielles pour joindre un réseau LoRaWAN Ci-dessous la liste des commandes à exécuter sur le module pour joindre un réseau LoRaWAN en mode OTAA : // OPTIONAL - resets the module firmware to default values > sys reset // OPTIONAL - resets the module firmware to default values, plus clears the EEPROM > sys factoryRESET // OPTIONAL - reads the IEEE EUI of the module. > sys get hweui // MANDATORY - in this example the hweui is used > mac set deveui 0123456789ABCDEF // MANDATORY - unique per web app. Used to route data > mac set appeui 0123456789ABCDEF // MANDATORY - unique per device & must match server > mac set appkey 0123456789ABCDEF0123456789ABCDEF // OPTIONAL - default value is 34. Some private networks use 12 > mac set sync 34 // OPTIONAL - default is off, but ADR is healthy for battery life & capacity if supported by the network > mac set adr on // OPTIONAL - saves all the settings to EEPROM for future use > mac save // MANDATORY - starts the join request/accept negotiation process, over the air > mac join otaa // NOTE - accepted/denied response is useful to validate network coverage & set up // OPTIONAL - mac save used here to store devaddr & nwks/apps keys to EEPROM > mac save // DEFAULT - tx an unconfirmed packet on port 1. "Hello World!" > mac tx uncnf 1 48656c6c6f20576f726c6421 // OPTIONAL - tx a confirmed packet on port 1. "Hello World!" > mac tx cnf 1 48656c6c6f20576f726c6421 🕮 Source : Basic Commands for OTAA Join Ressources RN2483 LoRa® Technology Module Command Reference User’s Guide → Guide de référence pour les commandes prises en charge par le RN2483 Voir notamment la p.38 pour la valeur par défaut des paramètres de chaque canal LoRa RN2483 - How do you eliminate a "no_free_ch" error? RN2483 mote - problems with join OTAA - no free channel → Solutions à une erreur fréquente lorsqu’on utilise le RN2483 RN2483 / RN2903 Firmware upgrade guide → Article expliquant comment mettre à jour le firmware du RN2483 Librairies C++ pour exploiter le RN2483 dont on peut s’inspirer pour coder sa propre librairie Qt : The Things Network Arduino Library SmartEverything Lion - loRa IoT transmission RN2483-Arduino-Library La carte de développement Pictail RN2483 Utilisation depuis un PC Visser IMPÉRATIVEMENT l’antenne étiquettée “868MHz” sur le connecteur SMA de la carte Pictail RN2483 sérigraphié “RFH” Ne pas connecter d’antenne peut endommager la carte. Une explication est donnée dans l’article Can a LoRa Mote be damaged by operating without an antenna ? : As a general rule, it’s not recommended to run any RF transmitters (not only specific to LoRa) without an antenna attached (or with some dummy load) as the energy from the transmission is effectively reflected by the open end and can damage the equipment. If the RF power levels are relatively low, then the potentially lasting issue with mismatched antennas is from the reflection of signals back into the transmitter. The lower the power level, the less the issue. It is not recommended to work without an antenna connected to the module as it could be damaged due to RF reflections Connecter la carte par USB à un PC sur lequel l’émulateur de terminal série Termite sera installé. Ce logiciel permettra d’envoyer des commandes de type AT au module RN2483 de la carte Pictail RN2483 pour le configurer, joindre une passerelle LoRa, transmettre des données… Caractéristiques par défaut de la communication série Vitesse : 57600bauds Format : 8bits, pas de parité, 1bit de stop pas de contrôle de flux Ajouter crlf à la fin des commandes AT pour qu’elles soient prises en compte Utilisation depuis une Raspberry Pi Raspberry hors tension, connecter la carte Pictail RN2483 à la Raspberry Pi comme illustré ci-dessous : Mettre sous tension la Raspberry Pi Configurer la Raspberry Pi pour utiliser le “vrai” UART (→ PrimeCell UART (PL011) ) pour la liaison série. Sur une Raspberry Pi v3 : Désactiver le bluetooth en ajoutant dtoverlay = disable-bt au fichier /boot/config.txt Désactiver la console Linux sur le port série soit en supprimant console=serial0,115200 dans le fichier /boot/cmdline.txt ou en passant par raspi-config Désactiver le service système d’initialisation du modem en exécutant sudo systemctl disable hciuart Rebooter le système 🕮 Source : UART configuration Utiliser l’utilitaire screen ou minicom ou miniterm pour envoyer les commandes à la carte Exemple de mise en œuvre avec miniterm pi@rpi-defrance:~ $ miniterm --- Available ports: --- 1: /dev/ttyAMA0 'ttyAMA0' --- Enter port index or full name: 1 (1) --- Miniterm on /dev/ttyAMA0 9600,8,N,1 --- --- Quit: Ctrl+] | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H --- --- local echo active --- (2) --- EOL: CR --- (3) --- EOL: LF --- (3) --- EOL: CRLF --- (3) --- Baudrate: 57600 (4) --- Settings: /dev/ttyAMA0 57600,8,N,1 --- RTS: active DTR: active BREAK: inactive --- CTS: active DSR: inactive RI: inactive CD: inactive --- software flow control: inactive --- hardware flow control: inactive --- serial input encoding: UTF-8 --- serial output encoding: UTF-8 --- EOL: CRLF --- filters: default mac get deveui (5) 0004A30B001AF3D8 --- exit --- (6) 1 on spécifie l’index du port série à utiliser 2 on active l’écho local en tapant Ctrl-T Ctrl-E 3 on spécifie le terminateur de ligne sur crlf en tapant à plusieurs reprises sur Ctrl-T Ctrl-L 4 on saisie la vitesse après avoir tapé sur Ctrl-T b 5 on communique avec le RN2483 en lui envoyant des commandes 6 on quitte miniterm en tapant Ctrl-$ (équivalent de Ctrl-] sur un clavier AZERTY) screen autorise la configuration du terminateur de ligne (cr ou crlf) depuis son fichier de configuration. Exemple : pour permettre de basculer d’un mode cr seul à un mode crlf avec les combinaisons de touche Ctrl-A D (et inversement avec Ctrl-A U), on pourra mettre le contenu suivant dans le fichier de configuration de screen pour l’utilisateur courant : Contenu du fichier ~/.screenrc # put this in your ~/.screenrc to make # ^A D (uppercase) switch on, and # ^A U (uppercase) switch off, converting # CR (return keys) input into CRLF bind D bindkey "\015" stuff "\015\012" bind U bindkey "\015" stuff "\015" 🕮 Source : cabo/crlf.screenrc ''' Ressources Pictail RN2483 User’s Guide 🞄 🞄 🞄 LoRa The Things Network