Updated: Jul 23
In this blog we present how you might want to easily convert a doorbell into IOT. Instead of a chime sound you will get a call on your phone with a customised message (completely FREE of charge VoIP service). The doorbell is powered on a battery so you do not have to worry about wiring it and you can stick it anywhere. It connects to the internet over Wi-Fi by using IOT Cricket Wi-Fi module without any extra IOT HUBs required. It sounds cool, doesn't it?
How does it work? When someone pushes a button, it wakes up the IOT Cricket module. Cricket connects to your Wi-Fi and sends a configured HTTP POST request. In this project we configured the request to Webhooks/IFTTT which is connected to "VoIP Calls". Then on your phone install the IFTTT app, which has a built-in VoIP functionality. The app wakes your phone and you hear the customised message. The IFTTT VoIP service is completely FREE of charge and very easy to use.
NOTE: you can do it in many different ways using other services than IFTTT. IOT Cricket module can be integrated to other systems by using either HTTP REST api or MQTT. You can also write your own app to make your completely customised solution.
In this example device performed 10160 notifications with single charged 400mAh 3.7 lithium LiPo battery. To provide a bit more perspective if we assume this doorbell is going to be pressed 4 times a day it can last for about 7 years on a single battery without recharging. This is due to Cricket module has been optimised for ultra low power.
The instructions comprise of the following steps:
Modification of your doorbell device
Configuring IFTTT: Webhooks and "VoIP Calls" service
Configuring IOT Cricket module
Connecting the doorbell to Wi-Fi
Before you start, please make sure you have the following components:
A doorbell case (any to contain battery, Cricket and a button) e.g. Bell Push Transmitter
Tactile Button (you might be able to reuse one from your doorbell)
If you are ready, let's get started!
Modifying existing doorbell
As shown below, we took an existing Bell Push Transmitter; opened it up and removed all the internal electronics and the battery. We also cut out the interiors to free up the interior space. Then we connected Cricket Wi-Fi module and the tactile button to a battery. The button we glued on one side of the battery in the position that it can be pressed from the casing button. Then we wrapped it up and put into the casing. As the battery fit tightly we didn't have to glue anything more. This is it!
NOTE: do not close the casing yet. You will need to press the built-in button on the Cricket to configure it.
Now let's configure it.
IFTTT setup with a "VoIP Calls" service
Steps to follow:
Go to: https://ifttt.com/
Login or register
Click Create from User / Account menu (top right corner)
Click + to create new source event
Select Webhooks service
Click Receive a web request (on the left hand side)
Create event name e.g. ring_my_phone
The source event should be set-up now, click + after Then event
Search VoIP Calls service
Change Event Name to ring_my_phone
Change Title accordingly e.g. Doorbell (the title is shown when a phone rings)
Change Voice message to whatever you like e.g. Hey! Someone is at your doorstep!
Almost there, now you need to get a HTTP address to which we can post events from the IoT module. Search for Webhooks service and click on the document in the right up corner.
Next copy web links under"Make a POST or GET web request to:" you will need it later.
Before we start using the device it needs to be configured in Developer Portal. Please go to the next section.
Configure your device in Developer Portal
Open TOE Developer Portal from any browser either from PC or mobile. You must register/login to Developer Portal to configure the device in your account. Click "Add new" device to activate your device in the system. You need to use the unique serial number printed on a label stick on the back of Cricket.
Set the following configuration:
RTC: OFF IO2: OFF Battery monitor: OFF Temperature Sensor: OFF Force updates on - IO1 Wake Up: Yes Force updates on - RTC Wake Up: No Post Events: see below
Copy / paste the link we copied from Webhooks in io1_wakeup:
replace https to http
replace event to ring_my_phone
the link should look like this below:
Do not forget to press the Save button.
We are almost there! We just need to connect our device to the internet over the Wi-Fi network.
Connect to Wi-Fi network (internet)
Press the button on the Cricket for 5 seconds until the LED is constantly lit. Then connect from any device with web browser capabilities (smartphone, laptop, ...) to toe_device Circket's private Wi-Fi network. Open http://192.168.4.1/index.html page and pass your Wi-Fi credentials. That's it.
More information how to provision Cricket with your Wi-Fi can be found in Cricket's IOT Developer Guide documentation.
Now your device is live and connected to the internet!
Fetch the configuration from Developer Portal
Just one more step. Press the built-in button on the Cricket for 1 second to fetch the configuration from Developer Portal. Now you are all set and you should keep calls on your phone when you press the doorbell button.
Things On Edge is a company based in Cambridge, UK. We designed ultra-low battery powered Cricket ® Wi-Fi module to allow you to connect various electronic devices to smartphones or other internet services literally in minutes. It doesn't require any programming and coding. It allows you to integrate your devices to a huge IOT ecosystem services over MQTT and HTTP POST requests.
We hope it was an enjoyable experience for you! If you have any feedback or suggestions, feel free to get in touch and help us improve the technology. If you like the project, please spread the word.