I think the mistake is in the -u. Based on re-reading the manpage of hwclock, apparently hwclock reports time in local time zone, which means my first idea may have been the right one. Can you try removing the "-u" in the line "hw_offset=...." in /usr/bin/setalarm, and re-running, testing if the alarm goes off, and checking the content of /sys/class/rtc/rtc0/wakealarm? Also, I had trouble converting the date format you get out of hwclock. Does running `date -d "$(sudo hwclock)" +%s` give you an error?
I think the mistake is in the -u. Based on re-reading the manpage of hwclock, apparently hwclock reports time in local time zone, which means my first idea may have been the right one. Can you try removing the "-u" in the line "hw_offset=...." in /usr/bin/setalarm, and re-running, testing if the alarm goes off, and checking the content of /sys/class/ rtc/rtc0/ wakealarm? Also, I had trouble converting the date format you get out of hwclock. Does running `date -d "$(sudo hwclock)" +%s` give you an error?