Check Uplink fails - Using RFM69 with signing and encryption



  • Hello,

    I'm struggling for a few days with a new board I've made. It seems the code doesn't even reach to setup() neither presentation(). It gets stuck in the I_PING part. Tried the parser, but don't really understand whats going on...

    I'm using the latest MySensors library (2.3.1) in the node as well as in the RaspberryPI3 Gateway. I have a sensebender working fine with the same radio/signing setup.

    According to the log parser, "Message with command 3 and type 3 does not need to be signed", but this comment refers to a message that seems to be type 24: "2269 SGN:SKP:MSG CMD=3,TYPE=24"

    After this, the I get the message 5134 !TSF:MSG:SEND,71-71-0-0,s=255,c=3,t=24,pt=1,l=1,sg=0,ft=0,st=NACK:1 and everything starts falling down....

    Any idea what I might be doing wrong?

    The startup from the node:

     __  __       ____
    |  \/  |_   _/ ___|  ___ _ __  ___  ___  _ __ ___
    | |\/| | | | \___ \ / _ \ `_ \/ __|/ _ \| `__/ __|
    | |  | | |_| |___| |  __/ | | \__ \  _  | |  \__ \
    |_|  |_|\__, |____/ \___|_| |_|___/\___/|_|  |___/
            |___/                      2.3.1
    
    16 MCO:BGN:INIT NODE,CP=RPNNAA-X,REL=255,VER=2.3.1
    40 SGN:PER:OK
    69 SGN:INI:BND OK
    71 TSM:INIT
    73 TSF:WUR:MS=0
    75 TSM:INIT:TSP OK
    77 TSM:INIT:STATID=71
    79 TSF:SID:OK,ID=71
    81 TSM:FPAR
    83 SGN:SKP:MSG CMD=3,TYPE=7
    360 TSF:MSG:SEND,71-71-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
    1486 TSF:MSG:READ,0-0-71,s=255,c=3,t=8,pt=1,l=1,sg=0:0
    1492 SGN:SKP:MSG CMD=3,TYPE=8
    1495 TSF:MSG:FPAR OK,ID=0,D=1
    2369 TSM:FPAR:OK
    2369 TSM:ID
    2371 TSM:ID:OK
    2373 TSM:UPL
    2375 SGN:SKP:MSG CMD=3,TYPE=24
    5828 !TSF:MSG:SEND,71-71-0-0,s=255,c=3,t=24,pt=1,l=1,sg=0,ft=0,st=NACK:1
    7835 TSM:UPL
    7835 SGN:SKP:MSG CMD=3,TYPE=24
    11536 !TSF:MSG:SEND,71-71-0-0,s=255,c=3,t=24,pt=1,l=1,sg=0,ft=1,st=NACK:1
    13543 TSM:UPL
    13543 SGN:SKP:MSG CMD=3,TYPE=24
    16592 !TSF:MSG:SEND,71-71-0-0,s=255,c=3,t=24,pt=1,l=1,sg=0,ft=2,st=NACK:1
    18601 TSM:UPL
    18601 SGN:SKP:MSG CMD=3,TYPE=24
    20563 !TSF:MSG:SEND,71-71-0-0,s=255,c=3,t=24,pt=1,l=1,sg=0,ft=3,st=NACK:1
    22573 !TSM:UPL:FAIL
    22575 TSM:FPAR
    22575 SGN:SKP:MSG CMD=3,TYPE=7
    23083 TSF:MSG:SEND,71-71-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=4,st=OK:
    23779 TSF:MSG:READ,0-0-71,s=255,c=3,t=8,pt=1,l=1,sg=0:0
    23785 SGN:SKP:MSG CMD=3,TYPE=8
    23787 TSF:MSG:FPAR OK,ID=0,D=1
    25092 TSM:FPAR:OK
    25094 TSM:ID
    25094 TSM:ID:OK
    25096 TSM:UPL
    25098 SGN:SKP:MSG CMD=3,TYPE=24
    28579 !TSF:MSG:SEND,71-71-0-0,s=255,c=3,t=24,pt=1,l=1,sg=0,ft=0,st=NACK:1
    30586 TSM:UPL
    30586 SGN:SKP:MSG CMD=3,TYPE=24
    33423 !TSF:MSG:SEND,71-71-0-0,s=255,c=3,t=24,pt=1,l=1,sg=0,ft=1,st=NACK:1
    35432 TSM:UPL
    35432 SGN:SKP:MSG CMD=3,TYPE=24
    38531 !TSF:MSG:SEND,71-71-0-0,s=255,c=3,t=24,pt=1,l=1,sg=0,ft=2,st=NACK:1
    40538 TSM:UPL
    40538 SGN:SKP:MSG CMD=3,TYPE=24
    42811 !TSF:MSG:SEND,71-71-0-0,s=255,c=3,t=24,pt=1,l=1,sg=0,ft=3,st=NACK:1
    44820 !TSM:UPL:FAIL
    44822 TSM:FPAR
    44824 SGN:SKP:MSG CMD=3,TYPE=7
    45328 TSF:MSG:SEND,71-71-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=4,st=OK:
    

    What the Gateway reports:

    Jan  9 00:34:52 nettemp mysgw: TSF:MSG:READ,71-71-255,s=255,c=3,t=7,pt=0,l=0,sg=0:
    Jan  9 00:34:52 nettemp mysgw: TSF:MSG:BC
    Jan  9 00:34:52 nettemp mysgw: TSF:MSG:FPAR REQ,ID=71
    Jan  9 00:34:52 nettemp mysgw: TSF:PNG:SEND,TO=0
    Jan  9 00:34:52 nettemp mysgw: TSF:CKU:OK
    Jan  9 00:34:52 nettemp mysgw: TSF:MSG:GWL OK
    Jan  9 00:34:53 nettemp mysgw: TSF:MSG:SEND,0-0-71-71,s=255,c=3,t=8,pt=1,l=1,sg=0,ft=0,st=OK:0
    Jan  9 00:35:15 nettemp mysgw: TSF:MSG:READ,71-71-255,s=255,c=3,t=7,pt=0,l=0,sg=0:
    Jan  9 00:35:15 nettemp mysgw: TSF:MSG:BC
    Jan  9 00:35:15 nettemp mysgw: TSF:MSG:FPAR REQ,ID=71
    Jan  9 00:35:15 nettemp mysgw: TSF:PNG:SEND,TO=0
    Jan  9 00:35:15 nettemp mysgw: TSF:CKU:OK
    Jan  9 00:35:15 nettemp mysgw: TSF:MSG:GWL OK
    Jan  9 00:35:15 nettemp mysgw: TSF:MSG:SEND,0-0-71-71,s=255,c=3,t=8,pt=1,l=1,sg=0,ft=0,st=OK:0
    

    My Radio configuration:

    #define MY_RADIO_RFM69  
    #define MY_RFM69_FREQUENCY RFM69_433MHZ 
    #define MY_RFM69_NEW_DRIVER
    #define MY_IS_RFM69HW  
    #define MY_RFM69_ENABLE_ENCRYPTION
    #define RF69_IRQ_PIN 3  
    #define MY_RF69_IRQ_NUM 1 
    

    My signing configuration:

    #define MY_SIGNING_ATSHA204           
    #define MY_SIGNING_ATSHA204_PIN 8
    #define MY_SIGNING_REQUEST_SIGNATURES 
    #define MY_DEBUG_VERBOSE_SIGNING
    

    My whole code:

    /**
     * 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-2015 Sensnology AB
     * Full contributor list: https://github.com/mysensors/Arduino/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.
     *
     *******************************
    /* MINICORE DEFINITIONS
     *  
     *  BOARD: ATMEGA328P
     *  Bootloader: YES
     *  Variant: 328P / 328PA
     *  BOD:2.7V
     *  Clock: 8Mhz Internal
     *  Compiler LTO: Disabled
     *  
     */
    
    
    
    //#define RELAY
    #define PIR
    
    
    #ifdef RELAY
    #define RELAY_PIN_1  A0  // Arduino Digital I/O pin number for relay 
    #define RELAY_PIN_2  A1
    #define RELAY_PIN_3  A2
    #define RELAY_PIN_4  A3
    #define CHILD_ID_RELAY_1 10 // Id of the sensor child for 1st relay
    #define CHILD_ID_RELAY_2 11 // Id of the sensor child for 2nd relay
    #define CHILD_ID_RELAY_3 12 // Id of the sensor child for 3rd relay
    #define CHILD_ID_RELAY_4 13 // Id of the sensor child for 4th relay
    // Relay status
    #define RELAY_ON 1
    #define RELAY_OFF 0
    bool state1;
    bool state2;
    bool state3;
    bool state4;
    #endif
    
    #ifdef PIR
    #define PIR_PIN_1 7  // Arduino digital input pin for PIR
    #define PIR_PIN_2 6  // Arduino digital input pin for PIR
    #define PIR_PIN_3 5  // Arduino digital input pin for PIR
    #define CHILD_ID_PIR_1 30 // Id of the sensor child for 1st PIR
    #define CHILD_ID_PIR_2 31 // Id of the sensor child for 2nd PIR
    #define CHILD_ID_PIR_3 32 // Id of the sensor child for 3rd PIR
    #endif
    
    // Enable debug prints
    #define MY_DEBUG
    
    // Source of state change (used when printing debug information)
    #define CHANGE_STATE_SOURCE_RADIO 0
    #define CHANGE_STATE_SOURCE_SWITCH 1
    
    //HW SIGNING
    #define MY_SIGNING_ATSHA204           
    #define MY_SIGNING_ATSHA204_PIN 8
    #define MY_SIGNING_REQUEST_SIGNATURES  // will inform the gateway that I expect it to sign all messages to me
    #define MY_DEBUG_VERBOSE_SIGNING
    
    
    // Enable and select radio type attached
    #define MY_RADIO_RFM69  // Define for using RFM69 radio
    #define MY_RFM69_FREQUENCY RFM69_433MHZ 
    #define MY_RFM69_NEW_DRIVER
    #define MY_IS_RFM69HW  // Mandatory if you radio module is the high power version (RFM69HW and RFM69HCW), Comment it if it's not the case
    #define MY_RFM69_ENABLE_ENCRYPTION
    
    //#define MY_RFM69_NETWORKID 100  // Default is 100 in lib. Uncomment it and set your preferred network id if needed
    #define RF69_IRQ_PIN 3  // Default in lib is using D2 for common Atmel 328p (mini pro, nano, uno etc.). Uncomment it and set the pin you're using. Note for Atmel 328p, Mysensors, and regarding Arduino core implementation D2 or D3 are only available. But for advanced mcus like Atmel SAMD (Arduino Zero etc.), Esp8266 you will need to set this define for the corresponding pin used for IRQ
    #define MY_RF69_IRQ_NUM 1 // Temporary define (will be removed in next radio driver revision). Needed if you want to change the IRQ pin your radio is connected. So, if your radio is connected to D3/INT1, value is 1 (INT1). For others mcu like Atmel SAMD, Esp8266, value is simply the same as your RF69_IRQ_PIN
    //#define MY_RF69_SPI_CS 15 // If using a different CS pin for the SPI bus. Use MY_RFM69_CS_PIN for the development branch.
    
    //#define MY_REPEATER_FEATURE
    
    
    #define MY_NODE_ID 71
    #include <MySensors.h>
    
    
    
    #ifdef RELAY
    MyMessage msg_relay1(CHILD_ID_RELAY_1, V_LIGHT);  // relay1
    MyMessage msg_relay2(CHILD_ID_RELAY_2, V_LIGHT);  // relay2
    MyMessage msg_relay3(CHILD_ID_RELAY_3, V_LIGHT);  // relay3
    MyMessage msg_relay4(CHILD_ID_RELAY_4, V_LIGHT);  // relay4
    #endif
    void setRelayState(byte relayPin, bool value);
    
    #ifdef PIR
    MyMessage msg_pir1(CHILD_ID_PIR_1,V_TRIPPED);  // PIR1
    MyMessage msg_pir2(CHILD_ID_PIR_2,V_TRIPPED);  // PIR2
    MyMessage msg_pir3(CHILD_ID_PIR_3,V_TRIPPED);  // PIR3
    #endif
    
    
    void setup()
    {
      #ifdef MY_DEBUG
      Serial.println("Starting setup **************");
      #endif
    
      #ifdef RELAY
      pinMode(RELAY_PIN_1, OUTPUT);      // sets the RELAY pin as output
      pinMode(RELAY_PIN_2, OUTPUT);      // sets the RELAY pin as output
      pinMode(RELAY_PIN_3, OUTPUT);      // sets the RELAY pin as output
      pinMode(RELAY_PIN_4, OUTPUT);      // sets the RELAY pin as output
      digitalWrite(RELAY_PIN_1, RELAY_OFF);
      digitalWrite(RELAY_PIN_2, RELAY_OFF);
      digitalWrite(RELAY_PIN_3, RELAY_OFF);
      digitalWrite(RELAY_PIN_4, RELAY_OFF);
      // Set relay to last known state (using eeprom storage)
      state1 = loadState(CHILD_ID_RELAY_1);
      setRelayState(RELAY_PIN_1, state1);
      state2 = loadState(CHILD_ID_RELAY_2);
      setRelayState(RELAY_PIN_2, state2);
      state3 = loadState(CHILD_ID_RELAY_3);
      setRelayState(RELAY_PIN_3, state3);
      state4 = loadState(CHILD_ID_RELAY_4);
      setRelayState(RELAY_PIN_4, state4);
      #endif
    
      #ifdef PIR
      pinMode(PIR_PIN_1, INPUT);      // sets the PIR pin as input
      pinMode(PIR_PIN_2, INPUT);      // sets the PIR pin as input
      pinMode(PIR_PIN_3, INPUT);      // sets the PIR pin as input
      #endif
      
    
      #ifdef MY_DEBUG
      Serial.println("finished setup **************");
      #endif
      
    }
    
    void presentation()
    {
      #ifdef MY_DEBUG
      Serial.println("Starting presentation **************");
      #endif
      
      // Send the sketch version information to the gateway and Controller
      sendSketchInfo("SOTAO_NODE", "1.0");
    
      // Register all sensors to gw (they will be created as child devices)
    
      #ifdef RELAY
      present(CHILD_ID_RELAY_1, S_LIGHT, "Relay_1", true);
      present(CHILD_ID_RELAY_2, S_LIGHT, "Relay_2", true);
      present(CHILD_ID_RELAY_3, S_LIGHT, "Relay_3", true);
      present(CHILD_ID_RELAY_4, S_LIGHT, "Relay_4", true);
      #endif
    
       #ifdef PIR
      present(CHILD_ID_PIR_1, S_MOTION, "TEXT_A", true);  // CHILD ID =  and forcing ack for this node's messages
      present(CHILD_ID_PIR_2, S_MOTION, "TEXT_B", true);  // CHILD ID =  and forcing ack for this node's messages
      present(CHILD_ID_PIR_3, S_MOTION, "TEXT_C", true);  // CHILD ID =  and forcing ack for this node's messages
      #endif
      
      #ifdef MY_DEBUG
      Serial.println("finished presentation **************");
      #endif
      
    }
    
    void loop()
    {
      #ifdef PIR
      // Read digital motion value from PIRs
      bool tripped1 = digitalRead(PIR_PIN_1) == HIGH;  
      #ifdef MY_DEBUG
      Serial.println(tripped1);
      #endif
      send(msg_pir1.set(tripped1?"1":"0"));  // Send tripped value to gw
    
      bool tripped2 = digitalRead(PIR_PIN_2) == HIGH;
      #ifdef MY_DEBUG
      Serial.println(tripped2);
      #endif
      send(msg_pir2.set(tripped2?"1":"0"));  // Send tripped value to gw
    
      bool tripped3 = digitalRead(PIR_PIN_3) == HIGH;
      #ifdef MY_DEBUG
      Serial.println(tripped3);
      #endif
      send(msg_pir3.set(tripped3?"1":"0"));  // Send tripped value to gw
      #endif
    
    }
    
    
    #ifdef RELAY
    void receive(const MyMessage &message) { 
    if (message.type == V_STATUS) {
     switch (message.sensor) {
      case CHILD_ID_RELAY_1:    
        state1 = message.getBool();          // Change relay state
        setRelayState(RELAY_PIN_1, state1);    
        saveState(CHILD_ID_RELAY_1, state1);        // Store state in eeprom
        // Write some debug info
        printStateChangedDebug(CHANGE_STATE_SOURCE_RADIO, CHILD_ID_RELAY_1, state1);
        break; 
      case CHILD_ID_RELAY_2:
        state2 = message.getBool();
        setRelayState(RELAY_PIN_2, state2);
        saveState(CHILD_ID_RELAY_2, state2);     // Store state in eeprom
        // Write some debug info
        printStateChangedDebug(CHANGE_STATE_SOURCE_RADIO, CHILD_ID_RELAY_2, state2);
        break;
       case CHILD_ID_RELAY_3:
        state3 = message.getBool();
        setRelayState(RELAY_PIN_3, state3);
        saveState(CHILD_ID_RELAY_3, state3);     // Store state in eeprom
        // Write some debug info
        printStateChangedDebug(CHANGE_STATE_SOURCE_RADIO, CHILD_ID_RELAY_3, state3);
        break;
       case CHILD_ID_RELAY_4:
        state4 = message.getBool();
        setRelayState(RELAY_PIN_4, state4);
        saveState(CHILD_ID_RELAY_4, state4);     // Store state in eeprom
        // Write some debug info
        printStateChangedDebug(CHANGE_STATE_SOURCE_RADIO, CHILD_ID_RELAY_4, state4);
        break;
       
      }
     }
    }
    
    // Set status of a relay pin
    void setRelayState(byte relayPin, bool value)
    {
      digitalWrite(relayPin, value ? RELAY_ON : RELAY_OFF);
    }
    
    #endif
    
    
    // Print debug info, centralized in one place to minimize memory usage and have only one #ifdef MY_DEBUG for all state change messages
    void printStateChangedDebug(int source, int sensorID, bool value) {
    #ifdef MY_DEBUG
      Serial.print(F("Sensor value changed, source="));
      Serial.print(source == CHANGE_STATE_SOURCE_RADIO ? F("Radio") : F("Physical switch"));
      Serial.print(F(", Sensor="));
      Serial.print(sensorID);
      Serial.print(F(", New status: "));
      Serial.println(value);
    #endif
    }
    
    


  • Doing further investigation, still no sucess....

    Got the logs from the working node, based on Sensebender and everything seems fine.
    Changed the radios, still the same problem.
    Took the basic relay example from my sensors and just added my radio/signing stuff: Still the same problem. The code doesn't even reach setup() function, so it must be something on the MySensors initialization, but if that was the case, why does it work fine with the Sensebender micro?

    Any idea?

    How common is it in mysensors community to have RFM69's with HW signing and encryption?

     __  __       ____
    |  \/  |_   _/ ___|  ___ _ __  ___  ___  _ __ ___
    | |\/| | | | \___ \ / _ \ `_ \/ __|/ _ \| `__/ __|
    | |  | | |_| |___| |  __/ | | \__ \  _  | |  \__ \
    |_|  |_|\__, |____/ \___|_| |_|___/\___/|_|  |___/
            |___/                      2.3.1
    
    16 MCO:BGN:INIT NODE,CP=RPNNAA-X,REL=255,VER=2.3.1
    67 TSM:INIT
    69 TSF:WUR:MS=0
    71 TSM:INIT:TSP OK
    73 TSM:INIT:STATID=50
    75 TSF:SID:OK,ID=50
    77 TSM:FPAR
    88 TSF:MSG:SEND,50-50-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
    1017 TSF:MSG:READ,0-0-50,s=255,c=3,t=8,pt=1,l=1,sg=1:0
    1024 TSF:MSG:FPAR OK,ID=0,D=1
    2097 TSM:FPAR:OK
    2097 TSM:ID
    2099 TSM:ID:OK
    2101 TSM:UPL
    2119 TSF:MSG:SEND,50-50-0-0,s=255,c=3,t=24,pt=1,l=1,sg=0,ft=0,st=OK:1
    2340 TSF:MSG:READ,0-0-50,s=255,c=3,t=25,pt=1,l=1,sg=1:1
    2347 TSF:MSG:PONG RECV,HP=1
    2351 TSM:UPL:OK
    2353 TSM:READY:ID=50,PAR=0,DIS=1
    2367 TSF:MSG:SEND,50-50-0-0,s=255,c=3,t=15,pt=6,l=2,sg=0,ft=0,st=OK:0101
    2580 TSF:MSG:READ,0-0-50,s=255,c=3,t=15,pt=6,l=2,sg=0:0101
    2607 TSF:MSG:SEND,50-50-0-0,s=255,c=3,t=16,pt=0,l=0,sg=0,ft=0,st=OK:
    2824 TSF:MSG:READ,0-0-50,s=255,c=3,t=17,pt=6,l=25,sg=0:<NONCE>
    2955 TSF:MSG:SEND,50-50-0-0,s=255,c=0,t=17,pt=0,l=5,sg=1,ft=0,st=OK:2.3.1
    2981 TSF:MSG:SEND,50-50-0-0,s=255,c=3,t=16,pt=0,l=0,sg=1,ft=0,st=OK:
    3198 TSF:MSG:READ,0-0-50,s=255,c=3,t=17,pt=6,l=25,sg=1:<NONCE>
    3342 TSF:MSG:SEND,50-50-0-0,s=255,c=3,t=6,pt=1,l=1,sg=1,ft=0,st=OK:0
    3379 TSF:MSG:READ,0-0-50,s=255,c=3,t=16,pt=0,l=0,sg=1:
    3684 TSF:MSG:SEND,50-50-0-0,s=255,c=3,t=17,pt=6,l=25,sg=1,ft=0,st=OK:<NONCE>
    3713 TSF:MSG:READ,0-0-50,s=255,c=3,t=6,pt=0,l=1,sg=1:M
    3862 TSF:MSG:SEND,50-50-0-0,s=255,c=3,t=16,pt=0,l=0,sg=1,ft=0,st=OK:
    4098 TSF:MSG:READ,0-0-50,s=255,c=3,t=17,pt=6,l=25,sg=1:<NONCE>
    4732 TSF:MSG:SEND,50-50-0-0,s=255,c=3,t=11,pt=0,l=13,sg=1,ft=0,st=OK:SENSOR JANELA
    5261 TSF:MSG:SEND,50-50-0-0,s=255,c=3,t=16,pt=0,l=0,sg=1,ft=0,st=OK:
    5543 TSF:MSG:READ,0-0-50,s=255,c=3,t=17,pt=6,l=25,sg=1:<NONCE>
    6543 TSF:MSG:SEND,50-50-0-0,s=255,c=3,t=12,pt=0,l=9,sg=1,ft=0,st=OK:JS 2018V1
    6774 TSF:MSG:SEND,50-50-0-0,s=20,c=3,t=16,pt=0,l=0,sg=1,ft=0,st=OK:
    7067 TSF:MSG:READ,0-0-50,s=255,c=3,t=17,pt=6,l=25,sg=1:<NONCE>
    7241 TSF:MSG:SEND,50-50-0-0,s=20,c=0,t=6,pt=0,l=0,sg=1,ft=0,st=OK:
    7411 TSF:MSG:SEND,50-50-0-0,s=40,c=3,t=16,pt=0,l=0,sg=1,ft=0,st=OK:
    7696 TSF:MSG:READ,0-0-50,s=255,c=3,t=17,pt=6,l=25,sg=1:<NONCE>
    8173 TSF:MSG:SEND,50-50-0-0,s=40,c=0,t=7,pt=0,l=0,sg=1,ft=0,st=OK:
    8701 TSF:MSG:SEND,50-50-0-0,s=199,c=3,t=16,pt=0,l=0,sg=1,ft=0,st=OK:
    9357 TSF:MSG:READ,0-0-50,s=255,c=3,t=17,pt=6,l=25,sg=1:<NONCE>
    9549 TSF:MSG:SEND,50-50-0-0,s=199,c=0,t=13,pt=0,l=0,sg=1,ft=0,st=OK:
    9617 TSF:MSG:SEND,50-50-0-0,s=30,c=3,t=16,pt=0,l=0,sg=1,ft=0,st=OK:
    10022 TSF:MSG:READ,0-0-50,s=255,c=3,t=17,pt=6,l=25,sg=1:<NONCE>
    10180 TSF:MSG:SEND,50-50-0-0,s=30,c=0,t=0,pt=0,l=8,sg=1,ft=0,st=OK:Persiana
    10188 MCO:REG:REQ
    11352 TSF:MSG:SEND,50-50-0-0,s=255,c=3,t=26,pt=1,l=1,sg=1,ft=0,st=OK:2
    11737 TSF:MSG:READ,0-0-50,s=255,c=3,t=16,pt=0,l=0,sg=1:
    12355 TSF:MSG:SEND,50-50-0-0,s=255,c=3,t=17,pt=6,l=25,sg=1,ft=0,st=OK:<NONCE>
    12548 TSF:MSG:READ,0-0-50,s=255,c=3,t=27,pt=1,l=1,sg=1:1
    12668 MCO:PIM:NODE REG=1
    12670 MCO:BGN:STP
    isMetric: 1
    TempDiff :122.35
    HumDiff  :150.00
    T: 22.35
    H: 50
    13742 TSF:MSG:SEND,50-50-0-0,s=20,c=3,t=16,pt=0,l=0,sg=1,ft=0,st=OK:
    14575 TSF:MSG:READ,0-0-50,s=255,c=3,t=17,pt=6,l=25,sg=1:<NONCE>
    14753 TSF:MSG:SEND,50-50-0-0,s=20,c=1,t=0,pt=7,l=5,sg=1,ft=0,st=OK:22.4
    14862 TSF:MSG:SEND,50-50-0-0,s=40,c=3,t=16,pt=0,l=0,sg=1,ft=0,st=OK:
    15097 TSF:MSG:READ,0-0-50,s=255,c=3,t=17,pt=6,l=25,sg=1:<NONCE>
    15362 TSF:MSG:SEND,50-50-0-0,s=40,c=1,t=1,pt=2,l=2,sg=1,ft=0,st=OK:50
    TempDiff :0.04
    HumDiff  :0.50
    T: 22.39
    H: 51
    15511 TSF:MSG:SEND,50-50-0-0,s=20,c=3,t=16,pt=0,l=0,sg=1,ft=0,st=OK:
    15804 TSF:MSG:READ,0-0-50,s=255,c=3,t=17,pt=6,l=25,sg=1:<NONCE>
    16123 TSF:MSG:SEND,50-50-0-0,s=20,c=1,t=0,pt=7,l=5,sg=1,ft=0,st=OK:22.4
    16150 TSF:MSG:SEND,50-50-0-0,s=40,c=3,t=16,pt=0,l=0,sg=1,ft=0,st=OK:
    16467 TSF:MSG:READ,0-0-50,s=255,c=3,t=17,pt=6,l=25,sg=1:<NONCE>
    16703 TSF:MSG:SEND,50-50-0-0,s=40,c=1,t=1,pt=2,l=2,sg=1,ft=0,st=OK:51
    16748 TSF:MSG:SEND,50-50-0-0,s=199,c=3,t=16,pt=0,l=0,sg=1,ft=0,st=OK:
    17057 TSF:MSG:READ,0-0-50,s=255,c=3,t=17,pt=6,l=25,sg=1:<NONCE>
    17188 TSF:MSG:SEND,50-50-0-0,s=199,c=1,t=38,pt=7,l=5,sg=1,ft=0,st=OK:3.349
    17246 TSF:MSG:SEND,50-50-0-0,s=255,c=3,t=16,pt=0,l=0,sg=1,ft=0,st=OK:
    17465 TSF:MSG:READ,0-0-50,s=255,c=3,t=17,pt=6,l=25,sg=1:<NONCE>
    17772 TSF:MSG:SEND,50-50-0-0,s=255,c=3,t=0,pt=1,l=1,sg=1,ft=0,st=OK:103
    17780 MCO:BGN:INIT OK,TSP=1
    LOOP
    17840 TSF:MSG:SEND,50-50-0-0,s=30,c=3,t=16,pt=0,l=0,sg=1,ft=0,st=OK:
    18063 TSF:MSG:READ,0-0-50,s=255,c=3,t=17,pt=6,l=25,sg=1:<NONCE>
    18333 TSF:MSG:SEND,50-50-0-0,s=30,c=1,t=16,pt=2,l=2,sg=1,ft=0,st=OK:1
    TempDiff :0.06
    HumDiff  :0.00
    18360 MCO:SLP:MS=60000,SMS=0,I1=1,M1=1,I2=255,M2=255
    18366 TSF:TDI:TSL
    18370 MCO:SLP:WUP=-1
    18372 TSF:TRI:TSB
    LOOP
    TempDiff :0.72
    HumDiff  :0.50
    T: 21.67
    H: 52
    18452 TSF:MSG:SEND,50-50-0-0,s=20,c=3,t=16,pt=0,l=0,sg=1,ft=0,st=OK:
    18716 TSF:MSG:READ,0-0-50,s=255,c=3,t=17,pt=6,l=25,sg=1:<NONCE>
    18962 TSF:MSG:SEND,50-50-0-0,s=20,c=1,t=0,pt=7,l=5,sg=1,ft=0,st=OK:21.7
    19048 TSF:MSG:SEND,50-50-0-0,s=40,c=3,t=16,pt=0,l=0,sg=1,ft=0,st=OK:
    19286 TSF:MSG:READ,0-0-50,s=255,c=3,t=17,pt=6,l=25,sg=1:<NONCE>
    19542 TSF:MSG:SEND,50-50-0-0,s=40,c=1,t=1,pt=2,l=2,sg=1,ft=0,st=OK:52
    19550 MCO:SLP:MS=60000,SMS=0,I1=1,M1=1,I2=255,M2=255
    19556 TSF:TDI:TSL
    
    

    Gateway:

    Jan  9 22:34:50 nettemp mysgw: TSF:MSG:READ,50-50-255,s=255,c=3,t=7,pt=0,l=0,sg=0:
    Jan  9 22:34:50 nettemp mysgw: TSF:MSG:BC
    Jan  9 22:34:50 nettemp mysgw: TSF:MSG:FPAR REQ,ID=50
    Jan  9 22:34:50 nettemp mysgw: TSF:PNG:SEND,TO=0
    Jan  9 22:34:50 nettemp mysgw: TSF:CKU:OK
    Jan  9 22:34:50 nettemp mysgw: TSF:MSG:GWL OK
    Jan  9 22:34:51 nettemp mysgw: TSF:MSG:SEND,0-0-50-50,s=255,c=3,t=8,pt=1,l=1,sg=1,ft=0,st=OK:0
    Jan  9 22:34:52 nettemp mysgw: TSF:MSG:READ,50-50-0,s=255,c=3,t=24,pt=1,l=1,sg=0:1
    Jan  9 22:34:53 nettemp mysgw: TSF:MSG:PINGED,ID=50,HP=1
    Jan  9 22:34:53 nettemp mysgw: TSF:MSG:SEND,0-0-50-50,s=255,c=3,t=25,pt=1,l=1,sg=1,ft=0,st=OK:1
    Jan  9 22:34:53 nettemp mysgw: TSF:MSG:READ,50-50-0,s=255,c=3,t=15,pt=6,l=2,sg=0:0101
    Jan  9 22:34:53 nettemp mysgw: TSF:MSG:SEND,0-0-50-50,s=255,c=3,t=15,pt=6,l=2,sg=0,ft=0,st=OK:0101
    Jan  9 22:34:53 nettemp mysgw: TSF:MSG:READ,50-50-0,s=255,c=3,t=16,pt=0,l=0,sg=0:
    Jan  9 22:34:53 nettemp mysgw: TSF:MSG:SEND,0-0-50-50,s=255,c=3,t=17,pt=6,l=25,sg=0,ft=0,st=OK:<NONCE>
    Jan  9 22:34:53 nettemp mysgw: TSF:MSG:READ,50-50-0,s=255,c=0,t=17,pt=0,l=5,sg=1:2.3.1
    Jan  9 22:34:53 nettemp mysgw: TSF:MSG:READ,50-50-0,s=255,c=3,t=16,pt=0,l=0,sg=1:
    Jan  9 22:34:54 nettemp mysgw: TSF:MSG:SEND,0-0-50-50,s=255,c=3,t=17,pt=6,l=25,sg=1,ft=0,st=OK:<NONCE>
    Jan  9 22:34:54 nettemp mysgw: TSF:MSG:READ,50-50-0,s=255,c=3,t=6,pt=1,l=1,sg=1:0
    Jan  9 22:34:54 nettemp mysgw: GWT:RFC:C=0,MSG=50;255;3;0;6;M
    Jan  9 22:34:54 nettemp mysgw: TSF:MSG:SEND,0-0-50-50,s=255,c=3,t=16,pt=0,l=0,sg=1,ft=0,st=OK:
    Jan  9 22:34:54 nettemp mysgw: GWT:RFC:C=0,MSG=
    Jan  9 22:34:54 nettemp mysgw: TSF:MSG:READ,50-50-0,s=255,c=3,t=17,pt=6,l=25,sg=1:<NONCE>
    Jan  9 22:34:54 nettemp mysgw: TSF:MSG:SEND,0-0-50-50,s=255,c=3,t=6,pt=0,l=1,sg=1,ft=0,st=OK:M
    Jan  9 22:34:54 nettemp mysgw: TSF:MSG:READ,50-50-0,s=255,c=3,t=16,pt=0,l=0,sg=1:
    Jan  9 22:34:55 nettemp mysgw: TSF:MSG:SEND,0-0-50-50,s=255,c=3,t=17,pt=6,l=25,sg=1,ft=0,st=OK:<NONCE>
    Jan  9 22:34:55 nettemp mysgw: TSF:MSG:READ,50-50-0,s=255,c=3,t=11,pt=0,l=13,sg=1:SENSOR JANELA
    Jan  9 22:34:56 nettemp mysgw: TSF:MSG:READ,50-50-0,s=255,c=3,t=16,pt=0,l=0,sg=1:
    Jan  9 22:34:56 nettemp mysgw: TSF:MSG:SEND,0-0-50-50,s=255,c=3,t=17,pt=6,l=25,sg=1,ft=0,st=OK:<NONCE>
    Jan  9 22:34:57 nettemp mysgw: TSF:MSG:READ,50-50-0,s=255,c=3,t=12,pt=0,l=9,sg=1:JS 2018V1
    Jan  9 22:34:57 nettemp mysgw: TSF:MSG:READ,50-50-0,s=255,c=3,t=12,pt=0,l=9,sg=1:JS 2018V1
    Jan  9 22:34:57 nettemp mysgw: !TSF:MSG:SIGN VERIFY FAIL
    Jan  9 22:34:57 nettemp mysgw: TSF:MSG:READ,50-50-0,s=20,c=3,t=16,pt=0,l=0,sg=1:
    Jan  9 22:34:58 nettemp mysgw: TSF:MSG:SEND,0-0-50-50,s=255,c=3,t=17,pt=6,l=25,sg=1,ft=0,st=OK:<NONCE>
    Jan  9 22:34:58 nettemp mysgw: TSF:MSG:READ,50-50-0,s=20,c=0,t=6,pt=0,l=0,sg=1:
    Jan  9 22:34:58 nettemp mysgw: TSF:MSG:READ,50-50-0,s=40,c=3,t=16,pt=0,l=0,sg=1:
    Jan  9 22:34:58 nettemp mysgw: TSF:MSG:SEND,0-0-50-50,s=255,c=3,t=17,pt=6,l=25,sg=1,ft=0,st=OK:<NONCE>
    Jan  9 22:34:59 nettemp mysgw: TSF:MSG:READ,50-50-0,s=40,c=0,t=7,pt=0,l=0,sg=1:
    Jan  9 22:34:59 nettemp mysgw: TSF:MSG:READ,50-50-0,s=199,c=3,t=16,pt=0,l=0,sg=1:
    Jan  9 22:35:00 nettemp mysgw: TSF:MSG:SEND,0-0-50-50,s=255,c=3,t=17,pt=6,l=25,sg=1,ft=0,st=OK:<NONCE>
    Jan  9 22:35:00 nettemp mysgw: TSF:MSG:READ,50-50-0,s=199,c=0,t=13,pt=0,l=0,sg=1:
    Jan  9 22:35:00 nettemp mysgw: TSF:MSG:READ,50-50-0,s=30,c=3,t=16,pt=0,l=0,sg=1:
    Jan  9 22:35:01 nettemp mysgw: TSF:MSG:SEND,0-0-50-50,s=255,c=3,t=17,pt=6,l=25,sg=1,ft=0,st=OK:<NONCE>
    Jan  9 22:35:01 nettemp mysgw: TSF:MSG:READ,50-50-0,s=30,c=0,t=0,pt=0,l=8,sg=1:Persiana
    Jan  9 22:35:01 nettemp mysgw: TSF:MSG:ACK REQ
    Jan  9 22:35:02 nettemp mysgw: !TSF:MSG:SEND,0-0-50-50,s=30,c=0,t=0,pt=0,l=8,sg=0,ft=0,st=NACK:Persiana
    Jan  9 22:35:02 nettemp mysgw: TSF:MSG:READ,50-50-0,s=255,c=3,t=26,pt=1,l=1,sg=1:2
    Jan  9 22:35:02 nettemp mysgw: TSF:MSG:SEND,0-0-50-50,s=255,c=3,t=16,pt=0,l=0,sg=1,ft=0,st=OK:
    Jan  9 22:35:03 nettemp mysgw: TSF:MSG:READ,50-50-0,s=255,c=3,t=17,pt=6,l=25,sg=1:<NONCE>
    Jan  9 22:35:03 nettemp mysgw: TSF:MSG:SEND,0-0-50-50,s=255,c=3,t=27,pt=1,l=1,sg=1,ft=0,st=OK:1
    Jan  9 22:35:04 nettemp mysgw: TSF:MSG:READ,50-50-0,s=20,c=3,t=16,pt=0,l=0,sg=1:
    Jan  9 22:35:05 nettemp mysgw: !TSF:MSG:SEND,0-0-50-50,s=255,c=3,t=17,pt=6,l=25,sg=1,ft=0,st=NACK:<NONCE>
    Jan  9 22:35:05 nettemp mysgw: TSF:MSG:READ,50-50-0,s=20,c=3,t=16,pt=0,l=0,sg=1:
    Jan  9 22:35:05 nettemp mysgw: TSF:MSG:SEND,0-0-50-50,s=255,c=3,t=17,pt=6,l=25,sg=1,ft=0,st=OK:<NONCE>
    Jan  9 22:35:06 nettemp mysgw: TSF:MSG:READ,50-50-0,s=20,c=1,t=0,pt=7,l=5,sg=1:22.4
    Jan  9 22:35:06 nettemp mysgw: TSF:MSG:READ,50-50-0,s=40,c=3,t=16,pt=0,l=0,sg=1:
    Jan  9 22:35:06 nettemp mysgw: TSF:MSG:SEND,0-0-50-50,s=255,c=3,t=17,pt=6,l=25,sg=1,ft=0,st=OK:<NONCE>
    Jan  9 22:35:06 nettemp mysgw: TSF:MSG:READ,50-50-0,s=40,c=1,t=1,pt=2,l=2,sg=1:50
    Jan  9 22:35:06 nettemp mysgw: TSF:MSG:READ,50-50-0,s=20,c=3,t=16,pt=0,l=0,sg=1:
    Jan  9 22:35:07 nettemp mysgw: TSF:MSG:SEND,0-0-50-50,s=255,c=3,t=17,pt=6,l=25,sg=1,ft=0,st=OK:<NONCE>
    Jan  9 22:35:07 nettemp mysgw: TSF:MSG:READ,50-50-0,s=20,c=1,t=0,pt=7,l=5,sg=1:22.4
    Jan  9 22:35:07 nettemp mysgw: TSF:MSG:READ,50-50-0,s=40,c=3,t=16,pt=0,l=0,sg=1:
    Jan  9 22:35:07 nettemp mysgw: TSF:MSG:SEND,0-0-50-50,s=255,c=3,t=17,pt=6,l=25,sg=1,ft=0,st=OK:<NONCE>
    Jan  9 22:35:08 nettemp mysgw: TSF:MSG:READ,50-50-0,s=40,c=1,t=1,pt=2,l=2,sg=1:51
    Jan  9 22:35:08 nettemp mysgw: TSF:MSG:READ,50-50-0,s=199,c=3,t=16,pt=0,l=0,sg=1:
    Jan  9 22:35:08 nettemp mysgw: TSF:MSG:SEND,0-0-50-50,s=255,c=3,t=17,pt=6,l=25,sg=1,ft=0,st=OK:<NONCE>
    Jan  9 22:35:08 nettemp mysgw: TSF:MSG:READ,50-50-0,s=199,c=1,t=38,pt=7,l=5,sg=1:3.349
    Jan  9 22:35:08 nettemp mysgw: TSF:MSG:READ,50-50-0,s=255,c=3,t=16,pt=0,l=0,sg=1:
    Jan  9 22:35:08 nettemp mysgw: TSF:MSG:SEND,0-0-50-50,s=255,c=3,t=17,pt=6,l=25,sg=1,ft=0,st=OK:<NONCE>
    Jan  9 22:35:09 nettemp mysgw: TSF:MSG:READ,50-50-0,s=255,c=3,t=0,pt=1,l=1,sg=1:103
    Jan  9 22:35:09 nettemp mysgw: TSF:MSG:READ,50-50-0,s=30,c=3,t=16,pt=0,l=0,sg=1:
    Jan  9 22:35:09 nettemp mysgw: TSF:MSG:SEND,0-0-50-50,s=255,c=3,t=17,pt=6,l=25,sg=1,ft=0,st=OK:<NONCE>
    Jan  9 22:35:09 nettemp mysgw: TSF:MSG:READ,50-50-0,s=30,c=1,t=16,pt=2,l=2,sg=1:1
    Jan  9 22:36:09 nettemp mysgw: TSF:MSG:READ,50-50-0,s=20,c=3,t=16,pt=0,l=0,sg=1:
    Jan  9 22:36:09 nettemp mysgw: TSF:MSG:SEND,0-0-50-50,s=255,c=3,t=17,pt=6,l=25,sg=1,ft=0,st=OK:<NONCE>
    Jan  9 22:36:09 nettemp mysgw: TSF:MSG:READ,50-50-0,s=20,c=1,t=0,pt=7,l=5,sg=1:21.7
    Jan  9 22:36:10 nettemp mysgw: TSF:MSG:READ,50-50-0,s=40,c=3,t=16,pt=0,l=0,sg=1:
    Jan  9 22:36:10 nettemp mysgw: TSF:MSG:SEND,0-0-50-50,s=255,c=3,t=17,pt=6,l=25,sg=1,ft=0,st=OK:<NONCE>
    Jan  9 22:36:10 nettemp mysgw: TSF:MSG:READ,50-50-0,s=40,c=1,t=1,pt=2,l=2,sg=1:52
    Jan  9 22:36:28 nettemp mysgw: TSM:READY:NWD REQ
    Jan  9 22:36:28 nettemp mysgw: TSF:MSG:SEND,0-0-255-255,s=255,c=3,t=20,pt=0,l=0,sg=0,ft=0,st=OK:
    Jan  9 22:37:10 nettemp mysgw: TSF:MSG:READ,50-50-0,s=20,c=3,t=16,pt=0,l=0,sg=1:
    Jan  9 22:37:10 nettemp mysgw: TSF:MSG:SEND,0-0-50-50,s=255,c=3,t=17,pt=6,l=25,sg=1,ft=0,st=OK:<NONCE>
    Jan  9 22:37:10 nettemp mysgw: TSF:MSG:READ,50-50-0,s=20,c=1,t=0,pt=7,l=5,sg=1:21.2
    Jan  9 22:37:10 nettemp mysgw: TSF:MSG:READ,50-50-0,s=40,c=3,t=16,pt=0,l=0,sg=1:
    Jan  9 22:37:10 nettemp mysgw: TSF:MSG:SEND,0-0-50-50,s=255,c=3,t=17,pt=6,l=25,sg=1,ft=0,st=OK:<NONCE>
    Jan  9 22:37:10 nettemp mysgw: TSF:MSG:READ,50-50-0,s=40,c=1,t=1,pt=2,l=2,sg=1:54
    
    

 

305
Online

8.5k
Users

9.3k
Topics

98.5k
Posts