هذا جسر شفاف نقي بين WiFi و Serial باستخدام أي جهاز ESP8266 لوحدة RN2483 Lorawan. إنه مفيد جدًا للاختبار أو التحدث إلى الجهاز التسلسلي عن بُعد مثل RN2483 الذي ليس له اتصال بالشبكة. إنه مخصص للعمل مع Wemos RN2483 Shield وأنا أستخدمه مع الواجهة الخلفية لشبكة Things Network ولكن يمكنك استخدام مزود آخر.
أنا أستخدمه على Target Wemos ، يمكنك العثور على مزيد من المعلومات حول Wemos على موقعهم ، وهو موثق جيدًا حقًا.
يعتمد هذا المشروع بشكل أساسي على مكتبة @me-no-dev espasyncwebserver ومحطة jQuery الرائعة التي قام بها Jakub Jankiewicz.
بمجرد تحميل بيانات spiffs (صفحة الويب) ، يمكنك الاتصال بمتصفح إلى http://ip_of_esp8266 والبدء في اللعب به. تتضمن صفحة الويب الرئيسية index.htm محطة JavaScript كاملة حتى تتمكن من كتابة الأمر واستلام الاستجابة.
يمكن أيضًا استضافة صفحة الويب الرئيسية في أي مكان وليس إلزاميًا على الجهاز (باستثناء إذا لم يكن لدى الجهاز وجهاز الكمبيوتر أي وصول على الإنترنت). لقد نشرت صفحة الويب FonctionNal بالكامل من GitHub حتى تتمكن من الوصول إليها من هنا ثم الاتصال بجهازك على البرامج الثابتة.
سيتم تفسير بعض الأوامر بواسطة الهدف (ESP8266) ولم يتم نقلها إلى المسلسل ، بحيث يمكنك التفاعل مع ESP8266 القيام ببعض الأشياء المتغيرة.
الإعداد لأول مرة (على افتراض أنك تستخدم درع RN2483)
connect للاتصال بالجهاز المحلي ، والتحقق من كل شيء متصل بالكتابة على ما يرامsys get ver => يجب أن تعود في وقت ما مثل RN2483 1.0.1 Dec 15 2015 09:38:09reset 12 وأعد إعادة المحاولة حتى لافتةmac set appeui YOUR_APP_EUImac set appkey YOUR_APP_KEYmac set deveui YOUR_DEV_EUImac savemac join otaa ثم انتظر ok accepted ، ثم أنت في!
زر الضغط (اضغط لفترة طويلة للحصول على سلوك مختلف)
ملاحظة: إذا كنت تريد فقط أن تكون الأجهزة على ما يرام ، فاستخدم رسم check-rn2483 المبسط
تحتاج إلى وجود NodeJs وبعض التبعيات تثبيت npm install zlib .
مجلد WebDev هو مجلد التطوير لاختبار صفحات الويب والتحقق من صحة. يتم استخدامه لتجنب وميض الجهاز على كل تعديل. توجد جميع ملفات المصدر في هذا المجلد ، يتم ملء مجلد data ESP8266 (يحتوي على صفحات الويب) بواسطة برنامج نصي NodeJS الذي تم إطلاقه من مجلد WebDev. يحتوي هذا الريبو في أحدث الملفات في البيانات ، لذا إذا لم تقم بتغيير أي ملف ، فيمكنك التحميل على spiffs كما هو.
لاختبار صفحات الويب ، انتقل إلى سطر الأوامر ، وانتقل إلى مجلد WebDev واصنة:
node web_server.js
ثم قم بتوصيل متصفحك إلى htpp: // localhost: 8080 يمكنك أن يكون ذلك modidy واختبار ملفات مصدر مثل index.htm
بمجرد أن يكون كل شيء على ما يرام ، العدد أ:
node create_spiffs.js
سيؤدي هذا إلى ملف GZIP ووضعه في مجلد بيانات ، وبعد ذلك يمكنك التحميل من Arduino IDE إلى spiffs الجهاز
انظر التعليقات في ملفات Create_Spiffs.js و Web_Server.js ، يشار أيضًا إلى التبعيات التي تحتاجها NodeJS.
يمكنك أيضًا تحرير الملف مباشرة من الجهاز مع محرر متكامل ، مفيد للغاية لتغيير ملفات التكوين على سبيل المثال. http: //your_device_ip/edit.htm مع تمرير تسجيل الدخول (المسؤول/المسؤول)
!close أو Ctrl-D: اتصال قريبswap SWAP ESP8266 UART PIN بين GPIO1/GPIO3 مع GPIO15/GPIO13ping tryping ping على terminal و ESP8266 سوف يعيد Pong? أو help في إظهار المساعدةheap عرض ESP8266 رام مجانيwhoami عرض عميل WebSocket # نحنwho يعرضون جميع عملاء WebSocket متصلينsend second كل ثانية (0 = تعطيل إرسال)fw عرض البرامج الثابتة تاريخ/الوقتbaud Display ESP8266 Consial Baud Configbaud n Set ESP8266 معدل باود التسلسلي إلى N (لتكون متماسكة مع مدفوعة الجهاز)rgb l Set RGB LED Luminosity L (0..100)reset p Reset GPIO PIN رقم Pls قائمة ملفات spiffsread file تنفيذ ملف spiffshostname عرض الشبكة اسم مضيف الجهازrestart إعادة تعيين ESP8266 (إعادة التشغيل)debug Show Debug Informationcat file من الملفup type إرسال رسالة الوصلة الصاعدة (اكتب 0 = نوع غير مؤكد 1 = مؤكد) يتم تنفيذ كل أمر في ملف startup.ini setup()
أنا أستخدم هذا المخطط لدفع Microchip RN2483 Lora Module لاختبار Lorawan ، انظر الألواح التي استخدمتها.
على سبيل المثال ، يحتوي ملف startup.ini الخاص بي على أمر لقراءة ملف التكوين microchip RN2483 المسماة rn2483-cfg.txt ثم السلسلة للانضمام إلى OTAA مع ملف rn2483-ttn-otaa.txt
startup.ini
# Startup config file executed once in setup()
# commands prefixed by ! are executed by ESP
# all others passed to serial module
# Set Onboard RGB LED luminosity (0=off 100=full light)
! rgb 50
# Microchip Lora rn2483 configuration
! read /rn2483-cfg.txt
# Join ttn in otaa mode
! read /rn2483-ttn-otaa.txt
مثال ملف التكوين RN2483 لـ RN2483 SHIELD rn2483-cfg.txt
# Startup config file for Microchip RN2483
# commands prefixed by ! or $ are executed by ESP all others passed to serial module
# command starting with $ wait until device return n
# RN2483 always return string followed by "rn" on each command (ex "okrn")
# so $ wait a response (good or not) before sending next command
# !delay or any $ are not executed when connected via browser web terminal (websocket)
# See schematics here https://github.com/hallard/WeMos-RN2483
# Set ESP Module serial speed (RN2483 is 57600)
# as reminder, it's now done in sketch
# !baud 57600
# !delay 50
# For Hardware boards V1.1+
# -------------------------
# reset RN2483 module
$reset 12
# !baud 57600
# !delay 50
# Wired GPIO to output
$sys set pinmode GPIO1 digout
$sys set pinmode GPIO10 digout
# Light on the LED on all GPIO
$sys set pindig GPIO1 1
$sys set pindig GPIO10 1
# Custom config here
# ------------------
# Set Power Max
$radio set pwr 14 RN2483 انضم إلى ملف تكوين TTN OTAA مثال على RN2483 SHIELD rn2483-otaa.txt
# Startup config file for Microchip RN2483 join TTN in otaa
# commands prefixed by ! or $ are executed by ESP all others passed to serial module (RN2483)
# command starting with $ wait until device return n
# RN2483 always return string followed by "rn" on each command (ex "okrn")
# so $ wait a response (good or not) before sending next command
# !delay or any $ are not executed when connected via browser web terminal (websocket)
# See schematics here https://github.com/hallard/WeMos-RN2483
# Your device should have been registered on TTN before using, here is how to
# On the RN2483, use `sys get hweui` and `mac get deveui`
# you then get the devices hweui & deveui, They are probably the same
# then register device on TTN console dashboard
# Then you must setup your keys (obtained from TTN console dashboard)
# Personnaly I prefer setup the 3 fixed values in TTN dashboard
# then put them into the RN2483 module
# then on RN2483 device (1st setup, then don't need to be set again)
# $mac set appeui YOUR_APP_EUI
# $mac set appkey YOUR_APP_KEY
# $mac set deveui YOUR_DEV_EUI
# and saved with `mac save`
# $mac save
# Then Join TTN Network
$mac join otaa انظر كل شيء في العمل
http://cdn.rawgit.com/hallard/wemos-rn2483-firmware/master/wemos-rn2483/webdev/index.htm
بالمناسبة ، قمت بدمج محرر الويب الممتاز @me-no-dev spiffs حتى تتمكن من تحرير ملفات التكوين من الانتقال إلى http://your_module_ip/edit
إذا قمت بإضافة بعض الميزات ، فلا تتردد في تقديم طلب سحب حتى أتمكن من دمج التغييرات الخاصة بك.
انظر الأخبار والمشاريع الأخرى على مدونتي