Reolink Video Doorbell with Standard Electro/Mechanical Chime Guide

ATTENTION:

  1. This guide is only for the original Reolink Doorbell. “V2” devices appear to use a 900MHz instead of 433MHz frequency to communicate with their chime, which is incompatible. If anyone knows of similar programmable “900MHz” smart devices, please post a link so I can add it to the guide.

  2. The required MHCOZY device listed and linked below varies sometimes by the Amazon seller. The other versions appears to be a non-ESP based board, and/or a different input voltage requirement (i.e. not compatible with Tasmota or the upgraded doorbell transformer). Please use caution when ordering, as the other devices listed will most likely not work with this guide without performing an ESP module transplant, and/or providing an alternate power source. I’ve provided some alternate Aliexpress links that appear to be the right type of board if the recommended Amazon unit is unavailable.

After lots of searching on how to get my Reolink Video Doorbell to work with my original electro/mechanical chime, I finally found/figured out a standalone Cloud/WiFi/HA free solution using a 433MHz WiFi board flashed with Tasmota. This is still a work-in-progress (for example there is currently a 1 - 2 second delay from pressing the button, to the relay actually cycling), so minor changes or tweaks may be implemented. FYI, I need to go back through and take more pictures, so those will be added soon!

Before we begin, the standard WARNINGS/CAUTIONS:

WARNING – SHOCK HAZARD: Although we will only be dealing with “low-voltage,” it is still AC voltage we’ll be working with. As such there is always the risk of electrical shock. While this is very mild for the majority of people, it can still be:

  1. slightly to mildly painful
  2. cause injury or damage from sudden reflex
  3. cause damage to equipment (i.e. miswiring/short damage)
  4. cause more serious injury to those susceptible (i.e. medical conditions, etc.)

Furthermore, if working on or at the doorbell transformer itself there is risk to exposure to the 120VAC Mains, which can cause serious injury or death. Always shut off circuit breakers, lockout/tagout (optional, but recommended – google for more information), and VERIFY power removal with either a voltage probe or DMM. If you’re unfamiliar with this equipment and their usage, STOP! Get a professional to do it for you!

WARNING – BURN HAZARD: Unless using a flashing jig, there will be some soldering involved. Typical soldering temperatures are in the 600°- 650°F range, and will instantly burn your skin if you slip or handle it wrong. Furthermore, you can easily damage equipment from using too high of a heat setting, or from again slipping and touching an unintended component.

CAUTION – CUT INJURY/DAMAGE: You’ll be using standard hand tools, which can be sharp (e.g. wire strippers). Slipping or misuse can obviously lead to you cutting yourself, so use caution. Furthermore, you can always damage the components we’ll be working with, which adds time and cost to the project. Slow and steady DIYers… there’s no prize for finishing this the fastest!

So now that those are out of the way, let’s list what we need:

  1. Reolink Video Doorbell (obviously)

  2. Upgraded doorbell transformer (needed for video doorbells either way)

  3. MHCOZY DC 7-32V 433MHz Relay WiFi module
    (Amazon seller varies this item sometimes. Verify it’s the “7-32V with 433Mhz RF” option, and that the board pictured is the same as one pictured below BEFORE purchasing)
    Aliexpress Alternate 1 - select 7-32V 433MHZ Shell (case included)
    Aliexpress Alternate 2 - select DC5-32V 433MHZ case (case included)
    Aliexpress Alternate 3 - select 7-32V and 433 remote (no case)
    (It’s Aliexpress, so it’s a bit of a dice roll sometimes whether what you see is what you get.
    Recommend using PayPal or another buyer protection option if available!)

  4. Soldering iron or a PSF-B01 Jig

  5. Solder and flux (soldering method only)

  6. Fine single strand 30AWG or finer wire (soldering method only)

  7. Standard single strand 20AWG to 18AWG doorbell wire

  8. USB TTL Serial Flasher

  9. DMM and/or Voltage Probe

  10. Standard Hand Tools

