{   "name": "example",
    "version": "2.0",
    "extra_sources": [],
    "initializers": [],
    "loopers": [],
    "buses": {},
    "commands": [],
    "messages": {
        "0x620": {
            "bus": "hs",
            "is_fd" : false,
            "is_extended": false,
            "is_j1939" : false,
            "signals": {
                "doors.driver.open": {
                    "generic_name": "doors.front_left.open",
                    "bit_position": 43,
                    "bit_size": 1,
                    "factor": 1.0,
                    "offset": 0,
                    "decoder": "decoder_t::decode_boolean"},
                "doors.passenger.open": {
                    "generic_name": "doors.front_right.open",
                    "bit_position": 44,
                    "bit_size": 1,
                    "factor": 1.0,
                    "offset": 0,
                    "decoder": "decoder_t::decode_boolean"},
                "doors.rearleft.open": {
                    "generic_name": "doors.rear_left.open",
                    "bit_position": 46,
                    "bit_size": 1,
                    "factor": 1.0,
                    "offset": 0,
                    "decoder": "decoder_t::decode_boolean"},
                "doors.rearright.open": {
                    "generic_name": "doors.rear_right.open",
                    "bit_position": 45,
                    "bit_size": 4,
                    "factor": 1.0,
                    "offset": 0,
                    "decoder": "decoder_t::decode_boolean"},
                "doors.coffer.open": {
                    "generic_name": "doors.boot.open",
                    "bit_position": 47,
                    "bit_size": 1,
                    "factor": 1.0,
                    "offset": 0,
                    "decoder": "decoder_t::decode_boolean"}
		}
	},
        "0x799": {
            "bus": "hs",
            "is_fd" : false,
            "is_extended": false,
            "is_j1939" : false,
            "signals": {
                "windows.driver.open": {
                    "generic_name": "windows.front_left.open",
                    "bit_position": 43,
                    "bit_size": 1,
                    "factor": 1.0,
                    "offset": 0,
                    "decoder": "decoder_t::decode_boolean"},
                "windows.passenger.open": {
                    "generic_name": "windows.front_right.open",
                    "bit_position": 44,
                    "bit_size": 1,
                    "factor": 1.0,
                    "offset": 0,
                    "decoder": "decoder_t::decode_boolean"},
                "windows.rearleft.open": {
                    "generic_name": "windows.rear_left.open",
                    "bit_position": 46,
                    "bit_size": 1,
                    "factor": 1.0,
                    "offset": 0,
                    "decoder": "decoder_t::decode_boolean"},
                "windows.rearright.open": {
                    "generic_name": "windows.rear_right.open",
                    "bit_position": 45,
                    "bit_size": 4,
                    "factor": 1.0,
                    "offset": 0,
                    "decoder": "decoder_t::decode_boolean"}
		}
	},
    "0x3D9": {
    "bus": "hs",
    "is_fd" : false,
    "is_extended": false,
    "is_j1939" : false,
      "signals": {
        "PT_FuelLevelPct": {
          "generic_name": "fuel.level",
          "bit_position": 8,
          "bit_size": 8,
          "factor": 0.392157,
          "offset": 0
        },
        "PT_EngineSpeed": {
          "generic_name": "engine.speed",
          "bit_position": 16,
          "bit_size": 16,
          "factor": 0.25,
          "offset": 0
        },
        "PT_FuelLevelLow": {
          "generic_name": "fuel.level.low",
          "bit_position": 55,
          "bit_size": 1,
          "factor": 1,
          "offset": 0,
          "decoder": "decoder_t::decode_boolean"
        }
      }
    },
    "0x4D1": {
    "bus": "hs",
    "is_fd" : false,
    "is_extended": false,
    "is_j1939" : false,
      "signals": {
        "PT_EngineOilTempHigh": {
          "generic_name": "engine.oil.temp.high",
          "bit_position": 7,
          "bit_size": 1,
          "factor": 1,
          "offset": 0,
          "decoder": "decoder_t::decode_boolean"
        },
        "PT_EngineOilTemp": {
          "generic_name": "engine.oil.temp",
          "bit_position": 16,
          "bit_size": 8,
          "factor": 1,
	  "offset": 0
        }
      }
    },
    "0x3E9": {
      "bus": "hs",
      "is_fd" : false,
      "is_extended": false,
      "is_j1939" : false,
      "signals": {
        "PT_VehicleAvgSpeed": {
          "generic_name": "vehicle.average.speed",
          "bit_position": 0,
          "bit_size": 15,
          "factor": 0.015625,
          "offset": 0
        }
      }
    }
  },
"diagnostic_messages": [
        {
            "bus": "hs",
			"pid": 4,
			"name": "engine.load",
			"frequency": 5,
            "decoder": "decoder_t::decode_obd2_response"
        },
		{
            "bus": "hs",
			"pid": 5,
			"name": "engine.coolant.temperature",
			"frequency": 1,
            "decoder": "decoder_t::decode_obd2_response"
        },
		{
            "bus": "hs",
			"pid": 10,
			"name": "fuel.pressure",
			"frequency": 1,
            "decoder": "decoder_t::decode_obd2_response"
        },
		{
            "bus": "hs",
			"pid": 11,
			"name": "intake.manifold.pressure",
			"frequency": 1,
            "decoder": "decoder_t::decode_obd2_response"
        },
		{
            "bus": "hs",
			"pid": 12,
			"name": "engine.speed",
			"frequency": 5,
            "decoder": "decoder_t::decode_obd2_response"
        },
		{
            "bus": "hs",
			"pid": 13,
			"name": "vehicle.speed",
			"frequency": 5,
            "decoder": "decoder_t::decode_obd2_response"
        },
		{
            "bus": "hs",
			"pid": 15,
			"name": "intake.air.temperature",
			"frequency": 1,
            "decoder": "decoder_t::decode_obd2_response"
        },
		{
            "bus": "hs",
			"pid": 16,
			"name": "mass.airflow",
			"frequency": 5,
            "decoder": "decoder_t::decode_obd2_response"
        },
		{
            "bus": "hs",
			"pid": 17,
			"name": "throttle.position",
			"frequency": 5,
            "decoder": "decoder_t::decode_obd2_response"
        },
		{
            "bus": "hs",
			"pid": 31,
			"name": "running.time",
			"frequency": 1,
            "decoder": "decoder_t::decode_obd2_response"
        },
		{
            "bus": "hs",
			"pid": 45,
			"name": "EGR.error",
			"frequency": 0,
            "decoder": "decoder_t::decode_obd2_response"
        },
		{
            "bus": "hs",
			"pid": 47,
			"name": "fuel.level",
			"frequency": 1,
            "decoder": "decoder_t::decode_obd2_response"
        },
		{
            "bus": "hs",
			"pid": 51,
			"name": "barometric.pressure",
			"frequency": 1,
            "decoder": "decoder_t::decode_obd2_response"
        },
		{
            "bus": "hs",
			"pid": 70,
			"name": "ambient.air.temperature",
			"frequency": 1,
            "decoder": "decoder_t::decode_obd2_response"
        },
		{
            "bus": "hs",
			"pid": 76,
			"name": "commanded.throttle.position",
			"frequency": 1,
            "decoder": "decoder_t::decode_obd2_response"
        },
		{
            "bus": "hs",
			"pid": 82,
			"name": "ethanol.fuel.percentage",
			"frequency": 1,
            "decoder": "decoder_t::decode_obd2_response"
        },
		{
            "bus": "hs",
			"pid": 90,
			"name": "accelerator.pedal.position",
			"frequency": 5,
            "decoder": "decoder_t::decode_obd2_response"
        },
		{
            "bus": "hs",
			"pid": 91,
			"name": "hybrid.battery-pack.remaining.life",
			"frequency": 5,
            "decoder": "decoder_t::decode_obd2_response"
        },
		{
            "bus": "hs",
			"pid": 92,
			"name": "engine.oil.temperature",
			"frequency": 1,
            "decoder": "decoder_t::decode_obd2_response"
        },
		{
            "bus": "hs",
			"pid": 94,
			"name": "engine.fuel.rate",
			"frequency": 1,
            "decoder": "decoder_t::decode_obd2_response"
        },
		{
            "bus": "hs",
			"pid": 99,
			"name": "engine.torque",
			"frequency": 1,
            "decoder": "decoder_t::decode_obd2_response"
        }
    ]
}