Lorawan et TTN... sans EUI.[Non Résolu]

Bonjour ! ceci est mon premier message ici (et demande sur un forum en terme general), donc je m’excuse en avance si je n’ai pas assimilé la sacro-sainte charte ;_;.

En gros, voici mon problème: je suis en train d’essayer de connecter mon Arduino (un ATMEGA2560) avec The Things Networks, sachant sur l’arduino sont branchés un acw_duino (Atim) en tant que shield avec le capteur lorawan.

Pour l’instant, base de mon problème, je n’arrive pas à afficher les données associés à l’arduino , notamment ce dont j’ai besoin et qu’on me demande (et redemande), à savoir l’EUI .

Voici mon code pour tenter de le chopper:

#include <TheThingsNetwork.h>

#include <lmic.h>
#include <hal/hal.h>
#include <SPI.h>

//set your APPEUI and your APPkey
//const char *appEUI = "000";
//const char *appKey = "000000";

#define loraSerial Serial1
#define debugSerial Serial

//replace REPLACE_ME with TTN_FP_EU868 or TTN_FP_US915
#define freqPlan TTN_FP_EU868

TheThingsNetwork ttn(loraSerial, Serial, freqPlan);

void setup() {
  // put your setup code here, to run once:
  loraSerial.begin(57600); //serial port to computer
  debugSerial.begin(9600); //serial port to radio

    //wait a maximum of ten seconds from the Serial monitor
  while (!debugSerial && millis() < 10000);

 

  debugSerial.println("--STATUS");
  ttn.showStatus();
}

void loop() {
  // put your main code here, to run repeatedly:

}

Petite spécifitée à ce sujet, il semblerait que quand je retire le shield, le code téléverse correctement. Une fois le shield mit, en revanche, on me renvoie ce message d’erreur:

avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_getsync(): timeout communicating with programmer
An error occurred while uploading the sketch

Je suis encore débutant à ce sujet, et il se trouve que je n’arrive tout bonnement pas a ce que l’EUI (dont j aurai besoin par la suite il me semble) s’affiche.

Par ailleurs, vu que le site TheThingsNetwork soit basé sur Leonardo, j’ai tenté de suivre le tutoriel du wiki dragino (qui conseille pour l’utilisation de l’atmega2560), mais… ils mentionnent que j’ai besoin de l’EUI, ce que je suis incapable de fournir actuellement.

Merci d’avance de votre support.

Bonjour et Bienvenue

A ma connaissance les EUI (application et device) s'obtiennent en créant un device sur le site TTN et en choisissant la méthode d'activation OTAA

Pour information j'ai fait un petit tutoriel de prise en mains de TTN (device, passelle, site TTN...)

Dans mon cas c'est l'activation ABP qui est montrée, l'un des devices tourne sur une petite carte Pro Mini associée à un transceiver LoRa doté d'une puce SX1276.
A défaut de passerelle TTN à proximité j'utilise une mini passerelle (mono fréquence) basée sur une carte ESP32+LoRa

Je ne connais pas la carte Atim que vous utilisez et ses conditions d'emploi (UART ou SPI ?)

Votre code peut donner l'idée d'une confusion entre
-gestion du transceiver LoRa par SPI (lib LMIC ou TinyLoRa)
-gestion par UART (commandes AT ou librairie spécifique)

IL faut je pense clarifier les points suivants :
-création d'un 'device' ou d'une mini passerelle ?
-choix d'une activation ABP ou OTAA ?
-liaison SPI ou UART entre carte Arduino et composant LoRa ?

le shield acwduino d'ATIM a un mode d'emploi particulier


Il embarque un microcontrolleur ARM qui prend en charge totalement la gestion de la puce radio,
ATIM fournit une librairie (Armapi) pour gérer son module

Etudier le mode d'emploi du shield sans chercher à reproduire des tutos basés sur un autre matériel !!