(Except for the MHCOZY, all links are just examples of what you need)

Now on to the steps…

Step 1) Disassemble the MHCOZY DC 7-32V 433MHz Relay WiFi module.

The plastic case has no screws, but does have 2 small tabs on both long sides, so you’ll need to gently pry this apart to remove the bottom cover. You can use a small prying tool, flat head screw driver, scribe, etc. to accomplish this. Once apart, verify the WiFi module is a PSF-B01 or other ESP based board. If it’s not, then this method will not work without Cloud/WiFi/HA support. It may be possible to transplant an ESP-12F or 12S module, but that exceeds the scope of this guide at this time.

Step 2) Flash the latest version of Tasmota onto the module.

There are tons of how-to guides and YouTube videos on this, so I’m not going to get into the nitty gritty here. Basically this is where the soldering/jig and USB TTL Serial Flasher come in. Personally I just soldered mine, but the jig makes it pretty easy if you want to go that route (especially if you have your own 3D printer). I’ll list the PSF-B01 pinout, but again just search here or on YouTube for videos to do this if you’re unfamiliar. I will add that the button on the MHCOZY does connect GPIO0 to Ground, so you can use that to get the module into flashing mode. Since I already wrote it below for another member, flashing in a nutshell:

  1. connect your USB serial TTL flashing device to your PC, and install the drivers if Windows doesn’t do this automatically the first time you plug it in (it’s been a while, but I think this was the correct driver for windows), afterwards disconnect the USB from the device;
  2. Download Tasmotizer. Yes you can technically use a web browser for flashing Tasmota these days, but I still prefer this app… just seems to work far smoother for me;
  3. connect your flashing device to the PSF-B01 board (either by soldering or using the above jig) VCC to 3V3, GND to GND, TX to RX, and RX to TX;
  4. press and hold the MHCOZY button, then plug in your flashing device to the USB port on your PC. Hold for about 3-5 seconds, then release the button. This puts the ESP chip into flashing mode;
  5. open Tasmotizer and flash your device (again lots of YouTube videos for using this). I generally recommend backing up, erasing, and then programming Tasmota to the chip.
  6. after you confirm Tasmota flashed to the chip properly, go ahead and remove your leads from the MHCOZY.

Step 3) Temporarily power things up.

Prior to installing the Reolink Video Doorbell or MHCOZY in their permanent locations, we need to pair things up. This is best done on a work table where we can power the two up next to each other. First, power up your Reolink Video Doorbell. Depending on the model you have, this can be done by either plugging in a POE ethernet cable (POE version obviously), or by hooking up the 24VDC adapter that comes with the WiFi version. Give the Reolink some time to bootup (about 30 seconds). Next plug in a powered USB mini cable to the MHCOZY, and open the Tasmota web browser associated with this device (see aforementioned guides/YouTube videos). We’ll setup Tasmota proper in a bit, but in the meantime verify that clicking the “Toggle” button with the default Tasmota settings (i.e. Sonoff Basic) on the browser actually toggles our relay.

Step 4) Program the 433MHz signal.

The Reolink Video Doorbell transmits a 433MHz signal to its included plugin chime. The MHCOZY board we have can be programmed easily to this signal. First press and hold the button on the MHCOZY for 3 seconds until the blue LED illuminates. Now immediately press the Reolink Doorbell button, and you should see the red LED come on, as well as hear the relay “click” after a few seconds. If you don’t, wait until the Reolink’s blue swirling light stops, and try pressing the doorbell button again. If you don’t see the red LED come on, or hear the relay switch, then repeat the steps from the MHCOZY 3 second button hold step. Continue on once pressing the doorbell button toggles the MHCOZY.

Step 5) Setting up Tasmota for proper doorbell chiming.

Here we’re going to setup Tasmota on the MHCOZY to work properly with our chime when it’s triggered. From the same Tasmota web browser we opened up above, perform the following:

  1. Click Configure, Configure Other

  2. In the Template box copy the following:

