Arduino Sleep / Wake On Interrupt?



  • Hello,
    Is it possible to have the arduino in sleep mode and wake up when a message arrives to the NRF24l01 Radio?

    I have PIN 8 (IRQ) of the NRF24l01 connected to PIN D2 of the sleeping nano node. When the sleeping nano node goes to sleep, I send a message to the node from another , however the sleeping node does not awake when this happens. Is this possible to do?

    Below is the code I am using, thanks!

    #include <MySensor.h>
    #include <SPI.h>
     
    #define ID 0
    #define OPEN 2
    #define CLOSE 0
     
    MySensor gw;
    MyMessage msg(ID, V_TRIPPED);
     
    void setup() 
    { 
    	Serial.begin(115200);
    	Serial.println("Starting up Sensor Test");
      	gw.begin(incomingMessage,1,false);
    	gw.present(ID, S_DOOR); 
    
    
    }
     
    void loop()
    {
    	// Process for 10 Seconds
    	gw.wait(10000);
    	// Sleep 10 Seconds
    	gw.sleep(2, CHANGE, 10000);
    }
    
    
    
    void incomingMessage(const MyMessage &message) {
        
    	if(message.getInt() == 1){
    		Serial.println("Received command");
    		gw.send(msg.set(OPEN)); 		
      	delay(250);
      
    }
    

    Log in to reply
     

  • Admin

    Yes, it would be possible. But you won't save much juice as keeping radio in listening mode still requires way too much power to be able to run on batteries for any substantial time.


Log in to reply
 

1 out of 2

Suggested Topics


  • Announcements   29 Mar 2014, 17:08

    1
  • 11

  • Development   14 Jan 2025, 22:07

    3

  • Development   4 Feb 2025, 12:14

    3
  • 1

  • Development   26 Feb 2025, 06:26

    5

26
Online

11.5k
Users

11.1k
Topics

112.8k
Posts