Smart doorbell that can be implemented in any existing doorbell based upon a NodeMCU, a 3v3 Relay and Tasmota
The following components have been used
- 1 NodeMCU v3 ESP8266 chip: https://aliexpress.com/item/32665100123.html
- 1 3v3 Relay: https://aliexpress.com/item/1005001567474787.html
- 230v AC to 5v DC converter: https://aliexpress.com/item/4000606845997.html
- Dupont/Jumper cables: https://aliexpress.com/item/4000203371860.html
- Existing doorbell
- (Optional) 3D printed case: https://www.thingiverse.com/thing:5167974
- Download Tasmotizer: https://github.com/tasmota/tasmotizer
- Connect the NodeMCU via the USB port
- In Tamotizer, select
Release
and clickTasmotize
- Look up an access point with the name
tasmota_XXXXXX-####
, connect and follow the instructions - Go with the browser to the IP-adress of your NodeMCU
- Click
Configuration
- Click
Configure Module
- Set
Module Type
toGeneric
- Save and wait for the device to reboot
- Repeat step 6 & 7
- Configure the module as shown on the picture below
- Save and wait for the device to reboot
Optionally, it is possible by adding a 'silent mode' to your doorbell. You do this by updating the configuration add temporarily remove the relay from the configuration.
Switch:
- platform: mqtt
name: "Deurbel stille modus"
command_topic: "cmnd/doorbell/GPIO5" ## Set 'doorbell' to the topic name of your device
state_topic: "stat/doorbell/RESULT" ## Set 'doorbell' to the topic name of your device
payload_on: "0"
payload_off: "256"
state_on: '{"GPIO0":{"0":"None"},"GPIO1":{"0":"None"},"GPIO2":{"0":"None"},"GPIO3":{"0":"None"},"GPIO4":{"0":"None"},"GPIO5":{"0":"None"},"GPIO9":{"0":"None"},"GPIO10":{"0":"None"},"GPIO12":{"0":"None"},"GPIO13":{"0":"None"},"GPIO14":{"160":"Switch1"},"GPIO15":{"0":"None"},"GPIO16":{"0":"None"},"GPIO17":{"0":"None"}}}'
state_off: '{"GPIO0":{"0":"None"},"GPIO1":{"0":"None"},"GPIO2":{"0":"None"},"GPIO3":{"0":"None"},"GPIO4":{"0":"None"},"GPIO5":{"256":"Relay_i1"},"GPIO9":{"0":"None"},"GPIO10":{"0":"None"},"GPIO12":{"0":"None"},"GPIO13":{"0":"None"},"GPIO14":{"160":"Switch1"},"GPIO15":{"0":"None"},"GPIO16":{"0":"None"},"GPIO17":{"0":"None"}}}'