rtl433  UNKNOWN
RTL-433 utility
oregon_scientific_sl109h.c File Reference

Oregon Scientific SL109H decoder. More...

Functions

static int oregon_scientific_sl109h_callback (r_device *decoder, bitbuffer_t *bitbuffer)
 Oregon Scientific SL109H decoder. More...
 

Variables

static char * output_fields []
 
r_device oregon_scientific_sl109h
 

Detailed Description

Oregon Scientific SL109H decoder.

Function Documentation

◆ oregon_scientific_sl109h_callback()

static int oregon_scientific_sl109h_callback ( r_device decoder,
bitbuffer_t bitbuffer 
)
static

Oregon Scientific SL109H decoder.

Data layout (bits):

AAAA CC HHHH HHHH TTTT TTTT TTTT SSSS IIII IIII
  • A: 4 bit checksum (add)
  • C: 2 bit channel number
  • H: 8 bit BCD humidity
  • T: 12 bit signed temperature scaled by 10
  • S: 4 bit status, unknown
  • I: 8 bit a random id that is generated when the sensor starts

S.a. http://www.osengr.org/WxShield/Downloads/OregonScientific-RF-Protocols-II.pdf

References add_nibbles(), bitbuffer::bb, bitbuffer_extract_bytes(), bitbuffer_printf(), bitbuffer::bits_per_row, DATA_DOUBLE, DATA_FORMAT, DATA_INT, data_make(), DATA_STRING, decoder_output_data(), bitbuffer::num_rows, and r_device::verbose.

Variable Documentation

◆ oregon_scientific_sl109h

r_device oregon_scientific_sl109h
Initial value:
= {
.name = "Oregon Scientific SL109H Remote Thermal Hygro Sensor",
.modulation = OOK_PULSE_PPM,
.short_width = 2000,
.long_width = 4000,
.gap_limit = 5000,
.reset_limit = 10000,
.disabled = 0,
.fields = output_fields,
}
Pulse Position Modulation. Short gap = 0, Long = 1.
Definition: r_device.h:12
static char * output_fields[]
Definition: oregon_scientific_sl109h.c:88
static int oregon_scientific_sl109h_callback(r_device *decoder, bitbuffer_t *bitbuffer)
Oregon Scientific SL109H decoder.
Definition: oregon_scientific_sl109h.c:23

◆ output_fields

char* output_fields[]
static
Initial value:
= {
"model",
"id",
"channel",
"status",
"temperature_C",
"humidity",
"mic",
NULL,
}