{“NAME”:“MHCOZY RF 1CH”,“GPIO”:[32,0,0,0,0,0,0,0,224,320,0,0,0,0],“FLAG”:0,“BASE”:18}

  1. Check the Activate box, name the “Device Name” and “Friendly Device Name 1” whatever you want (short and simple is best), and click the green Save button at the bottom. The device will reboot at this point, which usually takes about 20 – 30 seconds, and will take you back to the Main Menu. “MHCOZY RF 1CH” should now be displayed at the top of the page, along with whatever you named your device directly under it. If not, check that you properly entered the template info which includes the { } symbols, and that you checked the checkbox.

  2. Click Console

  3. Enter the following:

so73 1
pulsetime 3
rule1 on button1#state do event chime endon
rule2 on event#chime do backlog rule1 0; power1 1; ruletimer1 10 endon on rules#timer=1 do rule1 1 endon
rule1 1
rule2 1

In addition to the normally single toggling of the MHCOZY, the Reolink transmits its 433MHz signal for ~3 seconds or so, which won’t produce a useable chime for the majority of people. Furthermore, the toggle signal is inconsistent, and sometimes toggles 2 or even 3 times per doorbell button press. The options and rules we just implemented resolve these issues into a nice, quick, and single toggle of our original doorbell chime. Quick note on the “pulsetime” command, the 3 represents 300ms / 0.3 seconds. You can set this to whatever you personally need/want for your doorbell chime, with each whole number representing 100ms / 0.1 seconds. I just felt 300ms produced a “normal” on/off time for my chime.

Step 6) Disconnect everything, and prepare for long-term install.

Here’s where everybody’s method is going to differ a bit. First go ahead and disconnect our temporary setup. You may reassemble the MHCOZY back into its case at this time if you plan on using/keeping it. The MHCOZY board is capable of running on multiple power types, to include the same power supply that powers your Reolink Doorbell and original chime. This guide will show the wiring for that method, but you can use whatever method you wish provided everything is powered, and your chime only receives transformer output 1 from the MHCOZY Relay NO (Normally Open) Port. As for this method, with the circuit breaker off to the doorbell transformer and properly verified (and preferably locked out/tagged out), you need to connect everything together using your existing 18AWG wire and/or additional wire from our parts list, as demonstrated in this lovely diagram for the WiFi variant:

While you could utilize the MHCOZY board’s input terminals instead of the wire nuts and pigtails, I personally don’t recommend that. It’s just a lot to try and cram into those simple and small terminals, and it’s just better to use pigtails and wire nuts or wire levers (for you fancy pants outs there). Also if you’re using the POE Reolink variant, then you skip the pigtails that are going to the Reolink in the diagram. Just make sure that your wiring does the following:

  1. Doorbell transformer output 1 goes to MHCOZY Input 1, MHCOZY Relay COM Port, and Reolink Video Doorbell Input 1 (WiFi Version Only)

  2. Doorbell transformer output 2 goes to Chime TRAN, MHCOZY Input 2, and Reolink Video Doorbell Input 2 (WiFi Version Only)

  3. MHCOZY NO Relay Port goes to Chime FRONT

Once everything is wired as described, restore power to the doorbell transformer, and give a minute or so for everything to bootup. At this point give your Reolink Video Doorbell a try. Personally I’d have someone standing by at the breaker box (or wherever the shutoff is for your doorbell transformer) just in case something goes haywire or unexpected. Provided you’re using a beefy transformer, like a 24VAC 40VA or the likes, everything should work as expected.

