Skip to content
  • MySensors
  • OpenHardware.io
  • Categories
  • Recent
  • Tags
  • Popular
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo
  1. Home
  2. Controllers
  3. Home Assistant
  4. Motion Sensor not presenting to RS485 Gateway / TSM:FPAR:NO REPLY

Motion Sensor not presenting to RS485 Gateway / TSM:FPAR:NO REPLY

Scheduled Pinned Locked Moved Home Assistant
12 Posts 4 Posters 951 Views 5 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M mrhutchinsonmn

    Hardware: Arduino nano boards+ RS485 devices with separate 5 volt power supply

    I am trying to set up my 1st Rs485 gateway motion sensor on Home Assistant, per the following tutorial:
    https://www.mysensors.org/build/rs485

    The motion sensor is not presenting itself to the gateway, so I did some digging and found this thread on the subject:

    https://forum.mysensors.org/topic/11048/mqtt-ethernet-gateway-with-wired-rs485-network.

    I have things wired up as per this pic provided in the tutorial

    Although I am not using mqtt, everything seemed to be pertinent but I was still unable to get communication between the sensor and gateway.

    Ha logs show the gateway seems to be happy:

    [mysensors] Connected to Serial<id=0x7f2fd0c2f518, open=True>(port='/dev/ttyUSB0', baudrate=115200, bytesize=8, parity='N', stopbits=1, timeout=0, xonxoff=False, rtscts=False, dsrdtr=False)
    2020-10-05 13:17:05 INFO (MainThread) [mysensors] Connected to <_SelectorSocketTransport fd=25 read=idle write=<idle, bufsize=0>>
    p:Gateway startup complete.
    

    However serial monitor for the motion sensor shows the following:

    
    |  \/  |_   _/ ___|  ___ _ __  ___  ___  _ __ ___
    | |\/| | | | \___ \ / _ \ `_ \/ __|/ _ \| `__/ __|
    | |  | | |_| |___| |  __/ | | \__ \  _  | |  \__ \
    |_|  |_|\__, |____/ \___|_| |_|___/\___/|_|  |___/
            |___/                      2.3.2
    
    16 MCO:BGN:INIT NODE,CP=RSNNA---,FQ=16,REL=255,VER=2.3.2
    26 TSM:INIT
    28 TSF:WUR:MS=0
    29 TSM:INIT:TSP OK
    31 TSM:FPAR
    33 ?TSF:MSG:SEND,255-255-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
    2041 !TSM:FPAR:NO REPLY
    2043 TSM:FPAR
    2045 ?TSF:MSG:SEND,255-255-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
    4054 !TSM:FPAR:NO REPLY
    4056 TSM:FPAR
    4058 ?TSF:MSG:SEND,255-255-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
    6066 !TSM:FPAR:NO REPLY
    6068 TSM:FPAR
    6070 ?TSF:MSG:SEND,255-255-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
    8078 !TSM:FPAR:FAIL
    8079 TSM:FAIL:CNT=1
    8081 TSM:FAIL:DIS
    8083 TSF:TDI:TSL
    18085 TSM:FAIL:RE-INIT
    18087 TSM:INIT
    18088 TSM:INIT:TSP OK
    

    Gateway sketch:

    /**
    * The MySensors Arduino library handles the wireless radio link and protocol
    * between your home built sensors/actuators and HA controller of choice.
    * The sensors forms a self healing radio network with optional repeaters. Each
    * repeater and gateway builds a routing tables in EEPROM which keeps track of the
    * network topology allowing messages to be routed to nodes.
    *
    * Created by Henrik Ekblad <henrik.ekblad@mysensors.org>
    * Copyright (C) 2013-2019 Sensnology AB
    * Full contributor list: https://github.com/mysensors/MySensors/graphs/contributors
    *
    * Documentation: http://www.mysensors.org
    * Support Forum: http://forum.mysensors.org
    *
    * This program is free software; you can redistribute it and/or
    * modify it under the terms of the GNU General Public License
    * version 2 as published by the Free Software Foundation.
    *
    *******************************
    *
    * DESCRIPTION
    * The RS485 Gateway prints data received from sensors on the serial link.
    * The gateway accepts input on seral which will be sent out on
    * the RS485 link.
    *
    * Wire connections (OPTIONAL):
    * - Inclusion button should be connected between digital pin 3 and GND
    * - RX/TX/ERR leds need to be connected between +5V (anode) and digital pin 6/5/4 with resistor 270-330R in a series
    *
    * LEDs (OPTIONAL):
    * - RX (green) - blink fast on radio message received. In inclusion mode will blink fast only on presentation received
    * - TX (yellow) - blink fast on radio message transmitted. In inclusion mode will blink slowly
    * - ERR (red) - fast blink on error during transmission error or receive crc error
    *
    * If your Arduino board has additional serial ports
    * you can use to connect the RS485 module.
    * Otherwise, the gateway uses AltSoftSerial to handle two serial
    * links on one Arduino. Use the following pins for RS485 link
    *
    *  Board          Transmit  Receive   PWM Unusable
    * -----          --------  -------   ------------
    * Teensy 3.0 & 3.1  21        20         22
    * Teensy 2.0         9        10       (none)
    * Teensy++ 2.0      25         4       26, 27
    * Arduino Uno        9         8         10
    * Arduino Leonardo   5        13       (none)
    * Arduino Mega      46        48       44, 45
    * Wiring-S           5         6          4
    * Sanguino          13        14         12
    *
    */
    
    // Enable debug prints to serial monitor
    #define MY_DEBUG
    
    // Enable RS485 transport layer
    #define MY_RS485
    
    // Define this to enables DE-pin management on defined pin
    #define MY_RS485_DE_PIN 2
    
    // Set RS485 baud rate to use
    #define MY_RS485_BAUD_RATE 115200
    
    // Enable this if RS485 is connected to a hardware serial port
    #define MY_RS485_HWSERIAL Serial
    
    // Enable serial gateway
    #define MY_GATEWAY_SERIAL
    
    
    // Enable inclusion mode
    //#define MY_INCLUSION_MODE_FEATURE
    // Enable Inclusion mode button on gateway
    //#define MY_INCLUSION_BUTTON_FEATURE
    // 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
    
    // Flash leds on rx/tx/err
    #define MY_DEFAULT_ERR_LED_PIN 4  // Error led pin
    #define MY_DEFAULT_RX_LED_PIN  5  // Receive led pin
    #define MY_DEFAULT_TX_LED_PIN  6  // the PCB, on board LED
    
    #include <MySensors.h>
    
    void setup()
    {
      // Setup locally attached sensors
    }
    
    void presentation()
    {
      // Present locally attached sensors
    }
    
    void loop()
    {
      // Send locally attached sensor data here
    }
    
    

    Motion detector Sketch:

    /*
     * The MySensors Arduino library handles the wireless radio link and protocol
     * between your home built sensors/actuators and HA controller of choice.
     * The sensors forms a self healing radio network with optional repeaters. Each
     * repeater and gateway builds a routing tables in EEPROM which keeps track of the
     * network topology allowing messages to be routed to nodes.
     *
     * Created by Henrik Ekblad <henrik.ekblad@mysensors.org>
     * Copyright (C) 2013-2019 Sensnology AB
     * Full contributor list: https://github.com/mysensors/MySensors/graphs/contributors
     *
     * Documentation: http://www.mysensors.org
     * Support Forum: http://forum.mysensors.org
     *
     * This program is free software; you can redistribute it and/or
     * modify it under the terms of the GNU General Public License
     * version 2 as published by the Free Software Foundation.
     *
     *******************************
     *
     * REVISION HISTORY
     * Version 1.0 - Henrik Ekblad
     *
     * DESCRIPTION
     * This is an example of sensors using RS485 as transport layer
     *
     * Motion Sensor example using HC-SR501
     * http://www.mysensors.org/build/motion
     *
     * If your Arduino board has additional serial ports
     * you can use to connect the RS485 module.
     * Otherwise, the transport uses AltSoftSerial to handle two serial
     * links on one Arduino. Use the following pins for RS485 link
     *
     *  Board          Transmit  Receive   PWM Unusable
     * -----          --------  -------   ------------
     * Teensy 3.0 & 3.1  21        20         22
     * Teensy 2.0         9        10       (none)
     * Teensy++ 2.0      25         4       26, 27
     * Arduino Uno        9         8         10
     * Arduino Leonardo   5        13       (none)
     * Arduino Mega      46        48       44, 45
     * Wiring-S           5         6          4
     * Sanguino          13        14         12 *
     *
     */
    
    // Enable debug prints to serial monitor
    #define MY_DEBUG
    
    // Enable RS485 transport layer
    #define MY_RS485
    
    // Define this to enables DE-pin management on defined pin
    #define MY_RS485_DE_PIN 2
    
    // Set RS485 baud rate to use
    #define MY_RS485_BAUD_RATE 115200
    
    // Enable this if RS485 is connected to a hardware serial port
    //#define MY_RS485_HWSERIAL Serial
    
    #include <MySensors.h>
    
    uint32_t SLEEP_TIME = 120000; // Sleep time between reports (in milliseconds)
    #define DIGITAL_INPUT_SENSOR 3   // The digital input you attached your motion sensor.  (Only 2 and 3 generates interrupt!)
    #define MY_NODE_ID 123
    #define CHILD_ID 1   // Id of the sensor child
    
    // Initialize motion message
    MyMessage msg(CHILD_ID, V_TRIPPED);
    
    void setup()
    {
      pinMode(DIGITAL_INPUT_SENSOR, INPUT);      // sets the motion sensor digital pin as input
    }
    
    void presentation()
    {
      // Send the sketch version information to the gateway and Controller
      sendSketchInfo("Motion Sensor", "1.0");
    
      // Register all sensors to gw (they will be created as child devices)
      present(CHILD_ID, S_MOTION);
    }
    
    void loop()
    {
      // Read digital motion value
      bool tripped = digitalRead(DIGITAL_INPUT_SENSOR) == HIGH;
    
      Serial.println(tripped);
      send(msg.set(tripped?"1":"0"));  // Send tripped value to gw
    
      // Sleep until interrupt comes in on motion sensor. Send update every two minute.
      sleep(digitalPinToInterrupt(DIGITAL_INPUT_SENSOR), CHANGE, SLEEP_TIME);
    }
    
    
    

    To rule out hardware failure, I followed this tutorial, and all works as expected:
    https://naylampmechatronics.com/blog/37_Comunicación-RS485-con-Arduino.html

    Transmitter sketch:

    const int ledPin =  13;  // Built-in LED
    const int EnTxPin =  2;  // HIGH:Transmitter, LOW:Receiver
    void setup() 
    { 
      Serial.begin(9600);
      Serial.setTimeout(100);  
      pinMode(ledPin, OUTPUT);
      pinMode(EnTxPin, OUTPUT);
      digitalWrite(ledPin, LOW); 
      digitalWrite(EnTxPin, HIGH); 
    } 
     
    void loop() 
    {   
      int rdata = analogRead(0); //data from potentiometer 
      int angle= map(rdata, 0, 1023, 0, 180); 
      
      //transmitter data packet
      Serial.print("I"); //initiate data packet
      Serial.print("S"); //code for servo
      Serial.print(angle); //servo angle data
      Serial.print("F"); //finish data packet
      delay(50); 
    
      //receiver data packet
      Serial.print("I"); //initiate data packet
      Serial.print("L"); //code for sensor
      Serial.print("F"); //finish data packet
      Serial.flush();    
      
      digitalWrite(EnTxPin, LOW); //RS485 as receiver
    
      if(Serial.find("i"))
      {
          int data=Serial.parseInt(); 
          if(Serial.read()=='f') //finish reading
           {
             onLED(data);            
          }
          
      }
      digitalWrite(EnTxPin, HIGH); //RS485 as transmitter
      
    } 
    
    void onLED(int data)
    {
      if(data>500)
         digitalWrite(ledPin, HIGH); 
      else
         digitalWrite(ledPin, LOW); 
    }
    

    Reciever sketch:

    #include <Servo.h>
    Servo myservo; 
    const int EnTxPin = 2;
    void setup () {
      Serial.begin (9600);
      myservo.attach (9); 
      pinMode(EnTxPin, OUTPUT );
      digitalWrite (EnTxPin, LOW );
    }
    
    void loop (){
      if ( Serial.available ()){
        if ( Serial.read () == 'I' ){
          char function = Serial.read ();
          if (function == 'S' ){
            int angle = Serial.parseInt ();
            if ( Serial.read () == 'F' ){
              if (angle <= 180) {
                myservo.write (angle);
              }
            }
          }
          else if (function == 'L' ){
            if ( Serial.read () == 'F' ){
              int val = analogRead (0);
              digitalWrite (EnTxPin, HIGH ); //enable to transmit
              Serial.print ( "i" ); 
              Serial.print (val); 
              Serial.println ( "f" ); 
              Serial.flush (); 
              digitalWrite (EnTxPin, LOW ); //enable to receive
            }
          }
        }
      }
      delay (10);
    }
    
    

    Any ideas about what might be causing the issue?

    mfalkviddM Online
    mfalkviddM Online
    mfalkvidd
    Mod
    wrote on last edited by
    #2

    @mrhutchinsonmn I haven’t used rs485 myself, but I think it will work better if you use the same speed for MY_RS485_BAUD_RATE on gateway and nodes.

    1 Reply Last reply
    1
    • M mrhutchinsonmn

      Hardware: Arduino nano boards+ RS485 devices with separate 5 volt power supply

      I am trying to set up my 1st Rs485 gateway motion sensor on Home Assistant, per the following tutorial:
      https://www.mysensors.org/build/rs485

      The motion sensor is not presenting itself to the gateway, so I did some digging and found this thread on the subject:

      https://forum.mysensors.org/topic/11048/mqtt-ethernet-gateway-with-wired-rs485-network.

      I have things wired up as per this pic provided in the tutorial

      Although I am not using mqtt, everything seemed to be pertinent but I was still unable to get communication between the sensor and gateway.

      Ha logs show the gateway seems to be happy:

      [mysensors] Connected to Serial<id=0x7f2fd0c2f518, open=True>(port='/dev/ttyUSB0', baudrate=115200, bytesize=8, parity='N', stopbits=1, timeout=0, xonxoff=False, rtscts=False, dsrdtr=False)
      2020-10-05 13:17:05 INFO (MainThread) [mysensors] Connected to <_SelectorSocketTransport fd=25 read=idle write=<idle, bufsize=0>>
      p:Gateway startup complete.
      

      However serial monitor for the motion sensor shows the following:

      
      |  \/  |_   _/ ___|  ___ _ __  ___  ___  _ __ ___
      | |\/| | | | \___ \ / _ \ `_ \/ __|/ _ \| `__/ __|
      | |  | | |_| |___| |  __/ | | \__ \  _  | |  \__ \
      |_|  |_|\__, |____/ \___|_| |_|___/\___/|_|  |___/
              |___/                      2.3.2
      
      16 MCO:BGN:INIT NODE,CP=RSNNA---,FQ=16,REL=255,VER=2.3.2
      26 TSM:INIT
      28 TSF:WUR:MS=0
      29 TSM:INIT:TSP OK
      31 TSM:FPAR
      33 ?TSF:MSG:SEND,255-255-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
      2041 !TSM:FPAR:NO REPLY
      2043 TSM:FPAR
      2045 ?TSF:MSG:SEND,255-255-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
      4054 !TSM:FPAR:NO REPLY
      4056 TSM:FPAR
      4058 ?TSF:MSG:SEND,255-255-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
      6066 !TSM:FPAR:NO REPLY
      6068 TSM:FPAR
      6070 ?TSF:MSG:SEND,255-255-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
      8078 !TSM:FPAR:FAIL
      8079 TSM:FAIL:CNT=1
      8081 TSM:FAIL:DIS
      8083 TSF:TDI:TSL
      18085 TSM:FAIL:RE-INIT
      18087 TSM:INIT
      18088 TSM:INIT:TSP OK
      

      Gateway sketch:

      /**
      * The MySensors Arduino library handles the wireless radio link and protocol
      * between your home built sensors/actuators and HA controller of choice.
      * The sensors forms a self healing radio network with optional repeaters. Each
      * repeater and gateway builds a routing tables in EEPROM which keeps track of the
      * network topology allowing messages to be routed to nodes.
      *
      * Created by Henrik Ekblad <henrik.ekblad@mysensors.org>
      * Copyright (C) 2013-2019 Sensnology AB
      * Full contributor list: https://github.com/mysensors/MySensors/graphs/contributors
      *
      * Documentation: http://www.mysensors.org
      * Support Forum: http://forum.mysensors.org
      *
      * This program is free software; you can redistribute it and/or
      * modify it under the terms of the GNU General Public License
      * version 2 as published by the Free Software Foundation.
      *
      *******************************
      *
      * DESCRIPTION
      * The RS485 Gateway prints data received from sensors on the serial link.
      * The gateway accepts input on seral which will be sent out on
      * the RS485 link.
      *
      * Wire connections (OPTIONAL):
      * - Inclusion button should be connected between digital pin 3 and GND
      * - RX/TX/ERR leds need to be connected between +5V (anode) and digital pin 6/5/4 with resistor 270-330R in a series
      *
      * LEDs (OPTIONAL):
      * - RX (green) - blink fast on radio message received. In inclusion mode will blink fast only on presentation received
      * - TX (yellow) - blink fast on radio message transmitted. In inclusion mode will blink slowly
      * - ERR (red) - fast blink on error during transmission error or receive crc error
      *
      * If your Arduino board has additional serial ports
      * you can use to connect the RS485 module.
      * Otherwise, the gateway uses AltSoftSerial to handle two serial
      * links on one Arduino. Use the following pins for RS485 link
      *
      *  Board          Transmit  Receive   PWM Unusable
      * -----          --------  -------   ------------
      * Teensy 3.0 & 3.1  21        20         22
      * Teensy 2.0         9        10       (none)
      * Teensy++ 2.0      25         4       26, 27
      * Arduino Uno        9         8         10
      * Arduino Leonardo   5        13       (none)
      * Arduino Mega      46        48       44, 45
      * Wiring-S           5         6          4
      * Sanguino          13        14         12
      *
      */
      
      // Enable debug prints to serial monitor
      #define MY_DEBUG
      
      // Enable RS485 transport layer
      #define MY_RS485
      
      // Define this to enables DE-pin management on defined pin
      #define MY_RS485_DE_PIN 2
      
      // Set RS485 baud rate to use
      #define MY_RS485_BAUD_RATE 115200
      
      // Enable this if RS485 is connected to a hardware serial port
      #define MY_RS485_HWSERIAL Serial
      
      // Enable serial gateway
      #define MY_GATEWAY_SERIAL
      
      
      // Enable inclusion mode
      //#define MY_INCLUSION_MODE_FEATURE
      // Enable Inclusion mode button on gateway
      //#define MY_INCLUSION_BUTTON_FEATURE
      // 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
      
      // Flash leds on rx/tx/err
      #define MY_DEFAULT_ERR_LED_PIN 4  // Error led pin
      #define MY_DEFAULT_RX_LED_PIN  5  // Receive led pin
      #define MY_DEFAULT_TX_LED_PIN  6  // the PCB, on board LED
      
      #include <MySensors.h>
      
      void setup()
      {
        // Setup locally attached sensors
      }
      
      void presentation()
      {
        // Present locally attached sensors
      }
      
      void loop()
      {
        // Send locally attached sensor data here
      }
      
      

      Motion detector Sketch:

      /*
       * The MySensors Arduino library handles the wireless radio link and protocol
       * between your home built sensors/actuators and HA controller of choice.
       * The sensors forms a self healing radio network with optional repeaters. Each
       * repeater and gateway builds a routing tables in EEPROM which keeps track of the
       * network topology allowing messages to be routed to nodes.
       *
       * Created by Henrik Ekblad <henrik.ekblad@mysensors.org>
       * Copyright (C) 2013-2019 Sensnology AB
       * Full contributor list: https://github.com/mysensors/MySensors/graphs/contributors
       *
       * Documentation: http://www.mysensors.org
       * Support Forum: http://forum.mysensors.org
       *
       * This program is free software; you can redistribute it and/or
       * modify it under the terms of the GNU General Public License
       * version 2 as published by the Free Software Foundation.
       *
       *******************************
       *
       * REVISION HISTORY
       * Version 1.0 - Henrik Ekblad
       *
       * DESCRIPTION
       * This is an example of sensors using RS485 as transport layer
       *
       * Motion Sensor example using HC-SR501
       * http://www.mysensors.org/build/motion
       *
       * If your Arduino board has additional serial ports
       * you can use to connect the RS485 module.
       * Otherwise, the transport uses AltSoftSerial to handle two serial
       * links on one Arduino. Use the following pins for RS485 link
       *
       *  Board          Transmit  Receive   PWM Unusable
       * -----          --------  -------   ------------
       * Teensy 3.0 & 3.1  21        20         22
       * Teensy 2.0         9        10       (none)
       * Teensy++ 2.0      25         4       26, 27
       * Arduino Uno        9         8         10
       * Arduino Leonardo   5        13       (none)
       * Arduino Mega      46        48       44, 45
       * Wiring-S           5         6          4
       * Sanguino          13        14         12 *
       *
       */
      
      // Enable debug prints to serial monitor
      #define MY_DEBUG
      
      // Enable RS485 transport layer
      #define MY_RS485
      
      // Define this to enables DE-pin management on defined pin
      #define MY_RS485_DE_PIN 2
      
      // Set RS485 baud rate to use
      #define MY_RS485_BAUD_RATE 115200
      
      // Enable this if RS485 is connected to a hardware serial port
      //#define MY_RS485_HWSERIAL Serial
      
      #include <MySensors.h>
      
      uint32_t SLEEP_TIME = 120000; // Sleep time between reports (in milliseconds)
      #define DIGITAL_INPUT_SENSOR 3   // The digital input you attached your motion sensor.  (Only 2 and 3 generates interrupt!)
      #define MY_NODE_ID 123
      #define CHILD_ID 1   // Id of the sensor child
      
      // Initialize motion message
      MyMessage msg(CHILD_ID, V_TRIPPED);
      
      void setup()
      {
        pinMode(DIGITAL_INPUT_SENSOR, INPUT);      // sets the motion sensor digital pin as input
      }
      
      void presentation()
      {
        // Send the sketch version information to the gateway and Controller
        sendSketchInfo("Motion Sensor", "1.0");
      
        // Register all sensors to gw (they will be created as child devices)
        present(CHILD_ID, S_MOTION);
      }
      
      void loop()
      {
        // Read digital motion value
        bool tripped = digitalRead(DIGITAL_INPUT_SENSOR) == HIGH;
      
        Serial.println(tripped);
        send(msg.set(tripped?"1":"0"));  // Send tripped value to gw
      
        // Sleep until interrupt comes in on motion sensor. Send update every two minute.
        sleep(digitalPinToInterrupt(DIGITAL_INPUT_SENSOR), CHANGE, SLEEP_TIME);
      }
      
      
      

      To rule out hardware failure, I followed this tutorial, and all works as expected:
      https://naylampmechatronics.com/blog/37_Comunicación-RS485-con-Arduino.html

      Transmitter sketch:

      const int ledPin =  13;  // Built-in LED
      const int EnTxPin =  2;  // HIGH:Transmitter, LOW:Receiver
      void setup() 
      { 
        Serial.begin(9600);
        Serial.setTimeout(100);  
        pinMode(ledPin, OUTPUT);
        pinMode(EnTxPin, OUTPUT);
        digitalWrite(ledPin, LOW); 
        digitalWrite(EnTxPin, HIGH); 
      } 
       
      void loop() 
      {   
        int rdata = analogRead(0); //data from potentiometer 
        int angle= map(rdata, 0, 1023, 0, 180); 
        
        //transmitter data packet
        Serial.print("I"); //initiate data packet
        Serial.print("S"); //code for servo
        Serial.print(angle); //servo angle data
        Serial.print("F"); //finish data packet
        delay(50); 
      
        //receiver data packet
        Serial.print("I"); //initiate data packet
        Serial.print("L"); //code for sensor
        Serial.print("F"); //finish data packet
        Serial.flush();    
        
        digitalWrite(EnTxPin, LOW); //RS485 as receiver
      
        if(Serial.find("i"))
        {
            int data=Serial.parseInt(); 
            if(Serial.read()=='f') //finish reading
             {
               onLED(data);            
            }
            
        }
        digitalWrite(EnTxPin, HIGH); //RS485 as transmitter
        
      } 
      
      void onLED(int data)
      {
        if(data>500)
           digitalWrite(ledPin, HIGH); 
        else
           digitalWrite(ledPin, LOW); 
      }
      

      Reciever sketch:

      #include <Servo.h>
      Servo myservo; 
      const int EnTxPin = 2;
      void setup () {
        Serial.begin (9600);
        myservo.attach (9); 
        pinMode(EnTxPin, OUTPUT );
        digitalWrite (EnTxPin, LOW );
      }
      
      void loop (){
        if ( Serial.available ()){
          if ( Serial.read () == 'I' ){
            char function = Serial.read ();
            if (function == 'S' ){
              int angle = Serial.parseInt ();
              if ( Serial.read () == 'F' ){
                if (angle <= 180) {
                  myservo.write (angle);
                }
              }
            }
            else if (function == 'L' ){
              if ( Serial.read () == 'F' ){
                int val = analogRead (0);
                digitalWrite (EnTxPin, HIGH ); //enable to transmit
                Serial.print ( "i" ); 
                Serial.print (val); 
                Serial.println ( "f" ); 
                Serial.flush (); 
                digitalWrite (EnTxPin, LOW ); //enable to receive
              }
            }
          }
        }
        delay (10);
      }
      
      

      Any ideas about what might be causing the issue?

      M Offline
      M Offline
      mrhutchinsonmn
      wrote on last edited by
      #3

      @mrhutchinsonmn said in Motion Sensor not presenting to RS485 Gateway / TSM:FPAR:NO REPLY:

      9600

      Good catch.. That was an old version... both are set to 115200 after 9600 did not work

      M 1 Reply Last reply
      1
      • M mrhutchinsonmn

        @mrhutchinsonmn said in Motion Sensor not presenting to RS485 Gateway / TSM:FPAR:NO REPLY:

        9600

        Good catch.. That was an old version... both are set to 115200 after 9600 did not work

        M Offline
        M Offline
        mrhutchinsonmn
        wrote on last edited by
        #4

        @mrhutchinsonmn Might have confused the issue with my reply.. Neither 115200 nor 9600 baud rates resolve the communication issue.

        1 Reply Last reply
        0
        • mfalkviddM Online
          mfalkviddM Online
          mfalkvidd
          Mod
          wrote on last edited by
          #5

          The sketch uses MY_RS485_HWSERIAL but you say you have wired according to https://forum.mysensors.org/topic/11048/mqtt-ethernet-gateway-with-wired-rs485-network which uses pins 8 and 9?

          Pins 8 and 9 are not the hardware serial pins.

          M 1 Reply Last reply
          0
          • mfalkviddM mfalkvidd

            The sketch uses MY_RS485_HWSERIAL but you say you have wired according to https://forum.mysensors.org/topic/11048/mqtt-ethernet-gateway-with-wired-rs485-network which uses pins 8 and 9?

            Pins 8 and 9 are not the hardware serial pins.

            M Offline
            M Offline
            mrhutchinsonmn
            wrote on last edited by
            #6

            @mfalkvidd Ugh!!! Too many versions of the sketch :)... Had to switch between my laptop and pc because of sketch upload issues.... Must have grabbed an old sketch.. I HAD commented hwserial out earlier... Getting communication now but not a valid message, not enough values to unpack errors. I will dig into that tomorrow. Thank you!!!

            mfalkviddM 1 Reply Last reply
            1
            • M mrhutchinsonmn

              @mfalkvidd Ugh!!! Too many versions of the sketch :)... Had to switch between my laptop and pc because of sketch upload issues.... Must have grabbed an old sketch.. I HAD commented hwserial out earlier... Getting communication now but not a valid message, not enough values to unpack errors. I will dig into that tomorrow. Thank you!!!

              mfalkviddM Online
              mfalkviddM Online
              mfalkvidd
              Mod
              wrote on last edited by
              #7

              @mrhutchinsonmn I would try 9600 again. 115200 leaves very little room for interference and oscillator differences.

              1 Reply Last reply
              0
              • M Offline
                M Offline
                mrhutchinsonmn
                wrote on last edited by
                #8

                Thank you for the advice!

                I started over, just to be sure I didn't have anymore mix ups, but still have not been able to get the RS485 motion sensor and RS485 gateway to talk.

                Hardware: Arduino Nanos+ RS485 modules.

                Wiring:
                RO = Pin 8 of Arduino
                DI = Pin 9 of Arduino
                A = A on other Nano
                B = B on other Nano
                DI= Pin 9 of Nano
                RO = Pin 8 of Nano
                DE & RE = Pin 2 of Nano
                VCC = External power source
                GND = External power source

                Current Gateway Sketch:

                /**
                * The MySensors Arduino library handles the wireless radio link and protocol
                * between your home built sensors/actuators and HA controller of choice.
                * The sensors forms a self healing radio network with optional repeaters. Each
                * repeater and gateway builds a routing tables in EEPROM which keeps track of the
                * network topology allowing messages to be routed to nodes.
                *
                * Created by Henrik Ekblad <henrik.ekblad@mysensors.org>
                * Copyright (C) 2013-2019 Sensnology AB
                * Full contributor list: https://github.com/mysensors/MySensors/graphs/contributors
                *
                * Documentation: http://www.mysensors.org
                * Support Forum: http://forum.mysensors.org
                *
                * This program is free software; you can redistribute it and/or
                * modify it under the terms of the GNU General Public License
                * version 2 as published by the Free Software Foundation.
                *
                *******************************
                *
                * DESCRIPTION
                * The RS485 Gateway prints data received from sensors on the serial link.
                * The gateway accepts input on seral which will be sent out on
                * the RS485 link.
                *
                * Wire connections (OPTIONAL):
                * - Inclusion button should be connected between digital pin 3 and GND
                * - RX/TX/ERR leds need to be connected between +5V (anode) and digital pin 6/5/4 with resistor 270-330R in a series
                *
                * LEDs (OPTIONAL):
                * - RX (green) - blink fast on radio message received. In inclusion mode will blink fast only on presentation received
                * - TX (yellow) - blink fast on radio message transmitted. In inclusion mode will blink slowly
                * - ERR (red) - fast blink on error during transmission error or receive crc error
                *
                * If your Arduino board has additional serial ports
                * you can use to connect the RS485 module.
                * Otherwise, the gateway uses AltSoftSerial to handle two serial
                * links on one Arduino. Use the following pins for RS485 link
                *
                *  Board          Transmit  Receive   PWM Unusable
                * -----          --------  -------   ------------
                * Teensy 3.0 & 3.1  21        20         22
                * Teensy 2.0         9        10       (none)
                * Teensy++ 2.0      25         4       26, 27
                * Arduino Uno        9         8         10
                * Arduino Leonardo   5        13       (none)
                * Arduino Mega      46        48       44, 45
                * Wiring-S           5         6          4
                * Sanguino          13        14         12
                *
                */
                
                // Enable debug prints to serial monitor
                #define MY_DEBUG
                
                // Enable RS485 transport layer
                #define MY_RS485
                
                // Define this to enables DE-pin management on defined pin
                #define MY_RS485_DE_PIN 2
                
                // Set RS485 baud rate to use
                #define MY_RS485_BAUD_RATE 9600
                
                // Enable this if RS485 is connected to a hardware serial port
                //#define MY_RS485_HWSERIAL Serial
                
                // Enable serial gateway
                #define MY_GATEWAY_SERIAL
                
                
                // Enable inclusion mode
                #define MY_INCLUSION_MODE_FEATURE
                // Enable Inclusion mode button on gateway
                #define MY_INCLUSION_BUTTON_FEATURE
                // 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
                
                // Flash leds on rx/tx/err
                #define MY_DEFAULT_ERR_LED_PIN 4  // Error led pin
                #define MY_DEFAULT_RX_LED_PIN  5  // Receive led pin
                #define MY_DEFAULT_TX_LED_PIN  6  // the PCB, on board LED
                
                #include <MySensors.h>
                
                void setup()
                {
                  // Setup locally attached sensors
                }
                
                void presentation()
                {
                  // Present locally attached sensors
                }
                
                void loop()
                {
                  // Send locally attached sensor data here
                }
                
                

                Current Motion Detector Sketch:

                /*
                 * The MySensors Arduino library handles the wireless radio link and protocol
                 * between your home built sensors/actuators and HA controller of choice.
                 * The sensors forms a self healing radio network with optional repeaters. Each
                 * repeater and gateway builds a routing tables in EEPROM which keeps track of the
                 * network topology allowing messages to be routed to nodes.
                 *
                 * Created by Henrik Ekblad <henrik.ekblad@mysensors.org>
                 * Copyright (C) 2013-2019 Sensnology AB
                 * Full contributor list: https://github.com/mysensors/MySensors/graphs/contributors
                 *
                 * Documentation: http://www.mysensors.org
                 * Support Forum: http://forum.mysensors.org
                 *
                 * This program is free software; you can redistribute it and/or
                 * modify it under the terms of the GNU General Public License
                 * version 2 as published by the Free Software Foundation.
                 *
                 *******************************
                 *
                 * REVISION HISTORY
                 * Version 1.0 - Henrik Ekblad
                 *
                 * DESCRIPTION
                 * This is an example of sensors using RS485 as transport layer
                 *
                 * Motion Sensor example using HC-SR501
                 * http://www.mysensors.org/build/motion
                 *
                 * If your Arduino board has additional serial ports
                 * you can use to connect the RS485 module.
                 * Otherwise, the transport uses AltSoftSerial to handle two serial
                 * links on one Arduino. Use the following pins for RS485 link
                 *
                 *  Board          Transmit  Receive   PWM Unusable
                 * -----          --------  -------   ------------
                 * Teensy 3.0 & 3.1  21        20         22
                 * Teensy 2.0         9        10       (none)
                 * Teensy++ 2.0      25         4       26, 27
                 * Arduino Uno        9         8         10
                 * Arduino Leonardo   5        13       (none)
                 * Arduino Mega      46        48       44, 45
                 * Wiring-S           5         6          4
                 * Sanguino          13        14         12 *
                 *
                 */
                
                // Enable debug prints to serial monitor
                #define MY_DEBUG
                
                // Enable RS485 transport layer
                #define MY_RS485
                
                // Define this to enables DE-pin management on defined pin
                #define MY_RS485_DE_PIN 2
                
                // Set RS485 baud rate to use
                #define MY_RS485_BAUD_RATE 9600
                
                // Enable this if RS485 is connected to a hardware serial port
                //#define MY_RS485_HWSERIAL Serial1
                
                #include <MySensors.h>
                
                uint32_t SLEEP_TIME = 120000; // Sleep time between reports (in milliseconds)
                #define DIGITAL_INPUT_SENSOR 3   // The digital input you attached your motion sensor.  (Only 2 and 3 generates interrupt!)
                #define MY_NODE_ID 12
                #define CHILD_ID 1   // Id of the sensor child
                
                // Initialize motion message
                MyMessage msg(CHILD_ID, V_TRIPPED);
                
                void setup()
                {
                  pinMode(DIGITAL_INPUT_SENSOR, INPUT);      // sets the motion sensor digital pin as input
                }
                
                void presentation()
                {
                  // Send the sketch version information to the gateway and Controller
                  sendSketchInfo("Motion Sensor", "1.0");
                
                  // Register all sensors to gw (they will be created as child devices)
                  present(CHILD_ID, S_MOTION);
                }
                
                void loop()
                {
                  // Read digital motion value
                  bool tripped = digitalRead(DIGITAL_INPUT_SENSOR) == HIGH;
                
                  Serial.println(tripped);
                  send(msg.set(tripped?"1":"0"));  // Send tripped value to gw
                
                  // Sleep until interrupt comes in on motion sensor. Send update every two minute.
                  sleep(digitalPinToInterrupt(DIGITAL_INPUT_SENSOR), CHANGE, SLEEP_TIME);
                }
                

                Commented the following out on the gateway, as per other forum users recommendations ( but made no difference)

                // Enable inclusion mode
                //#define MY_INCLUSION_MODE_FEATURE
                // Enable Inclusion mode button on gateway
                //#define MY_INCLUSION_BUTTON_FEATURE
                // 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
                

                Serial Monitor info:

                21257 TSM:FAIL:CNT=7
                321259 TSM:FAIL:DIS
                321261 TSF:TDI:TSL
                381263 TSM:FAIL:RE-INIT
                381265 TSM:INIT
                381266 TSM:INIT:TSP OK
                381268 TSM:FPAR
                381287 ?TSF:MSG:SEND,255-255-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
                383295 !TSM:FPAR:NO REPLY
                383297 TSM:FPAR
                383315 ?TSF:MSG:SEND,255-255-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
                385324 !TSM:FPAR:NO REPLY
                385326 TSM:FPAR
                385344 ?TSF:MSG:SEND,255-255-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
                387352 !TSM:FPAR:NO REPLY
                387354 TSM:FPAR
                387373 ?TSF:MSG:SEND,255-255-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
                389381 !TSM:FPAR:FAIL
                

                Ideas?

                rejoe2R 1 Reply Last reply
                0
                • M mrhutchinsonmn

                  Thank you for the advice!

                  I started over, just to be sure I didn't have anymore mix ups, but still have not been able to get the RS485 motion sensor and RS485 gateway to talk.

                  Hardware: Arduino Nanos+ RS485 modules.

                  Wiring:
                  RO = Pin 8 of Arduino
                  DI = Pin 9 of Arduino
                  A = A on other Nano
                  B = B on other Nano
                  DI= Pin 9 of Nano
                  RO = Pin 8 of Nano
                  DE & RE = Pin 2 of Nano
                  VCC = External power source
                  GND = External power source

                  Current Gateway Sketch:

                  /**
                  * The MySensors Arduino library handles the wireless radio link and protocol
                  * between your home built sensors/actuators and HA controller of choice.
                  * The sensors forms a self healing radio network with optional repeaters. Each
                  * repeater and gateway builds a routing tables in EEPROM which keeps track of the
                  * network topology allowing messages to be routed to nodes.
                  *
                  * Created by Henrik Ekblad <henrik.ekblad@mysensors.org>
                  * Copyright (C) 2013-2019 Sensnology AB
                  * Full contributor list: https://github.com/mysensors/MySensors/graphs/contributors
                  *
                  * Documentation: http://www.mysensors.org
                  * Support Forum: http://forum.mysensors.org
                  *
                  * This program is free software; you can redistribute it and/or
                  * modify it under the terms of the GNU General Public License
                  * version 2 as published by the Free Software Foundation.
                  *
                  *******************************
                  *
                  * DESCRIPTION
                  * The RS485 Gateway prints data received from sensors on the serial link.
                  * The gateway accepts input on seral which will be sent out on
                  * the RS485 link.
                  *
                  * Wire connections (OPTIONAL):
                  * - Inclusion button should be connected between digital pin 3 and GND
                  * - RX/TX/ERR leds need to be connected between +5V (anode) and digital pin 6/5/4 with resistor 270-330R in a series
                  *
                  * LEDs (OPTIONAL):
                  * - RX (green) - blink fast on radio message received. In inclusion mode will blink fast only on presentation received
                  * - TX (yellow) - blink fast on radio message transmitted. In inclusion mode will blink slowly
                  * - ERR (red) - fast blink on error during transmission error or receive crc error
                  *
                  * If your Arduino board has additional serial ports
                  * you can use to connect the RS485 module.
                  * Otherwise, the gateway uses AltSoftSerial to handle two serial
                  * links on one Arduino. Use the following pins for RS485 link
                  *
                  *  Board          Transmit  Receive   PWM Unusable
                  * -----          --------  -------   ------------
                  * Teensy 3.0 & 3.1  21        20         22
                  * Teensy 2.0         9        10       (none)
                  * Teensy++ 2.0      25         4       26, 27
                  * Arduino Uno        9         8         10
                  * Arduino Leonardo   5        13       (none)
                  * Arduino Mega      46        48       44, 45
                  * Wiring-S           5         6          4
                  * Sanguino          13        14         12
                  *
                  */
                  
                  // Enable debug prints to serial monitor
                  #define MY_DEBUG
                  
                  // Enable RS485 transport layer
                  #define MY_RS485
                  
                  // Define this to enables DE-pin management on defined pin
                  #define MY_RS485_DE_PIN 2
                  
                  // Set RS485 baud rate to use
                  #define MY_RS485_BAUD_RATE 9600
                  
                  // Enable this if RS485 is connected to a hardware serial port
                  //#define MY_RS485_HWSERIAL Serial
                  
                  // Enable serial gateway
                  #define MY_GATEWAY_SERIAL
                  
                  
                  // Enable inclusion mode
                  #define MY_INCLUSION_MODE_FEATURE
                  // Enable Inclusion mode button on gateway
                  #define MY_INCLUSION_BUTTON_FEATURE
                  // 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
                  
                  // Flash leds on rx/tx/err
                  #define MY_DEFAULT_ERR_LED_PIN 4  // Error led pin
                  #define MY_DEFAULT_RX_LED_PIN  5  // Receive led pin
                  #define MY_DEFAULT_TX_LED_PIN  6  // the PCB, on board LED
                  
                  #include <MySensors.h>
                  
                  void setup()
                  {
                    // Setup locally attached sensors
                  }
                  
                  void presentation()
                  {
                    // Present locally attached sensors
                  }
                  
                  void loop()
                  {
                    // Send locally attached sensor data here
                  }
                  
                  

                  Current Motion Detector Sketch:

                  /*
                   * The MySensors Arduino library handles the wireless radio link and protocol
                   * between your home built sensors/actuators and HA controller of choice.
                   * The sensors forms a self healing radio network with optional repeaters. Each
                   * repeater and gateway builds a routing tables in EEPROM which keeps track of the
                   * network topology allowing messages to be routed to nodes.
                   *
                   * Created by Henrik Ekblad <henrik.ekblad@mysensors.org>
                   * Copyright (C) 2013-2019 Sensnology AB
                   * Full contributor list: https://github.com/mysensors/MySensors/graphs/contributors
                   *
                   * Documentation: http://www.mysensors.org
                   * Support Forum: http://forum.mysensors.org
                   *
                   * This program is free software; you can redistribute it and/or
                   * modify it under the terms of the GNU General Public License
                   * version 2 as published by the Free Software Foundation.
                   *
                   *******************************
                   *
                   * REVISION HISTORY
                   * Version 1.0 - Henrik Ekblad
                   *
                   * DESCRIPTION
                   * This is an example of sensors using RS485 as transport layer
                   *
                   * Motion Sensor example using HC-SR501
                   * http://www.mysensors.org/build/motion
                   *
                   * If your Arduino board has additional serial ports
                   * you can use to connect the RS485 module.
                   * Otherwise, the transport uses AltSoftSerial to handle two serial
                   * links on one Arduino. Use the following pins for RS485 link
                   *
                   *  Board          Transmit  Receive   PWM Unusable
                   * -----          --------  -------   ------------
                   * Teensy 3.0 & 3.1  21        20         22
                   * Teensy 2.0         9        10       (none)
                   * Teensy++ 2.0      25         4       26, 27
                   * Arduino Uno        9         8         10
                   * Arduino Leonardo   5        13       (none)
                   * Arduino Mega      46        48       44, 45
                   * Wiring-S           5         6          4
                   * Sanguino          13        14         12 *
                   *
                   */
                  
                  // Enable debug prints to serial monitor
                  #define MY_DEBUG
                  
                  // Enable RS485 transport layer
                  #define MY_RS485
                  
                  // Define this to enables DE-pin management on defined pin
                  #define MY_RS485_DE_PIN 2
                  
                  // Set RS485 baud rate to use
                  #define MY_RS485_BAUD_RATE 9600
                  
                  // Enable this if RS485 is connected to a hardware serial port
                  //#define MY_RS485_HWSERIAL Serial1
                  
                  #include <MySensors.h>
                  
                  uint32_t SLEEP_TIME = 120000; // Sleep time between reports (in milliseconds)
                  #define DIGITAL_INPUT_SENSOR 3   // The digital input you attached your motion sensor.  (Only 2 and 3 generates interrupt!)
                  #define MY_NODE_ID 12
                  #define CHILD_ID 1   // Id of the sensor child
                  
                  // Initialize motion message
                  MyMessage msg(CHILD_ID, V_TRIPPED);
                  
                  void setup()
                  {
                    pinMode(DIGITAL_INPUT_SENSOR, INPUT);      // sets the motion sensor digital pin as input
                  }
                  
                  void presentation()
                  {
                    // Send the sketch version information to the gateway and Controller
                    sendSketchInfo("Motion Sensor", "1.0");
                  
                    // Register all sensors to gw (they will be created as child devices)
                    present(CHILD_ID, S_MOTION);
                  }
                  
                  void loop()
                  {
                    // Read digital motion value
                    bool tripped = digitalRead(DIGITAL_INPUT_SENSOR) == HIGH;
                  
                    Serial.println(tripped);
                    send(msg.set(tripped?"1":"0"));  // Send tripped value to gw
                  
                    // Sleep until interrupt comes in on motion sensor. Send update every two minute.
                    sleep(digitalPinToInterrupt(DIGITAL_INPUT_SENSOR), CHANGE, SLEEP_TIME);
                  }
                  

                  Commented the following out on the gateway, as per other forum users recommendations ( but made no difference)

                  // Enable inclusion mode
                  //#define MY_INCLUSION_MODE_FEATURE
                  // Enable Inclusion mode button on gateway
                  //#define MY_INCLUSION_BUTTON_FEATURE
                  // 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
                  

                  Serial Monitor info:

                  21257 TSM:FAIL:CNT=7
                  321259 TSM:FAIL:DIS
                  321261 TSF:TDI:TSL
                  381263 TSM:FAIL:RE-INIT
                  381265 TSM:INIT
                  381266 TSM:INIT:TSP OK
                  381268 TSM:FPAR
                  381287 ?TSF:MSG:SEND,255-255-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
                  383295 !TSM:FPAR:NO REPLY
                  383297 TSM:FPAR
                  383315 ?TSF:MSG:SEND,255-255-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
                  385324 !TSM:FPAR:NO REPLY
                  385326 TSM:FPAR
                  385344 ?TSF:MSG:SEND,255-255-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
                  387352 !TSM:FPAR:NO REPLY
                  387354 TSM:FPAR
                  387373 ?TSF:MSG:SEND,255-255-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
                  389381 !TSM:FPAR:FAIL
                  

                  Ideas?

                  rejoe2R Offline
                  rejoe2R Offline
                  rejoe2
                  wrote on last edited by
                  #9

                  @mrhutchinsonmn At RS485, it's obligatory to assign NodeIDs within your sketch.

                  Controller: FHEM; MySensors: 2.3.1, RS485,nRF24,RFM69, serial Gateways

                  M 1 Reply Last reply
                  0
                  • electrikE Offline
                    electrikE Offline
                    electrik
                    wrote on last edited by
                    #10

                    You should move the define for the node ID before you include mysensors.h

                    1 Reply Last reply
                    2
                    • rejoe2R rejoe2

                      @mrhutchinsonmn At RS485, it's obligatory to assign NodeIDs within your sketch.

                      M Offline
                      M Offline
                      mrhutchinsonmn
                      wrote on last edited by
                      #11

                      @rejoe2 In research, some stated it needed to be there if the sensor did not present itself. Followed @electrik advice and it now works. Thank you for your feedback!

                      M 1 Reply Last reply
                      0
                      • M mrhutchinsonmn

                        @rejoe2 In research, some stated it needed to be there if the sensor did not present itself. Followed @electrik advice and it now works. Thank you for your feedback!

                        M Offline
                        M Offline
                        mrhutchinsonmn
                        wrote on last edited by
                        #12

                        @electrik Yes... that worked!!! Moved node and child id above mysensors.h

                        Thank you!!!!

                        1 Reply Last reply
                        1

                        Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                        Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                        With your input, this post could be even better 💗

                        Register Login
                        Reply
                        • Reply as topic
                        Log in to reply
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes


                        12

                        Online

                        12.0k

                        Users

                        11.2k

                        Topics

                        113.4k

                        Posts


                        Copyright 2025 TBD   |   Forum Guidelines   |   Privacy Policy   |   Terms of Service
                        • Login

                        • Don't have an account? Register

                        • Login or register to search.
                        • First post
                          Last post
                        0
                        • MySensors
                        • OpenHardware.io
                        • Categories
                        • Recent
                        • Tags
                        • Popular