Change all r_device declarations to const (#2352)
Change all r_device declarations to const, which places them in the "read only" memory portion which is distinct from the limited quantity SRAM available on embedded platforms.
This commit is contained in:
parent
76485a0909
commit
cc6f4521d2
207 changed files with 234 additions and 234 deletions
include
src
decoder_util.c
devices
abmt.cacurite.cacurite_01185m.cakhan_100F14.calecto.cambient_weather.cambientweather_tx8300.cambientweather_wh31e.cant_antplus.carchos_tbh.catech_ws308.cauriol_4ld5661.cauriol_aft77b2.cauriol_afw2a1.cauriol_ahfl.cauriol_hg02832.cbadger_water.cblueline.cblyss.cbrennenstuhl_rcs_2044.cbresser_3ch.cbresser_5in1.cbresser_6in1.cbresser_7in1.cbt_rain.cburnhardbbq.ccalibeur.ccardin.ccavius.cced7000.cchuango.ccmr113.ccompanion_wtr001.ccotech_36_7959.ccurrent_cost.cdanfoss.cdigitech_xc0324.cdirectv.cdish_remote_6_3.cdsc.cecodhome.cecowitt.cefergy_e2_classic.cefergy_optical.cefth800.celro_db286a.celv.cemax.cemontx.cemos_e6016.cemos_e6016_rain.cenocean_erp1.cert_idm.cert_scm.cesa.cesic_emt7110.cesperanza_ews.ceurochron.cfineoffset.cfineoffset_wh1050.cfineoffset_wh1080.cfineoffset_wh31l.cfineoffset_wh45.cfineoffset_wn34.cfineoffset_ws80.cfordremote.cfs20.cft004b.cfunkbus.cge_coloreffects.cgeneric_motion.cgeneric_remote.cgeneric_temperature_sensor.cgeo_minim.cgovee.cgt_tmbbq05.cgt_wt_02.cgt_wt_03.chcs200.chideki.cholman_ws5029.chondaremote.choneywell.choneywell_cm921.choneywell_wdb.cht680.cibis_beacon.cikea_sparsnas.cinfactory.cinkbird_ith20r.cinovalley-kw9015b.cinsteon.cinterlogix.cintertechno.cjasco.ckedsum.ckerui.cklimalogg.c
|
@ -29,7 +29,7 @@
|
|||
#endif
|
||||
|
||||
/// Create a new r_device, copy from dev_template if not NULL.
|
||||
r_device *create_device(r_device *dev_template);
|
||||
r_device *create_device(r_device const *dev_template);
|
||||
|
||||
/// Output data.
|
||||
void decoder_output_data(r_device *decoder, data_t *data);
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
|
||||
// create decoder functions
|
||||
|
||||
r_device *create_device(r_device *dev_template)
|
||||
r_device *create_device(r_device const *dev_template)
|
||||
{
|
||||
r_device *r_dev = malloc(sizeof (*r_dev));
|
||||
if (!r_dev) {
|
||||
|
|
|
@ -88,7 +88,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device abmt = {
|
||||
r_device const abmt = {
|
||||
.name = "Amazon Basics Meat Thermometer",
|
||||
.modulation = OOK_PULSE_PCM,
|
||||
.short_width = 550,
|
||||
|
|
|
@ -1869,7 +1869,7 @@ static char *acurite_rain_gauge_output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device acurite_rain_896 = {
|
||||
r_device const acurite_rain_896 = {
|
||||
.name = "Acurite 896 Rain Gauge",
|
||||
.modulation = OOK_PULSE_PPM,
|
||||
.short_width = 1000,
|
||||
|
@ -1892,7 +1892,7 @@ static char *acurite_th_output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device acurite_th = {
|
||||
r_device const acurite_th = {
|
||||
.name = "Acurite 609TXC Temperature and Humidity Sensor",
|
||||
.modulation = OOK_PULSE_PPM,
|
||||
.short_width = 1000,
|
||||
|
@ -1936,7 +1936,7 @@ static char *acurite_txr_output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device acurite_txr = {
|
||||
r_device const acurite_txr = {
|
||||
.name = "Acurite 592TXR Temp/Humidity, 5n1 Weather Station, 6045 Lightning, 899 Rain, 3N1, Atlas",
|
||||
.modulation = OOK_PULSE_PWM,
|
||||
.short_width = 220, // short pulse is 220 us + 392 us gap
|
||||
|
@ -1969,7 +1969,7 @@ static char *acurite_986_output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device acurite_986 = {
|
||||
r_device const acurite_986 = {
|
||||
.name = "Acurite 986 Refrigerator / Freezer Thermometer",
|
||||
.modulation = OOK_PULSE_PPM,
|
||||
.short_width = 520,
|
||||
|
@ -2013,7 +2013,7 @@ static char *acurite_590_output_fields[] = {
|
|||
//.long_width = 1076,
|
||||
//.gap_limit = 1200,
|
||||
//.reset_limit = 12000,
|
||||
r_device acurite_606 = {
|
||||
r_device const acurite_606 = {
|
||||
.name = "Acurite 606TX Temperature Sensor",
|
||||
.modulation = OOK_PULSE_PPM,
|
||||
.short_width = 2000,
|
||||
|
@ -2038,7 +2038,7 @@ static char *acurite_00275rm_output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device acurite_00275rm = {
|
||||
r_device const acurite_00275rm = {
|
||||
.name = "Acurite 00275rm,00276rm Temp/Humidity with optional probe",
|
||||
.modulation = OOK_PULSE_PWM,
|
||||
.short_width = 232, // short pulse is 232 us
|
||||
|
@ -2050,7 +2050,7 @@ r_device acurite_00275rm = {
|
|||
.fields = acurite_00275rm_output_fields,
|
||||
};
|
||||
|
||||
r_device acurite_590tx = {
|
||||
r_device const acurite_590tx = {
|
||||
.name = "Acurite 590TX Temperature with optional Humidity",
|
||||
.modulation = OOK_PULSE_PPM, // OOK_PULSE_PWM,
|
||||
.short_width = 500, // short pulse is 232 us
|
||||
|
|
|
@ -125,7 +125,7 @@ static char *acurite_01185m_output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device acurite_01185m = {
|
||||
r_device const acurite_01185m = {
|
||||
.name = "Acurite Grill/Meat Thermometer 01185M",
|
||||
.modulation = OOK_PULSE_PWM,
|
||||
.short_width = 840, // short pulse is 840 us
|
||||
|
|
|
@ -69,7 +69,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device akhan_100F14 = {
|
||||
r_device const akhan_100F14 = {
|
||||
.name = "Akhan 100F14 remote keyless entry",
|
||||
.modulation = OOK_PULSE_PWM,
|
||||
.short_width = 316,
|
||||
|
|
|
@ -223,7 +223,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device alectov1 = {
|
||||
r_device const alectov1 = {
|
||||
.name = "AlectoV1 Weather Sensor (Alecto WS3500 WS4500 Ventus W155/W044 Oregon)",
|
||||
.modulation = OOK_PULSE_PPM,
|
||||
.short_width = 2000,
|
||||
|
|
|
@ -168,7 +168,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device ambient_weather = {
|
||||
r_device const ambient_weather = {
|
||||
.name = "Ambient Weather F007TH, TFA 30.3208.02, SwitchDocLabs F016TH temperature sensor",
|
||||
.modulation = OOK_PULSE_MANCHESTER_ZEROBIT,
|
||||
.short_width = 500,
|
||||
|
|
|
@ -129,7 +129,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device ambientweather_tx8300 = {
|
||||
r_device const ambientweather_tx8300 = {
|
||||
.name = "Ambient Weather TX-8300 Temperature/Humidity Sensor",
|
||||
.modulation = OOK_PULSE_PPM,
|
||||
.short_width = 2000,
|
||||
|
|
|
@ -374,7 +374,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device ambientweather_wh31e = {
|
||||
r_device const ambientweather_wh31e = {
|
||||
.name = "Ambient Weather WH31E Thermo-Hygrometer Sensor, EcoWitt WH40 rain gauge",
|
||||
.modulation = FSK_PULSE_PCM,
|
||||
.short_width = 56,
|
||||
|
|
|
@ -151,7 +151,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device ant_antplus = {
|
||||
r_device const ant_antplus = {
|
||||
.name = "ANT and ANT+ devices",
|
||||
.modulation = FSK_PULSE_PCM,
|
||||
.short_width = 1,
|
||||
|
|
|
@ -225,7 +225,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device archos_tbh = {
|
||||
r_device const archos_tbh = {
|
||||
.name = "TBH weather sensor",
|
||||
.modulation = FSK_PULSE_PCM,
|
||||
.short_width = 212,
|
||||
|
|
|
@ -127,7 +127,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device atech_ws308 = {
|
||||
r_device const atech_ws308 = {
|
||||
.name = "Atech-WS308 temperature sensor",
|
||||
.modulation = OOK_PULSE_RZ,
|
||||
.short_width = 1600,
|
||||
|
|
|
@ -86,7 +86,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device auriol_4ld5661 = {
|
||||
r_device const auriol_4ld5661 = {
|
||||
.name = "Auriol 4-LD5661 temperature/rain sensor",
|
||||
.modulation = OOK_PULSE_PPM,
|
||||
.short_width = 1000,
|
||||
|
|
|
@ -145,7 +145,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device auriol_aft77b2 = {
|
||||
r_device const auriol_aft77b2 = {
|
||||
.name = "Auriol AFT 77 B2 temperature sensor",
|
||||
.modulation = OOK_PULSE_PPM,
|
||||
.short_width = 500,
|
||||
|
|
|
@ -117,7 +117,7 @@ static char *output_fields[] = {
|
|||
};
|
||||
|
||||
// ToDo: The timings have come about through trial and error. Audit this against weak signals!
|
||||
r_device auriol_afw2a1 = {
|
||||
r_device const auriol_afw2a1 = {
|
||||
.name = "Auriol AFW2A1 temperature/humidity sensor",
|
||||
.modulation = OOK_PULSE_PPM,
|
||||
.short_width = 576,
|
||||
|
|
|
@ -108,7 +108,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device auriol_ahfl = {
|
||||
r_device const auriol_ahfl = {
|
||||
.name = "Auriol AHFL temperature/humidity sensor",
|
||||
.modulation = OOK_PULSE_PPM,
|
||||
.short_width = 2100,
|
||||
|
|
|
@ -101,7 +101,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device auriol_hg02832 = {
|
||||
r_device const auriol_hg02832 = {
|
||||
.name = "Auriol HG02832, HG05124A-DCF, Rubicson 48957 temperature/humidity sensor",
|
||||
.modulation = OOK_PULSE_PWM,
|
||||
.short_width = 252,
|
||||
|
|
|
@ -150,7 +150,7 @@ static char *badger_output_fields[] = {
|
|||
|
||||
// Badger ORION water meter,
|
||||
// Frequency 916.45 MHz, Bitrate 100 kbps, Modulation NRZ FSK
|
||||
r_device badger_orion = {
|
||||
r_device const badger_orion = {
|
||||
.name = "Badger ORION water meter, 100kbps (-f 916.45M -s 1200k)", // Minimum samplerate = 1.2 MHz (12 samples of 100kb/s)
|
||||
.modulation = FSK_PULSE_PCM,
|
||||
.short_width = 10, // Bit rate: 100 kb/s
|
||||
|
|
|
@ -396,7 +396,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device blueline;
|
||||
r_device const blueline;
|
||||
|
||||
static r_device *blueline_create(char *arg)
|
||||
{
|
||||
|
@ -430,7 +430,7 @@ static r_device *blueline_create(char *arg)
|
|||
return r_dev;
|
||||
}
|
||||
|
||||
r_device blueline = {
|
||||
r_device const blueline = {
|
||||
.name = "BlueLine Innovations Power Cost Monitor",
|
||||
.modulation = OOK_PULSE_PPM,
|
||||
.short_width = 500,
|
||||
|
|
|
@ -62,7 +62,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device blyss = {
|
||||
r_device const blyss = {
|
||||
.name = "Blyss DC5-UK-WH",
|
||||
.modulation = OOK_PULSE_PWM,
|
||||
.short_width = 500,
|
||||
|
|
|
@ -120,7 +120,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device brennenstuhl_rcs_2044 = {
|
||||
r_device const brennenstuhl_rcs_2044 = {
|
||||
.name = "Brennenstuhl RCS 2044",
|
||||
.modulation = OOK_PULSE_PWM,
|
||||
.short_width = 320,
|
||||
|
|
|
@ -106,7 +106,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device bresser_3ch = {
|
||||
r_device const bresser_3ch = {
|
||||
.name = "Bresser Thermo-/Hygro-Sensor 3CH",
|
||||
.modulation = OOK_PULSE_PWM,
|
||||
.short_width = 250, // short pulse is ~250 us
|
||||
|
|
|
@ -174,7 +174,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device bresser_5in1 = {
|
||||
r_device const bresser_5in1 = {
|
||||
.name = "Bresser Weather Center 5-in-1",
|
||||
.modulation = FSK_PULSE_PCM,
|
||||
.short_width = 124,
|
||||
|
|
|
@ -238,7 +238,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device bresser_6in1 = {
|
||||
r_device const bresser_6in1 = {
|
||||
.name = "Bresser Weather Center 6-in-1, 7-in-1 indoor, soil, new 5-in-1, 3-in-1 wind gauge, Froggit WH6000, Ventus C8488A",
|
||||
.modulation = FSK_PULSE_PCM,
|
||||
.short_width = 124,
|
||||
|
|
|
@ -151,7 +151,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device bresser_7in1 = {
|
||||
r_device const bresser_7in1 = {
|
||||
.name = "Bresser Weather Center 7-in-1",
|
||||
.modulation = FSK_PULSE_PCM,
|
||||
.short_width = 124,
|
||||
|
|
|
@ -96,7 +96,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device bt_rain = {
|
||||
r_device const bt_rain = {
|
||||
.name = "Biltema rain gauge",
|
||||
.modulation = OOK_PULSE_PPM,
|
||||
.short_width = 1940,
|
||||
|
|
|
@ -134,7 +134,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device burnhardbbq = {
|
||||
r_device const burnhardbbq = {
|
||||
.name = "Burnhard BBQ thermometer",
|
||||
.modulation = OOK_PULSE_PWM,
|
||||
.short_width = 240,
|
||||
|
|
|
@ -125,7 +125,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device calibeur_RF104 = {
|
||||
r_device const calibeur_RF104 = {
|
||||
.name = "Calibeur RF-104 Sensor",
|
||||
.modulation = OOK_PULSE_PWM,
|
||||
.short_width = 760, // Short pulse 760µs
|
||||
|
|
|
@ -114,7 +114,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device cardin = {
|
||||
r_device const cardin = {
|
||||
.name = "Cardin S466-TX2",
|
||||
.modulation = OOK_PULSE_PWM,
|
||||
.short_width = 730,
|
||||
|
|
|
@ -129,7 +129,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device cavius = {
|
||||
r_device const cavius = {
|
||||
.name = "Cavius smoke, heat and water detector",
|
||||
.modulation = FSK_PULSE_PCM,
|
||||
.short_width = 206,
|
||||
|
|
|
@ -102,7 +102,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device ced7000 = {
|
||||
r_device const ced7000 = {
|
||||
.name = "CED7000 Shot Timer",
|
||||
.modulation = FSK_PULSE_PCM,
|
||||
.short_width = 1300,
|
||||
|
|
|
@ -95,7 +95,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device chuango = {
|
||||
r_device const chuango = {
|
||||
.name = "Chuango Security Technology",
|
||||
.modulation = OOK_PULSE_PWM,
|
||||
.short_width = 568, // Pulse: Short 568µs, Long 1704µs
|
||||
|
|
|
@ -118,7 +118,7 @@ static char *output_fields[] = {
|
|||
};
|
||||
|
||||
// Short high and low pulses are quite different in length so we have a high tolerance of 200
|
||||
r_device cmr113 = {
|
||||
r_device const cmr113 = {
|
||||
.name = "Clipsal CMR113 Cent-a-meter power meter",
|
||||
.modulation = OOK_PULSE_PIWM_DC,
|
||||
.short_width = 480,
|
||||
|
|
|
@ -134,7 +134,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device companion_wtr001 = {
|
||||
r_device const companion_wtr001 = {
|
||||
.name = "Companion WTR001 Temperature Sensor",
|
||||
.modulation = OOK_PULSE_PWM,
|
||||
.short_width = 732, // 732 us pulse + 2196 us gap is 1 (will be inverted in code)
|
||||
|
|
|
@ -150,7 +150,7 @@ static char *cotech_36_7959_output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device cotech_36_7959 = {
|
||||
r_device const cotech_36_7959 = {
|
||||
.name = "Cotech 36-7959, SwitchDocLabs FT020T wireless weather station with USB",
|
||||
.modulation = OOK_PULSE_MANCHESTER_ZEROBIT,
|
||||
.short_width = 500,
|
||||
|
|
|
@ -125,7 +125,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device current_cost = {
|
||||
r_device const current_cost = {
|
||||
.name = "CurrentCost Current Sensor",
|
||||
.modulation = FSK_PULSE_PCM,
|
||||
.short_width = 250,
|
||||
|
|
|
@ -157,7 +157,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device danfoss_CFR = {
|
||||
r_device const danfoss_CFR = {
|
||||
.name = "Danfoss CFR Thermostat",
|
||||
.modulation = FSK_PULSE_PCM,
|
||||
.short_width = 100, // NRZ decoding
|
||||
|
|
|
@ -218,7 +218,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device digitech_xc0324 = {
|
||||
r_device const digitech_xc0324 = {
|
||||
.name = "Digitech XC-0324 / AmbientWeather FT005TH temp/hum sensor",
|
||||
.modulation = OOK_PULSE_PPM,
|
||||
.short_width = 520, // = 130 * 4
|
||||
|
|
|
@ -370,7 +370,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device directv = {
|
||||
r_device const directv = {
|
||||
.name = "DirecTV RC66RX Remote Control",
|
||||
.modulation = FSK_PULSE_PCM,
|
||||
.short_width = 600, // 150 samples @250k
|
||||
|
|
|
@ -139,7 +139,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device dish_remote_6_3 = {
|
||||
r_device const dish_remote_6_3 = {
|
||||
.name = "Dish remote 6.3",
|
||||
.modulation = OOK_PULSE_PPM,
|
||||
.short_width = 1692,
|
||||
|
|
|
@ -262,7 +262,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device dsc_security = {
|
||||
r_device const dsc_security = {
|
||||
.name = "DSC Security Contact",
|
||||
.modulation = OOK_PULSE_RZ,
|
||||
.short_width = 250, // Pulse length, 250 µs
|
||||
|
@ -272,7 +272,7 @@ r_device dsc_security = {
|
|||
.fields = output_fields,
|
||||
};
|
||||
|
||||
r_device dsc_security_ws4945 = {
|
||||
r_device const dsc_security_ws4945 = {
|
||||
// Used for EV-DW4927, WS4975 and WS4945.
|
||||
.name = "DSC Security Contact (WS4945)",
|
||||
.modulation = OOK_PULSE_RZ,
|
||||
|
|
|
@ -182,7 +182,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device ecodhome = {
|
||||
r_device const ecodhome = {
|
||||
.name = "EcoDHOME Smart Socket and MCEE Solar monitor",
|
||||
.modulation = FSK_PULSE_PCM,
|
||||
.short_width = 250,
|
||||
|
|
|
@ -115,7 +115,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device ecowitt = {
|
||||
r_device const ecowitt = {
|
||||
.name = "Ecowitt Wireless Outdoor Thermometer WH53/WH0280/WH0281A",
|
||||
.modulation = OOK_PULSE_PWM,
|
||||
.short_width = 500, // 500 us nominal short pulse
|
||||
|
|
|
@ -121,7 +121,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device efergy_e2_classic = {
|
||||
r_device const efergy_e2_classic = {
|
||||
.name = "Efergy e2 classic",
|
||||
.modulation = FSK_PULSE_PWM,
|
||||
.short_width = 64,
|
||||
|
|
|
@ -134,7 +134,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device efergy_optical = {
|
||||
r_device const efergy_optical = {
|
||||
.name = "Efergy Optical",
|
||||
.modulation = FSK_PULSE_PWM,
|
||||
.short_width = 64,
|
||||
|
|
|
@ -140,7 +140,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device eurochron_efth800 = {
|
||||
r_device const eurochron_efth800 = {
|
||||
.name = "Eurochron EFTH-800 temperature and humidity sensor",
|
||||
.modulation = OOK_PULSE_PWM,
|
||||
.short_width = 250,
|
||||
|
|
|
@ -55,7 +55,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device elro_db286a = {
|
||||
r_device const elro_db286a = {
|
||||
.name = "Elro DB286A Doorbell",
|
||||
.modulation = OOK_PULSE_PWM,
|
||||
.short_width = 456,
|
||||
|
|
|
@ -105,7 +105,7 @@ static char *elv_em1000_output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device elv_em1000 = {
|
||||
r_device const elv_em1000 = {
|
||||
.name = "ELV EM 1000",
|
||||
.modulation = OOK_PULSE_PPM,
|
||||
.short_width = 500, // guessed, no samples available
|
||||
|
@ -279,7 +279,7 @@ static char *elv_ws2000_output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device elv_ws2000 = {
|
||||
r_device const elv_ws2000 = {
|
||||
.name = "ELV WS 2000",
|
||||
.modulation = OOK_PULSE_PWM,
|
||||
.short_width = 366, // 0 => 854us, 1 => 366us according to link in top
|
||||
|
|
|
@ -227,7 +227,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device emax = {
|
||||
r_device const emax = {
|
||||
.name = "Emax W6, rebrand Altronics x7063/4, Optex 990040/50/51, Orium 13093/13123, Infactory FWS-1200, Newentor Q9, Otio 810025, Protmex PT3390A, Jula Marquant 014331/32, Weather Station or temperature/humidity sensor",
|
||||
.modulation = FSK_PULSE_PCM,
|
||||
.short_width = 90,
|
||||
|
|
|
@ -157,7 +157,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device emontx = {
|
||||
r_device const emontx = {
|
||||
.name = "emonTx OpenEnergyMonitor",
|
||||
.modulation = FSK_PULSE_PCM,
|
||||
.short_width = 2000000.0f / (49230 + 49261), // 49261kHz for RFM69, 49230kHz for RFM12B
|
||||
|
|
|
@ -138,7 +138,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
// n=EMOS-E6016,m=OOK_PWM,s=280,l=796,r=804,g=0,t=0,y=1836,rows>=3,bits=120
|
||||
r_device emos_e6016 = {
|
||||
r_device const emos_e6016 = {
|
||||
.name = "EMOS E6016 weatherstation with DCF77",
|
||||
.modulation = OOK_PULSE_PWM,
|
||||
.short_width = 280,
|
||||
|
|
|
@ -109,7 +109,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device emos_e6016_rain = {
|
||||
r_device const emos_e6016_rain = {
|
||||
.name = "EMOS E6016 rain gauge",
|
||||
.modulation = OOK_PULSE_PWM,
|
||||
.short_width = 300,
|
||||
|
|
|
@ -97,7 +97,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device enocean_erp1 = {
|
||||
r_device const enocean_erp1 = {
|
||||
.name = "EnOcean ERP1",
|
||||
.modulation = OOK_PULSE_PCM,
|
||||
.short_width = 8,
|
||||
|
|
|
@ -618,7 +618,7 @@ static char *output_fields[] = {
|
|||
// Freq 912600155
|
||||
// -X n=L58,m=OOK_MC_ZEROBIT,s=30,l=30,g=20000,r=20000,match={24}0x16a31e,preamble={1}0x00
|
||||
|
||||
r_device ert_idm = {
|
||||
r_device const ert_idm = {
|
||||
.name = "ERT Interval Data Message (IDM)",
|
||||
.modulation = OOK_PULSE_MANCHESTER_ZEROBIT,
|
||||
.short_width = 30,
|
||||
|
@ -631,7 +631,7 @@ r_device ert_idm = {
|
|||
.fields = output_fields,
|
||||
};
|
||||
|
||||
r_device ert_netidm = {
|
||||
r_device const ert_netidm = {
|
||||
.name = "ERT Interval Data Message (IDM) for Net Meters",
|
||||
.modulation = OOK_PULSE_MANCHESTER_ZEROBIT,
|
||||
.short_width = 30,
|
||||
|
|
|
@ -106,7 +106,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device ert_scm = {
|
||||
r_device const ert_scm = {
|
||||
.name = "ERT Standard Consumption Message (SCM)",
|
||||
.modulation = OOK_PULSE_MANCHESTER_ZEROBIT,
|
||||
.short_width = 30,
|
||||
|
|
|
@ -101,7 +101,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device esa_energy = {
|
||||
r_device const esa_energy = {
|
||||
.name = "ESA1000 / ESA2000 Energy Monitor",
|
||||
.modulation = OOK_PULSE_MANCHESTER_ZEROBIT,
|
||||
.short_width = 260,
|
||||
|
|
|
@ -104,7 +104,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device esic_emt7110 = {
|
||||
r_device const esic_emt7110 = {
|
||||
.name = "ESIC EMT7110 power meter",
|
||||
.modulation = FSK_PULSE_PCM,
|
||||
.short_width = 104,
|
||||
|
|
|
@ -123,7 +123,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device esperanza_ews = {
|
||||
r_device const esperanza_ews = {
|
||||
.name = "Esperanza EWS",
|
||||
.modulation = OOK_PULSE_PPM,
|
||||
.short_width = 2000,
|
||||
|
|
|
@ -93,7 +93,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device eurochron = {
|
||||
r_device const eurochron = {
|
||||
.name = "Eurochron temperature and humidity sensor",
|
||||
.modulation = OOK_PULSE_PPM,
|
||||
.short_width = 1016,
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
#include "fatal.h"
|
||||
#include <stdlib.h>
|
||||
|
||||
r_device fineoffset_WH2;
|
||||
r_device const fineoffset_WH2;
|
||||
|
||||
static r_device *fineoffset_WH2_create(char *arg)
|
||||
{
|
||||
|
@ -1007,7 +1007,7 @@ static char *output_fields_WH0530[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device fineoffset_WH2 = {
|
||||
r_device const fineoffset_WH2 = {
|
||||
.name = "Fine Offset Electronics, WH2, WH5, Telldus Temperature/Humidity/Rain Sensor",
|
||||
.modulation = OOK_PULSE_PWM,
|
||||
.short_width = 500, // Short pulse 544µs, long pulse 1524µs, fixed gap 1036µs
|
||||
|
@ -1019,7 +1019,7 @@ r_device fineoffset_WH2 = {
|
|||
.fields = output_fields,
|
||||
};
|
||||
|
||||
r_device fineoffset_WH25 = {
|
||||
r_device const fineoffset_WH25 = {
|
||||
.name = "Fine Offset Electronics, WH25, WH32B, WH24, WH65B, HP1000, Misol WS2320 Temperature/Humidity/Pressure Sensor",
|
||||
.modulation = FSK_PULSE_PCM,
|
||||
.short_width = 58, // Bit width = 58µs (measured across 580 samples / 40 bits / 250 kHz )
|
||||
|
@ -1029,7 +1029,7 @@ r_device fineoffset_WH25 = {
|
|||
.fields = output_fields_WH25,
|
||||
};
|
||||
|
||||
r_device fineoffset_WH51 = {
|
||||
r_device const fineoffset_WH51 = {
|
||||
.name = "Fine Offset Electronics/ECOWITT WH51, SwitchDoc Labs SM23 Soil Moisture Sensor",
|
||||
.modulation = FSK_PULSE_PCM,
|
||||
.short_width = 58, // Bit width = 58µs (measured across 580 samples / 40 bits / 250 kHz )
|
||||
|
@ -1039,7 +1039,7 @@ r_device fineoffset_WH51 = {
|
|||
.fields = output_fields_WH51,
|
||||
};
|
||||
|
||||
r_device fineoffset_WH0530 = {
|
||||
r_device const fineoffset_WH0530 = {
|
||||
.name = "Fine Offset Electronics, WH0530 Temperature/Rain Sensor",
|
||||
.modulation = OOK_PULSE_PWM,
|
||||
.short_width = 504, // Short pulse 504µs
|
||||
|
|
|
@ -133,7 +133,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device fineoffset_wh1050 = {
|
||||
r_device const fineoffset_wh1050 = {
|
||||
.name = "Fine Offset WH1050 Weather Station",
|
||||
.modulation = OOK_PULSE_PWM,
|
||||
.short_width = 544,
|
||||
|
|
|
@ -349,7 +349,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device fineoffset_wh1080 = {
|
||||
r_device const fineoffset_wh1080 = {
|
||||
.name = "Fine Offset Electronics WH1080/WH3080 Weather Station",
|
||||
.modulation = OOK_PULSE_PWM,
|
||||
.short_width = 544, // Short pulse 544µs, long pulse 1524µs, fixed gap 1036µs
|
||||
|
@ -359,7 +359,7 @@ r_device fineoffset_wh1080 = {
|
|||
.fields = output_fields,
|
||||
};
|
||||
|
||||
r_device fineoffset_wh1080_fsk = {
|
||||
r_device const fineoffset_wh1080_fsk = {
|
||||
.name = "Fine Offset Electronics WH1080/WH3080 Weather Station (FSK)",
|
||||
.modulation = FSK_PULSE_PCM,
|
||||
.short_width = 58,
|
||||
|
|
|
@ -166,7 +166,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device fineoffset_wh31l = {
|
||||
r_device const fineoffset_wh31l = {
|
||||
.name = "Ambient Weather WH31L (FineOffset WH57) Lightning-Strike sensor",
|
||||
.modulation = FSK_PULSE_PCM,
|
||||
.short_width = 56,
|
||||
|
|
|
@ -142,7 +142,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device fineoffset_wh45 = {
|
||||
r_device const fineoffset_wh45 = {
|
||||
.name = "Fine Offset Electronics WH45 air quality sensor",
|
||||
.modulation = FSK_PULSE_PCM,
|
||||
.short_width = 58,
|
||||
|
|
|
@ -120,7 +120,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device fineoffset_wn34 = {
|
||||
r_device const fineoffset_wn34 = {
|
||||
.name = "Fine Offset Electronics WN34 temperature sensor",
|
||||
.modulation = FSK_PULSE_PCM,
|
||||
.short_width = 58,
|
||||
|
|
|
@ -131,7 +131,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device fineoffset_ws80 = {
|
||||
r_device const fineoffset_ws80 = {
|
||||
.name = "Fine Offset Electronics WS80 weather station",
|
||||
.modulation = FSK_PULSE_PCM,
|
||||
.short_width = 58,
|
||||
|
|
|
@ -69,7 +69,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device fordremote = {
|
||||
r_device const fordremote = {
|
||||
.name = "Ford Car Key",
|
||||
.modulation = OOK_PULSE_DMC,
|
||||
.short_width = 250, // half-bit width is 250 us
|
||||
|
|
|
@ -128,7 +128,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device fs20 = {
|
||||
r_device const fs20 = {
|
||||
.name = "FS20",
|
||||
.modulation = OOK_PULSE_PPM,
|
||||
.short_width = 400,
|
||||
|
|
|
@ -71,7 +71,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device ft004b = {
|
||||
r_device const ft004b = {
|
||||
.name = "FT-004-B Temperature Sensor",
|
||||
.modulation = OOK_PULSE_PPM,
|
||||
.short_width = 1956,
|
||||
|
|
|
@ -173,7 +173,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device funkbus_remote = {
|
||||
r_device const funkbus_remote = {
|
||||
.name = "Funkbus / Instafunk (Berker, Gira, Jung)",
|
||||
.modulation = OOK_PULSE_DMC,
|
||||
.short_width = 500,
|
||||
|
|
|
@ -164,7 +164,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device ge_coloreffects = {
|
||||
r_device const ge_coloreffects = {
|
||||
.name = "GE Color Effects",
|
||||
.modulation = FSK_PULSE_PCM,
|
||||
.short_width = 52,
|
||||
|
|
|
@ -68,7 +68,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device generic_motion = {
|
||||
r_device const generic_motion = {
|
||||
.name = "Generic wireless motion sensor",
|
||||
.modulation = OOK_PULSE_PWM,
|
||||
.short_width = 888,
|
||||
|
|
|
@ -79,7 +79,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device generic_remote = {
|
||||
r_device const generic_remote = {
|
||||
.name = "Generic Remote SC226x EV1527",
|
||||
.modulation = OOK_PULSE_PWM,
|
||||
.short_width = 464,
|
||||
|
|
|
@ -68,7 +68,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device generic_temperature_sensor = {
|
||||
r_device const generic_temperature_sensor = {
|
||||
.name = "Generic temperature sensor 1",
|
||||
.modulation = OOK_PULSE_PPM,
|
||||
.short_width = 2000,
|
||||
|
|
|
@ -337,7 +337,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device geo_minim = {
|
||||
r_device const geo_minim = {
|
||||
.name = "GEO minim+ energy monitor",
|
||||
.modulation = FSK_PULSE_PCM,
|
||||
.short_width = 24,
|
||||
|
|
|
@ -249,7 +249,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device govee = {
|
||||
r_device const govee = {
|
||||
.name = "Govee Water Leak Detector H5054, Door Contact Sensor B5023",
|
||||
.modulation = OOK_PULSE_PWM,
|
||||
.short_width = 440, // Threshold between short and long pulse [us]
|
||||
|
@ -389,7 +389,7 @@ static int govee_h5054_decode(r_device *decoder, bitbuffer_t *bitbuffer)
|
|||
return 1;
|
||||
}
|
||||
|
||||
r_device govee_h5054 = {
|
||||
r_device const govee_h5054 = {
|
||||
.name = "Govee Water Leak Detector H5054",
|
||||
.modulation = OOK_PULSE_PWM,
|
||||
.short_width = 440, // Threshold between short and long pulse [us]
|
||||
|
|
|
@ -135,7 +135,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device gt_tmbbq05 = {
|
||||
r_device const gt_tmbbq05 = {
|
||||
.name = "Globaltronics QUIGG GT-TMBBQ-05",
|
||||
.modulation = OOK_PULSE_PPM,
|
||||
.short_width = 2000,
|
||||
|
|
|
@ -126,7 +126,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device gt_wt_02 = {
|
||||
r_device const gt_wt_02 = {
|
||||
.name = "Globaltronics GT-WT-02 Sensor",
|
||||
.modulation = OOK_PULSE_PPM,
|
||||
.short_width = 2500, // 3ms (old) / 2ms (new)
|
||||
|
|
|
@ -158,7 +158,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device gt_wt_03 = {
|
||||
r_device const gt_wt_03 = {
|
||||
.name = "Globaltronics GT-WT-03 Sensor",
|
||||
.modulation = OOK_PULSE_PWM,
|
||||
.short_width = 256,
|
||||
|
|
|
@ -97,7 +97,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device hcs200 = {
|
||||
r_device const hcs200 = {
|
||||
.name = "Microchip HCS200/HCS300 KeeLoq Hopping Encoder based remotes",
|
||||
.modulation = OOK_PULSE_PWM,
|
||||
.short_width = 370,
|
||||
|
@ -109,7 +109,7 @@ r_device hcs200 = {
|
|||
.fields = output_fields,
|
||||
};
|
||||
|
||||
r_device hcs200_fsk = {
|
||||
r_device const hcs200_fsk = {
|
||||
.name = "Microchip HCS200/HCS300 KeeLoq Hopping Encoder based remotes (FSK)",
|
||||
.modulation = FSK_PULSE_PWM,
|
||||
.short_width = 370,
|
||||
|
|
|
@ -242,7 +242,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device hideki_ts04 = {
|
||||
r_device const hideki_ts04 = {
|
||||
.name = "HIDEKI TS04 Temperature, Humidity, Wind and Rain Sensor",
|
||||
.modulation = OOK_PULSE_DMC,
|
||||
.short_width = 520, // half-bit width 520 us
|
||||
|
|
|
@ -131,7 +131,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device holman_ws5029pcm = {
|
||||
r_device const holman_ws5029pcm = {
|
||||
.name = "Holman Industries iWeather WS5029 weather station (newer PCM)",
|
||||
.modulation = FSK_PULSE_PCM,
|
||||
.short_width = 100,
|
||||
|
@ -212,7 +212,7 @@ static int holman_ws5029pwm_decode(r_device *decoder, bitbuffer_t *bitbuffer)
|
|||
return 1;
|
||||
}
|
||||
|
||||
r_device holman_ws5029pwm = {
|
||||
r_device const holman_ws5029pwm = {
|
||||
.name = "Holman Industries iWeather WS5029 weather station (older PWM)",
|
||||
.modulation = FSK_PULSE_PWM,
|
||||
.short_width = 488,
|
||||
|
|
|
@ -68,7 +68,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device hondaremote = {
|
||||
r_device const hondaremote = {
|
||||
.name = "Honda Car Key",
|
||||
.modulation = FSK_PULSE_PWM,
|
||||
.short_width = 250,
|
||||
|
|
|
@ -139,7 +139,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device honeywell = {
|
||||
r_device const honeywell = {
|
||||
.name = "Honeywell Door/Window Sensor, 2Gig DW10/DW11, RE208 repeater",
|
||||
.modulation = OOK_PULSE_MANCHESTER_ZEROBIT,
|
||||
.short_width = 156,
|
||||
|
|
|
@ -458,7 +458,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device honeywell_cm921 = {
|
||||
r_device const honeywell_cm921 = {
|
||||
.name = "Honeywell CM921 Wireless Programmable Room Thermostat",
|
||||
.modulation = FSK_PULSE_PCM,
|
||||
.short_width = 26,
|
||||
|
|
|
@ -125,7 +125,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device honeywell_wdb = {
|
||||
r_device const honeywell_wdb = {
|
||||
.name = "Honeywell ActivLink, Wireless Doorbell",
|
||||
.modulation = OOK_PULSE_PWM,
|
||||
.short_width = 175,
|
||||
|
@ -137,7 +137,7 @@ r_device honeywell_wdb = {
|
|||
.fields = output_fields,
|
||||
};
|
||||
|
||||
r_device honeywell_wdb_fsk = {
|
||||
r_device const honeywell_wdb_fsk = {
|
||||
.name = "Honeywell ActivLink, Wireless Doorbell (FSK)",
|
||||
.modulation = FSK_PULSE_PWM,
|
||||
.short_width = 160,
|
||||
|
|
|
@ -90,7 +90,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device ht680 = {
|
||||
r_device const ht680 = {
|
||||
.name = "HT680 Remote control",
|
||||
.modulation = OOK_PULSE_PWM,
|
||||
.short_width = 200,
|
||||
|
|
|
@ -89,7 +89,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device ibis_beacon = {
|
||||
r_device const ibis_beacon = {
|
||||
.name = "IBIS beacon",
|
||||
.modulation = OOK_PULSE_MANCHESTER_ZEROBIT,
|
||||
.short_width = 30, // Nominal width of clock half period [us]
|
||||
|
|
|
@ -288,7 +288,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device ikea_sparsnas = {
|
||||
r_device const ikea_sparsnas = {
|
||||
.name = "IKEA Sparsnas Energy Meter Monitor",
|
||||
.modulation = FSK_PULSE_PCM,
|
||||
.short_width = 27,
|
||||
|
|
|
@ -130,7 +130,7 @@ This analysis is the reason for the new r_device definitions below.
|
|||
NB: pulse_slicer_ppm does not use .gap_limit if .tolerance is set.
|
||||
*/
|
||||
|
||||
r_device infactory = {
|
||||
r_device const infactory = {
|
||||
.name = "inFactory, nor-tec, FreeTec NC-3982-913 temperature humidity sensor",
|
||||
.modulation = OOK_PULSE_PPM,
|
||||
.sync_width = 500, // Sync pulse width (recognized, but not used)
|
||||
|
|
|
@ -140,7 +140,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device inkbird_ith20r = {
|
||||
r_device const inkbird_ith20r = {
|
||||
.name = "Inkbird ITH-20R temperature humidity sensor",
|
||||
.modulation = FSK_PULSE_PCM,
|
||||
.short_width = 100, // Width of a '0' gap
|
||||
|
|
|
@ -84,7 +84,7 @@ static char *kw9015b_csv_output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device kw9015b = {
|
||||
r_device const kw9015b = {
|
||||
.name = "Inovalley kw9015b, TFA Dostmann 30.3161 (Rain and temperature sensor)",
|
||||
.modulation = OOK_PULSE_PPM,
|
||||
.short_width = 2000,
|
||||
|
|
|
@ -484,7 +484,7 @@ static char *output_fields[] = {
|
|||
|
||||
// -X 'n=Insteon_F16,m=FSK_PCM,s=110,l=110,t=15,g=20000,r=20000,invert,match={16}0x6666'
|
||||
|
||||
r_device insteon = {
|
||||
r_device const insteon = {
|
||||
.name = "Insteon",
|
||||
.modulation = FSK_PULSE_PCM,
|
||||
.short_width = 110, // short gap is 132 us
|
||||
|
|
|
@ -237,7 +237,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device interlogix = {
|
||||
r_device const interlogix = {
|
||||
.name = "Interlogix GE UTC Security Devices",
|
||||
.modulation = OOK_PULSE_PPM,
|
||||
.short_width = 122,
|
||||
|
|
|
@ -61,7 +61,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device intertechno = {
|
||||
r_device const intertechno = {
|
||||
.name = "Intertechno 433",
|
||||
.modulation = OOK_PULSE_PPM,
|
||||
.short_width = 330,
|
||||
|
|
|
@ -77,7 +77,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device jasco = {
|
||||
r_device const jasco = {
|
||||
.name = "Jasco/GE Choice Alert Security Devices",
|
||||
.modulation = OOK_PULSE_PCM,
|
||||
.short_width = 250,
|
||||
|
|
|
@ -105,7 +105,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device kedsum = {
|
||||
r_device const kedsum = {
|
||||
.name = "Kedsum Temperature & Humidity Sensor, Pearl NC-7415",
|
||||
.modulation = OOK_PULSE_PPM,
|
||||
.short_width = 2000,
|
||||
|
|
|
@ -103,7 +103,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device kerui = {
|
||||
r_device const kerui = {
|
||||
.name = "Kerui PIR / Contact Sensor",
|
||||
.modulation = OOK_PULSE_PWM,
|
||||
.short_width = 420,
|
||||
|
|
|
@ -101,7 +101,7 @@ static char *output_fields[] = {
|
|||
NULL,
|
||||
};
|
||||
|
||||
r_device klimalogg = {
|
||||
r_device const klimalogg = {
|
||||
.name = "Klimalogg",
|
||||
.modulation = OOK_PULSE_NRZS,
|
||||
.short_width = 26,
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue