{
  "source": "RTL_433",
  "total_devices": 286,
  "devices": [
    {
      "device_id": "abmt",
      "name": "Amazon Basics Meat Thermometer",
      "modulation": "OOK",
      "short_width": 550,
      "long_width": 550,
      "gap_limit": 2000,
      "reset_limit": 5000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Amazon",
      "source_file": "abmt.c"
    },
    {
      "device_id": "acurite_rain_896",
      "name": "Acurite 896 Rain Gauge",
      "modulation": "OOK",
      "short_width": 1000,
      "long_width": 2000,
      "gap_limit": 3500,
      "reset_limit": 5000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Acurite",
      "source_file": "acurite.c"
    },
    {
      "device_id": "acurite_th",
      "name": "Acurite 609TXC Temperature and Humidity Sensor",
      "modulation": "OOK",
      "short_width": 1000,
      "long_width": 2000,
      "gap_limit": 3000,
      "reset_limit": 10000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Acurite",
      "source_file": "acurite.c"
    },
    {
      "device_id": "acurite_txr",
      "name": "Acurite 592TXR temp/humidity, 592TX temp, 5n1, 3n1, Atlas weather station, 515 fridge/freezer, 6045 lightning, 899 rain, 1190/1192 leak",
      "modulation": "OOK",
      "short_width": 220,
      "long_width": 408,
      "gap_limit": 500,
      "reset_limit": 4000,
      "sync_width": 620,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Acurite",
      "source_file": "acurite.c"
    },
    {
      "device_id": "acurite_986",
      "name": "Acurite 986 Refrigerator / Freezer Thermometer",
      "modulation": "OOK",
      "short_width": 520,
      "long_width": 880,
      "gap_limit": 1280,
      "reset_limit": 4000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Acurite",
      "source_file": "acurite.c"
    },
    {
      "device_id": "acurite_606",
      "name": "Acurite 606TX / Technoline TX960 Temperature Sensor",
      "modulation": "OOK",
      "short_width": 2000,
      "long_width": 4000,
      "gap_limit": 7000,
      "reset_limit": 10000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Acurite",
      "source_file": "acurite.c"
    },
    {
      "device_id": "acurite_00275rm",
      "name": "Acurite 00275rm,00276rm Temp/Humidity with optional probe",
      "modulation": "OOK",
      "short_width": 232,
      "long_width": 420,
      "gap_limit": 520,
      "reset_limit": 708,
      "sync_width": 632,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Acurite",
      "source_file": "acurite.c"
    },
    {
      "device_id": "acurite_590tx",
      "name": "Acurite 590TX Temperature with optional Humidity",
      "modulation": "OOK",
      "short_width": 500,
      "long_width": 1500,
      "gap_limit": 2000,
      "reset_limit": 3500,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Acurite",
      "source_file": "acurite.c"
    },
    {
      "device_id": "acurite_01185m",
      "name": "Acurite Grill/Meat Thermometer 01185M",
      "modulation": "OOK",
      "short_width": 840,
      "long_width": 2070,
      "gap_limit": 3000,
      "reset_limit": 6000,
      "sync_width": 6600,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Acurite",
      "source_file": "acurite_01185m.c"
    },
    {
      "device_id": "akhan_100F14",
      "name": "Akhan 100F14 remote keyless entry",
      "modulation": "OOK",
      "short_width": 316,
      "long_width": 1020,
      "gap_limit": null,
      "reset_limit": 1800,
      "sync_width": 0,
      "tolerance": 80,
      "frequency": null,
      "category": "automotive",
      "manufacturer": "Akhan",
      "source_file": "akhan_100F14.c"
    },
    {
      "device_id": "alectov1",
      "name": "AlectoV1 Weather Sensor (Alecto WS3500 WS4500 Ventus W155/W044 Oregon)",
      "modulation": "OOK",
      "short_width": 2000,
      "long_width": 4000,
      "gap_limit": 7000,
      "reset_limit": 10000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "AlectoV1",
      "source_file": "alecto.c"
    },
    {
      "device_id": "ambient_weather",
      "name": "Ambient Weather F007TH, TFA 30.3208.02, SwitchDocLabs F016TH temperature sensor",
      "modulation": "OOK_PULSE_MANCHESTER_ZEROBIT",
      "short_width": 500,
      "long_width": 0,
      "gap_limit": null,
      "reset_limit": 2400,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Ambient",
      "source_file": "ambient_weather.c"
    },
    {
      "device_id": "ambientweather_tx8300",
      "name": "Ambient Weather TX-8300 Temperature/Humidity Sensor",
      "modulation": "OOK",
      "short_width": 2000,
      "long_width": 4000,
      "gap_limit": 6500,
      "reset_limit": 8000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Ambient",
      "source_file": "ambientweather_tx8300.c"
    },
    {
      "device_id": "ambientweather_wh31e",
      "name": "Ambient Weather WH31E Thermo-Hygrometer Sensor, EcoWitt WH40 rain gauge, WS68 weather station",
      "modulation": "FSK",
      "short_width": 56,
      "long_width": 56,
      "gap_limit": 1800,
      "reset_limit": 1500,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Ambient",
      "source_file": "ambientweather_wh31e.c"
    },
    {
      "device_id": "ant_antplus",
      "name": "ANT and ANT+ devices",
      "modulation": "FSK",
      "short_width": 1,
      "long_width": 1,
      "gap_limit": 500,
      "reset_limit": 500,
      "sync_width": 8,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "ANT",
      "source_file": "ant_antplus.c"
    },
    {
      "device_id": "apator_metra_erm30",
      "name": "Apator Metra E-RM 30",
      "modulation": "FSK",
      "short_width": 25,
      "long_width": 25,
      "gap_limit": null,
      "reset_limit": 5000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "Apator",
      "source_file": "apator_metra_erm30.c"
    },
    {
      "device_id": "arad_ms_meter",
      "name": "Arad/Master Meter Dialog3G water utility meter",
      "modulation": "FSK_PULSE_MANCHESTER_ZEROBIT",
      "short_width": 8,
      "long_width": 8,
      "gap_limit": null,
      "reset_limit": 30,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "Arad/Master",
      "source_file": "arad_ms_meter.c"
    },
    {
      "device_id": "archos_tbh",
      "name": "TBH weather sensor",
      "modulation": "FSK",
      "short_width": 212,
      "long_width": 212,
      "gap_limit": null,
      "reset_limit": 3000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "TBH",
      "source_file": "archos_tbh.c"
    },
    {
      "device_id": "arexx_ml",
      "name": "Arexx Multilogger IP-HA90, IP-TH78EXT, TSN-70E",
      "modulation": "FSK_PULSE_MANCHESTER_ZEROBIT",
      "short_width": 208,
      "long_width": 208,
      "gap_limit": null,
      "reset_limit": 450,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "Arexx",
      "source_file": "arexx_ml.c"
    },
    {
      "device_id": "atech_ws308",
      "name": "Atech-WS308 temperature sensor",
      "modulation": "OOK_PULSE_RZ",
      "short_width": 1600,
      "long_width": 1832,
      "gap_limit": 2500,
      "reset_limit": 9000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Atech-WS308",
      "source_file": "atech_ws308.c"
    },
    {
      "device_id": "auriol_4ld5661",
      "name": "Auriol 4-LD5661/4-LD5972/4-LD6313 temperature/rain sensors",
      "modulation": "OOK",
      "short_width": 1000,
      "long_width": 2000,
      "gap_limit": 2500,
      "reset_limit": 4000,
      "sync_width": 2500,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Auriol",
      "source_file": "auriol_4ld5661.c"
    },
    {
      "device_id": "auriol_aft77b2",
      "name": "Auriol AFT 77 B2 temperature sensor",
      "modulation": "OOK",
      "short_width": 500,
      "long_width": 920,
      "gap_limit": 1104,
      "reset_limit": 2275,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Auriol",
      "source_file": "auriol_aft77b2.c"
    },
    {
      "device_id": "auriol_afw2a1",
      "name": "Auriol AFW2A1 temperature/humidity sensor",
      "modulation": "OOK",
      "short_width": 576,
      "long_width": 1536,
      "gap_limit": 2012,
      "reset_limit": 3954,
      "sync_width": 0,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Auriol",
      "source_file": "auriol_afw2a1.c"
    },
    {
      "device_id": "auriol_ahfl",
      "name": "Auriol AHFL temperature/humidity sensor",
      "modulation": "OOK",
      "short_width": 2100,
      "long_width": 4150,
      "gap_limit": 4248,
      "reset_limit": 9150,
      "sync_width": 0,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Auriol",
      "source_file": "auriol_ahfl.c"
    },
    {
      "device_id": "auriol_hg02832",
      "name": "Auriol HG02832, HG05124A-DCF, Rubicson 48957 temperature/humidity sensor",
      "modulation": "OOK",
      "short_width": 252,
      "long_width": 612,
      "gap_limit": 750,
      "reset_limit": 62990,
      "sync_width": 860,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Auriol",
      "source_file": "auriol_hg02832.c"
    },
    {
      "device_id": "orion_endpoint",
      "name": "Orion Endpoint from Badger Meter, GIF2014W-OSE, water meter, hopping from 904.4 Mhz to 924.6Mhz (-s 1600k)",
      "modulation": "FSK",
      "short_width": 10,
      "long_width": 10,
      "gap_limit": null,
      "reset_limit": 1000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "Orion",
      "source_file": "badger_orion_endpoint.c"
    },
    {
      "device_id": "orion_endpoint_2020",
      "name": "Orion Endpoint from Badger Meter, GIF2020OCECNA, water meter, hopping from 904.4 Mhz to 924.6Mhz (-s 1600k)",
      "modulation": "FSK",
      "short_width": 5,
      "long_width": 5,
      "gap_limit": null,
      "reset_limit": 1000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "Orion",
      "source_file": "badger_orion_endpoint.c"
    },
    {
      "device_id": "badger_orion",
      "name": "Badger ORION water meter, 100kbps (-f 916.45M -s 1200k)",
      "modulation": "FSK",
      "short_width": 10,
      "long_width": 10,
      "gap_limit": null,
      "reset_limit": 1000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "Badger",
      "source_file": "badger_water.c"
    },
    {
      "device_id": "baldr_rain",
      "name": "Baldr / RainPoint rain gauge.",
      "modulation": "OOK",
      "short_width": 1000,
      "long_width": 2000,
      "gap_limit": 3000,
      "reset_limit": 5000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Baldr",
      "source_file": "baldr_rain.c"
    },
    {
      "device_id": "baldr_therm",
      "name": "Baldr E0666TH Thermo-Hygrometer",
      "modulation": "OOK",
      "short_width": 1000,
      "long_width": 2000,
      "gap_limit": 3000,
      "reset_limit": 5000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Baldr",
      "source_file": "baldr_therm.c"
    },
    {
      "device_id": "blueline",
      "name": "BlueLine Innovations Power Cost Monitor",
      "modulation": "OOK",
      "short_width": 500,
      "long_width": 1000,
      "gap_limit": 2000,
      "reset_limit": 8000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "BlueLine",
      "source_file": "blueline.c"
    },
    {
      "device_id": "blyss",
      "name": "Blyss DC5-UK-WH",
      "modulation": "OOK",
      "short_width": 500,
      "long_width": 1500,
      "gap_limit": 2500,
      "reset_limit": 8000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "Blyss",
      "source_file": "blyss.c"
    },
    {
      "device_id": "bm5",
      "name": "bm5-v2 12V Battery Monitor",
      "modulation": "OOK",
      "short_width": 225,
      "long_width": 675,
      "gap_limit": null,
      "reset_limit": 6000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "bm5-v2",
      "source_file": "bm5.c"
    },
    {
      "device_id": "brennenstuhl_rcs_2044",
      "name": "Brennenstuhl RCS 2044",
      "modulation": "OOK",
      "short_width": 320,
      "long_width": 968,
      "gap_limit": 1500,
      "reset_limit": 4000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "Brennenstuhl",
      "source_file": "brennenstuhl_rcs_2044.c"
    },
    {
      "device_id": "bresser_3ch",
      "name": "Bresser Thermo-/Hygro-Sensor 3CH",
      "modulation": "OOK",
      "short_width": 250,
      "long_width": 500,
      "gap_limit": 625,
      "reset_limit": 1250,
      "sync_width": 750,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Bresser",
      "source_file": "bresser_3ch.c"
    },
    {
      "device_id": "bresser_5in1",
      "name": "Bresser Weather Center 5-in-1",
      "modulation": "FSK",
      "short_width": 124,
      "long_width": 124,
      "gap_limit": null,
      "reset_limit": 25000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Bresser",
      "source_file": "bresser_5in1.c"
    },
    {
      "device_id": "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",
      "short_width": 124,
      "long_width": 124,
      "gap_limit": null,
      "reset_limit": 25000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Bresser",
      "source_file": "bresser_6in1.c"
    },
    {
      "device_id": "bresser_7in1",
      "name": "Bresser Weather Center 7-in-1, Air Quality PM2.5/PM10 7009970, CO2 7009977, HCHO/VOC 7009978 sensors",
      "modulation": "FSK",
      "short_width": 124,
      "long_width": 124,
      "gap_limit": null,
      "reset_limit": 25000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Bresser",
      "source_file": "bresser_7in1.c"
    },
    {
      "device_id": "bresser_leakage",
      "name": "Bresser water leakage",
      "modulation": "FSK",
      "short_width": 124,
      "long_width": 124,
      "gap_limit": null,
      "reset_limit": 25000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "energy",
      "manufacturer": "Bresser",
      "source_file": "bresser_leakage.c"
    },
    {
      "device_id": "bresser_lightning",
      "name": "Bresser lightning",
      "modulation": "FSK",
      "short_width": 124,
      "long_width": 124,
      "gap_limit": null,
      "reset_limit": 25000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "lighting",
      "manufacturer": "Bresser",
      "source_file": "bresser_lightning.c"
    },
    {
      "device_id": "bresser_st1005h",
      "name": "Bresser Thermo-/Hygro-Sensor Explore Scientific ST1005H",
      "modulation": "OOK",
      "short_width": 2500,
      "long_width": 4500,
      "gap_limit": 4500,
      "reset_limit": 10000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Bresser",
      "source_file": "bresser_st1005h.c"
    },
    {
      "device_id": "bt_rain",
      "name": "Biltema rain gauge",
      "modulation": "OOK",
      "short_width": 1940,
      "long_width": 3900,
      "gap_limit": 4100,
      "reset_limit": 8800,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Biltema",
      "source_file": "bt_rain.c"
    },
    {
      "device_id": "burnhardbbq",
      "name": "Burnhard BBQ thermometer",
      "modulation": "OOK",
      "short_width": 240,
      "long_width": 484,
      "gap_limit": null,
      "reset_limit": 848,
      "sync_width": 840,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Burnhard",
      "source_file": "burnhardbbq.c"
    },
    {
      "device_id": "calibeur_RF104",
      "name": "Calibeur RF-104 Sensor",
      "modulation": "OOK",
      "short_width": 760,
      "long_width": 2240,
      "gap_limit": null,
      "reset_limit": 3200,
      "sync_width": 1560,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "Calibeur",
      "source_file": "calibeur.c"
    },
    {
      "device_id": "cardin",
      "name": "Cardin S466-TX2",
      "modulation": "OOK",
      "short_width": 730,
      "long_width": 1400,
      "gap_limit": 1600,
      "reset_limit": 32000,
      "sync_width": 6150,
      "tolerance": null,
      "frequency": null,
      "category": "automotive",
      "manufacturer": "Cardin",
      "source_file": "cardin.c"
    },
    {
      "device_id": "cavius",
      "name": "Cavius smoke, heat and water detector",
      "modulation": "FSK",
      "short_width": 206,
      "long_width": 206,
      "gap_limit": 1000,
      "reset_limit": 1000,
      "sync_width": 2700,
      "tolerance": null,
      "frequency": null,
      "category": "security",
      "manufacturer": "Cavius",
      "source_file": "cavius.c"
    },
    {
      "device_id": "ced7000",
      "name": "CED7000 Shot Timer",
      "modulation": "FSK",
      "short_width": 1300,
      "long_width": 1300,
      "gap_limit": 3500,
      "reset_limit": 9000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "CED7000",
      "source_file": "ced7000.c"
    },
    {
      "device_id": "celsia_czc1",
      "name": "Celsia CZC1 Thermostat",
      "modulation": "OOK",
      "short_width": 1220,
      "long_width": 1220,
      "gap_limit": null,
      "reset_limit": 4880,
      "sync_width": null,
      "tolerance": 20,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Celsia",
      "source_file": "celsia_czc1.c"
    },
    {
      "device_id": "chamberlain_cwpirc",
      "name": "Chamberlain CWPIRC PIR Sensor",
      "modulation": "FSK",
      "short_width": 25,
      "long_width": 25,
      "gap_limit": null,
      "reset_limit": 500,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "security",
      "manufacturer": "Chamberlain",
      "source_file": "chamberlain_cwpirc.c"
    },
    {
      "device_id": "chuango",
      "name": "Chuango Security Technology",
      "modulation": "OOK",
      "short_width": 568,
      "long_width": 1704,
      "gap_limit": null,
      "reset_limit": 1800,
      "sync_width": 0,
      "tolerance": 160,
      "frequency": null,
      "category": "security",
      "manufacturer": "Chuango",
      "source_file": "chuango.c"
    },
    {
      "device_id": "cmr113",
      "name": "Clipsal CMR113 Cent-a-meter power meter",
      "modulation": "OOK",
      "short_width": 480,
      "long_width": 976,
      "gap_limit": null,
      "reset_limit": 2069,
      "sync_width": 2028,
      "tolerance": 200,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "Clipsal",
      "source_file": "cmr113.c"
    },
    {
      "device_id": "companion_wtr001",
      "name": "Companion WTR001 Temperature Sensor",
      "modulation": "OOK",
      "short_width": 732,
      "long_width": 2196,
      "gap_limit": 4000,
      "reset_limit": 8000,
      "sync_width": 1464,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Companion",
      "source_file": "companion_wtr001.c"
    },
    {
      "device_id": "cotech_36_7959",
      "name": "Cotech 36-7959, SwitchDocLabs FT020T wireless weather station with USB",
      "modulation": "OOK_PULSE_MANCHESTER_ZEROBIT",
      "short_width": 500,
      "long_width": 0,
      "gap_limit": 1200,
      "reset_limit": 1200,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Cotech",
      "source_file": "cotech_36_7959.c"
    },
    {
      "device_id": "current_cost",
      "name": "CurrentCost Current Sensor",
      "modulation": "FSK",
      "short_width": 250,
      "long_width": 250,
      "gap_limit": null,
      "reset_limit": 8000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "CurrentCost",
      "source_file": "current_cost.c"
    },
    {
      "device_id": "danfoss_CFR",
      "name": "Danfoss CFR Thermostat",
      "modulation": "FSK",
      "short_width": 100,
      "long_width": 100,
      "gap_limit": null,
      "reset_limit": 500,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Danfoss",
      "source_file": "danfoss.c"
    },
    {
      "device_id": "deltadore_x3d",
      "name": "DeltaDore X3D devices",
      "modulation": "FSK",
      "short_width": 25,
      "long_width": 25,
      "gap_limit": null,
      "reset_limit": 800,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "DeltaDore",
      "source_file": "deltadore_x3d.c"
    },
    {
      "device_id": "digitech_xc0324",
      "name": "Digitech XC-0324 / AmbientWeather FT005TH temp/hum sensor",
      "modulation": "OOK",
      "short_width": 520,
      "long_width": 1000,
      "gap_limit": null,
      "reset_limit": 3000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Digitech",
      "source_file": "digitech_xc0324.c"
    },
    {
      "device_id": "directv",
      "name": "DirecTV RC66RX Remote Control",
      "modulation": "FSK",
      "short_width": 600,
      "long_width": 600,
      "gap_limit": 30000,
      "reset_limit": 50000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "home_automation",
      "manufacturer": "DirecTV",
      "source_file": "directv.c"
    },
    {
      "device_id": "dish_remote_6_3",
      "name": "Dish remote 6.3",
      "modulation": "OOK",
      "short_width": 1692,
      "long_width": 2812,
      "gap_limit": 4500,
      "reset_limit": 9000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "home_automation",
      "manufacturer": "Dish",
      "source_file": "dish_remote_6_3.c"
    },
    {
      "device_id": "dsc_security",
      "name": "DSC Security Contact",
      "modulation": "OOK_PULSE_RZ",
      "short_width": 250,
      "long_width": 500,
      "gap_limit": null,
      "reset_limit": 5000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "security",
      "manufacturer": "DSC",
      "source_file": "dsc.c"
    },
    {
      "device_id": "dsc_security_ws4945",
      "name": "DSC Security Contact (WS4945)",
      "modulation": "OOK_PULSE_RZ",
      "short_width": 536,
      "long_width": 1072,
      "gap_limit": null,
      "reset_limit": 9000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "security",
      "manufacturer": "DSC",
      "source_file": "dsc.c"
    },
    {
      "device_id": "ec3k",
      "name": "Voltcraft EnergyCount 3000 (ec3k)",
      "modulation": "FSK",
      "short_width": 50,
      "long_width": 50,
      "gap_limit": 3000,
      "reset_limit": 5000,
      "sync_width": null,
      "tolerance": 5,
      "frequency": null,
      "category": "energy",
      "manufacturer": "Voltcraft",
      "source_file": "ec3k.c"
    },
    {
      "device_id": "ecodhome",
      "name": "EcoDHOME Smart Socket and MCEE Solar monitor",
      "modulation": "FSK",
      "short_width": 250,
      "long_width": 250,
      "gap_limit": null,
      "reset_limit": 6000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "home_automation",
      "manufacturer": "EcoDHOME",
      "source_file": "ecodhome.c"
    },
    {
      "device_id": "ecowitt",
      "name": "Ecowitt Wireless Outdoor Thermometer WH53/WH0280/WH0281A",
      "modulation": "OOK",
      "short_width": 500,
      "long_width": 1480,
      "gap_limit": 1500,
      "reset_limit": 2000,
      "sync_width": 0,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Ecowitt",
      "source_file": "ecowitt.c"
    },
    {
      "device_id": "efergy_e2_classic",
      "name": "Efergy e2 classic",
      "modulation": "FSK",
      "short_width": 64,
      "long_width": 136,
      "gap_limit": 200,
      "reset_limit": 400,
      "sync_width": 500,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "Efergy",
      "source_file": "efergy_e2_classic.c"
    },
    {
      "device_id": "efergy_optical",
      "name": "Efergy Optical",
      "modulation": "FSK",
      "short_width": 64,
      "long_width": 136,
      "gap_limit": null,
      "reset_limit": 400,
      "sync_width": 500,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "Efergy",
      "source_file": "efergy_optical.c"
    },
    {
      "device_id": "eurochron_efth800",
      "name": "Eurochron EFTH-800 temperature and humidity sensor",
      "modulation": "OOK",
      "short_width": 250,
      "long_width": 500,
      "gap_limit": 900,
      "reset_limit": 5500,
      "sync_width": 750,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Eurochron",
      "source_file": "efth800.c"
    },
    {
      "device_id": "elro_db286a",
      "name": "Elro DB286A Doorbell",
      "modulation": "OOK",
      "short_width": 456,
      "long_width": 1448,
      "gap_limit": 2000,
      "reset_limit": 8000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "security",
      "manufacturer": "Elro",
      "source_file": "elro_db286a.c"
    },
    {
      "device_id": "elv_em1000",
      "name": "ELV EM 1000",
      "modulation": "OOK",
      "short_width": 500,
      "long_width": 1000,
      "gap_limit": 7250,
      "reset_limit": 30000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "ELV",
      "source_file": "elv.c"
    },
    {
      "device_id": "elv_ws2000",
      "name": "ELV WS 2000",
      "modulation": "OOK",
      "short_width": 366,
      "long_width": 854,
      "gap_limit": null,
      "reset_limit": 1000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "ELV",
      "source_file": "elv.c"
    },
    {
      "device_id": "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, TechniSat IMETEO X6 76-4924-00, Weather Station or temperature/humidity sensor",
      "modulation": "FSK",
      "short_width": 90,
      "long_width": 90,
      "gap_limit": null,
      "reset_limit": 9000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Emax",
      "source_file": "emax.c"
    },
    {
      "device_id": "emontx",
      "name": "emonTx OpenEnergyMonitor",
      "modulation": "FSK",
      "short_width": 2000000,
      "long_width": 2000000,
      "gap_limit": null,
      "reset_limit": 1200,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "emonTx",
      "source_file": "emontx.c"
    },
    {
      "device_id": "emos_e6016",
      "name": "EMOS E6016 weatherstation with DCF77",
      "modulation": "OOK",
      "short_width": 280,
      "long_width": 796,
      "gap_limit": 3000,
      "reset_limit": 850,
      "sync_width": 1836,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "EMOS",
      "source_file": "emos_e6016.c"
    },
    {
      "device_id": "emos_e6016_rain",
      "name": "EMOS E6016 rain gauge",
      "modulation": "OOK",
      "short_width": 300,
      "long_width": 800,
      "gap_limit": 1000,
      "reset_limit": 2500,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "EMOS",
      "source_file": "emos_e6016_rain.c"
    },
    {
      "device_id": "enocean_erp1",
      "name": "EnOcean ERP1",
      "modulation": "OOK",
      "short_width": 8,
      "long_width": 8,
      "gap_limit": null,
      "reset_limit": 800,
      "sync_width": 0,
      "tolerance": 1,
      "frequency": null,
      "category": "other",
      "manufacturer": "EnOcean",
      "source_file": "enocean_erp1.c"
    },
    {
      "device_id": "ert_idm",
      "name": "ERT Interval Data Message (IDM)",
      "modulation": "OOK_PULSE_MANCHESTER_ZEROBIT",
      "short_width": 30,
      "long_width": 0,
      "gap_limit": 20000,
      "reset_limit": 20000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "ERT",
      "source_file": "ert_idm.c"
    },
    {
      "device_id": "ert_netidm",
      "name": "ERT Interval Data Message (IDM) for Net Meters",
      "modulation": "OOK_PULSE_MANCHESTER_ZEROBIT",
      "short_width": 30,
      "long_width": 0,
      "gap_limit": 20000,
      "reset_limit": 20000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "ERT",
      "source_file": "ert_idm.c"
    },
    {
      "device_id": "ert_scm",
      "name": "ERT Standard Consumption Message (SCM)",
      "modulation": "OOK_PULSE_MANCHESTER_ZEROBIT",
      "short_width": 30,
      "long_width": 0,
      "gap_limit": 0,
      "reset_limit": 64,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "ERT",
      "source_file": "ert_scm.c"
    },
    {
      "device_id": "esa_energy",
      "name": "ESA1000 / ESA2000 Energy Monitor",
      "modulation": "OOK_PULSE_MANCHESTER_ZEROBIT",
      "short_width": 260,
      "long_width": 0,
      "gap_limit": null,
      "reset_limit": 3000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "ESA1000",
      "source_file": "esa.c"
    },
    {
      "device_id": "esic_emt7110",
      "name": "ESIC EMT7110 power meter",
      "modulation": "FSK",
      "short_width": 104,
      "long_width": 104,
      "gap_limit": null,
      "reset_limit": 10000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "ESIC",
      "source_file": "esic_emt7110.c"
    },
    {
      "device_id": "esperanza_ews",
      "name": "Esperanza EWS",
      "modulation": "OOK",
      "short_width": 2000,
      "long_width": 4000,
      "gap_limit": 4400,
      "reset_limit": 9400,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "Esperanza",
      "source_file": "esperanza_ews.c"
    },
    {
      "device_id": "eurochron",
      "name": "Eurochron temperature and humidity sensor",
      "modulation": "OOK",
      "short_width": 1016,
      "long_width": 2024,
      "gap_limit": 2100,
      "reset_limit": 8200,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Eurochron",
      "source_file": "eurochron.c"
    },
    {
      "device_id": "fineoffset_WH2",
      "name": "Fine Offset Electronics, WH2, WH5, Telldus Temperature/Humidity/Rain Sensor",
      "modulation": "OOK",
      "short_width": 500,
      "long_width": 1500,
      "gap_limit": null,
      "reset_limit": 1200,
      "sync_width": null,
      "tolerance": 160,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Fine",
      "source_file": "fineoffset.c"
    },
    {
      "device_id": "fineoffset_WH25",
      "name": "Fine Offset Electronics, WH25, WH32, WH32B, WN32B, WH24, WH65B, HP1000, Misol WS2320 Temperature/Humidity/Pressure Sensor",
      "modulation": "FSK",
      "short_width": 58,
      "long_width": 58,
      "gap_limit": null,
      "reset_limit": 20000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Fine",
      "source_file": "fineoffset.c"
    },
    {
      "device_id": "fineoffset_WH51",
      "name": "Fine Offset Electronics/ECOWITT WH51, SwitchDoc Labs SM23 Soil Moisture Sensor",
      "modulation": "FSK",
      "short_width": 58,
      "long_width": 58,
      "gap_limit": null,
      "reset_limit": 5000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "home_automation",
      "manufacturer": "Fine",
      "source_file": "fineoffset.c"
    },
    {
      "device_id": "fineoffset_WH0530",
      "name": "Fine Offset Electronics, WH0530 Temperature/Rain Sensor",
      "modulation": "OOK",
      "short_width": 504,
      "long_width": 1480,
      "gap_limit": null,
      "reset_limit": 1200,
      "sync_width": 0,
      "tolerance": 160,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Fine",
      "source_file": "fineoffset.c"
    },
    {
      "device_id": "fineoffset_wh1050",
      "name": "Fine Offset WH1050 Weather Station",
      "modulation": "OOK",
      "short_width": 544,
      "long_width": 1524,
      "gap_limit": null,
      "reset_limit": 10520,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Fine",
      "source_file": "fineoffset_wh1050.c"
    },
    {
      "device_id": "tfa_303151",
      "name": "TFA 30.3151 Weather Station",
      "modulation": "FSK",
      "short_width": 60,
      "long_width": 60,
      "gap_limit": null,
      "reset_limit": 2500,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "TFA",
      "source_file": "fineoffset_wh1050.c"
    },
    {
      "device_id": "fineoffset_wh1080",
      "name": "Fine Offset Electronics WH1080/WH3080 Weather Station",
      "modulation": "OOK",
      "short_width": 544,
      "long_width": 1524,
      "gap_limit": null,
      "reset_limit": 2800,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Fine",
      "source_file": "fineoffset_wh1080.c"
    },
    {
      "device_id": "fineoffset_wh1080_fsk",
      "name": "Fine Offset Electronics WH1080/WH3080 Weather Station (FSK)",
      "modulation": "FSK",
      "short_width": 58,
      "long_width": 58,
      "gap_limit": null,
      "reset_limit": 5800,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Fine",
      "source_file": "fineoffset_wh1080.c"
    },
    {
      "device_id": "fineoffset_wh31l",
      "name": "Ambient Weather WH31L (FineOffset WH57) Lightning-Strike sensor",
      "modulation": "FSK",
      "short_width": 56,
      "long_width": 56,
      "gap_limit": null,
      "reset_limit": 1000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Ambient",
      "source_file": "fineoffset_wh31l.c"
    },
    {
      "device_id": "fineoffset_wh43",
      "name": "Fine Offset Electronics WH43 air quality sensor",
      "modulation": "FSK",
      "short_width": 58,
      "long_width": 58,
      "gap_limit": null,
      "reset_limit": 2500,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "Fine",
      "source_file": "fineoffset_wh43.c"
    },
    {
      "device_id": "fineoffset_wh45",
      "name": "Fine Offset Electronics WH45 air quality sensor",
      "modulation": "FSK",
      "short_width": 58,
      "long_width": 58,
      "gap_limit": null,
      "reset_limit": 2500,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "Fine",
      "source_file": "fineoffset_wh45.c"
    },
    {
      "device_id": "fineoffset_wh46",
      "name": "Fine Offset Electronics WH46 air quality sensor",
      "modulation": "FSK",
      "short_width": 58,
      "long_width": 58,
      "gap_limit": null,
      "reset_limit": 2500,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "Fine",
      "source_file": "fineoffset_wh46.c"
    },
    {
      "device_id": "fineoffset_wh55",
      "name": "Fine Offset / Ecowitt WH55 water leak sensor",
      "modulation": "FSK",
      "short_width": 60,
      "long_width": 60,
      "gap_limit": null,
      "reset_limit": 2500,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "Fine",
      "source_file": "fineoffset_wh55.c"
    },
    {
      "device_id": "fineoffset_wn34",
      "name": "Fine Offset Electronics WN34S/L/D and Froggit DP150/D35 temperature sensor",
      "modulation": "FSK",
      "short_width": 58,
      "long_width": 58,
      "gap_limit": null,
      "reset_limit": 2500,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Fine",
      "source_file": "fineoffset_wn34.c"
    },
    {
      "device_id": "fineoffset_ws80",
      "name": "Fine Offset Electronics WS80 weather station",
      "modulation": "FSK",
      "short_width": 58,
      "long_width": 58,
      "gap_limit": null,
      "reset_limit": 1500,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Fine",
      "source_file": "fineoffset_ws80.c"
    },
    {
      "device_id": "fineoffset_ws85",
      "name": "Fine Offset Electronics WS85 weather station",
      "modulation": "FSK",
      "short_width": 58,
      "long_width": 58,
      "gap_limit": null,
      "reset_limit": 3000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Fine",
      "source_file": "fineoffset_ws85.c"
    },
    {
      "device_id": "fineoffset_ws90",
      "name": "Fine Offset Electronics WS90 weather station",
      "modulation": "FSK",
      "short_width": 58,
      "long_width": 58,
      "gap_limit": null,
      "reset_limit": 3000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Fine",
      "source_file": "fineoffset_ws90.c"
    },
    {
      "device_id": "flowis",
      "name": "Flowis flow meters",
      "modulation": "FSK",
      "short_width": 10,
      "long_width": 10,
      "gap_limit": null,
      "reset_limit": 5000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "Flowis",
      "source_file": "flowis.c"
    },
    {
      "device_id": "fordremote",
      "name": "Ford Car Key",
      "modulation": "OOK",
      "short_width": 250,
      "long_width": 500,
      "gap_limit": null,
      "reset_limit": 4000,
      "sync_width": null,
      "tolerance": 50,
      "frequency": null,
      "category": "automotive",
      "manufacturer": "Ford",
      "source_file": "fordremote.c"
    },
    {
      "device_id": "fs20",
      "name": "FS20 / FHT",
      "modulation": "OOK",
      "short_width": 400,
      "long_width": 600,
      "gap_limit": null,
      "reset_limit": 9000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "FS20",
      "source_file": "fs20.c"
    },
    {
      "device_id": "ft004b",
      "name": "FT-004-B Temperature Sensor",
      "modulation": "OOK",
      "short_width": 1956,
      "long_width": 3900,
      "gap_limit": 4000,
      "reset_limit": 4000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "FT-004-B",
      "source_file": "ft004b.c"
    },
    {
      "device_id": "funkbus_remote",
      "name": "Funkbus / Instafunk (Berker, Gira, Jung)",
      "modulation": "OOK",
      "short_width": 500,
      "long_width": 1000,
      "gap_limit": 1500,
      "reset_limit": 2000,
      "sync_width": 4000,
      "tolerance": 300,
      "frequency": null,
      "category": "other",
      "manufacturer": "Funkbus",
      "source_file": "funkbus.c"
    },
    {
      "device_id": "gasmate_ba1008",
      "name": "Gasmate BA1008 meat thermometer",
      "modulation": "OOK",
      "short_width": 536,
      "long_width": 1668,
      "gap_limit": null,
      "reset_limit": 2000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Gasmate",
      "source_file": "gasmate_ba1008.c"
    },
    {
      "device_id": "ge_coloreffects",
      "name": "GE Color Effects",
      "modulation": "FSK",
      "short_width": 52,
      "long_width": 52,
      "gap_limit": null,
      "reset_limit": 450,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "GE",
      "source_file": "ge_coloreffects.c"
    },
    {
      "device_id": "geevon_tx16",
      "name": "Geevon TX16-3 outdoor sensor",
      "modulation": "OOK",
      "short_width": 250,
      "long_width": 500,
      "gap_limit": 625,
      "reset_limit": 1700,
      "sync_width": 750,
      "tolerance": null,
      "frequency": null,
      "category": "security",
      "manufacturer": "Geevon",
      "source_file": "geevon.c"
    },
    {
      "device_id": "geevon_tx19",
      "name": "Geevon TX19-1 outdoor sensor",
      "modulation": "OOK",
      "short_width": 250,
      "long_width": 500,
      "gap_limit": 625,
      "reset_limit": 1700,
      "sync_width": 750,
      "tolerance": null,
      "frequency": null,
      "category": "security",
      "manufacturer": "Geevon",
      "source_file": "geevon_tx19.c"
    },
    {
      "device_id": "generic_motion",
      "name": "Generic wireless motion sensor",
      "modulation": "OOK",
      "short_width": 888,
      "long_width": null,
      "gap_limit": 1200,
      "reset_limit": 2724,
      "sync_width": 1784,
      "tolerance": null,
      "frequency": null,
      "category": "security",
      "manufacturer": null,
      "source_file": "generic_motion.c"
    },
    {
      "device_id": "generic_remote",
      "name": "Generic Remote SC226x EV1527",
      "modulation": "OOK",
      "short_width": 464,
      "long_width": 1404,
      "gap_limit": null,
      "reset_limit": 1800,
      "sync_width": 0,
      "tolerance": 200,
      "frequency": null,
      "category": "home_automation",
      "manufacturer": null,
      "source_file": "generic_remote.c"
    },
    {
      "device_id": "generic_temperature_sensor",
      "name": "Generic temperature sensor 1",
      "modulation": "OOK",
      "short_width": 2000,
      "long_width": 4000,
      "gap_limit": 4800,
      "reset_limit": 10000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": null,
      "source_file": "generic_temperature_sensor.c"
    },
    {
      "device_id": "geo_minim",
      "name": "GEO minim+ energy monitor",
      "modulation": "FSK",
      "short_width": 24,
      "long_width": 24,
      "gap_limit": null,
      "reset_limit": 3000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "GEO",
      "source_file": "geo_minim.c"
    },
    {
      "device_id": "govee",
      "name": "Govee Water Leak Detector H5054, Door Contact Sensor B5023",
      "modulation": "OOK",
      "short_width": 440,
      "long_width": 940,
      "gap_limit": 900,
      "reset_limit": 9000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "security",
      "manufacturer": "Govee",
      "source_file": "govee.c"
    },
    {
      "device_id": "govee_h5054",
      "name": "Govee Water Leak Detector H5054",
      "modulation": "OOK",
      "short_width": 440,
      "long_width": 940,
      "gap_limit": 900,
      "reset_limit": 9000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "Govee",
      "source_file": "govee.c"
    },
    {
      "device_id": "gridstream96",
      "name": "Landis & Gyr Gridstream Power Meters 9.6k",
      "modulation": "FSK",
      "short_width": 104,
      "long_width": 104,
      "gap_limit": null,
      "reset_limit": 20000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "Landis",
      "source_file": "gridstream.c"
    },
    {
      "device_id": "gridstream192",
      "name": "Landis & Gyr Gridstream Power Meters 19.2k",
      "modulation": "FSK",
      "short_width": 52,
      "long_width": 52,
      "gap_limit": null,
      "reset_limit": 20000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "Landis",
      "source_file": "gridstream.c"
    },
    {
      "device_id": "gridstream384",
      "name": "Landis & Gyr Gridstream Power Meters 38.4k",
      "modulation": "FSK",
      "short_width": 22,
      "long_width": 22,
      "gap_limit": null,
      "reset_limit": 20000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "Landis",
      "source_file": "gridstream.c"
    },
    {
      "device_id": "gt_tmbbq05",
      "name": "Globaltronics QUIGG GT-TMBBQ-05",
      "modulation": "OOK",
      "short_width": 2000,
      "long_width": 4000,
      "gap_limit": 4200,
      "reset_limit": 9100,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "Globaltronics",
      "source_file": "gt_tmbbq05.c"
    },
    {
      "device_id": "gt_wt_02",
      "name": "Globaltronics GT-WT-02 Sensor",
      "modulation": "OOK",
      "short_width": 2500,
      "long_width": 5000,
      "gap_limit": 8000,
      "reset_limit": 12000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "Globaltronics",
      "source_file": "gt_wt_02.c"
    },
    {
      "device_id": "gt_wt_03",
      "name": "Globaltronics GT-WT-03 Sensor",
      "modulation": "OOK",
      "short_width": 256,
      "long_width": 625,
      "gap_limit": 1000,
      "reset_limit": 61000,
      "sync_width": 855,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "Globaltronics",
      "source_file": "gt_wt_03.c"
    },
    {
      "device_id": "hcs200",
      "name": "Microchip HCS200/HCS300 KeeLoq Hopping Encoder based remotes",
      "modulation": "OOK",
      "short_width": 370,
      "long_width": 772,
      "gap_limit": 1500,
      "reset_limit": 9000,
      "sync_width": null,
      "tolerance": 152,
      "frequency": null,
      "category": "home_automation",
      "manufacturer": "Microchip",
      "source_file": "hcs200.c"
    },
    {
      "device_id": "hcs200_fsk",
      "name": "Microchip HCS200/HCS300 KeeLoq Hopping Encoder based remotes (FSK)",
      "modulation": "FSK",
      "short_width": 370,
      "long_width": 772,
      "gap_limit": 1500,
      "reset_limit": 9000,
      "sync_width": null,
      "tolerance": 152,
      "frequency": null,
      "category": "home_automation",
      "manufacturer": "Microchip",
      "source_file": "hcs200.c"
    },
    {
      "device_id": "hideki_ts04",
      "name": "HIDEKI TS04 Temperature, Humidity, Wind and Rain Sensor",
      "modulation": "OOK",
      "short_width": 520,
      "long_width": 1040,
      "gap_limit": null,
      "reset_limit": 4000,
      "sync_width": null,
      "tolerance": 240,
      "frequency": null,
      "category": "weather",
      "manufacturer": "HIDEKI",
      "source_file": "hideki.c"
    },
    {
      "device_id": "holman_ws5029pcm",
      "name": "AOK Weather Station rebrand Holman Industries iWeather WS5029, Conrad AOK-5056, Optex 990018",
      "modulation": "FSK",
      "short_width": 100,
      "long_width": 100,
      "gap_limit": null,
      "reset_limit": 19200,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "AOK",
      "source_file": "holman_ws5029.c"
    },
    {
      "device_id": "holman_ws5029pwm",
      "name": "Holman Industries iWeather WS5029 weather station (older PWM)",
      "modulation": "FSK",
      "short_width": 488,
      "long_width": 976,
      "gap_limit": 2000,
      "reset_limit": 6000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Holman",
      "source_file": "holman_ws5029.c"
    },
    {
      "device_id": "homelead_hg9901",
      "name": "Homelead HG9901 (Geevon, Dr.Meter, Royal Gardineer) soil moisture/temp/light level sensor",
      "modulation": "OOK",
      "short_width": 432,
      "long_width": 1228,
      "gap_limit": 2000,
      "reset_limit": 4500,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "Homelead",
      "source_file": "homelead_hg9901.c"
    },
    {
      "device_id": "hondaremote",
      "name": "Honda Car Key",
      "modulation": "FSK",
      "short_width": 250,
      "long_width": 500,
      "gap_limit": null,
      "reset_limit": 2000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "automotive",
      "manufacturer": "Honda",
      "source_file": "hondaremote.c"
    },
    {
      "device_id": "honeywell",
      "name": "Honeywell Door/Window Sensor, 2Gig DW10/DW11, RE208 repeater",
      "modulation": "OOK_PULSE_MANCHESTER_ZEROBIT",
      "short_width": 156,
      "long_width": 0,
      "gap_limit": null,
      "reset_limit": 292,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Honeywell",
      "source_file": "honeywell.c"
    },
    {
      "device_id": "honeywell_cm921",
      "name": "Honeywell CM921 Wireless Programmable Room Thermostat",
      "modulation": "FSK",
      "short_width": 26,
      "long_width": 26,
      "gap_limit": null,
      "reset_limit": 2000,
      "sync_width": 0,
      "tolerance": 5,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Honeywell",
      "source_file": "honeywell_cm921.c"
    },
    {
      "device_id": "honeywell_wdb",
      "name": "Honeywell ActivLink, Wireless Doorbell",
      "modulation": "OOK",
      "short_width": 175,
      "long_width": 340,
      "gap_limit": 0,
      "reset_limit": 5000,
      "sync_width": 500,
      "tolerance": null,
      "frequency": null,
      "category": "security",
      "manufacturer": "Honeywell",
      "source_file": "honeywell_wdb.c"
    },
    {
      "device_id": "honeywell_wdb_fsk",
      "name": "Honeywell ActivLink, Wireless Doorbell (FSK)",
      "modulation": "FSK",
      "short_width": 160,
      "long_width": 320,
      "gap_limit": 0,
      "reset_limit": 560,
      "sync_width": 500,
      "tolerance": null,
      "frequency": null,
      "category": "security",
      "manufacturer": "Honeywell",
      "source_file": "honeywell_wdb.c"
    },
    {
      "device_id": "ht680",
      "name": "HT680 Remote control",
      "modulation": "OOK",
      "short_width": 200,
      "long_width": 600,
      "gap_limit": 1200,
      "reset_limit": 14000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "home_automation",
      "manufacturer": "HT680",
      "source_file": "ht680.c"
    },
    {
      "device_id": "ibis_beacon",
      "name": "IBIS beacon",
      "modulation": "OOK_PULSE_MANCHESTER_ZEROBIT",
      "short_width": 30,
      "long_width": 0,
      "gap_limit": null,
      "reset_limit": 100,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "IBIS",
      "source_file": "ibis_beacon.c"
    },
    {
      "device_id": "ikea_sparsnas",
      "name": "IKEA Sparsnas Energy Meter Monitor",
      "modulation": "FSK",
      "short_width": 27,
      "long_width": 27,
      "gap_limit": 1000,
      "reset_limit": 3000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "IKEA",
      "source_file": "ikea_sparsnas.c"
    },
    {
      "device_id": "infactory",
      "name": "inFactory, nor-tec, FreeTec NC-3982-913 temperature humidity sensor",
      "modulation": "OOK",
      "short_width": 2000,
      "long_width": 4000,
      "gap_limit": null,
      "reset_limit": 5000,
      "sync_width": 500,
      "tolerance": 750,
      "frequency": null,
      "category": "weather",
      "manufacturer": "inFactory,",
      "source_file": "infactory.c"
    },
    {
      "device_id": "inkbird_ith20r",
      "name": "Inkbird ITH-20R temperature humidity sensor",
      "modulation": "FSK",
      "short_width": 100,
      "long_width": 100,
      "gap_limit": null,
      "reset_limit": 4000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Inkbird",
      "source_file": "inkbird_ith20r.c"
    },
    {
      "device_id": "kw9015b",
      "name": "Inovalley kw9015b, TFA Dostmann 30.3161 (Rain and temperature sensor)",
      "modulation": "OOK",
      "short_width": 2000,
      "long_width": 4000,
      "gap_limit": 4800,
      "reset_limit": 10000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Inovalley",
      "source_file": "inovalley-kw9015b.c"
    },
    {
      "device_id": "insteon",
      "name": "Insteon",
      "modulation": "FSK",
      "short_width": 110,
      "long_width": 110,
      "gap_limit": 500,
      "reset_limit": 1000,
      "sync_width": null,
      "tolerance": 15,
      "frequency": null,
      "category": "other",
      "manufacturer": "Insteon",
      "source_file": "insteon.c"
    },
    {
      "device_id": "interlogix",
      "name": "Interlogix GE UTC Security Devices",
      "modulation": "OOK",
      "short_width": 122,
      "long_width": 244,
      "gap_limit": null,
      "reset_limit": 500,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "security",
      "manufacturer": "Interlogix",
      "source_file": "interlogix.c"
    },
    {
      "device_id": "intertechno",
      "name": "Intertechno 433",
      "modulation": "OOK",
      "short_width": 330,
      "long_width": 1400,
      "gap_limit": 1700,
      "reset_limit": 10000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "Intertechno",
      "source_file": "intertechno.c"
    },
    {
      "device_id": "jasco",
      "name": "Jasco/GE Choice Alert Security Devices",
      "modulation": "OOK",
      "short_width": 250,
      "long_width": 250,
      "gap_limit": null,
      "reset_limit": 1800,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "security",
      "manufacturer": "Jasco/GE",
      "source_file": "jasco.c"
    },
    {
      "device_id": "kedsum",
      "name": "Kedsum Temperature & Humidity Sensor, Pearl NC-7415",
      "modulation": "OOK",
      "short_width": 2000,
      "long_width": 4000,
      "gap_limit": 4400,
      "reset_limit": 9400,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Kedsum",
      "source_file": "kedsum.c"
    },
    {
      "device_id": "kerui",
      "name": "Kerui PIR / Contact Sensor",
      "modulation": "OOK",
      "short_width": 420,
      "long_width": 960,
      "gap_limit": 1100,
      "reset_limit": 9900,
      "sync_width": null,
      "tolerance": 160,
      "frequency": null,
      "category": "security",
      "manufacturer": "Kerui",
      "source_file": "kerui.c"
    },
    {
      "device_id": "klimalogg",
      "name": "Klimalogg",
      "modulation": "OOK_PULSE_NRZS",
      "short_width": 26,
      "long_width": 0,
      "gap_limit": 0,
      "reset_limit": 1000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "Klimalogg",
      "source_file": "klimalogg.c"
    },
    {
      "device_id": "lacrossetx",
      "name": "LaCrosse TX Temperature / Humidity Sensor",
      "modulation": "OOK",
      "short_width": 550,
      "long_width": 1400,
      "gap_limit": 3000,
      "reset_limit": 8000,
      "sync_width": 0,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "LaCrosse",
      "source_file": "lacrosse.c"
    },
    {
      "device_id": "lacrosse_breezepro",
      "name": "LaCrosse Technology View LTV-WSDTH01 Breeze Pro Wind Sensor",
      "modulation": "FSK",
      "short_width": 107,
      "long_width": 107,
      "gap_limit": null,
      "reset_limit": 5900,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "LaCrosse",
      "source_file": "lacrosse_breezepro.c"
    },
    {
      "device_id": "lacrosse_r1",
      "name": "LaCrosse Technology View LTV-R1, LTV-R3 Rainfall Gauge, LTV-W1/W2 Wind Sensor",
      "modulation": "FSK",
      "short_width": 104,
      "long_width": 104,
      "gap_limit": null,
      "reset_limit": 9600,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "LaCrosse",
      "source_file": "lacrosse_r1.c"
    },
    {
      "device_id": "lacrosse_th3",
      "name": "LaCrosse Technology View LTV-TH Thermo/Hygro Sensor",
      "modulation": "FSK",
      "short_width": 104,
      "long_width": 104,
      "gap_limit": null,
      "reset_limit": 9600,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "LaCrosse",
      "source_file": "lacrosse_th3.c"
    },
    {
      "device_id": "lacrosse_tx141x",
      "name": "LaCrosse TX141-Bv2, TX141TH-Bv2, TX141-Bv3, TX141W, TX145wsdth, (TFA, ORIA) sensor",
      "modulation": "OOK",
      "short_width": 208,
      "long_width": 417,
      "gap_limit": 625,
      "reset_limit": 1700,
      "sync_width": 833,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "LaCrosse",
      "source_file": "lacrosse_tx141x.c"
    },
    {
      "device_id": "lacrosse_tx31u",
      "name": "LaCrosse TX31U-IT, The Weather Channel WS-1910TWC-IT",
      "modulation": "FSK",
      "short_width": 116,
      "long_width": 116,
      "gap_limit": null,
      "reset_limit": 20000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "LaCrosse",
      "source_file": "lacrosse_tx31u.c"
    },
    {
      "device_id": "lacrosse_tx34",
      "name": "LaCrosse TX34-IT rain gauge",
      "modulation": "FSK",
      "short_width": 58,
      "long_width": 58,
      "gap_limit": null,
      "reset_limit": 4000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "LaCrosse",
      "source_file": "lacrosse_tx34.c"
    },
    {
      "device_id": "lacrosse_tx29",
      "name": "LaCrosse TX29IT, TFA Dostmann 30.3159.IT Temperature sensor",
      "modulation": "FSK",
      "short_width": 55,
      "long_width": 55,
      "gap_limit": null,
      "reset_limit": 4000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "LaCrosse",
      "source_file": "lacrosse_tx35.c"
    },
    {
      "device_id": "lacrosse_tx35",
      "name": "LaCrosse TX35DTH-IT, TFA Dostmann 30.3155 Temperature/Humidity sensor",
      "modulation": "FSK",
      "short_width": 105,
      "long_width": 105,
      "gap_limit": null,
      "reset_limit": 4000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "LaCrosse",
      "source_file": "lacrosse_tx35.c"
    },
    {
      "device_id": "lacrosse_wr1",
      "name": "LaCrosse Technology View LTV-WR1 Multi Sensor",
      "modulation": "FSK",
      "short_width": 104,
      "long_width": 104,
      "gap_limit": null,
      "reset_limit": 9600,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "LaCrosse",
      "source_file": "lacrosse_wr1.c"
    },
    {
      "device_id": "lacrosse_ws7000",
      "name": "LaCrosse/ELV/Conrad WS7000/WS2500 weather sensors",
      "modulation": "OOK",
      "short_width": 400,
      "long_width": 800,
      "gap_limit": null,
      "reset_limit": 1100,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "LaCrosse/ELV/Conrad",
      "source_file": "lacrosse_ws7000.c"
    },
    {
      "device_id": "lacrossews",
      "name": "LaCrosse WS-2310 / WS-3600 Weather Station",
      "modulation": "OOK",
      "short_width": 368,
      "long_width": 1464,
      "gap_limit": null,
      "reset_limit": 8000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "LaCrosse",
      "source_file": "lacrossews.c"
    },
    {
      "device_id": "lightwave_rf",
      "name": "LightwaveRF",
      "modulation": "OOK",
      "short_width": 250,
      "long_width": 1250,
      "gap_limit": null,
      "reset_limit": 1500,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "lighting",
      "manufacturer": "LightwaveRF",
      "source_file": "lightwave_rf.c"
    },
    {
      "device_id": "m_bus_mode_c_t",
      "name": "Wireless M-Bus, Mode C&T, 100kbps (-f 868.95M -s 1200k)",
      "modulation": "FSK",
      "short_width": 10,
      "long_width": 10,
      "gap_limit": null,
      "reset_limit": 500,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": null,
      "source_file": "m_bus.c"
    },
    {
      "device_id": "m_bus_mode_c_t_downlink",
      "name": "Wireless M-Bus, Mode T, 32.768kbps (-f 868.3M -s 1000k)",
      "modulation": "FSK",
      "short_width": null,
      "long_width": null,
      "gap_limit": null,
      "reset_limit": null,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": null,
      "source_file": "m_bus.c"
    },
    {
      "device_id": "m_bus_mode_s",
      "name": "Wireless M-Bus, Mode S, 32.768kbps (-f 868.3M -s 1000k)",
      "modulation": "FSK",
      "short_width": null,
      "long_width": null,
      "gap_limit": null,
      "reset_limit": null,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": null,
      "source_file": "m_bus.c"
    },
    {
      "device_id": "m_bus_mode_r",
      "name": "Wireless M-Bus, Mode R, 4.8kbps (-f 868.33M)",
      "modulation": "FSK_PULSE_MANCHESTER_ZEROBIT",
      "short_width": null,
      "long_width": 0,
      "gap_limit": null,
      "reset_limit": null,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": null,
      "source_file": "m_bus.c"
    },
    {
      "device_id": "m_bus_mode_f",
      "name": "Wireless M-Bus, Mode F, 2.4kbps",
      "modulation": "FSK",
      "short_width": 1000,
      "long_width": 1000,
      "gap_limit": null,
      "reset_limit": 5000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": null,
      "source_file": "m_bus.c"
    },
    {
      "device_id": "markisol",
      "name": "Markisol, E-Motion, BOFU, Rollerhouse, BF-30x, BF-415 curtain remote",
      "modulation": "OOK",
      "short_width": 368,
      "long_width": 704,
      "gap_limit": 2000,
      "reset_limit": 2000,
      "sync_width": 5628,
      "tolerance": null,
      "frequency": null,
      "category": "security",
      "manufacturer": "Markisol,",
      "source_file": "markisol.c"
    },
    {
      "device_id": "marlec_solar",
      "name": "Marlec Solar iBoost+ sensors",
      "modulation": "FSK",
      "short_width": 20,
      "long_width": 20,
      "gap_limit": null,
      "reset_limit": 300,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "Marlec",
      "source_file": "marlec_solar.c"
    },
    {
      "device_id": "maverick_et73",
      "name": "Maverick ET73",
      "modulation": "OOK",
      "short_width": 1050,
      "long_width": 2050,
      "gap_limit": 2200,
      "reset_limit": 4400,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "Maverick",
      "source_file": "maverick_et73.c"
    },
    {
      "device_id": "maverick_et73x",
      "name": "Maverick ET-732/733 BBQ Sensor",
      "modulation": "OOK_PULSE_MANCHESTER_ZEROBIT",
      "short_width": 230,
      "long_width": 0,
      "gap_limit": 1000,
      "reset_limit": 4000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "Maverick",
      "source_file": "maverick_et73x.c"
    },
    {
      "device_id": "maverick_xr30",
      "name": "Maverick XR-30 BBQ Sensor",
      "modulation": "FSK",
      "short_width": 360,
      "long_width": 360,
      "gap_limit": null,
      "reset_limit": 4096,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "Maverick",
      "source_file": "maverick_xr30.c"
    },
    {
      "device_id": "maverick_xr50",
      "name": "Maverick XR-50 BBQ Sensor",
      "modulation": "FSK",
      "short_width": 107,
      "long_width": 107,
      "gap_limit": null,
      "reset_limit": 2200,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "Maverick",
      "source_file": "maverick_xr50.c"
    },
    {
      "device_id": "mebus433",
      "name": "Mebus 433",
      "modulation": "OOK",
      "short_width": 800,
      "long_width": 1600,
      "gap_limit": 2400,
      "reset_limit": 6000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "Mebus",
      "source_file": "mebus.c"
    },
    {
      "device_id": "megacode",
      "name": "Linear Megacode Garage/Gate Remotes",
      "modulation": "OOK",
      "short_width": 1000,
      "long_width": 1000,
      "gap_limit": 9000,
      "reset_limit": 20000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "home_automation",
      "manufacturer": "Linear",
      "source_file": "megacode.c"
    },
    {
      "device_id": "missil_ml0757",
      "name": "Missil ML0757 weather station",
      "modulation": "OOK",
      "short_width": 975,
      "long_width": 1950,
      "gap_limit": 2500,
      "reset_limit": 4500,
      "sync_width": null,
      "tolerance": 100,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Missil",
      "source_file": "missil_ml0757.c"
    },
    {
      "device_id": "mueller_hotrod",
      "name": "Mueller Hot Rod water meter",
      "modulation": "FSK",
      "short_width": 26,
      "long_width": 26,
      "gap_limit": null,
      "reset_limit": 2500,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "Mueller",
      "source_file": "mueller_hotrod.c"
    },
    {
      "device_id": "neptune_r900",
      "name": "Neptune R900 flow meters",
      "modulation": "OOK",
      "short_width": 30,
      "long_width": 30,
      "gap_limit": null,
      "reset_limit": 320,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "Neptune",
      "source_file": "neptune_r900.c"
    },
    {
      "device_id": "new_template",
      "name": "Template decoder",
      "modulation": "OOK",
      "short_width": 132,
      "long_width": 224,
      "gap_limit": 300,
      "reset_limit": 1000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "Template",
      "source_file": "new_template.c"
    },
    {
      "device_id": "newkaku",
      "name": "KlikAanKlikUit Wireless Switch",
      "modulation": "OOK",
      "short_width": 300,
      "long_width": 1400,
      "gap_limit": null,
      "reset_limit": 3200,
      "sync_width": 2650,
      "tolerance": 200,
      "frequency": null,
      "category": "home_automation",
      "manufacturer": "KlikAanKlikUit",
      "source_file": "newkaku.c"
    },
    {
      "device_id": "nexa",
      "name": "Nexa",
      "modulation": "OOK",
      "short_width": 270,
      "long_width": 1300,
      "gap_limit": 1500,
      "reset_limit": 2800,
      "sync_width": 2650,
      "tolerance": 200,
      "frequency": null,
      "category": "other",
      "manufacturer": "Nexa",
      "source_file": "nexa.c"
    },
    {
      "device_id": "nexus",
      "name": "Nexus, FreeTec NC-7345, NX-3980, Solight TE82S, TFA 30.3209 temperature/humidity sensor",
      "modulation": "OOK",
      "short_width": 1000,
      "long_width": 2000,
      "gap_limit": 3000,
      "reset_limit": 5000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Nexus,",
      "source_file": "nexus.c"
    },
    {
      "device_id": "nexus_sauna",
      "name": "Nexus, CRX, Prego sauna temperature sensor",
      "modulation": "OOK",
      "short_width": 1000,
      "long_width": 2000,
      "gap_limit": 3000,
      "reset_limit": 5000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Nexus,",
      "source_file": "nexus.c"
    },
    {
      "device_id": "nice_flor_s",
      "name": "Nice Flor-s remote control for gates",
      "modulation": "OOK",
      "short_width": 500,
      "long_width": 1000,
      "gap_limit": 2000,
      "reset_limit": 5000,
      "sync_width": 1500,
      "tolerance": 100,
      "frequency": null,
      "category": "home_automation",
      "manufacturer": "Nice",
      "source_file": "nice_flor_s.c"
    },
    {
      "device_id": "norgo",
      "name": "Norgo NGE101",
      "modulation": "OOK",
      "short_width": 486,
      "long_width": 972,
      "gap_limit": null,
      "reset_limit": 2100,
      "sync_width": 0,
      "tolerance": 120,
      "frequency": null,
      "category": "other",
      "manufacturer": "Norgo",
      "source_file": "norgo.c"
    },
    {
      "device_id": "oil_smart",
      "name": "Oil Ultrasonic SMART FSK",
      "modulation": "FSK",
      "short_width": 500,
      "long_width": 500,
      "gap_limit": null,
      "reset_limit": 2000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "Oil",
      "source_file": "oil_smart.c"
    },
    {
      "device_id": "oil_standard",
      "name": "Oil Ultrasonic STANDARD FSK",
      "modulation": "FSK",
      "short_width": 500,
      "long_width": 500,
      "gap_limit": null,
      "reset_limit": 2000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "Oil",
      "source_file": "oil_standard.c"
    },
    {
      "device_id": "oil_standard_ask",
      "name": "Oil Ultrasonic STANDARD ASK",
      "modulation": "OOK",
      "short_width": 500,
      "long_width": 500,
      "gap_limit": null,
      "reset_limit": 2000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "Oil",
      "source_file": "oil_standard.c"
    },
    {
      "device_id": "oil_watchman",
      "name": "Watchman Sonic / Apollo Ultrasonic / Beckett Rocket oil tank monitor",
      "modulation": "FSK",
      "short_width": 1000,
      "long_width": 1000,
      "gap_limit": null,
      "reset_limit": 4000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "Watchman",
      "source_file": "oil_watchman.c"
    },
    {
      "device_id": "oil_watchman_advanced",
      "name": "Watchman Sonic Advanced / Plus, Tekelek",
      "modulation": "FSK",
      "short_width": 500,
      "long_width": 500,
      "gap_limit": null,
      "reset_limit": 12500,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "Watchman",
      "source_file": "oil_watchman_advanced.c"
    },
    {
      "device_id": "opus_xt300",
      "name": "Opus/Imagintronix XT300 Soil Moisture",
      "modulation": "OOK",
      "short_width": 544,
      "long_width": 932,
      "gap_limit": 10000,
      "reset_limit": 31000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "Opus/Imagintronix",
      "source_file": "opus_xt300.c"
    },
    {
      "device_id": "oregon_scientific",
      "name": "Oregon Scientific Weather Sensor",
      "modulation": "OOK_PULSE_MANCHESTER_ZEROBIT",
      "short_width": 440,
      "long_width": 0,
      "gap_limit": null,
      "reset_limit": 2400,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Oregon",
      "source_file": "oregon_scientific.c"
    },
    {
      "device_id": "oregon_scientific_sl109h",
      "name": "Oregon Scientific SL109H Remote Thermal Hygro Sensor",
      "modulation": "OOK",
      "short_width": 2000,
      "long_width": 4000,
      "gap_limit": 5000,
      "reset_limit": 10000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Oregon",
      "source_file": "oregon_scientific_sl109h.c"
    },
    {
      "device_id": "oregon_scientific_v1",
      "name": "OSv1 Temperature Sensor",
      "modulation": "OOK_PULSE_PWM_OSV1",
      "short_width": 1465,
      "long_width": null,
      "gap_limit": 3500,
      "reset_limit": 14000,
      "sync_width": 5780,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "OSv1",
      "source_file": "oregon_scientific_v1.c"
    },
    {
      "device_id": "oria_wa150km",
      "name": "Oria WA150KM freezer and fridge thermometer",
      "modulation": "OOK",
      "short_width": 490,
      "long_width": 490,
      "gap_limit": 1500,
      "reset_limit": 4000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Oria",
      "source_file": "oria_wa150km.c"
    },
    {
      "device_id": "philips_aj3650",
      "name": "Philips outdoor temperature sensor (type AJ3650)",
      "modulation": "OOK",
      "short_width": 2000,
      "long_width": 6000,
      "gap_limit": 8000,
      "reset_limit": 30000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Philips",
      "source_file": "philips_aj3650.c"
    },
    {
      "device_id": "philips_aj7010",
      "name": "Philips outdoor temperature sensor (type AJ7010)",
      "modulation": "OOK",
      "short_width": 2000,
      "long_width": 6000,
      "gap_limit": null,
      "reset_limit": 30000,
      "sync_width": 1000,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Philips",
      "source_file": "philips_aj7010.c"
    },
    {
      "device_id": "proflame2",
      "name": "SmartFire Proflame 2 remote control",
      "modulation": "OOK",
      "short_width": 417,
      "long_width": 417,
      "gap_limit": 1000,
      "reset_limit": 6000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "home_automation",
      "manufacturer": "SmartFire",
      "source_file": "proflame2.c"
    },
    {
      "device_id": "prologue",
      "name": "Prologue, FreeTec NC-7104, NC-7159-675 temperature sensor",
      "modulation": "OOK",
      "short_width": 2000,
      "long_width": 4000,
      "gap_limit": 7000,
      "reset_limit": 10000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Prologue,",
      "source_file": "prologue.c"
    },
    {
      "device_id": "proove",
      "name": "Proove / Nexa / KlikAanKlikUit Wireless Switch",
      "modulation": "OOK",
      "short_width": 270,
      "long_width": 1300,
      "gap_limit": 1500,
      "reset_limit": 2800,
      "sync_width": 2650,
      "tolerance": 200,
      "frequency": null,
      "category": "home_automation",
      "manufacturer": "Proove",
      "source_file": "proove.c"
    },
    {
      "device_id": "quhwa",
      "name": "Quhwa",
      "modulation": "OOK",
      "short_width": 360,
      "long_width": 1070,
      "gap_limit": 1200,
      "reset_limit": 6600,
      "sync_width": 0,
      "tolerance": 80,
      "frequency": null,
      "category": "other",
      "manufacturer": "Quhwa",
      "source_file": "quhwa.c"
    },
    {
      "device_id": "quinetic",
      "name": "Quinetic",
      "modulation": "FSK",
      "short_width": 10,
      "long_width": 10,
      "gap_limit": null,
      "reset_limit": 120,
      "sync_width": null,
      "tolerance": 1,
      "frequency": null,
      "category": "other",
      "manufacturer": "Quinetic",
      "source_file": "quinetic.c"
    },
    {
      "device_id": "radiohead_ask",
      "name": "Radiohead ASK",
      "modulation": "OOK",
      "short_width": 500,
      "long_width": 500,
      "gap_limit": null,
      "reset_limit": 5,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "Radiohead",
      "source_file": "radiohead_ask.c"
    },
    {
      "device_id": "sensible_living",
      "name": "Sensible Living Mini-Plant Moisture Sensor",
      "modulation": "OOK",
      "short_width": 1000,
      "long_width": 1000,
      "gap_limit": null,
      "reset_limit": 5,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "Sensible",
      "source_file": "radiohead_ask.c"
    },
    {
      "device_id": "rainpoint",
      "name": "RainPoint soil temperature and moisture sensor",
      "modulation": "OOK",
      "short_width": 500,
      "long_width": 500,
      "gap_limit": null,
      "reset_limit": 1500,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "RainPoint",
      "source_file": "rainpoint.c"
    },
    {
      "device_id": "rainpoint_hcs012arf",
      "name": "RainPoint HCS012ARF Rain Gauge sensor",
      "modulation": "OOK",
      "short_width": 320,
      "long_width": 320,
      "gap_limit": 700,
      "reset_limit": 1000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "RainPoint",
      "source_file": "rainpoint_hcs012arf.c"
    },
    {
      "device_id": "regency_fan",
      "name": "Regency Ceiling Fan Remote (-f 303.75M to 303.96M)",
      "modulation": "OOK",
      "short_width": 580,
      "long_width": 976,
      "gap_limit": 8000,
      "reset_limit": 14000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "home_automation",
      "manufacturer": "Regency",
      "source_file": "regency_fan.c"
    },
    {
      "device_id": "revolt_nc5462",
      "name": "Revolt NC-5642 Energy Meter",
      "modulation": "OOK",
      "short_width": 200,
      "long_width": 320,
      "gap_limit": null,
      "reset_limit": 272,
      "sync_width": 10024,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "Revolt",
      "source_file": "revolt_nc5462.c"
    },
    {
      "device_id": "revolt_zx7717",
      "name": "Revolt ZX-7717 power meter",
      "modulation": "OOK_PULSE_MANCHESTER_ZEROBIT",
      "short_width": 310,
      "long_width": 310,
      "gap_limit": null,
      "reset_limit": 900,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "sensors",
      "manufacturer": "Revolt",
      "source_file": "revolt_zx7717.c"
    },
    {
      "device_id": "rftech",
      "name": "RF-tech",
      "modulation": "OOK",
      "short_width": 2000,
      "long_width": 4000,
      "gap_limit": 5000,
      "reset_limit": 10000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "RF-tech",
      "source_file": "rftech.c"
    },
    {
      "device_id": "risco_agility",
      "name": "Risco 2 Way Agility protocol, Risco PIR/PET Sensor RWX95P",
      "modulation": "OOK",
      "short_width": 175,
      "long_width": 175,
      "gap_limit": null,
      "reset_limit": 1000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "security",
      "manufacturer": "Risco",
      "source_file": "risco_agility.c"
    },
    {
      "device_id": "rojaflex",
      "name": "RojaFlex shutter and remote devices",
      "modulation": "FSK",
      "short_width": 100,
      "long_width": 100,
      "gap_limit": null,
      "reset_limit": 102400,
      "sync_width": 0,
      "tolerance": null,
      "frequency": null,
      "category": "home_automation",
      "manufacturer": "RojaFlex",
      "source_file": "rojaflex.c"
    },
    {
      "device_id": "rosstech_dcu706",
      "name": "Rosstech Digital Control Unit DCU-706/Sundance/Jacuzzi",
      "modulation": "OOK",
      "short_width": 200,
      "long_width": 200,
      "gap_limit": null,
      "reset_limit": 2000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "Rosstech",
      "source_file": "rosstech_dcu706.c"
    },
    {
      "device_id": "rubicson",
      "name": "Rubicson, TFA 30.3197 or InFactory PT-310 Temperature Sensor",
      "modulation": "OOK",
      "short_width": 1000,
      "long_width": 2000,
      "gap_limit": 3000,
      "reset_limit": 4800,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Rubicson,",
      "source_file": "rubicson.c"
    },
    {
      "device_id": "rubicson_48659",
      "name": "Rubicson 48659 Thermometer",
      "modulation": "OOK",
      "short_width": 940,
      "long_width": 1900,
      "gap_limit": 2000,
      "reset_limit": 4000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Rubicson",
      "source_file": "rubicson_48659.c"
    },
    {
      "device_id": "rubicson_pool_48942",
      "name": "Rubicson Pool Thermometer 48942",
      "modulation": "OOK",
      "short_width": 280,
      "long_width": 480,
      "gap_limit": 5000,
      "reset_limit": 6000,
      "sync_width": 730,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Rubicson",
      "source_file": "rubicson_pool_48942.c"
    },
    {
      "device_id": "s3318p",
      "name": "Conrad S3318P, FreeTec NC-5849-913 temperature humidity sensor, ORIA WA50 ST389 temperature sensor",
      "modulation": "OOK",
      "short_width": 1900,
      "long_width": 3800,
      "gap_limit": 4400,
      "reset_limit": 9400,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Conrad",
      "source_file": "s3318p.c"
    },
    {
      "device_id": "schou_72543_rain",
      "name": "Schou 72543 Day Rain Gauge, Motonet MTX Rain, MarQuant Rain Gauge, TFA Dostmann 30.3252.01/47.3006.01 Rain Gauge and Thermometer, ADE WS1907",
      "modulation": "OOK",
      "short_width": 972,
      "long_width": 2680,
      "gap_limit": null,
      "reset_limit": 2712,
      "sync_width": 7328,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Schou",
      "source_file": "schou_72543_rain.c"
    },
    {
      "device_id": "schraeder",
      "name": "Schrader TPMS",
      "modulation": "OOK_PULSE_MANCHESTER_ZEROBIT",
      "short_width": 120,
      "long_width": 0,
      "gap_limit": null,
      "reset_limit": 480,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "tpms",
      "manufacturer": "Schrader",
      "source_file": "schraeder.c"
    },
    {
      "device_id": "schrader_EG53MA4",
      "name": "Schrader TPMS EG53MA4, Saab, Opel, Vauxhall, Chevrolet",
      "modulation": "OOK_PULSE_MANCHESTER_ZEROBIT",
      "short_width": 123,
      "long_width": 0,
      "gap_limit": null,
      "reset_limit": 300,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "tpms",
      "manufacturer": "Schrader",
      "source_file": "schraeder.c"
    },
    {
      "device_id": "schrader_SMD3MA4",
      "name": "Schrader TPMS SMD3MA4 (Subaru) 3039 (Infiniti, Nissan, Renault)",
      "modulation": "OOK",
      "short_width": 120,
      "long_width": 120,
      "gap_limit": null,
      "reset_limit": 480,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "tpms",
      "manufacturer": "Schrader",
      "source_file": "schraeder.c"
    },
    {
      "device_id": "scmplus",
      "name": "Standard Consumption Message Plus (SCMplus)",
      "modulation": "OOK_PULSE_MANCHESTER_ZEROBIT",
      "short_width": 30,
      "long_width": 0,
      "gap_limit": 0,
      "reset_limit": 64,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "Standard",
      "source_file": "scmplus.c"
    },
    {
      "device_id": "secplus_v1",
      "name": "Security+ (Keyfob)",
      "modulation": "OOK",
      "short_width": 500,
      "long_width": 500,
      "gap_limit": 15000,
      "reset_limit": 80000,
      "sync_width": null,
      "tolerance": 20,
      "frequency": null,
      "category": "automotive",
      "manufacturer": "Security+",
      "source_file": "secplus_v1.c"
    },
    {
      "device_id": "secplus_v2",
      "name": "Security+ 2.0 (Keyfob)",
      "modulation": "OOK",
      "short_width": 250,
      "long_width": 250,
      "gap_limit": 1500,
      "reset_limit": 9000,
      "sync_width": null,
      "tolerance": 50,
      "frequency": null,
      "category": "automotive",
      "manufacturer": "Security+",
      "source_file": "secplus_v2.c"
    },
    {
      "device_id": "sharp_spc775",
      "name": "Sharp SPC775 weather station",
      "modulation": "FSK",
      "short_width": 225,
      "long_width": 425,
      "gap_limit": 2900,
      "reset_limit": 10000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Sharp",
      "source_file": "sharp_spc775.c"
    },
    {
      "device_id": "silvercrest",
      "name": "Silvercrest Remote Control",
      "modulation": "OOK",
      "short_width": 264,
      "long_width": 744,
      "gap_limit": 5000,
      "reset_limit": 12000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "home_automation",
      "manufacturer": "Silvercrest",
      "source_file": "silvercrest.c"
    },
    {
      "device_id": "ss_sensor",
      "name": "SimpliSafe Home Security System (May require disabling automatic gain for KeyPad decodes)",
      "modulation": "OOK",
      "short_width": 500,
      "long_width": 1000,
      "gap_limit": null,
      "reset_limit": 2200,
      "sync_width": null,
      "tolerance": 100,
      "frequency": null,
      "category": "automotive",
      "manufacturer": "SimpliSafe",
      "source_file": "simplisafe.c"
    },
    {
      "device_id": "simplisafe_gen3",
      "name": "SimpliSafe Gen 3 Home Security System",
      "modulation": "FSK",
      "short_width": 208,
      "long_width": 208,
      "gap_limit": null,
      "reset_limit": 7000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "security",
      "manufacturer": "SimpliSafe",
      "source_file": "simplisafe_gen3.c"
    },
    {
      "device_id": "smoke_gs558",
      "name": "Wireless Smoke and Heat Detector GS 558",
      "modulation": "OOK",
      "short_width": 436,
      "long_width": 1202,
      "gap_limit": 1299,
      "reset_limit": 11764,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "security",
      "manufacturer": null,
      "source_file": "smoke_gs558.c"
    },
    {
      "device_id": "solight_te44",
      "name": "Solight TE44/TE66, EMOS E0107T, NX-6876-917",
      "modulation": "OOK",
      "short_width": 972,
      "long_width": 1932,
      "gap_limit": 3000,
      "reset_limit": 6000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "lighting",
      "manufacturer": "Solight",
      "source_file": "solight_te44.c"
    },
    {
      "device_id": "somfy_iohc",
      "name": "Somfy io-homecontrol",
      "modulation": "FSK",
      "short_width": 26,
      "long_width": 26,
      "gap_limit": null,
      "reset_limit": 300,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "Somfy",
      "source_file": "somfy_iohc.c"
    },
    {
      "device_id": "somfy_rts",
      "name": "Somfy RTS",
      "modulation": "OOK",
      "short_width": 604,
      "long_width": 604,
      "gap_limit": 3000,
      "reset_limit": 10000,
      "sync_width": 2416,
      "tolerance": 20,
      "frequency": null,
      "category": "other",
      "manufacturer": "Somfy",
      "source_file": "somfy_rts.c"
    },
    {
      "device_id": "springfield",
      "name": "Springfield Temperature and Soil Moisture",
      "modulation": "OOK",
      "short_width": 2000,
      "long_width": 4000,
      "gap_limit": 5000,
      "reset_limit": 9200,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Springfield",
      "source_file": "springfield.c"
    },
    {
      "device_id": "srsmith_pool_srs_2c_tx",
      "name": "SRSmith Pool Light Remote Control SRS-2C-TX (-f 915M)",
      "modulation": "FSK",
      "short_width": 100,
      "long_width": 100,
      "gap_limit": null,
      "reset_limit": 4096,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "home_automation",
      "manufacturer": "SRSmith",
      "source_file": "srsmith_pool_srs_2c_tx.c"
    },
    {
      "device_id": "steelmate",
      "name": "Steelmate TPMS",
      "modulation": "FSK_PULSE_MANCHESTER_ZEROBIT",
      "short_width": 50,
      "long_width": 50,
      "gap_limit": null,
      "reset_limit": 120,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "tpms",
      "manufacturer": "Steelmate",
      "source_file": "steelmate.c"
    },
    {
      "device_id": "telldus_ft0385r",
      "name": "Telldus weather station FT0385R sensors",
      "modulation": "OOK_PULSE_MANCHESTER_ZEROBIT",
      "short_width": 500,
      "long_width": 0,
      "gap_limit": 1200,
      "reset_limit": 2400,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Telldus",
      "source_file": "telldus_ft0385r.c"
    },
    {
      "device_id": "tfa_14_1504_v2",
      "name": "TFA Dostmann 14.1504.V2 Radio-controlled grill and meat thermometer",
      "modulation": "FSK",
      "short_width": 360,
      "long_width": 360,
      "gap_limit": null,
      "reset_limit": 4096,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "TFA",
      "source_file": "tfa_14_1504_v2.c"
    },
    {
      "device_id": "tfa_303196",
      "name": "TFA Dostmann 30.3196 T/H outdoor sensor",
      "modulation": "FSK_PULSE_MANCHESTER_ZEROBIT",
      "short_width": 245,
      "long_width": 0,
      "gap_limit": null,
      "reset_limit": 22000,
      "sync_width": null,
      "tolerance": 60,
      "frequency": null,
      "category": "security",
      "manufacturer": "TFA",
      "source_file": "tfa_30_3196.c"
    },
    {
      "device_id": "tfa_30_3221",
      "name": "TFA Dostmann 30.3221.02 T/H Outdoor Sensor (also 30.3249.02)",
      "modulation": "OOK",
      "short_width": 235,
      "long_width": 480,
      "gap_limit": null,
      "reset_limit": 850,
      "sync_width": 836,
      "tolerance": null,
      "frequency": null,
      "category": "security",
      "manufacturer": "TFA",
      "source_file": "tfa_30_3221.c"
    },
    {
      "device_id": "tfa_drop_303233",
      "name": "TFA Drop Rain Gauge 30.3233.01",
      "modulation": "OOK",
      "short_width": 255,
      "long_width": 510,
      "gap_limit": 1300,
      "reset_limit": 2500,
      "sync_width": 750,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "TFA",
      "source_file": "tfa_drop_30.3233.c"
    },
    {
      "device_id": "tfa_marbella",
      "name": "TFA Marbella Pool Thermometer",
      "modulation": "FSK",
      "short_width": 105,
      "long_width": 105,
      "gap_limit": null,
      "reset_limit": 2000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "TFA",
      "source_file": "tfa_marbella.c"
    },
    {
      "device_id": "tfa_pool_thermometer",
      "name": "TFA pool temperature sensor",
      "modulation": "OOK",
      "short_width": 2000,
      "long_width": 4600,
      "gap_limit": 7800,
      "reset_limit": 10000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "TFA",
      "source_file": "tfa_pool_thermometer.c"
    },
    {
      "device_id": "tfa_twin_plus_303049",
      "name": "TFA-Twin-Plus-30.3049, Conrad KW9010, Ea2 BL999",
      "modulation": "OOK",
      "short_width": 2000,
      "long_width": 4000,
      "gap_limit": 6000,
      "reset_limit": 10000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "TFA-Twin-Plus-30.3049,",
      "source_file": "tfa_twin_plus_30.3049.c"
    },
    {
      "device_id": "thermopro_tp11",
      "name": "Thermopro TP11 Thermometer",
      "modulation": "OOK",
      "short_width": 500,
      "long_width": 1500,
      "gap_limit": 2000,
      "reset_limit": 4000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Thermopro",
      "source_file": "thermopro_tp11.c"
    },
    {
      "device_id": "thermopro_tp12",
      "name": "ThermoPro TP08/TP12/TP20 thermometer",
      "modulation": "OOK",
      "short_width": 500,
      "long_width": 1500,
      "gap_limit": 2000,
      "reset_limit": 4000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "ThermoPro",
      "source_file": "thermopro_tp12.c"
    },
    {
      "device_id": "thermopro_tp28b",
      "name": "ThermoPro TP28b Super Long Range Wireless Meat Thermometer for Smoker BBQ Grill",
      "modulation": "FSK",
      "short_width": 105,
      "long_width": 105,
      "gap_limit": null,
      "reset_limit": 5500,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "ThermoPro",
      "source_file": "thermopro_tp28b.c"
    },
    {
      "device_id": "thermopro_tp828b",
      "name": "ThermoPro Meat Thermometers, TP828B 2 probes with Temp, BBQ Target LO and HI",
      "modulation": "FSK",
      "short_width": 102,
      "long_width": 102,
      "gap_limit": null,
      "reset_limit": 1500,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "ThermoPro",
      "source_file": "thermopro_tp82xb.c"
    },
    {
      "device_id": "thermopro_tp829b",
      "name": "ThermoPro Meat Thermometers, TP829B 4 probes with temp only",
      "modulation": "FSK",
      "short_width": 102,
      "long_width": 102,
      "gap_limit": null,
      "reset_limit": 1500,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "ThermoPro",
      "source_file": "thermopro_tp82xb.c"
    },
    {
      "device_id": "thermopro_tx2",
      "name": "ThermoPro-TX2 temperature sensor",
      "modulation": "OOK",
      "short_width": 2000,
      "long_width": 4000,
      "gap_limit": 7000,
      "reset_limit": 10000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "ThermoPro-TX2",
      "source_file": "thermopro_tx2.c"
    },
    {
      "device_id": "thermopro_tx2c",
      "name": "ThermoPro TX-2C Thermometer and Humidity sensor",
      "modulation": "OOK",
      "short_width": 1958,
      "long_width": 3825,
      "gap_limit": 3829,
      "reset_limit": 8643,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "ThermoPro",
      "source_file": "thermopro_tx2c.c"
    },
    {
      "device_id": "thermopro_tx7b",
      "name": "ThermoPro TX-7B Outdoor Thermometer Hygrometer",
      "modulation": "FSK",
      "short_width": 108,
      "long_width": 108,
      "gap_limit": null,
      "reset_limit": 1500,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "ThermoPro",
      "source_file": "thermopro_tx7b.c"
    },
    {
      "device_id": "thermor",
      "name": "Thermor DG950 weather station",
      "modulation": "OOK",
      "short_width": 680,
      "long_width": 2100,
      "gap_limit": 3000,
      "reset_limit": 8000,
      "sync_width": 1438,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Thermor",
      "source_file": "thermor.c"
    },
    {
      "device_id": "tpms_abarth124",
      "name": "Abarth 124 Spider TPMS",
      "modulation": "FSK",
      "short_width": 52,
      "long_width": 52,
      "gap_limit": null,
      "reset_limit": 150,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "tpms",
      "manufacturer": "Abarth",
      "source_file": "tpms_abarth124.c"
    },
    {
      "device_id": "tpms_ave",
      "name": "AVE TPMS",
      "modulation": "FSK",
      "short_width": 100,
      "long_width": 100,
      "gap_limit": null,
      "reset_limit": 400,
      "sync_width": null,
      "tolerance": 15,
      "frequency": null,
      "category": "tpms",
      "manufacturer": "AVE",
      "source_file": "tpms_ave.c"
    },
    {
      "device_id": "tpms_bmw",
      "name": "BMW Gen4-Gen5 TPMS and Audi TPMS Pressure Alert, multi-brand HUF/Beru, Continental, Schrader/Sensata, Audi",
      "modulation": "FSK",
      "short_width": 25,
      "long_width": 25,
      "gap_limit": null,
      "reset_limit": 100,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "tpms",
      "manufacturer": "BMW",
      "source_file": "tpms_bmw.c"
    },
    {
      "device_id": "tpms_bmwg3",
      "name": "BMW Gen2 and Gen3 TPMS",
      "modulation": "FSK",
      "short_width": 52,
      "long_width": 52,
      "gap_limit": null,
      "reset_limit": 160,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "tpms",
      "manufacturer": "BMW",
      "source_file": "tpms_bmw_g3.c"
    },
    {
      "device_id": "tpms_citroen",
      "name": "Citroen TPMS",
      "modulation": "FSK",
      "short_width": 52,
      "long_width": 52,
      "gap_limit": null,
      "reset_limit": 150,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "tpms",
      "manufacturer": "Citroen",
      "source_file": "tpms_citroen.c"
    },
    {
      "device_id": "tpms_eezrv",
      "name": "EezTire E618, Carchet TPMS, TST-507 TPMS",
      "modulation": "OOK_PULSE_MANCHESTER_ZEROBIT",
      "short_width": 50,
      "long_width": 50,
      "gap_limit": null,
      "reset_limit": 120,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "tpms",
      "manufacturer": "EezTire",
      "source_file": "tpms_eezrv.c"
    },
    {
      "device_id": "tpms_elantra2012",
      "name": "Elantra2012 TPMS",
      "modulation": "FSK",
      "short_width": 49,
      "long_width": 49,
      "gap_limit": null,
      "reset_limit": 200,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "tpms",
      "manufacturer": "Elantra2012",
      "source_file": "tpms_elantra2012.c"
    },
    {
      "device_id": "tpms_ford",
      "name": "Ford TPMS",
      "modulation": "FSK",
      "short_width": 52,
      "long_width": 52,
      "gap_limit": null,
      "reset_limit": 150,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "tpms",
      "manufacturer": "Ford",
      "source_file": "tpms_ford.c"
    },
    {
      "device_id": "tpms_gm",
      "name": "GM-Aftermarket TPMS",
      "modulation": "OOK_PULSE_MANCHESTER_ZEROBIT",
      "short_width": 120,
      "long_width": 0,
      "gap_limit": null,
      "reset_limit": 15600,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "tpms",
      "manufacturer": "GM-Aftermarket",
      "source_file": "tpms_gm.c"
    },
    {
      "device_id": "tpms_hyundai_vdo",
      "name": "Hyundai TPMS (VDO)",
      "modulation": "FSK",
      "short_width": 52,
      "long_width": 52,
      "gap_limit": null,
      "reset_limit": 150,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "tpms",
      "manufacturer": "Hyundai",
      "source_file": "tpms_hyundai_vdo.c"
    },
    {
      "device_id": "tpms_jansite",
      "name": "Jansite TPMS Model TY02S",
      "modulation": "FSK",
      "short_width": 52,
      "long_width": 52,
      "gap_limit": null,
      "reset_limit": 150,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "tpms",
      "manufacturer": "Jansite",
      "source_file": "tpms_jansite.c"
    },
    {
      "device_id": "tpms_jansite_solar",
      "name": "Jansite TPMS Model Solar",
      "modulation": "FSK",
      "short_width": 51,
      "long_width": 51,
      "gap_limit": null,
      "reset_limit": 5000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "tpms",
      "manufacturer": "Jansite",
      "source_file": "tpms_jansite_solar.c"
    },
    {
      "device_id": "tpms_kia",
      "name": "Kia TPMS (-s 1000k)",
      "modulation": "FSK",
      "short_width": 50,
      "long_width": 50,
      "gap_limit": null,
      "reset_limit": 200,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "tpms",
      "manufacturer": "Kia",
      "source_file": "tpms_kia.c"
    },
    {
      "device_id": "tpms_nissan",
      "name": "Nissan TPMS",
      "modulation": "FSK",
      "short_width": 120,
      "long_width": 120,
      "gap_limit": null,
      "reset_limit": 250,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "tpms",
      "manufacturer": "Nissan",
      "source_file": "tpms_nissan.c"
    },
    {
      "device_id": "tpms_pmv107j",
      "name": "PMV-107J (Toyota) TPMS",
      "modulation": "FSK",
      "short_width": 100,
      "long_width": 100,
      "gap_limit": null,
      "reset_limit": 250,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "tpms",
      "manufacturer": "PMV-107J",
      "source_file": "tpms_pmv107j.c"
    },
    {
      "device_id": "tpms_porsche",
      "name": "Porsche Boxster/Cayman TPMS",
      "modulation": "FSK",
      "short_width": 52,
      "long_width": 52,
      "gap_limit": null,
      "reset_limit": 150,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "tpms",
      "manufacturer": "Porsche",
      "source_file": "tpms_porsche.c"
    },
    {
      "device_id": "tpms_renault",
      "name": "Renault TPMS",
      "modulation": "FSK",
      "short_width": 52,
      "long_width": 52,
      "gap_limit": null,
      "reset_limit": 150,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "tpms",
      "manufacturer": "Renault",
      "source_file": "tpms_renault.c"
    },
    {
      "device_id": "tpms_renault_0435r",
      "name": "Renault 0435R TPMS",
      "modulation": "FSK",
      "short_width": 52,
      "long_width": 52,
      "gap_limit": null,
      "reset_limit": 150,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "tpms",
      "manufacturer": "Renault",
      "source_file": "tpms_renault_0435r.c"
    },
    {
      "device_id": "tpms_toyota",
      "name": "Toyota TPMS",
      "modulation": "FSK",
      "short_width": 52,
      "long_width": 52,
      "gap_limit": null,
      "reset_limit": 150,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "tpms",
      "manufacturer": "Toyota",
      "source_file": "tpms_toyota.c"
    },
    {
      "device_id": "tpms_truck",
      "name": "Unbranded SolarTPMS for trucks",
      "modulation": "FSK",
      "short_width": 52,
      "long_width": 52,
      "gap_limit": null,
      "reset_limit": 150,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "tpms",
      "manufacturer": "Unbranded",
      "source_file": "tpms_truck.c"
    },
    {
      "device_id": "tpms_tyreguard400",
      "name": "TyreGuard 400 TPMS",
      "modulation": "OOK_PULSE_MANCHESTER_ZEROBIT",
      "short_width": 100,
      "long_width": 100,
      "gap_limit": 0,
      "reset_limit": 500,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "tpms",
      "manufacturer": "TyreGuard",
      "source_file": "tpms_tyreguard400.c"
    },
    {
      "device_id": "ts_ft002",
      "name": "TS-FT002 Wireless Ultrasonic Tank Liquid Level Meter With Temperature Sensor",
      "modulation": "OOK",
      "short_width": 464,
      "long_width": 948,
      "gap_limit": 1200,
      "reset_limit": 2000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "TS-FT002",
      "source_file": "ts_ft002.c"
    },
    {
      "device_id": "ttx201",
      "name": "Emos TTX201 Temperature Sensor",
      "modulation": "OOK_PULSE_MANCHESTER_ZEROBIT",
      "short_width": 510,
      "long_width": 0,
      "gap_limit": null,
      "reset_limit": 1700,
      "sync_width": null,
      "tolerance": 250,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Emos",
      "source_file": "ttx201.c"
    },
    {
      "device_id": "universalfanctrl",
      "name": "Universal (Reverseable) 24V Fan Controller",
      "modulation": "OOK",
      "short_width": 256,
      "long_width": 756,
      "gap_limit": 8000,
      "reset_limit": 8800,
      "sync_width": 3616,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "Universal",
      "source_file": "universalfanctrl.c"
    },
    {
      "device_id": "vaillant_vrt340f",
      "name": "Vaillant calorMatic VRT340f Central Heating Control",
      "modulation": "OOK",
      "short_width": 836,
      "long_width": 1648,
      "gap_limit": null,
      "reset_limit": 4000,
      "sync_width": null,
      "tolerance": 120,
      "frequency": null,
      "category": "other",
      "manufacturer": "Vaillant",
      "source_file": "vaillant_vrt340f.c"
    },
    {
      "device_id": "vauno_en8822c",
      "name": "Vauno EN8822C",
      "modulation": "OOK",
      "short_width": 2000,
      "long_width": 4000,
      "gap_limit": 5000,
      "reset_limit": 9500,
      "sync_width": null,
      "tolerance": 500,
      "frequency": null,
      "category": "other",
      "manufacturer": "Vauno",
      "source_file": "vauno_en8822c.c"
    },
    {
      "device_id": "vevor_7in1",
      "name": "Vevor Wireless Weather Station 7-in-1",
      "modulation": "FSK",
      "short_width": 87,
      "long_width": 87,
      "gap_limit": null,
      "reset_limit": 9000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Vevor",
      "source_file": "vevor_7in1.c"
    },
    {
      "device_id": "visonic_powercode",
      "name": "Visonic powercode",
      "modulation": "OOK",
      "short_width": 400,
      "long_width": 800,
      "gap_limit": 900,
      "reset_limit": 5000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "energy",
      "manufacturer": "Visonic",
      "source_file": "visonic_powercode.c"
    },
    {
      "device_id": "watts_thermostat",
      "name": "Watts WFHT-RF Thermostat",
      "modulation": "OOK",
      "short_width": 260,
      "long_width": 600,
      "gap_limit": null,
      "reset_limit": 900,
      "sync_width": 6000,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Watts",
      "source_file": "watts_thermostat.c"
    },
    {
      "device_id": "waveman",
      "name": "Waveman Switch Transmitter",
      "modulation": "OOK",
      "short_width": 357,
      "long_width": 1064,
      "gap_limit": 1400,
      "reset_limit": 12000,
      "sync_width": 0,
      "tolerance": 200,
      "frequency": null,
      "category": "home_automation",
      "manufacturer": "Waveman",
      "source_file": "waveman.c"
    },
    {
      "device_id": "wec2103",
      "name": "WEC-2103 temperature/humidity sensor",
      "modulation": "OOK",
      "short_width": 1900,
      "long_width": 3800,
      "gap_limit": 4400,
      "reset_limit": 9400,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "WEC-2103",
      "source_file": "wec2103.c"
    },
    {
      "device_id": "wg_pb12v1",
      "name": "WG-PB12V1 Temperature Sensor",
      "modulation": "OOK",
      "short_width": 564,
      "long_width": 1476,
      "gap_limit": null,
      "reset_limit": 2500,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "WG-PB12V1",
      "source_file": "wg_pb12v1.c"
    },
    {
      "device_id": "ws2032",
      "name": "WS2032 weather station",
      "modulation": "OOK",
      "short_width": 500,
      "long_width": 1000,
      "gap_limit": 750,
      "reset_limit": 4000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "WS2032",
      "source_file": "ws2032.c"
    },
    {
      "device_id": "wssensor",
      "name": "Hyundai WS SENZOR Remote Temperature Sensor",
      "modulation": "OOK",
      "short_width": 1000,
      "long_width": 2000,
      "gap_limit": 2400,
      "reset_limit": 4400,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "Hyundai",
      "source_file": "wssensor.c"
    },
    {
      "device_id": "wt1024",
      "name": "WT0124 Pool Thermometer",
      "modulation": "OOK",
      "short_width": 680,
      "long_width": 1850,
      "gap_limit": 4000,
      "reset_limit": 30000,
      "sync_width": 10000,
      "tolerance": null,
      "frequency": null,
      "category": "weather",
      "manufacturer": "WT0124",
      "source_file": "wt0124.c"
    },
    {
      "device_id": "wt450",
      "name": "WT450, WT260H, WT405H",
      "modulation": "OOK",
      "short_width": 976,
      "long_width": 1952,
      "gap_limit": null,
      "reset_limit": 18000,
      "sync_width": null,
      "tolerance": 100,
      "frequency": null,
      "category": "other",
      "manufacturer": "WT450,",
      "source_file": "wt450.c"
    },
    {
      "device_id": "X10_RF",
      "name": "X10 RF",
      "modulation": "OOK",
      "short_width": 562,
      "long_width": 1687,
      "gap_limit": 2200,
      "reset_limit": 6000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "other",
      "manufacturer": "X10",
      "source_file": "x10_rf.c"
    },
    {
      "device_id": "x10_sec",
      "name": "X10 Security",
      "modulation": "OOK",
      "short_width": 562,
      "long_width": 1687,
      "gap_limit": 2200,
      "reset_limit": 6000,
      "sync_width": null,
      "tolerance": null,
      "frequency": null,
      "category": "security",
      "manufacturer": "X10",
      "source_file": "x10_sec.c"
    },
    {
      "device_id": "yale_hsa",
      "name": "Yale HSA (Home Security Alarm), YES-Alarmkit",
      "modulation": "OOK",
      "short_width": 850,
      "long_width": 1460,
      "gap_limit": null,
      "reset_limit": 1500,
      "sync_width": 5380,
      "tolerance": null,
      "frequency": null,
      "category": "security",
      "manufacturer": "Yale",
      "source_file": "yale_hsa.c"
    }
  ]
}