Il s'agit d'un outil utile pour tester le serveur LORA.
Pour imiter les dispositifs de fin (AKA Motes dans le protocole Lorawan ™)
Protocole de support Lorawan ™ 1.0.2 & 1.1
Utilisation de passerelles de SemTech ™
Utilisez pip pour installer lora-mote-emulator :
PIP installe Lora-Mote-Emulateur
Utilisez pip pour installer pipenv :
pip installer pipenv
Clone ce repo dans un répertoire:
git clone https://github.com/houluy/lora-mote-emulator.git
Utilisez pipenv pour créer un environnement Python virtuel et installez toutes les dépendances:
PiPenv Install
Construisez le projet:
Python -m Build
Ici, s'il n'y a pas de Python 3.6 dans votre système, un avertissement se produira et aucun package ne sera installé. Il est parfait pour installer Python 3.6 de Source. Sinon, retirez le Pipfile.lock et refaire la commande ci-dessus.
pipenv shellmote -h pour voir le message d'aide Utilisation: mote [-h] [-v version] [-c config] [- modèle modèle]
{join, app, pull, mac, rejoindre, info, abp, créer} ...
Outil pour imiter Lora Mote (aka End-Device) et Gateway, Commande prise en charge
Liste: ['join' ',' app ',' pull ',' mac ',' rejoin ',' info ',' abp ',' créer ']
Arguments facultatifs:
-H, --help afficher ce message d'aide et quitter
-v version, - Version de Version
Choisissez la version Lorawan, 1.0.2 ou 1.1 (par défaut)
-c Config, - Config Config
Spécifiez le répertoire des fichiers config, par défaut
'./config'
- Modèle de modèle Spécifiez le répertoire pour enregistrer le fichier du modèle, par défaut
'./Models'
Commandes prises en charge:
{join, app, pull, mac, rejoindre, info, abp, créer}
Regardez-vous envoyez la demande de jointure.
application Envoyer des données d'application.
Tirez Send Pull_data.
Mac Envoyer MacCommand.
RECHOINE Envoyer une demande de rejoindre.
Info Affiche les informations de Mote actuel.
ABP Initialise Mote en mode ABP.
Créer des configurations de manche.
mote create [-c ./config] . Mote générera des fichiers JSON de modèle de configuration requis dans le répertoire ./config (par défaut). Dans le répertoire, plusieurs fichiers de configuration JSON sont inclus.config.json : configurations de base.gateway.json : Gateway EUI.device.json : paramètres de périphérique pour le mode OTAA.abp.json : Paramètres de périphérique pour le mode ABP. Modifier l'informatique de l'appareil dans device.json copié. Un exemple:
{
"Appareil": {
"Joineui": "0000000000000000",
"Deveui": "0000000000000000"
},
"Rootkeys": {
"Appkey": "0000000000000000000000000000000000",
"Nwkkey": "0000000000000000000000000000000000"
}
}
Remarque : Si vous souhaitez imiter le périphérique Lorawan 1.0, définissez d'abord JoinEUI égal à AppEUI et définissez NwkKey égal à AppKey .
Modifiez les informations d'activation de l'appareil dans abp.json . Un exemple:
{
"Deveui": "0000000000000000",
"joineui": "0000000000000000",
"Devaddr": "00000000",
"Appkey": "0000000000000000000000000000000000",
"nwkkey": "0000000000000000000000000000000000",
"nwksenckey": "0000000000000000000000000000000000",
"snwksintkey": "0000000000000000000000000000000000",
"fnwksintkey": "0000000000000000000000000000000000",
"Appskey": "0000000000000000000000000000000000",
"fcntup": 0,
"Version": "1.1"
}
Actuellement, cinq types de messages sont pris en charge: extraire les données, rejoindre la demande, rejoindre la demande, les données confirmées (ou non confirmées) (avec ou sans FOPTS) et les commandes Mac dans le champ FrMPayload:
Remarque : N'oubliez pas de mote pull pour garder la passerelle vivante dans le serveur.
info mote traction mote Mote ABP mote join [-n] Mote Rajoin 'Rejointyp' (0, 1, 2) MOTE APP 'Message' (Message UpLink, sera codé par UTF-8) [-AUF] MOTE Mac 'Commande' (Commandes Mac dans le champ FrMPayload)
Voici l'exemple d'étape d'interaction avec Chirpstack:
traction mote mote join -n mote app helloworld -f 0302 mote main.py mac 0302
Ce dépôt est hébergé sur https://github.com/houluy/lora-motes-emulator et sous licence MIT, toute contribution ou suggestion est la bienvenue. Ouvrez simplement un problème ou envoyez une demande de traction.