Skip to content

Commit ad261b0

Browse files
quazzieuser2684
authored andcommitted
fix interrupt sleep (#383)
1 parent 0263338 commit ad261b0

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

NodeManagerLibrary.ino

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5301,7 +5301,15 @@ void NodeManager::_sleep() {
53015301
int interrupt_1_pin = _interrupt_1_mode == MODE_NOT_DEFINED ? INTERRUPT_NOT_DEFINED : digitalPinToInterrupt(INTERRUPT_PIN_1);
53025302
int interrupt_2_pin = _interrupt_2_mode == MODE_NOT_DEFINED ? INTERRUPT_NOT_DEFINED : digitalPinToInterrupt(INTERRUPT_PIN_2);
53035303
// enter smart sleep for the requested sleep interval and with the configured interrupts
5304-
interrupt = sleep(interrupt_1_pin,_interrupt_1_mode,interrupt_2_pin,_interrupt_2_mode,sleep_time*1000,_smart_sleep);
5304+
if (interrupt_1_pin != INTERRUPT_NOT_DEFINED && interrupt_2_pin != INTERRUPT_NOT_DEFINED) {
5305+
interrupt = sleep(interrupt_1_pin,_interrupt_1_mode,interrupt_2_pin,_interrupt_2_mode,sleep_time*1000,_smart_sleep);
5306+
} else if (interrupt_1_pin != INTERRUPT_NOT_DEFINED) {
5307+
interrupt = sleep(interrupt_1_pin,_interrupt_1_mode,sleep_time*1000,_smart_sleep);
5308+
} else if (interrupt_2_pin != INTERRUPT_NOT_DEFINED) {
5309+
interrupt = sleep(interrupt_2_pin,_interrupt_2_mode,sleep_time*1000,_smart_sleep);
5310+
} else {
5311+
sleep(INTERRUPT_NOT_DEFINED,MODE_NOT_DEFINED,INTERRUPT_NOT_DEFINED,MODE_NOT_DEFINED,sleep_time*1000,_smart_sleep);
5312+
}
53055313
// woke up by an interrupt
53065314
if (interrupt > -1) {
53075315
// register the interrupt pin

0 commit comments

Comments
 (0)