TimeAlarms won't function without Alarm.delay(n) in loop?

I’m working on a project that uses the TimeAlarms library. I am having an issue where the alarms to not seem to trigger without having an Alarm.delay(n) in the loop function with n>0.

Here is an example.

#include <TimeAlarms.h>
#include <Time.h>

void setup()
{
  Serial.begin(9600);
  Alarm.timerRepeat(1, repeatFunction);
}

void loop()
{
  //when below is commented out, repeatFunction() doesnt ever seem to trigger
  //Alarm.delay(1);
}

void repeatFunction()
{
  Serial.println("1 second has passed...");
}

I did not see this in any of the documentation, other than the fact that it’s in the loop() function in the example file provided, but with no comments explaining. Am I missing something? is there a requirement for this to be in the loop?

I am using ver. 1.0.5 of the IDE. TimeAlarm library from http://www.pjrc.com/teensy/td_libs_TimeAlarms.html, and time library from https://github.com/PaulStoffregen/Time.

https://www.pjrc.com/teensy/td_libs_TimeAlarms.html

Scroll down to Normal Running Usage.

You really should read the documentation for a library instead of just trying to hack through figuring out how it works.

Delta_G, thank you for pointing out that part of that page. I read through the, seemingly limited, documentation that was included with the library, which includes everything else on that page, except the part you mention. Strange for that to not be included in the library's docs.

You really should read the documentation for a library instead of just trying to hack through figuring out how it works

Yeah, thanks... I did. Just, not the online version. Oh well, now my findings make more sense.

Cheers.