WemosTTGO

De Kernel Fablab Lannion
Aller à : navigation, rechercher
Ttgo box.jpg

Terminal Lora

Cette page concerne le TTGO ESP32 T3 v1. Voir les autres cartes ici : TTGO

C'est un terminal basé sur une puce SX1276

Utilisation

Connexion au terminal via USB via un câble court

Installation des cartes ESP32, au choix :

Bibliothèques nécessaires (à installer via Manage Libraries) :

Configuration :

  • On choisit le type de carte : "TTGO-LoRa32-OLED V1"
  • Moniteur série à 115200 bauds
  • Attention : changer la configuration radio pour l'Europe dans ~/Arduino/libraries/MCCI_LoRaWAN_LMIC_library/project_config/lmic_project_config.h, on doit avoir les lignes :
#define CFG_eu868 1
#define CFG_sx1276_radio 1

et avec ce code ou ce code on voit des paquets arriver

$ APP_ACCESS_KEY=ttn-account-v2.XXXXXX # récupérée dans l'interface TTN/Applications/wemostangi
$ mosquitto_sub -h eu.thethings.network -t '+/devices/+/up' -u 'wemostangi' -P "$APP_ACCESS_KEY" -v --cafile ~/sources/LoRa/mqtt-ca.pem -p 8883

wemostangi/devices/wemos1/up {"app_id":"wemostangi","dev_id":"wemos1","hardware_serial":"003FF0004014FF87","port":1,"counter":26,"payload_raw":"SGVsbG8sIHdvcmxkIQ==","payload_fields":{"message":"Hello, world!"},"metadata":{"time":"2018-11-19T17:41:34.533665527Z","frequency":867.7,"modulation":"LORA","data_rate":"SF7BW125","airtime":61696000,"coding_rate":"4/5","gateways":[{"gtw_id":"eui-fcc23dfffe106153","timestamp":2881267900,"time":"2018-11-19T17:41:34.521945Z","channel":6,"rssi":-103,"snr":7.5,"rf_chain":0,"latitude":48.XXX,"longitude":-3.XXX,"altitude":43}]}}

Émission

On peut également descendre des données vers le terminal.

Pour cela, soit :!

  • aller dans la partie device et remplir la partie Downlink->PayLoad
  • via mqtt :
$ APP_ACCESS_KEY=ttn-account-v2.XXXXX
$ mosquitto_pub -h eu.thethings.network -t 'wemostangi/devices/wemos1/down' -u 'wemostangi' -P "$APP_ACCESS_KEY" --cafile ~/sources/LoRa/mqtt-ca.pem -p 8883 -m '{"payload_raw": "AQ=="}'

Note: le champ payload_raw est encodé en base64, vous pouvez le (de)coder en bash ainsi :

# encode la valeur 1 (ie: le nombre 1, pas le caractère 1)
$ echo -ne "\x1"| base64 
AQ==
# décode une payload et l'affiche sous forme lisible (nombre et caractère correspondant si affichable)
$ echo "AQ=="|base64 -d|hexdump -C
00000000  01                                                |.|
00000001

Ajout GPS

Ttgo gps.jpg

Pour créer une balise GPS/LoRa et mapper la couverture sur TTN Mapper. ie: comme le projet WemosTTGO GPS

hardware

Connexion d'un GPS NEO-M8 en liaison série. l'ESP32 récupère les données GPS via le protocole NMEA.

TtgoLoRa32 GPS conn.jpg

Note: on est obligés d'utiliser d'autres broches pour connecter au gps, car la broche 15 (gps_rx sur le T-Beam) est utilisée par l'écran oled sur cette carte

software

Un exemple de lecture des données GPS est disponible ici : TTGOGps. Il est basé sur la bibliothèque mininmea. Note: ce n'est pas cette bibliothèque que l'on utilisera pour faire la balise GPS


Pour une balise GPS avec écran : Utilisation du code commun avec WemosTTGO GPS disponible ici : LoraWemosGPS. Bien penser à modifier le fichier hw.h pour choisir la bonne carte :

/** for TTGO LoRa32 v1 **/
// with connections as defined here : https://wiki.fablab-lannion.org/index.php?title=WemosTTGO#Ajout_GPS
#define GPS_TX 23
#define GPS_RX 22
// has an oled screen
#define OLED 1

Liens utiles

doc

pinout TTGO ESP32 v1

TTGO-LORA32-868-915Mhz-SX1276-ESP32-Oled.jpg

Bibliographie

https://www.ebay.fr/itm/273133909852?ViewItem=&item=273133909852

https://ictoblog.nl/2018/01/13/my-chinese-esp32-sx1276-board-dht11-connected-to-the-things-network-1

https://github.com/osresearch/esp32-ttgo

https://www.youtube.com/watch?v=2Q4O88hmjzE

https://primalcortex.wordpress.com/2017/11/24/the-esp32-oled-lora-ttgo-lora32-board-and-connecting-it-to-ttn/

https://hackaday.io/project/27791-esp32-lora-oled-module

https://github.com/CaptIgmu/Arduino/tree/master/esp32/TTGO_LoRa32_OLED

https://github.com/matthijskooijman/arduino-lmic

https://www.hackster.io/Amedee/the-things-network-node-for-ttnmapper-org-a8bcd4

https://robotzero.one/heltec-wifi-lora-32/