An IoT doorbell

Flic button stuck to front door

Press me! Go on!

I live in a council estate which has recently undergone a snazzy renovation, with economies of scale that seem to have included the bulk purchase of a wireless doorbells, all of which are competing for a very small pool of frequencies. This means that a visitor to anyone’s house within range results in a mass summons of householders to their front doors.

Although this is the perfect excuse for curtain-twitching, it’s quite annoying. So when I heard about the Amazon IoT button (£22.99 from, er, Amazon), I wondered if I could use it as a solution. The IoT button can be used to trigger an AWS Lambda, which I could have used to send a push notification to an old Android phone I have knocking about, and I could then have written an app to respond to the push notification and played a sound.

However, the fact that the AWS IoT button has a non-replaceable battery and is designed only to last for 2000 clicks put me off, even though we aren’t really popular enough for this to pose much of a problem. So I looked around for alternatives and came across the Flic button, a Bluetooth Low-Energy button with a replaceable coin battery, out-of-the-box integrations with lots of things such as Ikea smart lights and If This Then That, and, more excitingly, an SDK which I could use to make my Android phone respond to button-pushes with custom logic.

The button is accompanied by a free app which you can use to pair your phone or tablet and manage your integrations. In Android, the app sends a Broadcast Intent out whenever it receives a message from the button; you can then create another app which subscribes to these broadcasts and takes a custom action. The Flic website has a great tutorial which provided everything I needed except for the few lines of code needed to get my phone to ring – i.e. my custom action. The iOS version of the app came with a ‘virtual Flic’, which I assume provides the ability to test your integrations without buying an actual button, but this feature is absent from the Android app for some reason.

I ordered my Flic button for £19.99 from Ryman’s on Sunday evening, used free click-and-collect and picked it up on Wednesday. (Only the turquoise one was £19.99; the button is also available in black and white, but these more blendable colours were £29.99, so that’s the explanation for the hideous visual assault on our visitors depicted above.) I started writing the Android app on Tuesday evening, and couldn’t test it without the physical button, but it worked with only the tiniest of tweaks to my custom logic once the I had picked the button up. All in all, the project has taken 5 days from conception to installation (i.e. sticking it to the door) which must be a record for me, because I hardly ever finish anything. And this all the more remarkable for the fact that I’ve never done any professional Android development, and haven’t done even any amateur stuff for 2 years. Bottom line – IT’S EASY!

You need to log into the Flic app to register your buttons, and you need to download a developer key and secret from the Flic site and put it in Android app when you subscribe to the Flic broadcast. However, the solution works without the phone being connected to the internet, which is marvellous, because it means I can remove the Wi-Fi key and all my personal info from my phone, so that if there are any insecurities on Bluetooth Low-Energy allowing an attacker to gain access to my phone via the doorbell, they still won’t be able to get on to the home network or steal my emails.

Maybe the biggest threat in this solution is that someone will steal the button itself. The glue isn’t very strong, and there’s nothing that prevents it from being paired with another device. But, as the people who live on my street are frequently reminded, that’s also true of a normal wireless doorbell.