Please note: This guide was made to be newbie friendly. Yes I could have made some things in Tasmota more advance, especially on the Console Commands… I just wanted to keep things simple. Also like I stated at the beginning, this is very much a work-in-progress, and I’m still tinkering with other boards. I have definitely found some that respond faster, but either they lacked an ESP based WiFi module, or they implemented the 433MHz learning in the original non-ESP board… which made them reliant on the Cloud, WiFi, or HA… which I didn’t want. A doorbell “chime” should be independent from those things working. So aside from commenting on those aspects, please feel free to make suggestions! :slight_smile:

11 Likes

reserved for future use

Thank you so much for this detailed guide! I was also looking for a fully local and reliable solution to connect this doorbell to my existing chime. I still have it on my desk, but everything works as far as I can see. The only deviation was that I think I had to re-learn the 433MHz signal after step 5.

I’m a bit disappointed with a 4 second delay between pressing a button and relay triggering. I’d guess that this is a delay MHCOZY needs to handle RF signal (would be surprising to have this delay in the doorbell itself). I checked with an SDR dongle and rtl_433 program and even it has a delay of about 2.5 seconds.

I think I will try to address this delay with a combination of your solution and Home Assistant. I routed doorbell event as follows Reolink HA Integration → HA Automation → Tasmota integration → MQTT → MHCOZY and it results in sub-second (about 0.5 second) delay which is much better. Unfortunately this path alone does not meet my reliability requirements (I don’t think it is acceptable to have a “broken” doorbell simply because I need to do something with the server where HA runs). So I plan to keep both paths either accepting two chimes or trying to use Tasmota’s ruletimer to suppress the RF triggered chime if one was triggered via HA.

Hi badrpc, if you’re going to send an MQTT event from HA to the MHCOZY to ring the bell, just send a “chime” event instead of a relay power on command. This will immediately ring the bell with my aforementioned rules, as well as lock out the MHCOZY from a 433MHz intercept doorbell chime for 10 seconds. Doing it that way should keep you from getting multiple chimes from a single doorbell button press while using the HA Reolink integration to trigger an MQTT automation. FYI multiple MQTT events from HA will still ring the chime, but this could be fixed with some minor tasmota rule adjustments, or better yet some HA automations to limit sending the MQTT command since that’s the source of the issue anyways.

Edited for clarification.

Thank you Technowizard! Emitting chime event from HA instead of directly turning the relay on was indeed the first thing I tried once I actually read the rules from your solution and of course it worked. But then I had a feeling that event was a tiny bit slower compared to direct relay control. Yes, I know I’m a bit obsessed with input latency. So I recompiled tasmota with Conditional rules and implemented “debouncing” using a variable:

rule1 on button1#state do if (var1 != 1) power1 1 endif endon
rule2 on power1#state=1 do backlog var1 1; ruletimer1 10 endon on rules#timer=1 do var1 0 endon
1 Like

Yeah I agree with you that your rules are probably ever so slightly more efficient (of course we’re talking maybe <50ms or so :slight_smile:), however, as you pointed out these rule conditions aren’t available in the standard Tasmota binary. Like I said at the end of my guide I wanted to keep things as newb friendly as possible, and lets face it we know we would lose people attempting this DIY if compiling a custom binary was involved!

If you’re commitment is really deep about trying to get a faster standalone solution, you could try transplanting an ESP-12F into this NON-ESP MHCOZY unit. NOTE: The previous link is for a different unit, and is NOT the unit from my guide! If memory serves me it was MUCH faster at responding to the 433MHz signal, but unfortunately had an incompatible WiFi module (a CB3S specifically). Might have a picture of the actual PCB, and I’ll edit/post here later if I can find it (see pic below). If I’m being honest though, if you can get a <1 second response using HA, then I really wouldn’t bother with it. I mean the MHCOZY from my guide does work completely standalone (albeit with a ~3-4 second delay), and how likely is it that your HA server will be down at the exact moment someone might ring your doorbell??? Just my opinion on the matter.


Non-ESP MHCOZY board mentioned above.

Edited to add above pic
Edited to add warning about Non-ESP link

1 Like

Just wanted to say thank you for this guide!

