Reference
ECU reference
The 49-module CMA catalogue: addresses, codes, names and DTC support.
A car has many control units. Some manage the battery or brakes; others handle climate control, lights or doors. Hanterill checks which ones respond when you connect. This guide explains what the units do and why one may be absent from a scan. The catalogue below names the control units Hanterill knows about on CMA cars. A listed unit is not necessarily fitted to every car.
How the module registry works#
The CMA module registry contains 49 control unit definitions:
- 44 modules have been observed and verified on live battery-electric vehicles.
- 40 modules support fault-code reporting.
- 5 modules (
refentries) represent combustion, hybrid, all-wheel-drive couplings, or air-suspension controllers that are only fitted on specific powertrains or trim levels. On a pure battery-electric car without air suspension, those five modules stay quiet, and Hanterill records their silence as expected rather than flagging a fault.
Every control unit has a unique network address on the vehicle network. You can think of this address like an office phone extension inside the car: one extension always rings the battery management unit, another always rings the climate controller, and another always rings the driver's door module. Hanterill sends its request to a specific extension, and that module answers directly.
Gateway modules#
Two modules sit between your laptop and the rest of the vehicle. The Vehicle Gateway Module (VGM) acts as the network router and firewall behind the diagnostic port, and the Central Electronic Module (CEM) acts as the main body computer and security coordinator.
| Code | DoIP address | Name | Part number | Domain | UDS | DTCs |
|---|---|---|---|---|---|---|
| VGM | 0x1002 | Vehicle Gateway Module | 36003604 | Gateway | yes | yes |
| CEM | 0x1A01 | Central Electronic Module | 32320214 | Gateway | yes | yes |
Reading identification data, sensor values, and fault codes through the gateway works in read-only mode without unlocking any security levels.
Energy and propulsion modules#
This group covers the high-voltage battery and electric drive system. The Battery Energy Control Module (BECM) monitors the high-voltage pack and individual cell voltages, the Vehicle Computational Unit (VCU) coordinates driver torque requests and driving modes, and the front and rear inverters (yarns/drive control modules) convert DC battery power into AC power for the electric motors and capture regenerative braking energy.
| Code | DoIP address | Name | Part number | Domain | UDS | DTCs |
|---|---|---|---|---|---|---|
| VCU1 | 0x1602 | Vehicle Control Unit 1 | 32350312 | Energy | yes | yes |
| BECM | 0x1635 | Battery Energy Control Module | 32290432 | Energy | yes | yes |
| BMS | 0x1B61 | Battery Monitoring Sensor | not listed | Energy | yes | no |
| OBC | 0x1634 | On-Board Charger | 36003389 | Energy | yes | yes |
| IHFA | 0x1692 | Inverter High Voltage Front Axle | not listed | Energy | yes | yes |
| IEM | 0x1637 | Inverter ERAD Module | not listed | Energy | yes | yes |
| ECM | 0x1630 | Engine Control Module | not listed | Energy | yes | yes |
| TCMref | 0x1632 | Transmission Control Module | not listed | Energy | yes | yes |
| DEMref | 0x1638 | Differential Electronic Module | not listed | Energy | yes | yes |
| MVBMref | 0x1652 | Mid Voltage Battery Monitor | not listed | Energy | yes | yes |
| NRCMref | 0x163D | Nox Reducing Control Module | not listed | Energy | yes | yes |
Why ECM is listed under electric propulsion on CMA BEVs
On battery-electric CMA cars, the module labeled ECM answers on the live vehicle as part of the electric drive and inverter control group rather than a combustion engine controller. Hanterill labels each module according to what actually answers on the car.
Chassis and driver assistance#
Steering, braking, stability control, wheel angle sensors, and the cameras and radars that watch the road ahead and around the vehicle.
| Code | DoIP address | Name | Part number | Domain | UDS | DTCs |
|---|---|---|---|---|---|---|
| BCM2 | 0x16A1 | Brake Control Module 2 | not listed | Chassis | yes | yes |
| PSCM | 0x1612 | Power Steering Control Module | not listed | Chassis | yes | yes |
| SAS | 0x1616 | Steering Angle Sensor | not listed | Chassis | yes | yes |
| SCL | 0x1615 | Steering Column Lock | 32246209 | Chassis | yes | yes |
| SUMref | 0x1614 | Suspension Module | not listed | Chassis | yes | yes |
| EGSM | 0x1633 | Electric Gear Selector Module | 31492589 | Chassis | yes | yes |
| IMS | 0x1B52 | Inertial Measurement Sensor | not listed | Chassis | yes | no |
| ASDM | 0x1401 | Active Safety Domain Master | not listed | Chassis | yes | yes |
| FLC2 | 0x1421 | Forward Looking Camera 2 | not listed | Chassis | yes | yes |
| FLR | 0x1451 | Forward Looking Radar | not listed | Chassis | yes | yes |
| WAM | 0x1431 | Wide-Angle Module | not listed | Chassis | yes | yes |
| PAC | 0x1221 | Park Assist Camera | not listed | Chassis | yes | yes |
| SODL | 0x1432 | Side Obstacle Detection Left | not listed | Chassis | yes | yes |
| SODR | 0x1433 | Side Obstacle Detection Right | not listed | Chassis | yes | yes |
Cabin, body, and infotainment#
Displays, doors, seats, climate control, exterior lighting, airbags, telematics, and the keyless entry radio modules.
| Code | DoIP address | Name | Part number | Domain | UDS | DTCs |
|---|---|---|---|---|---|---|
| DIM | 0x1801 | Driver Information Module | 36003414 | Cabin | yes | yes |
| CCM | 0x1A11 | Climate Control Module | not listed | Cabin | yes | yes |
| TCAM | 0x1021 | Telematics Connectivity Antenna Module | 36003394 | Cabin | yes | yes |
| SRS | 0x1C01 | Supplemental Restraint System | not listed | Cabin | yes | yes |
| IHU | 0x1201 | Infotainment Head Unit | 36012873 | Cabin | yes | yes |
| CSD | 0x1241 | Center Screen Display | not listed | Cabin | yes | yes |
| AUD | 0x1212 | Audio Module | 32265526 | Cabin | yes | yes |
| SWM | 0x1B91 | Steering Wheel Module | 31674383 | Cabin | yes | no |
| DDM | 0x1A12 | Driver Door Module | not listed | Cabin | yes | yes |
| PDM | 0x1A13 | Passenger Door Module | not listed | Cabin | yes | yes |
| POT | 0x1A15 | Power Operated Tailgate | not listed | Cabin | yes | yes |
| RML | 0x1416 | Rear Module Left | not listed | Cabin | yes | yes |
| RMR | 0x1417 | Rear Module Right | not listed | Cabin | yes | yes |
| HCML | 0x1BB3 | Headlight Control Module Left | not listed | Cabin | yes | yes |
| HCMR | 0x1BB4 | Headlight Control Module Right | not listed | Cabin | yes | yes |
| PXMR | 0x1BBA | Pixel Module Right | not listed | Cabin | yes | no |
| PXML | 0x1BBC | Pixel Module Left | not listed | Cabin | yes | no |
| OHC | 0x1B22 | Overhead Console | not listed | Cabin | yes | no |
| PAKM | 0x1B31 | Phone-As-Key Module | not listed | Cabin | yes | no |
| WPC | 0x1B41 | Wireless Phone Charger | not listed | Cabin | yes | no |
| BBS | 0x1B51 | Battery Backed-up Sounder | not listed | Cabin | yes | no |
| ESM | 0x163A | Exterior Sound Module | not listed | Cabin | yes | yes |
How Hanterill communicates with each module#
During a normal scan, Hanterill uses four standard diagnostic requests:
- Read data values
- Asks a module for a specific piece of information, such as its VIN, software version, or a live sensor reading.
- Read fault codes
- Asks a module for its stored, pending, or permanent Diagnostic Trouble Codes (DTCs) and their status.
- Open diagnostic session
- Places a module into its standard or extended diagnostic mode so its full set of sensors and identification records can be read.
- Keep-alive heartbeat
- Sends a quiet periodic pulse while a scan is actively running so modules do not go back to sleep mid-read.
From every module that answers, Hanterill reads a standard set of identity records:
- Vehicle Identification Number (VIN)
- Confirms the module belongs to the connected car and checks for mismatched replacement parts.
- ECU serial number
- Identifies the physical circuit board installed in the vehicle.
- Hardware part and version
- Shows the physical hardware revision reported by the supplier.
- Software number and version
- Shows the exact firmware currently running on the module.
Hanterill collects identity records from the modules that answer. The resulting inventory shows which hardware and software versions were read, and Firmware & Inventory can compare those records between visits. Check coverage before treating a missing module as removed.
Tools inside the ECU Registry screen#
When you select an individual module in the ECUs screen inside the app, you can:
- Inspect identity and fault counts: See the module's full name, network domain, answered software/hardware versions, and current fault count.
- Check security lock status (read-only): Query whether the module's protected maintenance levels are currently locked or unlocked without attempting to unlock them or changing anything on the car.
- Reset a single module: Send a targeted module restart command when you need to reboot one specific control unit after troubleshooting, behind an explicit confirmation dialog.
Modules with named readout groups show them on their detail page and in Module data. That includes the battery, gateway, display, climate, charger, engine and drive units. The Gateway screen shows security and diagnostic-access events, network and Ethernet histories, and resets with an odometer reading and reason where the car recorded them. Review the dates and coverage before drawing conclusions about a car's past.
Separate registries for SPA and SEA1#
The table above shows the 49-module CMA registry. SPA (41 catalogued modules) and SEA1 (25 catalogued modules) each maintain their own independent module registries. Hanterill never assumes a module address from one platform applies to another: each platform uses its own verified address map.
Why some modules stay silent#
Not every module in the catalogue is fitted to every car:
- No fault-code storage: Nine entries in the CMA catalogue answer identification reads normally but do not store fault codes of their own (
DTCs: no). Hanterill skips them during fault scans rather than reporting an error. - Optional equipment: Modules for air suspension, rear seat heating, a towbar, or a head-up display only answer on cars built with those options.
A silent module is not necessarily broken
When a module does not answer, it may simply not be fitted to your car's trim level, or it may be asleep because the car is not in active ignition mode. Hanterill reports "did not answer" so you can distinguish an absent option from an actual communication fault.