Navigation

    • Register
    • Login
    • OpenHardware.io
    • Categories
    • Recent
    • Tags
    • Popular
    1. Home
    2. Dumoulin
    3. Posts
    • Profile
    • Following
    • Followers
    • Topics
    • Posts
    • Best
    • Groups

    Posts made by Dumoulin

    • RE: Domoticz(Raspberry) with Mysensor USB gateway without Radio

      Ok, I find.

      Sketchinfo was in Presntation, and should be in setup.

      void setup()
      {
          // Send the sketch version information to the gateway and Controller
          sendSketchInfo("Salon_Parents_SdJ", "1.0");
      
          for (int sensor=RELAY_Sejour_Volet1_Bas, pin=RELAY_Sejour_Volet1_Bas; sensor<=NUMBER_OF_RELAYS; sensor++, pin++) {
              // Register all sensors to gw (they will be created as child devices)
              present(sensor, S_BINARY);
          }
      
           for (int sensor=IN_Sejour_Presence1, pin=IN_Sejour_Presence1; sensor<=NUMBER_OF_INPUT; sensor++, pin++) {
              // Register all sensors to gw (they will be created as child devices)
              present(sensor, S_MOTION);
          }
      }```
      posted in My Project
      Dumoulin
      Dumoulin
    • RE: Domoticz(Raspberry) with Mysensor USB gateway without Radio

      When I put serial gateway code availiable on MySensor Site, I have the same error.

      0;255;3;0;9;MCO:BGN:INIT GW,CP=RNNGA--,VER=2.1.1
      0;255;3;0;9;TSM:INIT
      0;255;3;0;9;TSF:WUR:MS=0
      0;255;3;0;9;!TSM:INIT:TSP FAIL
      0;255;3;0;9;TSM:FAIL:CNT=1
      0;255;3;0;9;TSM:FAIL:PDT

      I try to do MySensor USB gateway without radio for physical IO on Arduino(to have relay)

      posted in My Project
      Dumoulin
      Dumoulin
    • RE: Domoticz(Raspberry) with Mysensor USB gateway without Radio

      Yes, I Have:
      0;255;3;0;9;MCO:BGN:INIT GW,CP=RNNGA--,VER=2.1.1
      0;255;3;0;9;MCO:BGN:BFR
      0;255;3;0;9;TSM:INIT
      0;255;3;0;9;TSF:WUR:MS=0
      0;255;3;0;9;!TSM:INIT:TSP FAIL
      0;255;3;0;9;TSM:FAIL:CNT=1
      0;255;3;0;9;TSM:FAIL:PDT.

      But I don't know why I have on first error :Transport device initialization failed

      posted in My Project
      Dumoulin
      Dumoulin
    • Domoticz(Raspberry) with Mysensor USB gateway without Radio

      Hello,

      I try to create USB gateway without radio, but my domoticz under raspberry don't see this gateway.

      Could you check my code?
      Thanks

      // Enable debug prints to serial monitor
      #define MY_DEBUG
      
      // Enable and select radio type attached
      //#define MY_RADIO_NRF24
      //#define MY_RADIO_RFM69
      
      // Set LOW transmit power level as default, if you have an amplified NRF-module and
      // power your radio separately with a good regulator you can turn up PA level.
      //#define MY_RF24_PA_LEVEL RF24_PA_LOW
      
      // Enable serial gateway
      #define MY_GATEWAY_SERIAL
      
      // Define a lower baud rate for Arduino's running on 8 MHz (Arduino Pro Mini 3.3V & SenseBender)
      #if F_CPU == 8000000L
      #define MY_BAUD_RATE 38400
      #endif
      
      // Enable inclusion mode
      #define MY_INCLUSION_MODE_FEATURE
      // Enable Inclusion mode button on gateway
      //#define MY_INCLUSION_BUTTON_FEATURE
      
      // Inverses behavior of inclusion button (if using external pullup)
      //#define MY_INCLUSION_BUTTON_EXTERNAL_PULLUP
      
      // Set inclusion mode duration (in seconds)
      #define MY_INCLUSION_MODE_DURATION 60
      // Digital pin used for inclusion mode button
      //#define MY_INCLUSION_MODE_BUTTON_PIN  3
      
      // Set blinking period
      #define MY_DEFAULT_LED_BLINK_PERIOD 300
      
      // Inverses the behavior of leds
      //#define MY_WITH_LEDS_BLINKING_INVERSE
      
      // Flash leds on rx/tx/err
      // Uncomment to override default HW configurations
      //#define MY_DEFAULT_ERR_LED_PIN 4  // Error led pin
      //#define MY_DEFAULT_RX_LED_PIN  6  // Receive led pin
      //#define MY_DEFAULT_TX_LED_PIN  5  // the PCB, on board LED
      
      #include <MySensors.h>
      #include <SPI.h>
      
      #define CHILD_ID 1   // Id of the sensor child
      
      #define IN_Sejour_Presence1  2  // Arduino Digital I/O pin number for Presence
      #define IN_Sejour_Presence2  3  // Arduino Digital I/O pin number for Presence
      #define IN_Sejour_Presence3  4  // Arduino Digital I/O pin number for Presence
      #define IN_ChParents_Presence  5  // Arduino Digital I/O pin number for Presence
      
      #define NUMBER_OF_INPUT 4 // Total number of attached input port
      
      #define RELAY_Sejour_Volet1_Bas  22  // Arduino Digital I/O pin number for relay
      #define RELAY_Sejour_Volet1_Stop  23  // Arduino Digital I/O pin number for relay
      #define RELAY_Sejour_Volet1_Haut  24  // Arduino Digital I/O pin number for relay
      #define RELAY_Sejour_Volet2_Bas  25  // Arduino Digital I/O pin number for relay
      #define RELAY_Sejour_Volet2_Stop  26  // Arduino Digital I/O pin number for relay
      #define RELAY_Sejour_Volet2_Haut  27  // Arduino Digital I/O pin number for relay
      #define RELAY_Sejour_Volet3_Bas  28  // Arduino Digital I/O pin number for relay
      #define RELAY_Sejour_Volet3_Stop  29  // Arduino Digital I/O pin number for relay
      #define RELAY_Sejour_Volet3_Haut  30  // Arduino Digital I/O pin number for relay
      #define RELAY_Sejour_Lumiere1  31  // Arduino Digital I/O pin number for relay
      #define RELAY_Sejour_Lumiere2  32  // Arduino Digital I/O pin number for relay
      #define RELAY_Sejour_Lumiere3  33  // Arduino Digital I/O pin number for relay
      #define RELAY_Sejour_Chauffage1  34  // Arduino Digital I/O pin number for relay
      #define RELAY_Sejour_Chauffage2  35  // Arduino Digital I/O pin number for relay
      
      #define RELAY_SdJ_Volet1_Bas  37  // Arduino Digital I/O pin number for relay
      #define RELAY_SdJ_Volet1_Stop  38  // Arduino Digital I/O pin number for relay
      #define RELAY_SdJ_Volet1_Haut  39  // Arduino Digital I/O pin number for relay
      
      #define RELAY_ChParents_Volet_Bas  41  // Arduino Digital I/O pin number for relay
      #define RELAY_ChParents_Volet_Stop  42  // Arduino Digital I/O pin number for relay
      #define RELAY_ChParents_Volet_Haut  43  // Arduino Digital I/O pin number for relay
      #define RELAY_ChParents_Lumiere  44  // Arduino Digital I/O pin number for relay
      #define RELAY_ChParents_Chauffage  45  // Arduino Digital I/O pin number for relay
      
      #define NUMBER_OF_RELAYS 32 // Total number of attached relays port 22 to 53
      #define RELAY_ON 1  // GPIO value to write to turn on attached relay
      #define RELAY_OFF 0 // GPIO value to write to turn off attached relay
      
      unsigned long Duree_Sejour_Lum1 = 60000;
      unsigned long Duree_Sejour_Lum2 = 60000;
      unsigned long Duree_Sejour_Lum3 = 60000;
      unsigned long Duree_ChParents_Lum = 60000;
      
      unsigned long SLEEP_TIME = 120000; // Sleep time between reports (in milliseconds)
      
      bool IN_Sejour_Presence1_Etat = LOW;
      bool IN_Sejour_Presence1_Etat_Avant = LOW;
      bool IN_Sejour_Presence2_Etat = LOW;
      bool IN_Sejour_Presence2_Etat_Avant = LOW;
      bool IN_Sejour_Presence3_Etat = LOW;
      bool IN_Sejour_Presence3_Etat_Avant = LOW;
      bool IN_ChParents_Presence_Etat = LOW;
      bool IN_ChParents_Presence_Etat_Avant = LOW;
      
      // Initialize motion message
      MyMessage msg(CHILD_ID, V_TRIPPED);
      
      void before()
      {
         // Send the sketch version information to the gateway and Controller
         // sendSketchInfo("MySensorBas", "1.0");
         
          for (int sensor=RELAY_Sejour_Volet1_Bas, pin=RELAY_Sejour_Volet1_Bas; sensor<=NUMBER_OF_RELAYS; sensor++, pin++) {
              // Then set relay pins in output mode
              pinMode(pin, OUTPUT);
              // Set relay to last known state (using eeprom storage)
              digitalWrite(pin, loadState(sensor)?RELAY_ON:RELAY_OFF);
          }
           pinMode(IN_Sejour_Presence1, INPUT);
           pinMode(IN_Sejour_Presence2, INPUT);
           pinMode(IN_Sejour_Presence3, INPUT);
           pinMode(IN_ChParents_Presence, INPUT);
      }
      
      void setup()
      {
      
      }
      
      void presentation()
      {
          // Send the sketch version information to the gateway and Controller
          sendSketchInfo("Salon_Parents_SdJ", "1.0");
      
          for (int sensor=RELAY_Sejour_Volet1_Bas, pin=RELAY_Sejour_Volet1_Bas; sensor<=NUMBER_OF_RELAYS; sensor++, pin++) {
              // Register all sensors to gw (they will be created as child devices)
              present(sensor, S_BINARY);
          }
      
           for (int sensor=IN_Sejour_Presence1, pin=IN_Sejour_Presence1; sensor<=NUMBER_OF_INPUT; sensor++, pin++) {
              // Register all sensors to gw (they will be created as child devices)
              present(sensor, S_MOTION);
          }
      }
      
      void loop()
      {
          // Read digital motion value
          IN_Sejour_Presence1_Etat = digitalRead(IN_Sejour_Presence1);
          if (IN_Sejour_Presence1_Etat != IN_Sejour_Presence1_Etat_Avant){
            if (IN_Sejour_Presence1_Etat == HIGH){
        //          Serial.println(IN_Sejour_Presence1_Etat);
                  send(msg.set(IN_Sejour_Presence1_Etat?"1":"0"));  // Send tripped value to gw
            }
            IN_Sejour_Presence1_Etat_Avant = IN_Sejour_Presence1_Etat;
          }
       
          // Read digital motion value
          IN_Sejour_Presence2_Etat = digitalRead(IN_Sejour_Presence2);
          if (IN_Sejour_Presence2_Etat != IN_Sejour_Presence2_Etat_Avant){
            if (IN_Sejour_Presence2_Etat == HIGH){
        //          Serial.println(IN_Sejour_Presence2_Etat);
                  send(msg.set(IN_Sejour_Presence2_Etat?"1":"0"));  // Send tripped value to gw
            }
            IN_Sejour_Presence2_Etat_Avant = IN_Sejour_Presence2_Etat;
          }
      
          // Read digital motion value
          IN_Sejour_Presence3_Etat = digitalRead(IN_Sejour_Presence3);
          if (IN_Sejour_Presence3_Etat != IN_Sejour_Presence3_Etat_Avant){
            if (IN_Sejour_Presence3_Etat == HIGH){
        //          Serial.println(IN_Sejour_Presence3_Etat);
                  send(msg.set(IN_Sejour_Presence3_Etat?"1":"0"));  // Send tripped value to gw
            }
            IN_Sejour_Presence3_Etat_Avant = IN_Sejour_Presence3_Etat;
          }
      
          // Read digital motion value
          IN_ChParents_Presence_Etat = digitalRead(IN_ChParents_Presence);
          if (IN_ChParents_Presence_Etat != IN_ChParents_Presence_Etat_Avant){
            if (IN_ChParents_Presence_Etat == HIGH){
        //          Serial.println(IN_ChParents_Presence_Etat);
                  send(msg.set(IN_ChParents_Presence_Etat?"1":"0"));  // Send tripped value to gw
            }
            IN_ChParents_Presence_Etat_Avant = IN_ChParents_Presence_Etat;
          }
      }
      
      void receive(const MyMessage &message)
      {
          // We only expect one type of message from controller. But we better check anyway.
          if (message.type==V_STATUS) {
              // Change relay state
              digitalWrite(message.sensor-1+RELAY_Sejour_Volet1_Bas, message.getBool()?RELAY_ON:RELAY_OFF);
              // Store state in eeprom
              saveState(message.sensor, message.getBool());
              // Write some debug info
         //     Serial.print("Incoming change for sensor:");
         //     Serial.print(message.sensor);
         //     Serial.print(", New status: ");
         //     Serial.println(message.getBool());
          }
      }
      
      posted in My Project
      Dumoulin
      Dumoulin