{
  "node": {
    "id": "term:uds",
    "type": "Term",
    "label": "Unified diagnostic services",
    "properties": {
      "id": "uds",
      "name": "Unified diagnostic services",
      "abbr": "UDS",
      "aka": [
        "ISO 14229"
      ],
      "section": "topic-data",
      "definition": "The standard diagnostic protocol of vehicle controllers, ISO 14229: services to read data and fault codes, run routines, change sessions and flash firmware. A service tool talks UDS to the BMU over CAN to read cell data, clear faults or update software.",
      "related": [
        "dtc",
        "flashing",
        "can-bus",
        "odx",
        "ecu"
      ],
      "url": "https://lemonergy.com/learn/glossary/uds/",
      "mentions": [
        "bmu",
        "firmware"
      ]
    }
  },
  "edges": [
    {
      "id": "edge:4121",
      "source": "term:uds",
      "target": "topic:topic-data",
      "type": "belongsTo",
      "properties": {
        "sourceFile": "terms.json"
      }
    },
    {
      "id": "edge:4122",
      "source": "term:uds",
      "target": "term:dtc",
      "type": "relatedTo",
      "properties": {
        "sourceFile": "terms.json",
        "meaning": "Related context; not a causal claim"
      }
    },
    {
      "id": "edge:4123",
      "source": "term:uds",
      "target": "term:flashing",
      "type": "relatedTo",
      "properties": {
        "sourceFile": "terms.json",
        "meaning": "Related context; not a causal claim"
      }
    },
    {
      "id": "edge:4124",
      "source": "term:uds",
      "target": "term:can-bus",
      "type": "relatedTo",
      "properties": {
        "sourceFile": "terms.json",
        "meaning": "Related context; not a causal claim"
      }
    },
    {
      "id": "edge:4125",
      "source": "term:uds",
      "target": "term:odx",
      "type": "relatedTo",
      "properties": {
        "sourceFile": "terms.json",
        "meaning": "Related context; not a causal claim"
      }
    },
    {
      "id": "edge:4126",
      "source": "term:uds",
      "target": "term:ecu",
      "type": "relatedTo",
      "properties": {
        "sourceFile": "terms.json",
        "meaning": "Related context; not a causal claim"
      }
    },
    {
      "id": "edge:mentions/uds/bmu",
      "source": "term:uds",
      "target": "term:bmu",
      "type": "mentions",
      "properties": {
        "sourceFile": "terms.json",
        "method": "build_glossary.mention_index + mentions",
        "field": "definition",
        "meaning": "Text mention; not a causal claim"
      }
    },
    {
      "id": "edge:mentions/uds/firmware",
      "source": "term:uds",
      "target": "term:firmware",
      "type": "mentions",
      "properties": {
        "sourceFile": "terms.json",
        "method": "build_glossary.mention_index + mentions",
        "field": "definition",
        "meaning": "Text mention; not a causal claim"
      }
    }
  ],
  "neighbors": [
    {
      "id": "topic:topic-data",
      "type": "Topic",
      "label": "Data, communication and electronics",
      "properties": {
        "id": "topic-data",
        "name": "Data, communication and electronics",
        "lede": "The control units, chips, protocols and file formats through which a battery is measured, controlled and logged.",
        "context": "Separate quantities from encoding and transport.",
        "example": "2500 in a log might mean 25.00 °C, 2.5 V or raw counts. Units and scale must accompany the value.",
        "lesson_url": "https://lemonergy.com/learn/fundamentals/battery-basics/",
        "lesson_label": "Open battery basics"
      }
    },
    {
      "id": "term:dtc",
      "type": "Term",
      "label": "Diagnostic trouble code",
      "properties": {
        "id": "dtc",
        "name": "Diagnostic trouble code",
        "abbr": "DTC",
        "aka": [
          "fault code"
        ],
        "section": "topic-data",
        "definition": "A coded fault a controller stores when a check fails — a cell overvoltage, a sensor out of range, an isolation fault — with a status and often a snapshot of conditions when it occurred. Reading and interpreting DTCs is the first step of any battery root-cause analysis.",
        "related": [
          "uds",
          "bmu",
          "insulation-resistance",
          "freeze-frame"
        ],
        "url": "https://lemonergy.com/learn/glossary/dtc/",
        "mentions": [
          "insulation-fault"
        ]
      }
    },
    {
      "id": "term:flashing",
      "type": "Term",
      "label": "Flashing",
      "properties": {
        "id": "flashing",
        "name": "Flashing",
        "aka": [
          "reprogramming",
          "ECU flashing",
          "bootloader"
        ],
        "section": "topic-data",
        "definition": "Writing new firmware into a controller’s flash memory, normally through a bootloader that receives the image over CAN with UDS services. Image files come as Intel HEX, Motorola S-record or binary, often signed so the controller refuses unauthorised code.",
        "related": [
          "firmware",
          "uds",
          "hex-file",
          "can-bus"
        ],
        "url": "https://lemonergy.com/learn/glossary/flashing/",
        "mentions": []
      }
    },
    {
      "id": "term:can-bus",
      "type": "Term",
      "label": "CAN bus",
      "properties": {
        "id": "can-bus",
        "name": "CAN bus",
        "aka": [
          "Controller Area Network",
          "ISO 11898"
        ],
        "section": "topic-pack",
        "definition": "The serial network over which a BMS talks to the vehicle or inverter: a two-wire differential bus, defined in ISO 11898, carrying short prioritised messages at up to 1 Mbit/s, or faster with CAN FD. Every node hears every message, and a dominant bit wins arbitration without any collision.",
        "related": [
          "can-high-low",
          "can-fd",
          "termination-resistor",
          "bms",
          "lin-bus",
          "fms-interface"
        ],
        "url": "https://lemonergy.com/learn/glossary/can-bus/",
        "mentions": [
          "inverter"
        ]
      }
    },
    {
      "id": "term:odx",
      "type": "Term",
      "label": "ODX and PDX",
      "properties": {
        "id": "odx",
        "name": "ODX and PDX",
        "abbr": ".odx, .pdx",
        "aka": [
          "ASAM MCD-2 D",
          "CDD"
        ],
        "section": "topic-data",
        "definition": "The ASAM format that describes a controller’s diagnostics — its UDS services, data identifiers and trouble codes — so a diagnostic tester can talk to it; PDX is the packaged form. Vector’s CDD files play the same role in many supplier projects.",
        "related": [
          "uds",
          "dtc",
          "ecu"
        ],
        "url": "https://lemonergy.com/learn/glossary/odx/",
        "mentions": []
      }
    },
    {
      "id": "term:ecu",
      "type": "Term",
      "label": "Electronic control unit",
      "properties": {
        "id": "ecu",
        "name": "Electronic control unit",
        "abbr": "ECU",
        "section": "topic-data",
        "definition": "The general name for any controller on a vehicle network — BMU, VCU, CCU and motor controller are all ECUs. Each has its own address, firmware, diagnostic services and calibration data.",
        "related": [
          "bmu",
          "vcu",
          "ccu",
          "uds",
          "can-bus"
        ],
        "url": "https://lemonergy.com/learn/glossary/ecu/",
        "mentions": [
          "firmware"
        ]
      }
    },
    {
      "id": "term:bmu",
      "type": "Term",
      "label": "Battery management unit",
      "properties": {
        "id": "bmu",
        "name": "Battery management unit",
        "abbr": "BMU",
        "aka": [
          "BMS master",
          "master BMS"
        ],
        "section": "topic-data",
        "definition": "The master controller of a battery management system: it collects cell voltages and temperatures from the monitoring boards, runs the state estimation and protection logic, drives the contactors and talks to the vehicle. In some architectures the same name is used for a per-module slave, so a datasheet’s block diagram is the safe reference.",
        "related": [
          "bms",
          "cell-supervision-circuit",
          "bcu",
          "contactor",
          "can-bus",
          "bms-power-modes"
        ],
        "url": "https://lemonergy.com/learn/glossary/bmu/",
        "mentions": [
          "datasheet"
        ]
      }
    },
    {
      "id": "term:firmware",
      "type": "Term",
      "label": "Firmware",
      "properties": {
        "id": "firmware",
        "name": "Firmware",
        "aka": [
          "embedded software",
          "BMS software"
        ],
        "section": "topic-data",
        "definition": "The software that runs on a BMS or charger controller. Its version decides how SOC, limits and faults behave, so it is tracked like a part number, updated by flashing over CAN or over the air, and recorded in the battery passport.",
        "related": [
          "mcu",
          "flashing",
          "bmu",
          "battery-passport",
          "functional-safety"
        ],
        "url": "https://lemonergy.com/learn/glossary/firmware/",
        "mentions": [
          "charger",
          "state-of-charge",
          "bms",
          "over-the-air-update"
        ]
      }
    }
  ]
}
