domotique | Mysensors Gateway à base d'Arduino nano • domotique
1488
single,single-post,postid-1488,single-format-standard,,wpb-js-composer js-comp-ver-4.1.3.1,vc_responsive

Mysensors Gateway à base d’Arduino nano

mysensors_gateway

23 mar Mysensors Gateway à base d’Arduino nano

Après la théorie Mysensors, commençons la pratique par mysensors gateway. Il existe deux types de gateway Mysensors :

  • connecté en USB
  • connecté en Ethernet

Un Gateway est vraiment très simple à mettre en oeuvre. Il sera ensuite connecté à votre centrale domotique (HomeSeer, Jeedom,…).
Nous verrons dans ce premier temps la mise en oeuvre d’un Gateway série.

Schéma Mysensors Gateway

Nous verrons prochainement un carte permettant d’accueillir un Arduino nano ainsi que la NRF24L01. En attendant, voici le câblage en filaire pour réaliser le Mysensors Gateway :

Branchement Mysensors Gateway Arduino nano

Branchement Mysensors Gateway Arduino nano


Le schéma est en soit très simple. Il sera d’ailleurs repris pour l’ensemble des montages MySensor que nous réaliserons.

Ci-dessous le tableau des couleurs pour le Mysensors Gateway. La couleur est bien entendu un exemple. Vous pouvez prendre celle de votre choix.

Couleur NRF24L01 Arduino nano
Violet Vcc 3v3
Rose GND GND
Orange SCK D13
Cyan CE D9
Bleu MISO D12
Vert MOSI D11
Gris CSN D10

Sketch Mysensors Gateway

Ci-dessous le code à téléverser dans votre arduino nano

#include <SPI.h>
#include <MySensor.h>
#include <MyGateway.h>
#include <stdarg.h>

#define INCLUSION_MODE_TIME 1
#define INCLUSION_MODE_PIN 3
MyGateway gw(DEFAULT_CE_PIN, DEFAULT_CS_PIN, INCLUSION_MODE_TIME, INCLUSION_MODE_PIN, 6, 5, 4);

char inputString[MAX_RECEIVE_LENGTH] = "";
int inputPos = 0;
boolean commandComplete = false;

void setup()
{
   gw.begin();
}

void loop()
{
   gw.processRadioMessage();
   if (commandComplete) {
      gw.parseAndSend(inputString);
      commandComplete = false;
      inputPos = 0;
   }
}

void serialEvent() {
   while (Serial.available()) {
      char inChar = (char)Serial.read();
      if (inputPos<MAX_RECEIVE_LENGTH-1 && !commandComplete) {
         if (inChar == '\n') {
            inputString[inputPos] = 0;
            commandComplete = true;
         } else {
            inputString[inputPos] = inChar;
            inputPos++;
         }
      } else {
         inputPos = 0;
      }
   }
}

Et c’est tout !
Votre gateway mysensors est opérationnel…

Guide d’achat


Arduino Nano ATmega328
L’ATmega328 a 32 ko de mémoire flash dont 2 ko utilisé pour le bootloader, 2 ko de SRAM et 1 ko d’EEPROM.

2,86 €
5,70 €



10pcs NRF24L01 + 2.4GHz Wireless Transceiver
Emetteur/Récepteur radio permettant à vos capteurs de communiquer ensemble. La portée de cet émetteur/récepteur est donné à 60 mètres.

7,96 €
14,44 €



Câble 40pcs 20cm Male/Femelle
Câble pour le montage de vos arduino et vos capteurs.

1,00 €
2,58 €



Breadboard Carte d’expérimentation 400 points
Câble pour le montage de vos arduino et vos capteurs.

3,90 €
1,78 €

Be Sociable, Share!
Tags:
,
No Comments

Sorry, the comment form is closed at this time.