Running rtl_433 on a esp_32

1,287 views
Skip to first unread message

Northern Man

unread,
Mar 2, 2021, 2:24:58 PM3/2/21
to rtl_433
Everyone,

I thought I would share recent effort I finished to port the rtl_433 device decoders to an ESP32 device with an CC1101 transceiver module.  I was looking to migrate my setup from having random raspberrypi's with a rtl_sdr attached to a more simplified device.  I have a couple of houses and they were causing a negative WAF score. For a framework, I was working with the openMQTTGateway package.

I found that I could use the device decoders without any changes, and needed to make minimal changes to wire into the pulse_demod's and successful decode signals.  As I only have devices that support ppm and pwm I only wired to and tested those.

As poc of what is feasible, I was actually surprised that I was able to get everything working, and I found that it was pretty stable, but still had a lingering stack overflow when running thru all the device decoders. 


Thanks everyone for a great package

PS I'm not a c/c++ coder, so please excuse any obvious beginner gotchas

Greg Troxel

unread,
Mar 2, 2021, 2:53:47 PM3/2/21
to Northern Man, rtl_433

Northern Man <northe...@gmail.com> writes:

> I thought I would share recent effort I finished to port the rtl_433 device
> decoders to an ESP32 device with an CC1101 transceiver module. I was
> looking to migrate my setup from having random raspberrypi's with a rtl_sdr
> attached to a more simplified device. I have a couple of houses and they
> were causing a negative WAF score. For a framework, I was working with the
> openMQTTGateway package.

Very cool and thanks for posting.

I would say if there are some minor structural reorgs to make this
easier, that sounds like a good thing to have upstream. I really like
the flexibility of the SDR, but it's power/cpu/etc. hungry and being
able to use a HDR for the pulses and the rtl_433 decoders for the rest
is really appealing.


signature.asc

Northern Man

unread,
Mar 2, 2021, 3:18:15 PM3/2/21
to rtl_433
Am thinking to wait and see what interest their is the community before littering the rtl_433 code base with a bunch of #ifdef's and other code fragments.

What I found most interesting after getting everything wired and working was that I had found myself debugging existing issues with existing the decoders.  I was seeing random decode issues, and was digging deeper into them, and compared the decode results against rtl_433 and was seeing the same issue. That's when I knew I was done.

ESP32 with a CC1101 Transceiver running openMQTTGateway and rtl_433 device decoders.

IMG_5831-2.jpg

Greg Troxel

unread,
Mar 2, 2021, 3:45:13 PM3/2/21
to Northern Man, rtl_433

Without understanding or actually reading, I meant more like adjusting
rtl_433 so the separate pieces could be library like, with abstraction
functions for host support that could be ifdefed once, so the main code
isn't. But fair enough to see who else is excited.

signature.asc

Christian Z.

unread,
Mar 3, 2021, 12:16:55 AM3/3/21
to rtl_433
Fantastic job! I have a CC1101 since 2015 and always wanted to get around to doing that.
Let's see what we can change on the rtl_433 side to make this easier.

David Powell

unread,
Mar 5, 2021, 12:19:58 AM3/5/21
to rtl_433

I am certainly interested!

David

--
You received this message because you are subscribed to the Google Groups "rtl_433" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rtl_433+u...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/rtl_433/20d87f99-a5d0-4a80-9631-5dadcf3b00b1n%40googlegroups.com.

Northern Man

unread,
Mar 5, 2021, 12:58:21 PM3/5/21
to rtl_433
Okay let me pull together a pull request for openMQTTGateway to demonstrate this. Will need a few days

Northern Man

unread,
Mar 7, 2021, 10:08:42 PM3/7/21
to rtl_433
If you want to give this a try, the pull request for openMQTTGateway with support for the rtl_433 device decoders is here

Pavol Gajdoš

