COMMON_DIDS: dict[int, dict] = {
    0xF180: {
        "name": "BootSoftwareIdentification",
        "full_name": "BootSoftwareIdentification",
        "description": "Identification of boot software.",
        "format": "ASCII string",
        "length_bytes": 0,
        "service": 0x22,
        "writable": False,
        "session_required": "default",
    },
    0xF181: {
        "name": "ApplicationSoftwareIdentification",
        "full_name": "ApplicationSoftwareIdentification",
        "description": "Identification of application software.",
        "format": "ASCII string",
        "length_bytes": 0,
        "service": 0x22,
        "writable": False,
        "session_required": "default",
    },
    0xF182: {
        "name": "ApplicationDataIdentification",
        "full_name": "ApplicationDataIdentification",
        "description": "Identification of application data.",
        "format": "ASCII string",
        "length_bytes": 0,
        "service": 0x22,
        "writable": False,
        "session_required": "default",
    },
    0xF183: {
        "name": "BootSoftwareVersionNumber",
        "full_name": "BootSoftwareVersionNumber",
        "description": "Version number of boot software.",
        "format": "ASCII string",
        "length_bytes": 0,
        "service": 0x22,
        "writable": False,
        "session_required": "default",
    },
    0xF184: {
        "name": "ApplicationSoftwareVersionNumber",
        "full_name": "ApplicationSoftwareVersionNumber",
        "description": "Version number of application software.",
        "format": "ASCII string",
        "length_bytes": 0,
        "service": 0x22,
        "writable": False,
        "session_required": "default",
    },
    0xF185: {
        "name": "ApplicationDataVersionNumber",
        "full_name": "ApplicationDataVersionNumber",
        "description": "Version number of application data.",
        "format": "ASCII string",
        "length_bytes": 0,
        "service": 0x22,
        "writable": False,
        "session_required": "default",
    },
    0xF186: {
        "name": "ActiveDiagnosticSession",
        "full_name": "ActiveDiagnosticSession",
        "description": "Currently active diagnostic session.",
        "format": "1 byte",
        "length_bytes": 1,
        "service": 0x22,
        "writable": False,
        "session_required": "default",
    },
    0xF187: {
        "name": "VehicleManufacturerSparePartNumber",
        "full_name": "VehicleManufacturerSparePartNumber",
        "description": "Spare part number assigned by vehicle manufacturer.",
        "format": "ASCII string",
        "length_bytes": 0,
        "service": 0x22,
        "writable": False,
        "session_required": "default",
    },
    0xF188: {
        "name": "VehicleManufacturerECUSoftwareNumber",
        "full_name": "VehicleManufacturerECUSoftwareNumber",
        "description": "ECU software number assigned by vehicle manufacturer.",
        "format": "ASCII string",
        "length_bytes": 0,
        "service": 0x22,
        "writable": False,
        "session_required": "default",
    },
    0xF189: {
        "name": "VehicleManufacturerECUSoftwareVersionNumber",
        "full_name": "VehicleManufacturerECUSoftwareVersionNumber",
        "description": "ECU software version number assigned by vehicle manufacturer.",
        "format": "ASCII string",
        "length_bytes": 0,
        "service": 0x22,
        "writable": False,
        "session_required": "default",
    },
    0xF18A: {
        "name": "SystemSupplierIdentifier",
        "full_name": "SystemSupplierIdentifier",
        "description": "Identifier of the system supplier.",
        "format": "ASCII string",
        "length_bytes": 0,
        "service": 0x22,
        "writable": False,
        "session_required": "default",
    },
    0xF18B: {
        "name": "ECUManufacturingDate",
        "full_name": "ECUManufacturingDate",
        "description": "Date the ECU was manufactured.",
        "format": "YYYYMMDD",
        "length_bytes": 4,
        "service": 0x22,
        "writable": False,
        "session_required": "default",
    },
    0xF18C: {
        "name": "ECUSerialNumber",
        "full_name": "ECUSerialNumber",
        "description": "ECU serial number.",
        "format": "ASCII string",
        "length_bytes": 0,
        "service": 0x22,
        "writable": False,
        "session_required": "default",
    },
    0xF18D: {
        "name": "SupportedFunctionalUnits",
        "full_name": "SupportedFunctionalUnits",
        "description": "List of supported functional units.",
        "format": "bytes",
        "length_bytes": 0,
        "service": 0x22,
        "writable": False,
        "session_required": "default",
    },
    0xF18E: {
        "name": "VehicleManufacturerKitAssemblyPartNumber",
        "full_name": "VehicleManufacturerKitAssemblyPartNumber",
        "description": "Kit assembly part number.",
        "format": "ASCII string",
        "length_bytes": 0,
        "service": 0x22,
        "writable": False,
        "session_required": "default",
    },
    0xF18F: {
        "name": "ISOSoftwareIdentification",
        "full_name": "ISOSoftwareIdentification",
        "description": "ISO software identification string.",
        "format": "ASCII string",
        "length_bytes": 0,
        "service": 0x22,
        "writable": False,
        "session_required": "default",
    },
    0xF190: {
        "name": "VIN",
        "full_name": "VehicleIdentificationNumber",
        "description": "17-character Vehicle Identification Number per ISO 3779",
        "format": "ASCII string, 17 bytes",
        "length_bytes": 17,
        "service": 0x22,
        "writable": False,
        "session_required": "default",
    },
    0xF191: {
        "name": "VehicleManufacturerECUHardwareNumber",
        "full_name": "VehicleManufacturerECUHardwareNumber",
        "description": "ECU hardware number assigned by vehicle manufacturer.",
        "format": "ASCII string",
        "length_bytes": 0,
        "service": 0x22,
        "writable": False,
        "session_required": "default",
    },
    0xF192: {
        "name": "VehicleManufacturerECUHardwareVersionNumber",
        "full_name": "VehicleManufacturerECUHardwareVersionNumber",
        "description": "ECU hardware version number assigned by vehicle manufacturer.",
        "format": "ASCII string",
        "length_bytes": 0,
        "service": 0x22,
        "writable": False,
        "session_required": "default",
    },
    0xF193: {
        "name": "SystemSupplierECUHardwareNumber",
        "full_name": "SystemSupplierECUHardwareNumber",
        "description": "ECU hardware number assigned by system supplier.",
        "format": "ASCII string",
        "length_bytes": 0,
        "service": 0x22,
        "writable": False,
        "session_required": "default",
    },
    0xF194: {
        "name": "SystemSupplierECUHardwareVersionNumber",
        "full_name": "SystemSupplierECUHardwareVersionNumber",
        "description": "ECU hardware version number assigned by system supplier.",
        "format": "ASCII string",
        "length_bytes": 0,
        "service": 0x22,
        "writable": False,
        "session_required": "default",
    },
    0xF195: {
        "name": "SystemSupplierECUSoftwareNumber",
        "full_name": "SystemSupplierECUSoftwareNumber",
        "description": "ECU software number assigned by system supplier.",
        "format": "ASCII string",
        "length_bytes": 0,
        "service": 0x22,
        "writable": False,
        "session_required": "default",
    },
    0xF196: {
        "name": "SystemSupplierECUSoftwareVersionNumber",
        "full_name": "SystemSupplierECUSoftwareVersionNumber",
        "description": "ECU software version number assigned by system supplier.",
        "format": "ASCII string",
        "length_bytes": 0,
        "service": 0x22,
        "writable": False,
        "session_required": "default",
    },
    0xF197: {
        "name": "ExhaustRegulationOrTypeApprovalNumber",
        "full_name": "ExhaustRegulationOrTypeApprovalNumber",
        "description": "Type approval or exhaust regulation number.",
        "format": "ASCII string",
        "length_bytes": 0,
        "service": 0x22,
        "writable": False,
        "session_required": "default",
    },
    0xF198: {
        "name": "SystemNameOrEngineType",
        "full_name": "SystemNameOrEngineType",
        "description": "System name or engine type information.",
        "format": "ASCII string",
        "length_bytes": 0,
        "service": 0x22,
        "writable": False,
        "session_required": "default",
    },
    0xF199: {
        "name": "RepairShopCodeOrTesterSerialNumber",
        "full_name": "RepairShopCodeOrTesterSerialNumber",
        "description": "Repair shop code or tester serial number.",
        "format": "ASCII string",
        "length_bytes": 0,
        "service": 0x22,
        "writable": False,
        "session_required": "default",
    },
    0xF19A: {
        "name": "ProgrammingDate",
        "full_name": "ProgrammingDate",
        "description": "Date of last programming event.",
        "format": "YYYYMMDD",
        "length_bytes": 4,
        "service": 0x22,
        "writable": False,
        "session_required": "default",
    },
    0xF19B: {
        "name": "CalibrationDate",
        "full_name": "CalibrationDate",
        "description": "Date of last calibration.",
        "format": "YYYYMMDD",
        "length_bytes": 4,
        "service": 0x22,
        "writable": False,
        "session_required": "default",
    },
    0xF19C: {
        "name": "CalibrationEquipment",
        "full_name": "CalibrationEquipment",
        "description": "Identifier of calibration equipment.",
        "format": "ASCII string",
        "length_bytes": 0,
        "service": 0x22,
        "writable": False,
        "session_required": "default",
    },
    0xF19D: {
        "name": "CalibrationSoftwareIdentification",
        "full_name": "CalibrationSoftwareIdentification",
        "description": "Identification of calibration software.",
        "format": "ASCII string",
        "length_bytes": 0,
        "service": 0x22,
        "writable": False,
        "session_required": "default",
    },
    0xF19E: {
        "name": "CalibrationSoftwareVersionNumber",
        "full_name": "CalibrationSoftwareVersionNumber",
        "description": "Version number of calibration software.",
        "format": "ASCII string",
        "length_bytes": 0,
        "service": 0x22,
        "writable": False,
        "session_required": "default",
    },
    0xF19F: {
        "name": "ProgrammingStationIdentifier",
        "full_name": "ProgrammingStationIdentifier",
        "description": "Identifier of programming station.",
        "format": "ASCII string",
        "length_bytes": 0,
        "service": 0x22,
        "writable": False,
        "session_required": "default",
    },
}
