MKR Zero board goes to sleep mode and wake up periodically

Shawn_Li:
if the value of Minutes equals to 59. Am I right?

Yes, but you need to consider what happens if the current hour is 23 and write some code to deal with that correctly.

Shawn_Li:
But the serial monitor didn't display anything so that's why I thought it never wake up from the standby mode at the setup function.

OK, that's logical. Do you see the "LoRa Sender" text in Serial Monitor?

One thing to keep in mind with serial output and sleeping is that serial output is relatively slow and happens asynchronously. What I mean by "asynchronously" is that when you call Serial.println("Sending packet: "), it doesn't immediately send that over Serial. Instead, it puts that text in a buffer and then the function returns. There is some background code that knows when it's time to send each byte of the text in the buffer and does this automatically. That's really nice because it means you're not blocked from running the rest of your code while waiting for this slow serial message to go out. However, if you try to do a Serial print and then put the microcontroller to sleep right after, there is no time for the serial data to get sent. You'll encounter the same problem if you try to use Serial.println() to figure out which line of your code is causing the microcontroller to reset. What you can do is call Serial.flush() before going to sleep. This function will wait until the data in the outgoing serial buffer has all been sent before it returns.