Nrf5x on NodeManager



  • Hello, i try nodeManager for arduino + nrf24 and it work perfectly but i want to use the NRF5x in my new design.
    In the changelog NRF52 is supported but i don't find anything in the Template to use it...

    Thanks.



  • +1

    I've tried the E73 Ebyte NRF52832 modules, various NRF51822, and "diymroe" STM32F407, all with the same result...not seeing anything and nothing to serial out.

    Somebody with more experience with hardware debugging could probably dive deeper using STLINK / JLINK tools.

    I know there are a few issues related to their use on github:

    https://github.com/mysensors/NodeManager/issues/463
    https://github.com/mysensors/NodeManager/pull/438

    I also remember the project owner, @user2684, mentioned he doesn't get notifications from the MySensors forum, best to open an issue via github.


  • Contest Winner

    @ncollins thanks for the at-mention! I've just got a NRF52832 shipped so when I'll get it I will run some tests by myself. So far tests on these platforms have been based on user feedback which is ok but not ideal since couldn't really test in an extensive way. I'll keep you posted. Thanks!



  • Hi.
    I just stumbled upon this. Can Nodemanager be used for NRF51 chips?
    Thanks


  • Contest Winner

    @Puneit-Thukral I run some tests a while ago and had no issues but never had the chance to have something running seriously and continuously to really troubleshoot NodeManager's behaviour with this board. If anybody is willing to volunteer and run some in depth testing, of course let me know here or privately. Thanks!



  • @user2684 I lack programming skills - but I have some time on hand due to the COVID19 induced lockdown and about 10 NRF51822 chips on hands. Happy to test it.



  • @user2684 Hi, I tried NRF51822 with the WaveShare dev board (https://www.waveshare.com/wiki/BLE400).
    I can use his integrated cp2120 to see the serial output (no need to do any special coding, it works out of the box if we use the proper board when uploading our sketch).
    I'm using a SSD1306 lcd working properly, using the proper library (https://github.com/beegee-tokyo/nRF52_OLED) and connecting the lcd to the SCL and SDA pins (P.01,P.02).

    The only thing I'm still trying to make it working is the Door sensor. Using Nodemanger is not working for me.



  • @Francisco_Elias Not using node manager but this sketch. See if it helps you

    //#define MY_DEBUG //Debug Disabled in production
    #define MY_RADIO_NRF5_ESB
    //#define MY_NODE_ID 10 // change this for every node
    #define SKETCH_NAME "Door Sensor" // this can be changed as well
    #define SKETCH_VERSION "V1"
    #define MY_SMART_SLEEP_WAIT_DURATION 500 //activate smart sleep
    #define MY_SLEEP_TRANSPORT_RECONNECT_TIMEOUT_MS  10000 //wait for 10 seconds to reconnect in case of transport problems
    #define MY_TRANSPORT_WAIT_READY_MS 30000  //try connecting for 30 seconds
    //#define MY_PARENT_NODE_ID 0
    //#define MY_PARENT_NODE_IS_STATIC
    
    
    
    #define DIGITAL_INPUT_SENSOR 2       // The digital input you attached your Door/Window sensor.
    #define CHILD_ID_DOOR 1            // Id of the door/window sensor child.
    #define CHILD_ID_BATTERY 254      // ID of the battery sensor
    #define BATTERY_FULL          3    // 
    #define BATTERY_EMPTY         1.8    // NRF51822 does not work below 1.8V
    float BATTERY_FULL_PCNT=100;    // 
    float BATTERY_EMPTY_PCNT=0;    // NRF51822 does not work below 1.8V
    #include <MySensors.h>
    
    
    
    #ifdef MY_DEBUG
    uint32_t SLEEP_TIME = 30000; // when debugging, sleep time is 30 seconds
    #endif
    #ifndef MY_DEBUG
    
      uint32_t SLEEP_TIME = 60000 * 1440 ; // when deployed, sleep time is 30 minutes
    #endif
    
    #define SHORT_WAIT 500  
    
    bool oldValueDoor = -1;
    float batteryVoltage = 0;
    //bool tripped=2;
    // Initialize door/window message
    MyMessage msgDoor(CHILD_ID_DOOR, V_TRIPPED); //Door/Window.
    
    MyMessage msgBattery(CHILD_ID_BATTERY, V_VOLTAGE);
    int batteryPcnt=-1;
    void setup()
    {
    
      pinMode(DIGITAL_INPUT_SENSOR, INPUT_PULLUP);  // sets the door/window sensor digital pin as input
      digitalWrite(DIGITAL_INPUT_SENSOR, HIGH);
    }
    void presentation()
    {
    
      sendSketchInfo(SKETCH_NAME, SKETCH_VERSION);
    
      present(CHILD_ID_DOOR, S_DOOR, "Door");
      wait(SHORT_WAIT);
      present(CHILD_ID_BATTERY, S_MULTIMETER, "DoorBatt");
    
    }
    
    void loop()
    {
      
      bool tripped = digitalRead(DIGITAL_INPUT_SENSOR)==HIGH;
    
      if (tripped != oldValueDoor)
      {
    
    
        send(msgDoor.set(tripped ? "1" : "0"), true); // Send door/window tripped value to gw
    
        oldValueDoor = tripped;
      }
       
    
        batteryVoltage = ((float)hwCPUVoltage()) / 1000.0;
        
        send(msgBattery.set(batteryVoltage, 2)); //this creates a voltage sensor
        batteryPcnt = round((batteryVoltage - BATTERY_EMPTY) *100.0 / (BATTERY_FULL - BATTERY_EMPTY));
        if (batteryPcnt > 100) {batteryPcnt = 100;}
       if (batteryPcnt <= 0) {batteryPcnt = 0;} 
        sendBatteryLevel(batteryPcnt, true); // this adds attribute to the door sensor
        sendHeartbeat();
            batteryPcnt=0;
    
        smartSleep(digitalPinToInterrupt(DIGITAL_INPUT_SENSOR), CHANGE, SLEEP_TIME);
        
    
    }
    

  • Contest Winner

    @Francisco_Elias said in Nrf5x on NodeManager:

    The only thing I'm still trying to make it working is the Door sensor. Using Nodemanger is not working for me.

    In case you want to give a try to the development version of NodeManager (https://github.com/mysensors/NodeManager/tree/development) there have been a few enhancements to support this board. Thanks



  • @user2684 @Puneit-Thukral Thanks Puneit and User2684.
    I think I isolate more the problem. Using pin 3 for the sensor (I tested some of them) always works, if I use a different pin (I tested more than 10 different ones) other than pin 3 the sensor doesn't work. I tried to eliminate a hw issue, so I tested 3 different nrf51822 modules. I tested a simple sketch with two door sensors, one attached to pin 3 and another to pin 7. Pin 3 works but Pin 7 never works:

    #define SKETCH_NAME "Testing Nodemanger on NRF51822"
    #define SKETCH_VERSION "1.0"
    
    #define MY_RADIO_NRF5_ESB
    #define MY_BAUD_RATE 9600
    
    #define NODEMANAGER_DEBUG ON
    #define NODEMANAGER_INTERRUPTS ON
    #define NODEMANAGER_SLEEP OFF
    #define NODEMANAGER_RECEIVE OFF
    #define NODEMANAGER_DEBUG_VERBOSE OFF
    #define NODEMANAGER_POWER_MANAGER OFF
    #define NODEMANAGER_CONDITIONAL_REPORT OFF
    #define NODEMANAGER_EEPROM OFF
    #define NODEMANAGER_TIME OFF
    #define NODEMANAGER_RTC OFF
    #define NODEMANAGER_SD OFF
    #define NODEMANAGER_HOOKING OFF
    #define NODEMANAGER_OTA_CONFIGURATION OFF
    #define NODEMANAGER_SERIAL_INPUT OFF
    
    #include <MySensors_NodeManager.h>
    
    #include <sensors/SensorDoor.h>
    SensorDoor door(3);
    SensorDoor door2(7);
    
    void before() {
      nodeManager.before();
    }
    
    void presentation() {
      nodeManager.presentation();
    }
    
    void setup() {
      nodeManager.setup();
    }
    
    void loop() {
      nodeManager.loop();
    }
    

    This is the serial output:

    15:54:10.386 ->  
    15:54:10.419 ->  __  __       ____
    15:54:10.419 -> |  \/  |_   _/ ___|  ___ _ __  ___  ___  _ __ ___
    15:54:10.487 -> | |\/| | | | \___ \ / _ \ `_ \/ __|/ _ \| `__/ __|
    15:54:10.522 -> | |  | | |_| |___| |  __/ | | \__ \  _  | |  \__ \
    15:54:10.591 -> |_|  |_|\__, |____/ \___|_| |_|___/\___/|_|  |___/
    15:54:10.625 ->         |___/                      2.3.2
    15:54:10.660 -> 
    15:54:10.693 -> 284 NM:INIT:VER=1.9-dev
    15:54:10.693 -> 309 NM:INIT:INO=Testing Nodemanger on NRF51822 v1.0
    15:54:10.760 -> 364 NM:INIT:LIB VER=2.3.2 CP=RNNNN--- 
    15:54:10.793 -> 404 NM:BFR:INIT
    15:54:14.938 -> 4542 NM:BFR:OK
    15:54:14.972 -> 4561 NM:PRES:DOOR(1) p=0 t=16
    15:54:14.972 -> 4594 NM:PRES:DOOR(2) p=0 t=16
    15:54:15.040 -> 4634 NM:STP:ID=18 M=1
    15:54:15.040 -> 4658 NM:BFR:INT p=3 m=2
    15:54:15.073 -> 4683 NM:STP:HW V=3303 F=16 M=0
    15:54:45.439 -> 35033 NM:LOOP:INT p=3 v=0
    15:54:45.439 -> 35060 NM:LOOP:DOOR(1):SET t=16 v=0
    15:54:51.644 -> 41251 NM:LOOP:INT p=3 v=1
    15:54:57.218 -> 46839 NM:LOOP:INT p=3 v=0
    15:54:57.251 -> 46866 NM:LOOP:DOOR(1):SET t=16 v=0
    15:55:04.109 -> 53731 NM:LOOP:INT p=3 v=1
    15:55:25.624 -> 75223 NM:LOOP:INT p=3 v=0
    15:55:44.678 -> 94288 NM:LOOP:INT p=3 v=1
    15:55:54.928 -> 104520 NM:LOOP:INT p=3 v=0
    15:56:09.315 -> 118909 NM:LOOP:INT p=3 v=1
    

    And this is what the gateway is receiving (checking it with MYSController):

    1575	25/10/2020 15:54:10	TX	18 - Testing Nodemanger on NRF	N/A	C_INTERNAL	NO	I_REBOOT	0
    1576	25/10/2020 15:54:14	RX	18	INTERNAL	C_PRESENTATION	NO	S_ARDUINO_NODE	2.3.2
    1577	25/10/2020 15:54:14	RX	18	INTERNAL	C_INTERNAL	NO	I_CONFIG	0
    1578	25/10/2020 15:54:14	TX	18	INTERNAL	C_INTERNAL	NO	I_CONFIG	M
    1579	25/10/2020 15:54:14	RX	18 - Testing Nodemanger on NRF	INTERNAL	C_INTERNAL	NO	I_SKETCH_NAME	Testing Nodemanger on NRF
    1580	25/10/2020 15:54:15	RX	18 - Testing Nodemanger on NRF	INTERNAL	C_INTERNAL	NO	I_SKETCH_VERSION	1.0
    1581	25/10/2020 15:54:15	RX	18 - Testing Nodemanger on NRF	1 - DOOR	C_PRESENTATION	NO	S_DOOR	DOOR
    1582	25/10/2020 15:54:15	RX	18 - Testing Nodemanger on NRF	2 - DOOR	C_PRESENTATION	NO	S_DOOR	DOOR
    1583	25/10/2020 15:54:45	RX	18 - Testing Nodemanger on NRF	1 - DOOR	C_SET	NO	V_TRIPPED	0
    1584	25/10/2020 15:54:57	RX	18 - Testing Nodemanger on NRF	1 - DOOR	C_SET	NO	V_TRIPPED	0
    1585	25/10/2020 16:01:33	RX	18 - Testing Nodemanger on NRF	INTERNAL	C_INTERNAL	NO	I_DISCOVER_RESPONSE	0
    
    

    I tested with a simple sketch and without nodemanager I can detect pin changes without any issue. My next steps will be:

    1. to check the same sketch with a NRF52832 (to check if something tied to the NRF51822). I have both ones.
    2. to check the same sketch with an arduino, so to verify it is something that only happen with NRF5.


  • I forgot to mention what I'm using:

    • WaveShare BLE400 motherboard
    • NRF51822 modules
    • MySensors library 2.3.2
    • Nodemanager (development version, updated few days ago)
    • I'll use a NRF52832, but it will take one or two days (I need to unlock the NF52 flash protection in order to use it with my ST-Link)


  • Tested the same sketch on an Arduino Pro mini (changed the pin 7 to pin 2 due the limitation of the interruptions on this Arduino) and all seems to work fine:
    Sketch used:

    #define SKETCH_NAME "Testing Nodemanger on Arduino Pro Mini"
    #define SKETCH_VERSION "1.0"
    
    //#define MY_RADIO_NRF5_ESB
    #define MY_RADIO_RF24
    
    #define MY_BAUD_RATE 9600
    
    #define NODEMANAGER_DEBUG ON
    #define NODEMANAGER_INTERRUPTS ON
    #define NODEMANAGER_SLEEP OFF
    #define NODEMANAGER_RECEIVE OFF
    #define NODEMANAGER_DEBUG_VERBOSE OFF
    #define NODEMANAGER_POWER_MANAGER OFF
    #define NODEMANAGER_CONDITIONAL_REPORT OFF
    #define NODEMANAGER_EEPROM OFF
    #define NODEMANAGER_TIME OFF
    #define NODEMANAGER_RTC OFF
    #define NODEMANAGER_SD OFF
    #define NODEMANAGER_HOOKING OFF
    #define NODEMANAGER_OTA_CONFIGURATION OFF
    #define NODEMANAGER_SERIAL_INPUT OFF
    
    #include <MySensors_NodeManager.h>
    
    #include <sensors/SensorDoor.h>
    SensorDoor door(3);
    SensorDoor door2(2); // replaced pin 7 for pin 2 (arduino pro mini interruption limitation)
    
    void before() {
      nodeManager.before();
    }
    
    void presentation() {
      nodeManager.presentation();
    }
    
    void setup() {
      nodeManager.setup();
    }
    
    void loop() {
      nodeManager.loop();
    }
    

    Serial output log where we can see it detect the changes of both pins (2 & 3):

    09:52:41.566 ->  
    09:52:41.566 ->  __  __       ____
    09:52:41.599 -> |  \/  |_   _/ ___|  ___ _ __  ___  ___  _ __ ___
    09:52:41.633 -> | |\/| | | | \___ \ / _ \ `_ \/ __|/ _ \| `__/ __|
    09:52:41.700 -> | |  | | |_| |___| |  __/ | | \__ \  _  | |  \__ \
    09:52:41.734 -> |_|  |_|\__, |____/ \___|_| |_|___/\___/|_|  |___/
    09:52:41.803 ->         |___/                      2.3.2
    09:52:41.836 -> 
    09:52:41.836 -> 208 NM:INIT:VER=1.9-dev
    09:52:41.870 -> 301 NM:INIT:INO=Testing Nodemanger on Arduino Pro Mini v1.0
    09:52:41.938 -> 364 NM:INIT:LIB VER=2.3.2 CP=RNNNA--- 
    09:52:41.971 -> 405 NM:BFR:INIT
    09:52:46.052 -> 4505 NM:BFR:OK
    09:52:46.087 -> 4532 NM:PRES:DOOR(1) p=0 t=16
    09:52:46.121 -> 4564 NM:PRES:DOOR(2) p=0 t=16
    09:52:46.190 -> 4608 NM:STP:ID=52 M=1
    09:52:46.190 -> 4630 NM:LOOP:INT p=3 v=1
    09:52:46.224 -> 4632 NM:BFR:INT p=3 m=1
    09:52:46.224 -> 4657 NM:LOOP:INT p=2 v=1
    09:52:46.257 -> 4659 NM:BFR:INT p=2 m=1
    09:52:46.899 -> 4757 NM:STP:HW V=3242 F=8 M=1307
    09:52:46.934 -> 4792 NM:LOOP:DOOR(2):SET t=16 v=1
    09:53:12.277 -> 30169 NM:LOOP:INT p=2 v=0
    09:53:12.311 -> 30169 NM:LOOP:INT p=2 v=0
    09:53:16.634 -> 34463 NM:LOOP:INT p=2 v=0
    09:53:16.668 -> 34463 NM:LOOP:INT p=2 v=1
    09:53:16.668 -> 34465 NM:LOOP:DOOR(2):SET t=16 v=1
    09:53:19.738 -> 37509 NM:LOOP:INT p=3 v=0
    09:53:19.738 -> 37509 NM:LOOP:INT p=3 v=0
    09:53:19.772 -> 37509 NM:LOOP:INT p=3 v=0
    09:53:19.805 -> 37509 NM:LOOP:INT p=3 v=0
    09:53:23.630 -> 41297 NM:LOOP:INT p=3 v=0
    09:53:23.630 -> 41297 NM:LOOP:INT p=3 v=1
    09:53:23.664 -> 41299 NM:LOOP:DOOR(1):SET t=16 v=1
    09:53:28.297 -> 45950 NM:LOOP:INT p=2 v=0
    09:53:28.330 -> 45950 NM:LOOP:INT p=2 v=0
    09:53:28.399 -> 45983 NM:LOOP:INT p=2 v=0
    09:53:28.433 -> 45983 NM:LOOP:INT p=2 v=0
    09:53:28.467 -> 45985 NM:LOOP:DOOR(2):SET t=16 v=0
    09:53:32.836 -> 50368 NM:LOOP:INT p=2 v=1
    09:53:32.870 -> 50368 NM:LOOP:INT p=2 v=1
    09:53:34.666 -> 52156 NM:LOOP:INT p=3 v=0
    09:53:34.700 -> 52156 NM:LOOP:INT p=3 v=0
    09:53:38.559 -> 55984 NM:LOOP:INT p=3 v=0
    09:53:38.559 -> 55984 NM:LOOP:INT p=3 v=1
    09:53:44.281 -> 61687 NM:LOOP:INT p=2 v=0
    09:53:44.315 -> 61687 NM:LOOP:INT p=2 v=0
    09:53:44.349 -> 61691 NM:LOOP:DOOR(2):SET t=16 v=0
    09:53:44.383 -> 61704 NM:LOOP:INT p=2 v=0
    09:53:44.418 -> 61704 NM:LOOP:INT p=2 v=0
    09:53:49.123 -> 66408 NM:LOOP:INT p=2 v=0
    09:53:49.157 -> 66408 NM:LOOP:INT p=2 v=1
    09:53:49.191 -> 66410 NM:LOOP:DOOR(2):SET t=16 v=1
    09:53:52.885 -> 70107 NM:LOOP:INT p=3 v=0
    09:53:52.919 -> 70107 NM:LOOP:INT p=3 v=0
    09:53:57.596 -> 74776 NM:LOOP:INT p=3 v=1
    09:53:57.629 -> 74776 NM:LOOP:INT p=3 v=1
    
    

    This is the output from the Gateway:

    1634	26/10/2020 9:52:45	RX	52	INTERNAL	C_PRESENTATION	NO	S_ARDUINO_NODE	2.3.2
    1635	26/10/2020 9:52:46	RX	52	INTERNAL	C_INTERNAL	NO	I_CONFIG	0
    1636	26/10/2020 9:52:46	TX	52	INTERNAL	C_INTERNAL	NO	I_CONFIG	M
    1637	26/10/2020 9:52:46	RX	52 - Testing Nodemanger on Ard	INTERNAL	C_INTERNAL	NO	I_SKETCH_NAME	Testing Nodemanger on Ard
    1638	26/10/2020 9:52:46	RX	52 - Testing Nodemanger on Ard	INTERNAL	C_INTERNAL	NO	I_SKETCH_VERSION	1.0
    1639	26/10/2020 9:52:46	RX	52 - Testing Nodemanger on Ard	1 - DOOR	C_PRESENTATION	NO	S_DOOR	DOOR
    1640	26/10/2020 9:52:46	RX	52 - Testing Nodemanger on Ard	2 - DOOR	C_PRESENTATION	NO	S_DOOR	DOOR
    1641	26/10/2020 9:52:46	RX	52 - Testing Nodemanger on Ard	2 - DOOR	C_SET	NO	V_TRIPPED	1
    1642	26/10/2020 9:53:16	RX	52 - Testing Nodemanger on Ard	2 - DOOR	C_SET	NO	V_TRIPPED	1
    1643	26/10/2020 9:53:23	RX	52 - Testing Nodemanger on Ard	1 - DOOR	C_SET	NO	V_TRIPPED	1
    1644	26/10/2020 9:53:28	RX	52 - Testing Nodemanger on Ard	2 - DOOR	C_SET	NO	V_TRIPPED	0
    1645	26/10/2020 9:53:44	RX	52 - Testing Nodemanger on Ard	2 - DOOR	C_SET	NO	V_TRIPPED	0
    1646	26/10/2020 9:53:49	RX	52 - Testing Nodemanger on Ard	2 - DOOR	C_SET	NO	V_TRIPPED	1
    
    

    Next step is to test it on a NRF52832. It will take some days as I need to set up my raspberry pi to unlock the NRF52 flash protection using the OpenOCD (I never did it and I need to read some docs). I'll keep you updated.



  • @user2684 Hi again. In order to verify if it is something related to mysensors nodemanager library I tested an sketch that monitor two pins (3 and 7) for changes and to print them over the serial and sending the message to the GW.
    Sum up:

    • Nodemanager + NRF51822 + a pin other than pin 3 = fails
    • Nodemanager + Arduino + a pin other than pin 3 = works
    • NRF51822 + MySensors (without Nodemanager) + a pin other than 3 = works

    Sketch for the NRF51822 test without Nodemanager:

    #define MY_DEBUG
    #define MY_RADIO_NRF5_ESB
    #include <MySensors.h>
    
    uint32_t SLEEP_TIME = 120000; 
    #define DIGITAL_INPUT_SENSOR 3   
    #define DIGITAL_INPUT_SENSOR2 7
    #define CHILD_ID 1   
    #define CHILD_ID2 2
    
    MyMessage msg(CHILD_ID, V_TRIPPED);
    MyMessage msg2(CHILD_ID2, V_TRIPPED);
    void setup()
    {
    	pinMode(DIGITAL_INPUT_SENSOR, INPUT);      
            pinMode(DIGITAL_INPUT_SENSOR2, INPUT);
    }
    
    void presentation()
    {
    	sendSketchInfo("Testing without Nodemanager on NRF51822", "1.0");
    	present(CHILD_ID, S_DOOR);
            present(CHILD_ID2, S_DOOR);
    }
    
    void loop()
    {
    	
    	bool tripped = digitalRead(DIGITAL_INPUT_SENSOR) == HIGH;
            bool tripped2 = digitalRead(DIGITAL_INPUT_SENSOR2) == HIGH;
    	Serial.println(tripped);
    	send(msg.set(tripped?"1":"0"));  // Send tripped value to gw
            Serial.println(tripped2);
            send(msg2.set(tripped2?"1":"0"));
    	sleep(digitalPinToInterrupt(DIGITAL_INPUT_SENSOR), CHANGE, digitalPinToInterrupt(DIGITAL_INPUT_SENSOR2), CHANGE, SLEEP_TIME);
    }
    
    
    

    The serial output:

    15:16:34.164 ->  __  __       ____
    15:16:34.164 -> |  \/  |_   _/ ___|  ___ _ __  ___  ___  _ __ ___
    15:16:34.164 -> | |\/| | | | \___ \ / _ \ `_ \/ __|/ _ \| `__/ __|
    15:16:34.164 -> | |  | | |_| |___| |  __/ | | \__ \  _  | |  \__ \
    15:16:34.164 -> |_|  |_|\__, |____/ \___|_| |_|___/\___/|_|  |___/
    15:16:34.164 ->         |___/                      2.3.2
    15:16:34.164 -> 
    15:16:34.164 -> 24 MCO:BGN:INIT NODE,CP=RNNNN---,FQ=16,REL=255,VER=2.3.2
    15:16:34.164 -> 29 TSM:INIT
    15:16:34.164 -> 31 TSF:WUR:MS=0
    15:16:34.164 -> 32 TSM:INIT:TSP OK
    15:16:34.164 -> 34 TSF:SID:OK,ID=18
    15:16:34.199 -> 36 TSM:FPAR
    15:16:34.199 -> 43 ?TSF:MSG:SEND,18-18-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=NACK:
    15:16:36.206 -> 2052 !TSM:FPAR:NO REPLY
    15:16:36.206 -> 2054 TSM:FPAR
    15:16:36.206 -> 2061 ?TSF:MSG:SEND,18-18-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=1,st=NACK:
    15:16:37.154 -> 3027 TSF:MSG:READ,0-0-18,s=255,c=3,t=8,pt=1,l=1,sg=0:0
    15:16:37.188 -> 3032 TSF:MSG:FPAR OK,ID=0,D=1
    15:16:38.202 -> 4070 TSM:FPAR:OK
    15:16:38.202 -> 4071 TSM:ID
    15:16:38.202 -> 4072 TSM:ID:OK
    15:16:38.202 -> 4074 TSM:UPL
    15:16:38.202 -> 4076 TSF:MSG:SEND,18-18-0-0,s=255,c=3,t=24,pt=1,l=1,sg=0,ft=2,st=OK:1
    15:16:38.235 -> 4083 TSF:MSG:READ,0-0-18,s=255,c=3,t=25,pt=1,l=1,sg=0:1
    15:16:38.235 -> 4089 TSF:MSG:PONG RECV,HP=1
    15:16:38.235 -> 4091 TSM:UPL:OK
    15:16:38.235 -> 4093 TSM:READY:ID=18,PAR=0,DIS=1
    15:16:38.235 -> 4097 TSF:MSG:SEND,18-18-0-0,s=255,c=3,t=15,pt=6,l=2,sg=0,ft=0,st=OK:0100
    15:16:38.235 -> 4105 TSF:MSG:READ,0-0-18,s=255,c=3,t=15,pt=6,l=2,sg=0:0100
    15:16:38.235 -> 4112 TSF:MSG:SEND,18-18-0-0,s=255,c=0,t=17,pt=0,l=5,sg=0,ft=0,st=OK:2.3.2
    15:16:38.269 -> 4121 TSF:MSG:SEND,18-18-0-0,s=255,c=3,t=6,pt=1,l=1,sg=0,ft=0,st=OK:0
    15:16:38.304 -> 4175 TSF:MSG:READ,0-0-18,s=255,c=3,t=6,pt=0,l=1,sg=0:M
    15:16:38.338 -> 4182 TSF:MSG:SEND,18-18-0-0,s=255,c=3,t=11,pt=0,l=25,sg=0,ft=0,st=OK:Testing without Nodemanag
    15:16:38.338 -> 4193 TSF:MSG:SEND,18-18-0-0,s=255,c=3,t=12,pt=0,l=3,sg=0,ft=0,st=OK:1.0
    15:16:38.338 -> 4201 TSF:MSG:SEND,18-18-0-0,s=1,c=0,t=0,pt=0,l=0,sg=0,ft=0,st=OK:
    15:16:38.338 -> 4209 TSF:MSG:SEND,18-18-0-0,s=2,c=0,t=0,pt=0,l=0,sg=0,ft=0,st=OK:
    15:16:38.373 -> 4216 MCO:REG:REQ
    15:16:38.373 -> 4218 TSF:MSG:SEND,18-18-0-0,s=255,c=3,t=26,pt=1,l=1,sg=0,ft=0,st=OK:2
    15:16:38.373 -> 4225 TSF:MSG:READ,0-0-18,s=255,c=3,t=27,pt=1,l=1,sg=0:1
    15:16:38.373 -> 4231 MCO:PIM:NODE REG=1
    15:16:38.373 -> 4233 MCO:BGN:STP
    15:16:38.373 -> 4235 MCO:BGN:INIT OK,TSP=1
    15:16:38.373 -> 1
    15:16:38.373 -> 4239 TSF:MSG:SEND,18-18-0-0,s=1,c=1,t=16,pt=0,l=1,sg=0,ft=0,st=OK:1
    15:16:38.373 -> 1
    15:16:38.373 -> 4247 TSF:MSG:SEND,18-18-0-0,s=2,c=1,t=16,pt=0,l=1,sg=0,ft=0,st=OK:1
    15:16:38.408 -> 4254 MCO:SLP:MS=120000,SMS=0,I1=3,M1=2,I2=7,M2=2
    15:16:38.408 -> 4259 TSF:TDI:TPD
    15:16:45.586 -> 11434 MCO:SLP:WUP=3
    15:16:45.586 -> 11436 TSF:TRI:TPU
    15:16:45.586 -> 0
    15:16:45.586 -> 11440 TSF:MSG:SEND,18-18-0-0,s=1,c=1,t=16,pt=0,l=1,sg=0,ft=0,st=OK:0
    15:16:45.586 -> 1
    15:16:45.586 -> 11448 TSF:MSG:SEND,18-18-0-0,s=2,c=1,t=16,pt=0,l=1,sg=0,ft=0,st=OK:1
    15:16:45.586 -> 11455 MCO:SLP:MS=120000,SMS=0,I1=3,M1=2,I2=7,M2=2
    15:16:45.586 -> 11460 TSF:TDI:TPD
    15:16:49.882 -> 15727 MCO:SLP:WUP=3
    15:16:49.882 -> 15729 TSF:TRI:TPU
    15:16:49.882 -> 1
    15:16:49.882 -> 15732 TSF:MSG:SEND,18-18-0-0,s=1,c=1,t=16,pt=0,l=1,sg=0,ft=0,st=OK:1
    15:16:49.882 -> 1
    15:16:49.882 -> 15741 TSF:MSG:SEND,18-18-0-0,s=2,c=1,t=16,pt=0,l=1,sg=0,ft=0,st=OK:1
    15:16:49.882 -> 15748 MCO:SLP:MS=120000,SMS=0,I1=3,M1=2,I2=7,M2=2
    15:16:49.882 -> 15752 TSF:TDI:TPD
    15:16:53.505 -> 19379 MCO:SLP:WUP=3
    15:16:53.539 -> 19381 TSF:TRI:TPU
    15:16:53.539 -> 0
    15:16:53.539 -> 19384 TSF:MSG:SEND,18-18-0-0,s=1,c=1,t=16,pt=0,l=1,sg=0,ft=0,st=OK:0
    15:16:53.539 -> 1
    15:16:53.539 -> 19393 TSF:MSG:SEND,18-18-0-0,s=2,c=1,t=16,pt=0,l=1,sg=0,ft=0,st=OK:1
    15:16:53.539 -> 19400 MCO:SLP:MS=120000,SMS=0,I1=3,M1=2,I2=7,M2=2
    15:16:53.539 -> 19405 TSF:TDI:TPD
    15:16:58.925 -> 24771 MCO:SLP:WUP=3
    15:16:58.925 -> 24773 TSF:TRI:TPU
    15:16:58.925 -> 1
    15:16:58.925 -> 24776 TSF:MSG:SEND,18-18-0-0,s=1,c=1,t=16,pt=0,l=1,sg=0,ft=0,st=OK:1
    15:16:58.925 -> 1
    15:16:58.925 -> 24785 TSF:MSG:SEND,18-18-0-0,s=2,c=1,t=16,pt=0,l=1,sg=0,ft=0,st=OK:1
    15:16:58.925 -> 24792 MCO:SLP:MS=120000,SMS=0,I1=3,M1=2,I2=7,M2=2
    15:16:58.925 -> 24796 TSF:TDI:TPD
    15:17:01.256 -> 27111 MCO:SLP:WUP=3
    15:17:01.256 -> 27112 TSF:TRI:TPU
    15:17:01.256 -> 0
    15:17:01.256 -> 27116 TSF:MSG:SEND,18-18-0-0,s=1,c=1,t=16,pt=0,l=1,sg=0,ft=0,st=OK:0
    15:17:01.256 -> 1
    15:17:01.256 -> 27124 TSF:MSG:SEND,18-18-0-0,s=2,c=1,t=16,pt=0,l=1,sg=0,ft=0,st=OK:1
    15:17:01.289 -> 27131 MCO:SLP:MS=120000,SMS=0,I1=3,M1=2,I2=7,M2=2
    15:17:01.289 -> 27136 TSF:TDI:TPD
    15:17:04.545 -> 30413 MCO:SLP:WUP=3
    15:17:04.545 -> 30415 TSF:TRI:TPU
    15:17:04.545 -> 1
    15:17:04.545 -> 30418 TSF:MSG:SEND,18-18-0-0,s=1,c=1,t=16,pt=0,l=1,sg=0,ft=0,st=OK:1
    15:17:04.578 -> 1
    15:17:04.578 -> 30426 TSF:MSG:SEND,18-18-0-0,s=2,c=1,t=16,pt=0,l=1,sg=0,ft=0,st=OK:1
    15:17:04.578 -> 30433 MCO:SLP:MS=120000,SMS=0,I1=3,M1=2,I2=7,M2=2
    15:17:04.578 -> 30438 TSF:TDI:TPD
    15:17:08.065 -> 33936 MCO:SLP:WUP=7
    15:17:08.065 -> 33938 TSF:TRI:TPU
    15:17:08.065 -> 1
    15:17:08.065 -> 33941 TSF:MSG:SEND,18-18-0-0,s=1,c=1,t=16,pt=0,l=1,sg=0,ft=0,st=OK:1
    15:17:08.099 -> 0
    15:17:08.099 -> 33949 TSF:MSG:SEND,18-18-0-0,s=2,c=1,t=16,pt=0,l=1,sg=0,ft=0,st=OK:0
    15:17:08.099 -> 33956 MCO:SLP:MS=120000,SMS=0,I1=3,M1=2,I2=7,M2=2
    15:17:08.099 -> 33961 TSF:TDI:TPD
    15:17:13.597 -> 39440 MCO:SLP:WUP=7
    15:17:13.597 -> 39442 TSF:TRI:TPU
    15:17:13.597 -> 1
    15:17:13.597 -> 39445 TSF:MSG:SEND,18-18-0-0,s=1,c=1,t=16,pt=0,l=1,sg=0,ft=0,st=OK:1
    15:17:13.597 -> 1
    15:17:13.597 -> 39453 TSF:MSG:SEND,18-18-0-0,s=2,c=1,t=16,pt=0,l=1,sg=0,ft=0,st=OK:1
    15:17:13.597 -> 39460 MCO:SLP:MS=120000,SMS=0,I1=3,M1=2,I2=7,M2=2
    15:17:13.597 -> 39465 TSF:TDI:TPD
    15:17:15.520 -> 41366 MCO:SLP:WUP=7
    15:17:15.520 -> 41368 TSF:TRI:TPU
    15:17:15.520 -> 1
    15:17:15.520 -> 41371 TSF:MSG:SEND,18-18-0-0,s=1,c=1,t=16,pt=0,l=1,sg=0,ft=0,st=OK:1
    15:17:15.520 -> 0
    15:17:15.520 -> 41379 TSF:MSG:SEND,18-18-0-0,s=2,c=1,t=16,pt=0,l=1,sg=0,ft=0,st=OK:0
    15:17:15.520 -> 41386 MCO:SLP:MS=120000,SMS=0,I1=3,M1=2,I2=7,M2=2
    15:17:15.520 -> 41391 TSF:TDI:TPD
    15:17:19.470 -> 45344 MCO:SLP:WUP=7
    15:17:19.503 -> 45346 TSF:TRI:TPU
    15:17:19.503 -> 1
    15:17:19.503 -> 45349 TSF:MSG:SEND,18-18-0-0,s=1,c=1,t=16,pt=0,l=1,sg=0,ft=0,st=OK:1
    15:17:19.503 -> 1
    15:17:19.503 -> 45357 TSF:MSG:SEND,18-18-0-0,s=2,c=1,t=16,pt=0,l=1,sg=0,ft=0,st=OK:1
    15:17:19.503 -> 45364 MCO:SLP:MS=120000,SMS=0,I1=3,M1=2,I2=7,M2=2
    15:17:19.503 -> 45369 TSF:TDI:TPD
    15:17:21.291 -> 47162 MCO:SLP:WUP=7
    15:17:21.291 -> 47164 TSF:TRI:TPU
    15:17:21.291 -> 1
    15:17:21.291 -> 47167 TSF:MSG:SEND,18-18-0-0,s=1,c=1,t=16,pt=0,l=1,sg=0,ft=0,st=OK:1
    15:17:21.324 -> 0
    15:17:21.324 -> 47175 TSF:MSG:SEND,18-18-0-0,s=2,c=1,t=16,pt=0,l=1,sg=0,ft=0,st=OK:0
    15:17:21.324 -> 47182 MCO:SLP:MS=120000,SMS=0,I1=3,M1=2,I2=7,M2=2
    15:17:21.324 -> 47187 TSF:TDI:TPD
    15:17:25.817 -> 51669 MCO:SLP:WUP=7
    15:17:25.817 -> 51670 TSF:TRI:TPU
    15:17:25.817 -> 1
    15:17:25.817 -> 51674 TSF:MSG:SEND,18-18-0-0,s=1,c=1,t=16,pt=0,l=1,sg=0,ft=0,st=OK:1
    15:17:25.817 -> 1
    15:17:25.817 -> 51682 TSF:MSG:SEND,18-18-0-0,s=2,c=1,t=16,pt=0,l=1,sg=0,ft=0,st=OK:1
    15:17:25.817 -> 51689 MCO:SLP:MS=120000,SMS=0,I1=3,M1=2,I2=7,M2=2
    
    

    Gateway received information:

    
    1884	26/10/2020 15:16:38	RX	18	INTERNAL	C_PRESENTATION	NO	S_ARDUINO_NODE	2.3.2
    1885	26/10/2020 15:16:38	RX	18	INTERNAL	C_INTERNAL	NO	I_CONFIG	0
    1886	26/10/2020 15:16:38	TX	18	INTERNAL	C_INTERNAL	NO	I_CONFIG	M
    1887	26/10/2020 15:16:38	RX	18 - Testing without Nodemanag	INTERNAL	C_INTERNAL	NO	I_SKETCH_NAME	Testing without Nodemanag
    1888	26/10/2020 15:16:38	RX	18 - Testing without Nodemanag	INTERNAL	C_INTERNAL	NO	I_SKETCH_VERSION	1.0
    1889	26/10/2020 15:16:38	RX	18 - Testing without Nodemanag	1 - S_DOOR	C_PRESENTATION	NO	S_DOOR	
    1890	26/10/2020 15:16:38	RX	18 - Testing without Nodemanag	2 - S_DOOR	C_PRESENTATION	NO	S_DOOR	
    1891	26/10/2020 15:16:38	RX	18 - Testing without Nodemanag	1 - S_DOOR	C_SET	NO	V_TRIPPED	1
    1892	26/10/2020 15:16:38	RX	18 - Testing without Nodemanag	2 - S_DOOR	C_SET	NO	V_TRIPPED	1
    1893	26/10/2020 15:16:45	RX	18 - Testing without Nodemanag	1 - S_DOOR	C_SET	NO	V_TRIPPED	0
    1894	26/10/2020 15:16:45	RX	18 - Testing without Nodemanag	2 - S_DOOR	C_SET	NO	V_TRIPPED	1
    1895	26/10/2020 15:16:49	RX	18 - Testing without Nodemanag	1 - S_DOOR	C_SET	NO	V_TRIPPED	1
    1896	26/10/2020 15:16:49	RX	18 - Testing without Nodemanag	2 - S_DOOR	C_SET	NO	V_TRIPPED	1
    1897	26/10/2020 15:16:55	RX	18 - Testing without Nodemanag	1 - S_DOOR	C_SET	NO	V_TRIPPED	0
    1898	26/10/2020 15:16:56	RX	18 - Testing without Nodemanag	2 - S_DOOR	C_SET	NO	V_TRIPPED	1
    1899	26/10/2020 15:16:58	RX	18 - Testing without Nodemanag	1 - S_DOOR	C_SET	NO	V_TRIPPED	1
    1900	26/10/2020 15:16:58	RX	18 - Testing without Nodemanag	2 - S_DOOR	C_SET	NO	V_TRIPPED	1
    1901	26/10/2020 15:17:01	RX	18 - Testing without Nodemanag	1 - S_DOOR	C_SET	NO	V_TRIPPED	0
    1902	26/10/2020 15:17:01	RX	18 - Testing without Nodemanag	2 - S_DOOR	C_SET	NO	V_TRIPPED	1
    1903	26/10/2020 15:17:04	RX	18 - Testing without Nodemanag	1 - S_DOOR	C_SET	NO	V_TRIPPED	1
    1904	26/10/2020 15:17:04	RX	18 - Testing without Nodemanag	2 - S_DOOR	C_SET	NO	V_TRIPPED	1
    1905	26/10/2020 15:17:08	RX	18 - Testing without Nodemanag	1 - S_DOOR	C_SET	NO	V_TRIPPED	1
    1906	26/10/2020 15:17:08	RX	18 - Testing without Nodemanag	2 - S_DOOR	C_SET	NO	V_TRIPPED	0
    1907	26/10/2020 15:17:13	RX	18 - Testing without Nodemanag	1 - S_DOOR	C_SET	NO	V_TRIPPED	1
    1908	26/10/2020 15:17:13	RX	18 - Testing without Nodemanag	2 - S_DOOR	C_SET	NO	V_TRIPPED	1
    1909	26/10/2020 15:17:15	RX	18 - Testing without Nodemanag	1 - S_DOOR	C_SET	NO	V_TRIPPED	1
    1910	26/10/2020 15:17:15	RX	18 - Testing without Nodemanag	2 - S_DOOR	C_SET	NO	V_TRIPPED	0
    1911	26/10/2020 15:17:19	RX	18 - Testing without Nodemanag	1 - S_DOOR	C_SET	NO	V_TRIPPED	1
    1912	26/10/2020 15:17:19	RX	18 - Testing without Nodemanag	2 - S_DOOR	C_SET	NO	V_TRIPPED	1
    1913	26/10/2020 15:17:21	RX	18 - Testing without Nodemanag	1 - S_DOOR	C_SET	NO	V_TRIPPED	1
    1914	26/10/2020 15:17:21	RX	18 - Testing without Nodemanag	2 - S_DOOR	C_SET	NO	V_TRIPPED	0
    1915	26/10/2020 15:17:25	RX	18 - Testing without Nodemanag	1 - S_DOOR	C_SET	NO	V_TRIPPED	1
    1916	26/10/2020 15:17:25	RX	18 - Testing without Nodemanag	2 - S_DOOR	C_SET	NO	V_TRIPPED	1
    

    So no need to test the NRF52 (but I will do anyway and I'll post the result).
    Do you know how to inform to the development team about this issue?

    Thanks a lot


  • Contest Winner

    @Francisco_Elias if understood correctly you are experiencing troubles in making a door sensor working attached to a pin different than 3 right? If this is the case, it is an expected behaviour, since interrupt pins on arduino pro mini are 2 and 3, those are the only two in which NodeManager configure the interrupts, even if there are boards supporting more interrupt pins. Let me know if this is a too strict limitation or feel free to open an issue directly on Github (https://github.com/mysensors/NodeManager/issues).
    Thanks!



  • @user2684 Thanks User2684.
    I think I didn't explained properly the issue. The problem is the following:

    • NRF51822 + MySensors + NodeManager + Door Sensor = only works pin 3
    • Arduino Pro Mini + MySensors + NodeManager + Door Sensor = works both pins that manage interrupts (2 and 3)
    • NRF51822 + MySensors without Nodemanager + Door Sensors (tested pin 3 and others) = all tested pins works.

    So NRF51822 with NodeManager and Door Sensor is unable to handle interrupts comming from pins other than 3, when it can manage without any issue when we don't use NodeManager.

    I hope it explain the issue. Let me know if you have any doubt or if you need any other information. I'm available for performing any test.



  • Yesterday I unlocked the flash protection on my NRF52832 and I have the same behaviour than with the NRF51822. Using Nodemanager I can't use for door/interruption sensors other pins than the pin 3. Using the same NRF5 without nodemanager (just MySensor) they works perfect, I can use other pins and also various at same time.


Log in to reply
 

Suggested Topics

  • 2
  • 2
  • 2
  • 1
  • 2
  • 1

1
Online

11.4k
Users

11.1k
Topics

112.7k
Posts