Cron expression

I am trying to do is applying the tutorial (Islamic Prayers - Time calculations and rules with audio and video). For learning and it is helpful.
So instead of checking every minutes, I try to stop checking after Isha (the last prayer of the day) and before Fajr (first prayer of the day), it is considerable period of time.

I can see some delay to getting my log message, especially when I add more devices

I mean first I made timers to be triggered when currrentTime == specific prayerTime, and when timer be off → it will reset the action.
Then I see the method is not fine in term of scalability, so I tried to apply the DP, but I see some delay of getting my log messages !