Utiliser un électron de particules avec Wi-Fi pendant le développement

10

Totalement nouveau pour l'IoT, ici. J'ai obtenu le nouveau dispositif IoT cellulaire Particle Electron . J'ai utilisé 5 Mo en trois heures environ. Je n'ai aucune idée de ce qui a absorbé toutes ces données. C'est la limite mensuelle, donc non, je dois attendre un autre mois pour l'utiliser ou dépenser plus d'argent pour développer.

Je ne veux pas parcourir un mois de données chaque jour, alors je me demandais s'il y avait un moyen de connecter l'Electron au Wi-Fi pendant que je le développe. Des dongles bons et faciles à configurer? J'ai cherché et je ne trouve aucun moyen de le faire facilement.

De plus, ce niveau d'utilisation des données semble-t-il anormal? Si oui, quelles sont les idées? J'ai accidentellement essayé de flasher le logiciel de bricolage sur OTA, mais c'était bien avant que la limite de données de 5 Mo ne soit atteinte. Cela ne prenait qu'un Mb. Je suppose donc que l'hébergement d'une variable sur le cloud pendant environ 2 heures a pris 5 Mo.

Toute aide serait appréciée.

Sam
la source

Réponses:

9

Le Particle Electron dispose de trois lignes UART gratuites dont vous pouvez utiliser une pour connecter un module Wi-Fi basé sur ESP8266 .

Carte des broches d'électrons des particules

L'ESP peut être contrôlé via les commandes AT, ce qui n'est pas si difficile à utiliser. Le fabricant fournit de nombreux documents pour vous aider à démarrer.


De plus, pour vous faciliter la vie, vous pouvez utiliser un peu de C ++ et de POO lors de la création de votre firmware.

Vous pouvez définir une classe d'interface qui est en fait une classe C ++ abstraite. Cette classe ne définirait que les fonctions que votre code d'application utilisera. Exemples de fonctions simples:

  • relier
  • déconnecter
  • envoyer
  • recevoir

Ce serait votre classe de base à partir de laquelle vous pourriez hériter d'une classe Cellular et d'une classe Wi-Fi pour implémenter les connect/disconnect/send/receivefonctions réelles . Ces fonctions seraient différentes pour Wi-Fi et Cellular sous le capot mais l'interface sera la même, et le résultat serait le même: connexion Internet . La classe / le code de l'appelant ne saurait pas s'il s'agit d'une connexion cellulaire ou Wi-Fi, elle sait seulement qu'il existe des connect/disconnect/send/receivefonctions à utiliser et qu'il existe Internet .

Ainsi, lorsque vous effectuez les tests, vous disposez d'une instance de classe Wi-Fi et lorsque vous avez terminé le débogage, vous pouvez simplement la changer en une instance de classe Cellular.

De cette façon, vous n'avez pas à réécrire votre code en fonction de la méthode de communication utilisée.

Bence Kaulics
la source
6

Avez-vous lu le Guide des données sur les particules? Cela montre une ventilation de la quantité de données dont chaque message a besoin.

Un petit événement publié non confirmable d'un Electron ne fait que 67 octets.

Sur Ping:

Le ping initial se traduit par 98 octets, plus l'accusé de réception de l'application est de 98 octets supplémentaires. C'est 196 octets toutes les 15 secondes, soit près de 46 kilo-octets par heure, juste en pings.

Lors de la réinitialisation:

Il existe d'autres communications dont vous n'êtes peut-être même pas au courant. Par exemple, lorsqu'un Electron s'allume ou est réinitialisé, il doit s'enregistrer auprès des tours cellulaires et du nuage de particules, et cet ensemble de messages peut utiliser jusqu'à 6 Ko

Je n'ai trouvé aucun détail sur le site Web de Particle, mais je m'attendrais à ce que vous puissiez effectuer un nombre raisonnable de tests tout en étant connecté via USB. Si rien d'autre, le coût des données vous encouragera à déboguer votre code avec soin.

Sean Houlihane
la source