With the demise of ninjablocks, I had all these RF433 sensors that I wanted to make use of. Especially temperature sensors that use Manchester encoding, which the RCSwitch library cannot handle.
So I found RFLink online and was impressed that they had a large and growing number of protocols supported. The only thing is it assumes you are connected via USB to a computer that listens to its output and deals with it.
I have taken a slightly more agnostic approach to using the RFLink RF433 reciever/transmitter. Rather than trying to build a component in HASS to handle every possibility, I wanted to just have the data from the RFLink exposed on the MQTT broker and then HASS (or anything else) can decide what to do with it.
I have treated the RFLink as a black box - the people there have an excellent number of protocols supported including Manchester encoding (which you cant do with RCSwitch and I need for temperature sensors etc).
This little bridge connects to the arduino Mega running RFLink to a NodeMCU V1.0 via software serial. The NodeMCU (ESP8266) takes the output of the RFLink and converts it to a JSON payload in MQTT for consumption from anyone who has access … which in my case is HASS!
The ESP8266 is programmed using arduino IDE - the arduino file and relevant HASS yaml sections are includid in my github project.
The arduino code works but likely needs a little touching up.
Open to constructive comments.
Assumes you have the hardware - Arduino Mega 2560, RF433 RX/TX per RFLink requirements, NodeMCU ESP8266. If you have different hardware, you may need to tweak.