Thursday, April 19, 2012

Wise Clock 4 with remote "Alarm stop" button

The Ramos project brought the novel idea of a wireless alarm-stop button: instead of just reaching out to  press on the top of your nightstand alarm clock, you now have to actually get out of the bed and walk to a remote corner of your dwelling to click on a keypad. No chance you will return to sleep afterward :)

This remote alarm-stop feature for Wise Clock 4 can be implemented in several different ways, all of them using of the on-board XBee socket:
  • through a Bluetooth module;
  • through WiFi, using the Roving Networks WiFly module;
  • through XBee radios.
The cheapest and easiest would be the Bluetooth solution, providing that you already have a BT device (e.g. Android phone/tablet) to communicate with. In pseudo-code, it should look like this:

if (alarm is ON)
{
    while (Serial1.available())
    {
       read characters received;
       if (it is the expected string)
       {
            set alarm OFF;
        }
    }
}

The WiFi solution would require a second WiFi device (phone/tablet) to access a web site, or maybe they could talk directly (sockets), using their IP addresses.

The solution based on XBee relies on direct communication between two XBee radios. One would have to build the remote device, probably around an Arduino, with a keypad and an XBee.

Updated Feb 26, 2018: A good XBee remote control would be the SparkFun Wireless joystick.
Another, much cheaper solution, that does not requires software changes, would use the M4 backpack, as detailed here.

2 comments:

  1. I've picked up a wiseclock 4 and am looking to do a similar thing. My goal is the following:

    1) alarm rings
    2) silence the alarm at the clock. (silencing only works for 30 seconds.)
    3) to silence for longer, you have to go to the shower where there's another switch. Hitting that switch once a minute for the next 10 minutes will permanently turn the alarm off. (I'm planning to do this with simple wire and a waterproof switch - nothing fancy and wireless for the first version)

    Bingo - non-optional alarm.

    Provided I do a few more things, like maybe wire in a battery...

    But on a more practical note, though I'm a coder by trade, this will be my first arduino-ish project. Do you have any suggestions on how to wire in an additional switch and pay attention to it's state from code?

    Cheers,
    Chris

    ReplyDelete
    Replies
    1. Chris,
      It sounds like a nice feature.
      The wire with a switch should work fine as an experiment, or a short-term solution.
      A "permanent" solution should involve wireless though. If you don't want to use bluetooth, any pair of radios (e.g. RFM12, RFM22) should work.
      Please keep me posted on your progress on this feature.

      Delete