I used this board from ali - https://www.aliexpress.com/item/1005002761256360.html

The only issue I ran into was that the template config parameters would not save (even when copied and pasted from your example). I ended up making a template using the Tasmota Templates and Components pages in the docs to replicate yours. The only difference is that the 0s were all 1s - but seems to work fine.

Thanks again!

1 Like

OK so I am looking to do this, can you confirm if the delay is still present? On Reddit you stated that it was 3-4 seconds, but here you say 1-2 seconds?

Secondly do you have link to any of the “flashing” steps?

Lastly can you confirm that if I follow this process the will I be able to use this connected to my current chime AND the chime that came with the camera?

Which one did you get specifically was it the 5v bundle or the 7-32 bundle?

Hi @bridges86406. So to your questions:

It’s more like ~3 seconds for mine, or just a hair faster than my old Ring Pro setup. Some like @badrpc above have used it in conjunction with Home Assistant to speed it up to <1 second. It’ll still work if HA is down, but with the aforementioned ~3 second delay.

Not off hand, but this forum/community + YouTube are chalked full of flashing Tasmota and ESPHome (same concept) firmwares to ESP based modules. In a nutshell:

  1. connect your USB serial TTL flashing device to your PC, and install the drivers if Windows doesn’t do this automatically the first time you plug it in (it’s been a while, but I think this was the correct driver for windows), afterwards disconnect the USB from the device;
  2. Download Tasmotizer. Yes you can technically use a web browser for flashing Tasmota these days, but I still prefer this app… just seems to work far smoother for me;
  3. connect your flashing device to the PSF-B01 board (either by soldering or using the above jig) VCC to 3V3, GND to GND, TX to RX, and RX to TX;
  4. press and hold the MHCOZY button, then plug in your flashing device to the USB port on your PC. Hold for about 3-5 seconds, then release the button. This puts the ESP chip into flashing mode;
  5. open Tasmotizer and flash your device (again lots of YouTube videos for using this). I generally recommend backing up, erasing, and then programming Tasmota to the chip.
  6. after you confirm Tasmota flashed to the chip properly, go ahead and remove your leads from the MHCOZY.

Yes you can use both at the same time.

Hope this answered your questions. As for what you asked @renesis, I would assume the 7-32 bundle… otherwise you’ll have to power the device via a USB source, rather than from the upgraded doorbell transformer.

2 Likes

Which one did you get specifically was it the 5v bundle or the 7-32 bundle?

As for what you asked @renesis, I would assume the 7-32 bundle… otherwise you’ll have to power the device via a USB source, rather than from the upgraded doorbell transformer.

Yes - correct, 7-32V

1 Like

First of all thank you for this write up! I do have one question. Has anyone tried using this method with two doorbells and one chime? I have two Reolink doorbells I will be installing and ideally it would be great if they both rang the chime.

Thanks!

You’re welcome! Honestly I don’t know if you can pair multiple RF codes into the MHCOZY… I mean the remote that comes with it has multiple buttons, but it’s possible they just bundled a random remote with it. Never tried multiple pairing with any other 433MHz devices I had.

FYI you don’t have to flash Tasmota onto the MHCOZY just to test things. You can just pair it with the eWeLink app and use it as originally intended temporarily; just keep in mind it’ll require the cloud / not work very well until you flash and finish things (multiple chimes, etc.). So if you want you could just buy it and try RF pairing both Reolinks to see if it works. If it doesn’t, then either a) return it; or b) buy a 2nd unit. If you go the 2nd unit route, it is possible to group the MHCOZYs in Tasmota, so only 1 of them has to be connected to the chime to work.

Thanks for all the info. I’ll try pairing one MHCOZY to both doorbells and I guess if that doesn’t work I’ll get a second. It will be a few weeks before I get to this but I’ll try and remember to come back and provide an update.

Can you comment on how you got your board to do step 4? When I hold down the RF button for 3-5 secs it starts blinking blue, but no matter how many times I have tried it, it will not cause any other lights to light and never toggles the relay.

