The circuit uses LiquidCrystal_I2C and DS1302RTC and is controlled by a single button. Click to snooze the alarm, double-click to switch it off, long click to change to time setting. The alarm can be off, on during all days, on during weekdays, or on during tues.-thurs.