Il s'agit d'un pont transparent pur entre le WiFi et la série en utilisant n'importe quel dispositif ESP8266 pour le module Lorawan RN2483. Il est très utile pour tester ou parler à un appareil série distant tel que RN2483 qui n'ont pas de connexion réseau. Il est dédié à travailler avec le bouclier WEMOS RN2483 et je l'utilise avec le backend Lorawan Network, mais vous pouvez utiliser un autre fournisseur.
Je l'utilise sur Wemos Target, vous pouvez trouver plus d'informations sur WEMOS sur leur site, c'est vraiment bien documenté.
Ce projet est principalement basé sur l'excellent @ me-no-dev EspasyncWerver Library et le grand terminal jQuery réalisé par Jakub Jankiewicz.
Une fois les données SPIFFS téléchargées (page Web), vous pouvez vous connecter avec un navigateur sur http://ip_of_esp8266 et commencer à jouer avec. La page Web principale index.htm comprend un terminal JavaScript complet afin que vous puissiez taper la commande et recevoir une réponse.
La page Web principale peut également être hébergée n'importe où et il n'est pas obligatoire de l'avoir sur l'appareil (sauf si l'appareil et votre ordinateur n'ont pas accès sur Internet). J'ai publié la page Web entièrement Fonctionnal de GitHub afin que vous puissiez y accéder à partir d'ici, puis vous connecter à votre appareil sur ce que vous avez flashé le firmware.
Certaines commandes seront interprétées par la cible (ESP8266) et non transmises en série, vous pouvez donc interagir avec ESP8266 en faisant des choses variables.
Configuration pour la première fois (en supposant que vous utilisez le bouclier RN2483)
connect pour se connecter au périphérique local, une vérification connectée tout est une frappe finesys get ver => devrait revenir quelque chose comme RN2483 1.0.1 Dec 15 2015 09:38:09reset 12 et réessayer jusqu'à la bannièremac set appeui YOUR_APP_EUImac set appkey YOUR_APP_KEYmac set deveui YOUR_DEV_EUImac savemac join otaa Ensuite, attendez ok et accepted , puis vous êtes dedans!
Bouton-poussoir (appuyez longue pour un comportement différent)
PS: Si vous voulez que le matériel soit correct, utilisez le check-rn2483
Vous devez avoir des NodeJS et certaines dépendances installées npm install zlib .
Le dossier WebDev est le dossier de développement pour tester et valider les pages Web. Il est utilisé pour éviter de clignoter l'appareil sur chaque modification. Tous les fichiers source sont situés dans ce dossier Le dossier data ESP8266 (contenant des pages Web) est rempli par un script NodeJS lancé à partir du dossier WebDev. Ce repo contient dans les derniers fichiers de données, donc si vous ne modifiez aucun fichier, vous pouvez télécharger sur Spiffs tel quel.
Pour tester les pages Web, accédez à une ligne de commande, accédez au dossier WebDev et émettez A:
node web_server.js
Ensuite, connectez votre navigateur à htpp: // localhost: 8080 vous pouvez les modifier et tester les fichiers source tels que index.htm
Une fois que tout est bon problème A:
node create_spiffs.js
Ce fichier GZIP sera et les mettra dans le dossier de données, après cela, vous pouvez télécharger de Arduino IDE en Spiffs de l'appareil
Voir les commentaires dans les fichiers create_spiffs.js et web_server.js, il est également indiqué des dépendances nécessaires à Nodejs.
Vous pouvez également modifier par la suite le fichier directement à partir de l'appareil avec l'éditeur intégré, très utile pour modifier les fichiers de configuration par exemple. http: //your_device_ip/edit.htm avec Login Pass (admin / admin)
!close ou Ctrl-D: connexion fermeswap Swap ESP8266 PIN UART ENTRE GPIO1 / GPIO3 avec GPIO15 / GPIO13ping Ping Ping sur le terminal et ESP8266 renverra pong? ou help à montrer l'aideheap show esp8266 RAM GRATUITwhoami show websocket client # nous sommeswho montrent tous les clients WebSocket connectéssend second d'envoi automatique d'envoi chaque seconde (0 = désactiver l'envoi)fw Afficher la date / heure du micrologicielbaud esp8266 configuration de taux de bauds sériebaud n Set ESP8266 Taux de bauds en série à n (à compatble avec un appareil piloté)rgb l SET RVB LED Luminosity L (0..100)reset p réinitialiser le numéro de broche gpio plsread file Exécuter la commande de fichier SPIFFShostname Show Network Name de l'appareilrestart réinitialiser ESP8266 (redémarrage)debug afficher les informations de débogagecat file Afficher le contenu du fichierup type Envoyer un message de liaison montante (Type 0 = Type non confirmé 1 = confirmé) Chaque commande dans le fichier startup.ini est exécutée dans setup() Vous pouvez chaîner avec d'autres fichiers.
J'utilise ce croquis pour conduire le module Microchip RN2483 LORA pour tester Lorawan, voir les planches que j'ai utilisées.
Par exemple, mon fichier startup.ini contient la commande pour lire le fichier de configuration microchip rn2483 nommé rn2483-cfg.txt puis chaîne pour rejoindre otaa avec le fichier 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 Exemple de fichier de configuration pour 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 Rejoignez l'exemple de fichier de configuration TTN OTAA pour 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 Voir tout en action
http://cdn.rawgit.com/hallard/wemos-rn2483-firmware/master/wemos-rn2483/webdev/index.htm
Au fait, j'ai intégré l'éditeur Web Excellent @ Me-NO-Dev Spiffs afin que vous puissiez diriger les fichiers de configuration de modification de Spiffs allant sur http://your_module_ip/edit votre ordinateur doit être connecté à Internet (donc peut être votre appareil ESP8266) et authentifié pour cette fonctionnalité, la connexion par défaut / Pass peut être dans l'esquisse (admin / admin /)
Si vous ajoutez des fonctionnalités, n'hésitez pas à faire une demande de traction afin que je puisse fusionner vos modifications.
Voir les nouvelles et autres projets sur mon blog