Site d'ATIM https://www.atim.com/download/4649/

La société YADOM (Angers) fournit également de la documentation pour ce shield d'ATIM

N.B : La documentation du shield mentionne d'ailleurs que, par conception, le téléchargement de la carte Arduino par bootloader doit se faire shield déconnecté

En résumé : RTFM !!

Mon problème réside la: pour le TTN, ils demandent l'EUI en question, EUI ou je n'ai pas acces, hormis en faisant un remplissage auto (ce qui ne m'aide pas vraiment pour connecter ledit arduino derriere)

Même en utilisant la fonction d'exemple de ttn pour afficher le status, cela ne retourne aucun résultat. Voici l'apparence actuelle et l'ensemble de mon équipement d'ailleurs (sans compter les détecteurs que je devrais utiliser plus tart)

Retirer le shield, effectivement, me retire le problème du timeout o/.

Pour les points à éclairer:

-création d'un 'device' ou d'une mini passerelle ? -> Pour l'instant je cherche juste a ce que l'arduino ci-dessus soit repéré par TTN. Mais je dirais Device vu que j'ignore comment fonctionne les mini passerelles.

-choix d'une activation ABP ou OTAA ? -> vu que le futur objet risque de pas mal bouger (GPS oblige), j'étais partir sur l'OTAA.

-liaison SPI ou UART entre carte Arduino et composant LoRa ? -> Du fait de mon manque de connaissance, je ne saurais répondre. Je vais me renseigner sur la difference de mon coté, pour moi c'est encore assez flou.

Même en utilisant la fonction d'exemple de ttn pour afficher le status, cela ne retourne aucun résultat

Quel exemple ? un exemple adapté au shield ATIM utilisé ? un exemple quelconque trouvé sur la toile ?
Ce shield semble assez particulier... et peu employé.
(Un code d'activation TTN prévu pour une carte différente ne peut pas fonctionner, il n'y a pas de code générique)

Pour l'activation par OTAA le dialogue (négociation) avec le serveur TTN me parait être un prérequis , dialogue qui ne peut se faire qu'avec une carte fonctionnelle, gérée correctement par la carte Arduino.

Il faut obligatoirement partir sur un code prévu pour ce shield ATIM , code bâti pour faire un 'device' activé sur le réseau TTN en OTAA (si le choix est fait)

Si la doc du shield ou le dépot github n'en propose pas contacter le sav Yadom si le shield a été acquis chez eux, ils sont réactifs. Sinon contacter directement ATIM pour avoir de l'aide sur leur produit.

(Pourquoi avoir choisi ce shield un brin confidentiel et non l'une des solutions couramment utilisées pour faire un device TTN, bien documentée, faisant 'objet d'échanges sur le forum TTN......?)

Une carte Arduino MKR WAN1300 qui offre une solution prête à l'emploi, complète et bien supportée :

L'exemple de TheThingsNetwork, les morceaux de codes "fonctionnels" implémentés de base et sensé test les téleversement.

ouvrir arduino, puis File -> Examples -> TheThingsNetwork-> DeviceInfo

Je vais contacter ATIM du coup, en espérant avoir plus d'indication de leurs part. Parce que si effectivement il faut quelque chose de spécifique...

(pour en avoir les raisons... disons que ce n'est pas moi qui ai choisi XD. Sinon j aurai prit un arduino leonardo par défaut je pense).

Je vais check pour récupérer le MKR WAN1300 ou un leonardo, merci (un conseil a me donner entre ces deux-la?).

L'exemple de TheThingsNetwork, les morceaux de codes "fonctionnels" implémentés de base et sensé test les téleversement.

ouvrir arduino, puis File -> Examples -> TheThingsNetwork-> DeviceInfo

La librairie The Thing Networks téléchargeable avec le gestionnaire de librairie est prévue esclusivement pour une puce radio LoRa bien particulière : Microchip RN2483 elle ne gère pas les autres puces radio LoRa (courantes comme les SX1276 ..... ou beaucoup moins courantes comme le shield ATIM)
c'est écrit dans la présentation.

Je vais check pour récupérer le MKR WAN1300 ou un leonardo, merci (un conseil a me donner entre ces deux-la?)

elles ne sont pas comparables :

la carte Leonardo comporte un microcontrolleur mais pas de puce radio LoRA, il faudra donc lui ajouter des composants , un module, un shield..... pour LoRa/LoRaWAN

la carte MKR WAN 1300 est complète : microcontrolleur ARM + puce radio LoRa (ajouter un antenne adaptée si elle n'est pas livrée avec)

Pour se simplifier la vie, partir sur une base matérielle complète et prète à l'emploi, MKR WAN1300 sans hésiter (avec une contrainte : fonctionne sous 3,3V et n'accepte pas de niveaux logiques 5V sur les Entrées de signaux.)

La librairie The Thing Networks téléchargeable avec le gestionnaire de librairie est prévue esclusivement pour une puce radio LoRa bien particulière : Microchip RN2483 elle ne gère pas les autres puces radio LoRa (courantes comme les SX1276 ..... ou beaucoup moins courantes comme le shield ATIM)

Mmmmh c'est noté. J'espère que je n'aurai pas ce soucis de microchip avec Leonardo ou MKR WAN, du coup. (ou que je trouve une autre librairie a utiliser)

elles ne sont pas comparables :

la carte Leonardo comporte un microcontrolleur mais pas de puce radio LoRA, il faudra donc lui ajouter des composants , un module, un shield..... pour LoRa/LoRaWAN

la carte MKR WAN 1300 est complète : microcontrolleur ARM + puce radio LoRa (ajouter un antenne adaptée si elle n'est pas livrée avec)

Pour se simplifier la vie, partir sur une base matérielle complète et prète à l'emploi, MKR WAN1300 sans hésiter (avec une contrainte : fonctionne sous 3,3V et n'accepte pas de niveaux logiques 5V sur les Entrées de signaux.)

Mmmh, en soit, le shield ATIM que j'ai utilisé (image ci-dessus) pourrait etre applicable sur le leonardo, ou pas du tout? (ou il faudra recommander, disons, un package entier?)

Contrainte intéressante. J'ai encore un peu de mal a jouer avec les Entrées cependant, j espere que ca n'handicapera pas les capteurs que je vais utilisé.

Il me semble que le shield d'Atim est compatible Leonardo, d'après son fabricant.

Mais votre pb réside surtout dans un manque d'infos concernant l'utilisation de ce shield.
Remplacer la carte Mega 2560 par une Leonardo ne vous avancera sur ce point essentiel.

J'ai du mal a comprendre qu'Atim fasse un shield LoRa au format Arduino, donc à priori orienté 'makers', sans proposer de code exemple pour le LoRa, voire le LoRaWAN de TTN.
Le microcontrolleur ARM de votre shield est sans doute livré avec un firmware, vous ne pouvez rien faire sans mode d'emploi de ce firmware.

Pourquoi s'être compliqué la vie en choisissant ce matériel, si son fabriquant , son distributeur.. ne fournissent pas de support?
Je suis tombé içi sur un petit code test pour Sigfox, mais rien d'équivalent pour LoRa ou LoRaWAN

A mon avis si vous n'obtenez pas d'Atim ou son distributeur (Yadom ? Lextronic? autre ?) les bonnes infos, exemples.... , mettre le shield dans un tiroir en attendant des jours meilleurs et partir sur une solution viable prète à l'emploi. (MKRWAN1300) ou assemblez un petit module LoRa 868MHz genre RFM95w et une carte Arduino quelconque.

Des petits circuits adaptateurs de niveaux logiques permettraient d'interfacer une carte MKRWAN 1300 sous 3,3V avec des capteurs sous 5V. Ce n'est pas un pb.