Efergy E2 Classic

332 views
Skip to first unread message

martin swanepoel

unread,
Nov 15, 2016, 9:31:11 AM11/15/16
to rtl_433
Anyone able to shed some light or point me in the direction with below?


This command works like a charm!!!. Get the energy reading perfect.

rtl_fm -f 433510000 -s 200000 -r 96000 -g 19.7  2>/dev/null | ./EfergyRPI_001
Efergy E2 Classic decode

Now I try rtl_433. No success. Even if I force it to use device protocol  [36]* Efergy e2 classic. No success. Is there a difference between the decode that rtl_433 use to the EfergyRPI_001.c one ?

Regards,
Martin

Benjamin Larsson

unread,
Nov 15, 2016, 5:02:23 PM11/15/16
to rtl...@googlegroups.com
Yes different demodulator code. And for anyone to track down your issue
you need to record some sample signals. Read the documentation for info
about that.

>
> Regards,
> Martin

MvH
Benjamin Larsson

martin swanepoel

unread,
Nov 16, 2016, 8:07:13 AM11/16/16
to rtl_433
I've tried running rtl_433 -a -t but no files are created. And I know it works because I have 3 oregon science devices capturing info. So obviously I'm doing something wrong.

Thanks,
Martin

martin swanepoel

unread,
Nov 17, 2016, 4:55:45 AM11/17/16
to rtl_433
How can I exclude the oregon sensors when doing a capture ?

Thanks,
Martin

On Tuesday, November 15, 2016 at 4:31:11 PM UTC+2, martin swanepoel wrote:

martin swanepoel

unread,
Nov 17, 2016, 9:05:52 AM11/17/16
to rtl_433
I get the oregon sensors working on this frequency:

rtl_433 -f 433900000 -R 36 -R 12
Registering protocol [1] "Oregon Scientific Weather Sensor"
Registering protocol [2] "Efergy e2 classic"
Registered 2 out of 70 device decoding protcols
Found 1 device(s):
  0:  Realtek, RTL2838UHIDIR, SN: 00000001

Using device 0: Generic RTL2832U OEM
Detached kernel driver
Found Rafael Micro R820T tuner
Exact sample rate is: 250000.000414 Hz
[R82XX] PLL not locked!
Sample rate set to 250000.
Bit detection level set to 0 (Auto).
Tuner gain set to Auto.
Reading samples in async mode...
Tuned to 433900000 Hz.
2016-11-17 15:59:21     :       OS :    WGR800
        House Code:      85
        Channel:         0
        Battery:         OK
        Gust:    1.4 m/s
        Average:         0.7 m/s
        Direction:       0.0 degrees
2016-11-17 15:59:35     :       OS :    WGR800
        House Code:      85
        Channel:         0
        Battery:         OK
        Gust:    1.5 m/s
        Average:         0.7 m/s
        Direction:       292.5 degrees
2016-11-17 15:59:38     :       OS :    PCR800
        House Code:      93
        Channel:         0
        Battery:         OK
        Rain Rate:       0.0 in/hr
        Total Rain:      43.4 in

or 

the Efergy e2 on this frequency:

rtl_433 -f 433500000 -R 36 -R 12
Registering protocol [1] "Oregon Scientific Weather Sensor"
Registering protocol [2] "Efergy e2 classic"
Registered 2 out of 70 device decoding protcols
Found 1 device(s):
  0:  Realtek, RTL2838UHIDIR, SN: 00000001

Using device 0: Generic RTL2832U OEM
Detached kernel driver
Found Rafael Micro R820T tuner
Exact sample rate is: 250000.000414 Hz
[R82XX] PLL not locked!
Sample rate set to 250000.
Bit detection level set to 0 (Auto).
Tuner gain set to Auto.
Reading samples in async mode...
Tuned to 433500000 Hz.
Power consumption at 110 volts: 2172.50 watts
Power consumption at 115 volts: 2271.25 watts
Power consumption at 120 volts: 2370.00 watts
Power consumption at 220 volts: 4345.00 watts
Power consumption at 230 volts: 4542.50 watts
Power consumption at 240 volts: 4740.00 watts

I tried changing the frequency values in between the 2 with no result. Anybody have a idea how do I get both working ?!!!

Regards,
Martin

On Tuesday, November 15, 2016 at 4:31:11 PM UTC+2, martin swanepoel wrote:

Robert Terzi

unread,
Nov 17, 2016, 12:31:31 PM11/17/16
to rtl...@googlegroups.com
On 11/17/2016 4:55 AM, martin swanepoel wrote:
> How can I exclude the oregon sensors when doing a capture ?

