هذه أداة مفيدة لاختبار Lora Server.
لمحاكاة الأجهزة النهائية (المعروف أيضًا باسم Motes في بروتوكول LoRawan ™)
دعم بروتوكول LoRawan ™ 1.0.2 و 1.1
باستخدام بوابات من Semtech ™
استخدم pip لتثبيت lora-mote-emulator :
PIP تثبيت Lora-mote-emulator
استخدم pip لتثبيت pipenv :
PIP تثبيت pipenv
استنساخ هذا الريبو في دليل:
git clone https://github.com/houluy/lora-mote-emulator.git
استخدم pipenv لإنشاء بيئة بيثون افتراضية وتثبيت جميع التبعيات:
تثبيت pipenv
بناء المشروع:
بيثون -M بناء
هنا ، إذا لم يكن هناك Python 3.6 في نظامك ، فسيحدث تحذير ، ولن يتم تثبيت أي حزمة. إنه مثالي لتثبيت Python 3.6 من المصدر. خلاف ذلك ، قم بإزالة Pipfile.lock وأعيد الأمر أعلاه.
pipenv shellmote -h لرؤية رسالة المساعدة الاستخدام: mote [-h] [-v الإصدار] [-c config] [-نموذج النموذج]
{انضم ، تطبيق ، سحب ، ماك ، انضم إلى المعلومات ، ABP ، إنشاء} ...
أداة لمحاكاة Lora Mote (المعروف أيضًا باسم الجهاز النهائي) والبوابة ، الأمر المدعوم
القائمة: ["Join" ، "App" ، "سحب" ، "ماك" ، "انضمام" ، "معلومات" ، "ABP" ، "إنشاء"]
الحجج الاختيارية:
-H ، -عرض رسالة المساعدة هذه والخروج
-v الإصدار ، -إصدار version
اختر إصدار Lorawan ، 1.0.2 أو 1.1 (افتراضي)
-C config ، -config config
حدد دليل ملفات التكوين ، الافتراضي
'./config'
-نموذج نموذج حدد الدليل لحفظ ملف النموذج ، الافتراضي
'./models'
الأوامر المدعومة:
{انضم ، التطبيق ، السحب ، Mac ، انضم إلى المعلومات ، ABP ، إنشاء}
انضم إلى إرسال طلب الانضمام.
APP إرسال بيانات التطبيق.
سحب إرسال pull_data.
MAC أرسل MacCommand.
انضم إلى إرسال طلب إعادة الانضمام.
معلومات تظهر معلومات عن MOTE الحالية.
ABP تهيئة MOTE في وضع ABP.
إنشاء تكوينات المقبض.
mote create [-c ./config] . ستقوم MOTE بإنشاء ملفات JSON قالب التكوين المطلوبة في دليل ./config (افتراضي). في الدليل ، يتم تضمين العديد من ملفات تكوين JSON.config.json : التكوينات الأساسية.gateway.json : Gateway EUI.device.json : معلمات الجهاز لوضع OTAA.abp.json : معلمات الجهاز لوضع ABP. تعديل الجهاز في device.json نسخ. مثال:
{
"جهاز": {
"Joineui": "00000000000000" ،
"Deveui": "0000000000000000"
} ،
"Rootkeys": {
"Appkey": "000000000000000000000000000000" ،
"NWKKEY": "000000000000000000000000000000"
}
}
ملاحظة : إذا كنت ترغب في محاكاة جهاز Lorawan 1.0 ، فأنا قم بتعيين JoinEUI أولاً مساويًا لـ AppEUI وتعيين NwkKey مساوية لـ AppKey .
تعديل معلومات تنشيط الجهاز في abp.json . مثال:
{
"Deveui": "00000000000000" ،
"Joineui": "00000000000000" ،
"Devaddr": "00000000" ،
"Appkey": "000000000000000000000000000000" ،
"NWKKEY": "000000000000000000000000000000" ،
"Nwksenckey": "000000000000000000000000000000" ،
"Snwksintkey": "000000000000000000000000000000" ،
"FNWKSINTKEY": "000000000000000000000000000000" ،
"AppSkey": "000000000000000000000000000000" ،
"fcntup": 0 ،
"الإصدار": "1.1"
}
حاليًا ، يتم دعم خمسة أنواع من الرسائل: سحب بيانات ، انضم إلى طلب ، طلب الانضمام ، أو أوامر مؤكدة (أو غير مؤكدة) (مع أو بدون FOPTS) وأوامر Mac في حقل FrmPayload:
ملاحظة : تذكر دائمًا أن mote pull للحفاظ على البوابة على قيد الحياة في الخادم.
معلومات mote سحب موت موت ABP انضم MOTE [-N] انضم Mote إلى "rebointyp" (0 ، 1 ، 2) سيتم تشفير تطبيق تطبيق MOTE (رسالة الوصلة الصاعدة ، بواسطة UTF-8) [-AUF] أمر MOTE MAC (أوامر MAC في حقل FRMPayload)
فيما يلي مثال خطوة التفاعل مع chirpstack:
سحب موت MOTE JOIN -N. تطبيق Mote HelloWorld -F 0302 mote main.py mac 0302
يتم استضافة هذا الريبو على https://github.com/houluy/lora-motes-emulator وتحت رخصة معهد ماساتشوستس للتكنولوجيا ، أي مساهمة أو اقتراح موضع ترحيب. فقط افتح مشكلة أو إرسال طلب سحب.