Este es un puente puro transparente entre Wifi y Serial utilizando cualquier dispositivo ESP8266 para el módulo RN2483 Lorawan. Es muy útil para probar o hablar con un dispositivo serie remoto como RN2483 que no tienen conexión de red. Está dedicado a funciona con WEMOS RN2483 Shield y lo estoy usando con el backend de Lorawan de las cosas, pero puede usar otro proveedor.
Lo estoy usando en WEMOS Target, puede encontrar más información sobre WEMOS en su sitio, está muy bien documentado.
Este proyecto se basa principalmente en la excelente biblioteca de @me-no-devsyncwebserver y una gran terminal jQuery realizada por Jakub Jankiewicz.
Una vez que los datos de Spiffs cargados (página web) pueden conectarse con un navegador a http://ip_of_esp8266 y comenzar a jugar con él. La página web principal index.htm incluye un terminal JavaScript completo para que pueda escribir el comando y recibir respuesta.
La página web principal también se puede alojar en cualquier lugar y no es obligatorio tenerla en el dispositivo (excepto si el dispositivo y su computadora no tienen acceso en Internet). He publicado la página web completamente fonctionnal desde GitHub para que pueda acceder a ella desde aquí y luego conectarse a su dispositivo en lo que mostró el firmware.
Algunos comandos serán interpretados por el objetivo (ESP8266) y no pasarán a Serial, por lo que puede interactuar con ESP8266 haciendo algunas cosas variables.
Configuración por primera vez (suponiendo que esté utilizando el escudo RN2483)
connect para conectarse al dispositivo local, una verificación conectada todo está bien escribiendosys get ver => debería regresar algo como RN2483 1.0.1 Dec 15 2015 09:38:09reset 12 y vuelva a intentarlo hasta que estén bannermac set appeui YOUR_APP_EUImac set appkey YOUR_APP_KEYmac set deveui YOUR_DEV_EUImac savemac join otaa Entonces espera ok y accepted , ¡entonces estás dentro!
Botón Presione (Long Presione para un comportamiento diferente)
PD: Si solo quieres que el hardware esté bien, usa el boceto simplificado check-rn2483
Debe tener NodeJS y algunas dependencias instaladas npm install zlib .
La carpeta WebDev es la carpeta de desarrollo para probar y validar las páginas web. Se usa para evitar flashear el dispositivo en cada modificación. Todos los archivos de origen se encuentran en esta carpeta, la carpeta data ESP8266 (que contiene páginas web) se llena mediante un script NodeJS lanzado desde la carpeta WebDEV. Este repositorio contiene en los últimos archivos de datos, por lo que si no cambia ningún archivo, puede cargar a Spiffs como está.
Para probar páginas web, vaya a una línea de comando, vaya a la carpeta WebDev y emita un:
node web_server.js
Luego conecte su navegador a htpp: // localhost: 8080 puede modificarlos y probar archivos de origen como index.htm
Una vez que todo está bien, problema A:
node create_spiffs.js
Esto será el archivo GZIP y los pondrá en la carpeta de datos, después de eso, puede cargar desde Arduino IDE hasta Spiffs de dispositivo
Consulte los comentarios en los archivos create_spiffs.js y web_server.js, también se indican dependencias necesarias por NodeJS.
También puede editar el archivo directamente desde el dispositivo con el editor integrado, muy útil para cambiar los archivos de configuración, por ejemplo. http: //your_device_ip/edit.htm con pase de inicio de sesión (admin/admin)
!close o Ctrl-D: Cerrar conexiónswap Swap ESP8266 UART Pin entre GPIO1/GPIO3 con GPIO15/GPIO13ping Typing Ping en Terminal y ESP8266 enviará a Pong? o help a mostrar ayudaheap Show ESP8266 Ram gratiswhoami show websocket client # somoswho muestran a todos los clientes de WebSocket conectadossend second automóvil de envío automático cada segundo (0 = deshabilitar el envío)fw Mostrar la fecha/hora del firmwarebaud Pantalla ESP8266 Configuración de tasa de baudios en seriebaud n SET ESP8266 BAUD BAUD TARSE A N (para ser compatible con el dispositivo impulsado)rgb l set rgb led luminosity l (0..100)reset p Reset GPIO Pin Número Pls listsread file Ejecutar el comando de archivo Spiffshostname Show Nombre de host Nombre del dispositivorestart reinicio ESP8266 (reinicio)debug Show Información de depuracióncat file Pantall Content del archivoup type Enviar mensaje Uplink (tipo 0 = Tipo 1 no confirmado = Confirmado) Todos los comando en el archivo startup.ini se ejecutan en setup() Puede encadenar con otros archivos.
Estoy usando este boceto para conducir el módulo Microchip RN2483 Lora para probar Lorawan, vea las tablas que usé.
Por ejemplo, mi archivo startup.ini contiene el comando para leer microchip rn2483 archivo de configuración llamado rn2483-cfg.txt y luego cadena para unir OTAA con el archivo 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
Ejemplo de archivo de configuración RN2483 para 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 Un ejemplo de archivo de configuración TTN OTAA para 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 Ver todo en acción
http://cdn.rawgit.com/hallard/wemos-rn2483-firmware/master/wemos-rn2483/webdev/index.htm
Por cierto, integré el excelente editor web de spiffs @me-no-dev para que pueda editar archivos de configuración de spiffs que van a http://your_module_ip/edit su computadora debe conectarse a Internet (por lo que puede ser su dispositivo ESP8266) y autenticado para esta función, el registro/pase predeterminado está en el sketch (administrador/administrador)
Si agrega algunas características, no dude en hacer una solicitud de extracción para que pueda fusionar sus cambios.
Ver noticias y otros proyectos en mi blog