rtl433  UNKNOWN
RTL-433 utility
esic_emt7110.c File Reference

ESIC EMT7110 power meter (for EMR7370 receiver). More...

Functions

static int esic_emt7110_decode (r_device *decoder, bitbuffer_t *bitbuffer)
 ESIC EMT7110 power meter (for EMR7370 receiver). More...
 

Variables

static char * output_fields []
 
r_device esic_emt7110
 

Detailed Description

ESIC EMT7110 power meter (for EMR7370 receiver).

Copyright (C) 2019 Christian W. Zuckschwerdt zany@.nosp@m.triq.nosp@m..net Samples and analysis by Petter Reinholdtsen pere@.nosp@m.hung.nosp@m.ry.co.nosp@m.m

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

Function Documentation

◆ esic_emt7110_decode()

static int esic_emt7110_decode ( r_device decoder,
bitbuffer_t bitbuffer 
)
static

ESIC EMT7110 power meter (for EMR7370 receiver).

  • Center Frequency: 868.28 MHz
  • Modulation: FSK
  • Deviation: +/- 90 kHz
  • Datarate: 9.579 kbit/s
  • Preamble: 0xAAAA
  • Sync-Word: 0x2DD4

A transmission is two packets, 14 ms apart.

Data Layout:

II II II II FP PP CC CC VV UE EE XX
  • I: (32 bit) byte 0-3: Sender ID
  • F: (2 bit) byte 4 bit 7/6: Bit6 = power connected, Bit7 = Pairing mode
  • P: (14 bit) byte 4 bit 5-0, byte 5: Power in 0.5 W
  • C: (16 bit) byte 6-7: Current in mA
  • V: (8 bit) byte 8: Voltage in V, Scaled by 2, Offset by 128 V
  • U: (2 bit) byte 9 bit 7/6: unknown
  • E: (14 bit) byte 9 bit 5-0, byte 10 Energyusage, total, in 10 Wh (0.01 kWh)
  • X: (8 bit) byte 11: Sum of all 11 data bytes plus CHK is 0 (mod 256)

References add_bytes(), bitbuffer_extract_bytes(), bitbuffer_search(), bitbuffer::bits_per_row, DATA_DOUBLE, DATA_FORMAT, DATA_INT, data_make(), DATA_STRING, DECODE_ABORT_EARLY, DECODE_ABORT_LENGTH, DECODE_FAIL_MIC, decoder_output_data(), bitbuffer::num_rows, and preamble.

Variable Documentation

◆ esic_emt7110

r_device esic_emt7110
Initial value:
= {
.name = "ESIC EMT7110 power meter",
.modulation = FSK_PULSE_PCM,
.short_width = 104,
.long_width = 104,
.reset_limit = 10000,
.decode_fn = &esic_emt7110_decode,
.disabled = 0,
.fields = output_fields,
}
FSK, Pulse Code Modulation.
Definition: r_device.h:19
static int esic_emt7110_decode(r_device *decoder, bitbuffer_t *bitbuffer)
ESIC EMT7110 power meter (for EMR7370 receiver).
Definition: esic_emt7110.c:41
static char * output_fields[]
Definition: esic_emt7110.c:92

◆ output_fields

char* output_fields[]
static
Initial value:
= {
"model",
"id",
"power_W",
"current_A",
"voltage_V",
"energy_kWh",
"pairing",
"connected",
"mic",
NULL,
}