Any hints or help here?

Well after 3-5 seconds of holding the button down, the blue LED should come on solid (i.e. not blinking). If that’s not the case, try clearing any RF codes that might be stored by holding the button down for 15 seconds before releasing it. Now repeat step 4. If the blue LED is not coming on and staying on after pressing the button for the 3-5 seconds, then perhaps you have a defective unit… that or the manufacturer changed something. You could try going through the steps regardless of the blue LED… i.e. try holding the button down for 3-5 seconds, and then after releasing immediately pressing the doorbell button. Then after waiting about 15 seconds, try pressing the doorbell button again to see if the blue LED comes on by itself, or at the very least that the red LED comes on and the relay actuates. The latter is all that matters at the end of the day.

Let me know if that helped.

Well I went with the device off of Aliexpress and it didn’t actually work it won’t pair.
I then ordered the MHCOZY device you have listed and received the board that is the one you showed won’t work for this implementation…So now I have to order others and wait.

Wait, did you order the MHCOZY from my original guide post, or the MHCOZY from post 6? FYI the one from post 6 was a non-esp board (i.e. not Tasmota compatible), and I was showing it in case badrpc wanted a faster 433MHz responding board that he could transplant an esp board into. It should still pair either way though, it just won’t work properly for the chime in the long run.

If you purchased the unit from the original guide post, why do you say it “won’t work for this implementation?” Is it just not pairing to the 433MHz still? Because it should… and honestly I don’t see why any of the 433MHz programmable boards are failing to pair. I bought and tried several 433MHz programmable boards, to include non-smart ones, and all paired just fine to my Reolink doorbell. I settled on the one in my guide, as the others were again either non-smart, or came with a non-esp wifi board that would require a board transplant (i.e. not newb friendly).

Maybe a silly question, but your doorbell does work with the included wireless chime, right? Might be a duh, but I had to ask… would sure explain the issue! Another thing I’m thinking, are you attempting to pair the board with the doorbell right next to it (or at least within a foot or two), or is it further away? I ask this one as I tried re-pairing mine once during initial tinkering, and it wouldn’t “pair” despite only being 7-8ft away… works no problems from over twice that distance once paired, just didn’t want to do the pairing from anything further than a couple feet for me.

Okay so first I ordered the board posted by renesis in his post off of aliexpress. That one I can’t get to pair no matter what I do. Then I figured stop being cheap and just order the one from your post. Well I guess I ordered the wrong one or clicked on the wrong post because the one that came was exactly the non-esp board. I didn’t even try to pair it, I bundled it back up in it’s box and shipped it back because I noticed it looked different than the aliexpress one and checked your post and didn’t want the hassle. So now I’m waiting for the one correct one from your OP which should get here tomorrow sometime.

To answer your question, yes I was trying to pair the devices from like mm apart not even inches. I will try this board from a couple feet and see if that works, but I doubt it. I can’t get this (aliexpress) board to pair with old remotes, my key fob, or the doorbell but maybe the trick is I’m too close. If not I’ll post on Monday when I get the other board and have sometime to get it soldered and going.

No it’s not a too close thing, but being too far a part thing that was my concern. The thought being if the signal was under a certain dbm, that perhaps the chip was programmed to ignore it for background rf filtering reasons. That thought explained why I couldn’t reprogram mine from their final installation locations.

Remember you can test the pairing before you do any soldering/flashing of the esp board. The rf module is separate from the wifi module, so you can try pairing it first. The only reason I flashed the board with Tasmota was to: 1) make the 433MHz signal provide a single pulsed activation of the relay to simulate a doorbell button press; 2) take it off the cloud; and a distant 3) to allow the relay to be integrated into Home Assistant.

Sorry about the slight confusion on that 2nd MHCOZY board in post 6… I’ll edit my post a bit to try and prevent others from making that mistake.