unread,
May 22, 2022, 10:42:19 AM5/22/22
to rtl_433
I plan to use directly lora ttgo esp32 (http://www.lilygo.cn/prod_view.aspx?TypeId=50060&Id=1270&FId=t3:50060:3) as a decoder for data from a weather station. Does someone have any experience with it? Could this code be used without any modifications on ttgo?

Dátum: pondelok 8. marca 2021, čas: 4:08:42 UTC+1, odosielateľ: northe...@gmail.com

Philip Knowles

unread,
May 23, 2022, 10:39:06 AM5/23/22
to Pavol Gajdoš, rtl_433

I’m not sure whether it will work as the code is meant to run on a Pi/Linux/Windows device via USB and you want to run on an ESP32. It will certainly need some modification. Remember that it’s using RTL-SDR or Soapy-SDR as the transport too.

 

Regards

 

Phil K

 

Sent from Mail for Windows

 

From: Pavol Gajdoš
Sent: 22 May 2022 15:42
To: rtl_433
Subject: Re: [rtl_433] Running rtl_433 on a esp_32

 

I plan to use directly lora ttgo esp32 (http://www.lilygo.cn/prod_view.aspx?TypeId=50060&Id=1270&FId=t3:50060:3) as a decoder for data from a weather station. Does someone have any experience with it? Could this code be used without any modifications on ttgo?

Dátum: pondelok 8. marca 2021, čas: 4:08:42 UTC+1, odosielateľ: northe...@gmail.com

If you want to give this a try, the pull request for openMQTTGateway with support for the rtl_433 device decoders is here

 

On Friday, March 5, 2021 at 12:58:21 PM UTC-5 Northern Man wrote:

Okay let me pull together a pull request for openMQTTGateway to demonstrate this. Will need a few days

On Friday, March 5, 2021 at 12:19:58 AM UTC-5 bute...@gmail.com wrote:

I am certainly interested!

David

On 3/2/21 3:18 PM, Northern Man wrote:

Am thinking to wait and see what interest their is the community before littering the rtl_433 code base with a bunch of #ifdef's and other code fragments.

 

What I found most interesting after getting everything wired and working was that I had found myself debugging existing issues with existing the decoders.  I was seeing random decode issues, and was digging deeper into them, and compared the decode results against rtl_433 and was seeing the same issue. That's when I knew I was done.

 

ESP32 with a CC1101 Transceiver running openMQTTGateway and rtl_433 device decoders.

 

On Tuesday, March 2, 2021 at 2:53:47 PM UTC-5 Greg Troxel wrote:


Northern Man <northe...@gmail.com> writes:

> I thought I would share recent effort I finished to port the rtl_433 device
> decoders to an ESP32 device with an CC1101 transceiver module. I was
> looking to migrate my setup from having random raspberrypi's with a rtl_sdr
> attached to a more simplified device. I have a couple of houses and they
> were causing a negative WAF score. For a framework, I was working with the
> openMQTTGateway package.

Very cool and thanks for posting.

I would say if there are some minor structural reorgs to make this
easier, that sounds like a good thing to have upstream. I really like
the flexibility of the SDR, but it's power/cpu/etc. hungry and being
able to use a HDR for the pulses and the rtl_433 decoders for the rest
is really appealing.

--
You received this message because you are subscribed to the Google Groups "rtl_433" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rtl_433+u...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/rtl_433/20d87f99-a5d0-4a80-9631-5dadcf3b00b1n%40googlegroups.com.

--
You received this message because you are subscribed to the Google Groups "rtl_433" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rtl_433+u...@googlegroups.com.

Northern Man

unread,
May 23, 2022, 7:41:35 PM5/23/22
to rtl_433
A couple of updates since I posted this last year.

1 - Due to resource constraints on the ESP32 and CC1101 receiver module, the available device decoders are limited to ones that use Pulse Position Modulation (OOK_PPM) and Pulse Width Modulation (OOK_PWM)

2 - The latest builds on OpenMQTTGateway ( https://docs.openmqttgateway.com ) include this as an option.

3 - The CC1101 receiver module is not as sensitive as a rtl_sdr, so don't expect to get alot of range from this setup.

#LifeIsBetterOnTheBeach#

unread,
Feb 14, 2024, 5:42:03 PMFeb 14
to rtl_433
Thanks a lot for this ESP32 project NorthernMan54 this will be a game changer for our Project.🙏🙏
Reply all
Reply to author
Forward
0 new messages