Currently there are no mechanisms in the code for including/excluding specific signals when capturing with `-a -t` to save gfileNNN.data I&Q sample files.

There are a number of different methods that people have used depending on their environment to help isolate a specific signal. One I've heard of but never tried is to move the target device close to the rtl stick thenl disconnect the antenna, or unscrew the little mini-whip from the base. If that is still too noisy you could always experiment with some sort of faraday cage-ish box.

I have a noisy environment with a lot of 433 mhz devices, so what I've typically done when trying to isolate a new device is,
1. let rtl_433 run in -a -t mode until I'm fairly confident that enough time has elapsed to capture the signal 3 times or more.
2. rtl_433 -r in a loop to look at each file individually, saving the text output into a file for review:

(for f in gfile*.data; do echo ====== $f ======; rtl_433 -q -G -r $f; done) > /tmp/out.txt 2>&1

Don't forget to use -G to enable all decoders. There are a number of decoders that were disabled a few months back because they don't emit structured data.

3. Look through the output file for files that don't have any decoded output. Make note of the file names. Use `ls -l` to determine how much time elapsed between the undecoded recordings to look for patterns and determine the transmit interval if you have no indication of how often the device transmits.

4. Examine the recordings that didn't decode with the pulse analyzer `-A`. It's usually pretty obvious which ones have captured real signals and which might just be noise that shows up as a single pulse.

rtl_433 -q -G -A -r gfileNNN.data


This might seem fairly tedious, and could be improved/automated with some work. However, new devices usually don't wind up being added that often, so it hasn't been a priority for anybody.

Hope this helps,
--Rob




f fish

unread,
Feb 5, 2017, 12:12:01 PM2/5/17
to rtl_433
Sorry for the late reply, have not scratched on this group for a while. Martin not sure if you ever solved your problem. 
...
I have moved to a dedicated SDR for 433 stuff, but find that I have to time slice between oregon and efergy ... this works well for me. 

timeout 14s  sudo rtl_fm -f 433510000 -s 200000 -r 96000 -g 19.7  2>/dev/null | /home/pi/RPI_Efergy/EfergyRPI_001 > /run/efergy.log
sleep  1
timeout 44s  rtl_433 -q -Fjson > /run/433.log


I then process those logs later to load them into domoticz. 

pi@PI3Disp:~/script $ cat /run/efergy.log
Efergy E2 Classic decode

02/05/17,19:08:10,417.597656
pi@PI3Disp:~/script $ cat /run/433.log
{"time" : "2017-02-05 19:08:28", "brand" : "OS", "model" : "RTGN318", "id" : 177, "channel" : 1, "battery" : "OK", "temperature_C" : 37.300, "temperature_F" : 99.140, "humidity" : 98}
{"time" : "2017-02-05 19:08:28", "brand" : "OS", "model" : "RTGN318", "id" : 177, "channel" : 1, "battery" : "OK", "temperature_C" : 37.300, "temperature_F" : 99.140, "humidity" : 98}
{"time" : "2017-02-05 19:08:40", "brand" : "OS", "model" : "THGR122N", "id" : 218, "channel" : 2, "battery" : "OK", "temperature_C" : 24.100, "humidity" : 65}
{"time" : "2017-02-05 19:08:41", "brand" : "OS", "model" : "THGR122N", "id" : 218, "channel" : 2, "battery" : "OK", "temperature_C" : 24.100, "humidity" : 65}
{"time" : "2017-02-05 19:08:47", "brand" : "OS", "model" : "THGR122N", "id" : 121, "channel" : 1, "battery" : "OK", "temperature_C" : 25.000, "humidity" : 66}
{"time" : "2017-02-05 19:08:47", "brand" : "OS", "model" : "THGR122N", "id" : 121, "channel" : 1, "battery" : "OK", "temperature_C" : 25.000, "humidity" : 66}
{"time" : "2017-02-05 19:08:51", "brand" : "OS", "model" : "THR228N", "id" : 252, "channel" : 3, "battery" : "OK", "temperature_C" : 22.000, "temperature_F" : 71.600}
{"time" : "2017-02-05 19:08:51", "brand" : "OS", "model" : "THR228N", "id" : 252, "channel" : 3, "battery" : "OK", "temperature_C" : 22.000, "temperature_F" : 71.600}



Hope somebody finds this helpful or can improve on it. 

This way I get a log to domoticz about every minute. 

Later Ferdie



Reply all
Reply to author
Forward
0 new messages