Home › Engines › ME7.1 2.7T S4

Bosch ME7.1 on the B5 S4 2.7T biturbo

Bosch Motronic ME7.1 ("M-box"), 16-bit petrol engine management for the Audi 2.7T biturbo V6 (EA835 / AGB-AZB-APB), Audi B5 S4 and C5 A6/allroad. Speed-density + MAF torque-based ME architecture (throttle-by-wire, torque monitor).

Reference - updated 7 October 2026

The ECU hardware

Siemens/Infineon C167-family 16-bit MCU (the 8D unit is a C167CR-derived core). The program is NOT stored in on-chip flash. It lives in an EXTERNAL 8-Mbit (1 MB) parallel NOR flash chip (Am29F800/M29F800-class, e.g. 29F800 on a chip-select region) mapped into the C167 address space at 0x800000. That external mapping is exactly why factory DAMOS/A2L addresses equal file offset + 0x800000 (confirmed on a real file: KFMIRL $814BEE -> file 0x14BEE, KFMIOP $816186 -> 0x16186). Little-endian throughout (16-bit words, LE u16/u8 cells). Box codes: 8D0907551M ('M-box', Bosch 0261207143) and 8D0907551L (Bosch 0261207004) are both B5 S4 2.7T boxes. There are many suffix letters (A to T across the S4 and RS4), each tied to a market, gearbox and software version, so go by the label on your own box. Power: the US-market B5 S4 is rated 250 hp / 258 lb-ft (engine code APB); the European S4 is rated 265 PS (engine codes AGB/AZB).

Fuelling and load sensing

Petrol/gasoline. EU: 95-98 RON (Stage 1 wants 98 RON). US: 91-93 AKI premium (91 AKI approx 95 RON, 93 AKI approx 98 RON; the knock model compares a RON-equivalent). Do NOT run aggressive boost/Stage-1 timing on 91 AKI - pull 1-2 deg or drop boost. E85 (approx 105 RON-equiv, ~35% more fuel mass) is a Stage 2/3 option that raises knock margin but demands larger injectors + pump. Safety net a boost-only tune leans on = closed-loop knock control (dwkr / per-cylinder retard) + closed-loop lambda; both are active and must NOT be disabled.

How this ECU is read and flashed

READ: full 1 MB flash over OBD K-line (ISO14230/KWP2000). The M-box answers NO-ADDRESS ISO14230 framing (probe framing per-ECU - some 2.7T revs use physical addressing). Flash is read via programming/dev session (0x10 85) + seed/key (0x27) + requestUpload 0x35 / transferData 0x36 / requestTransferExit 0x37, banked per 64 KB. EEPROM/RAM read via dev session 0x10 86 + readMemoryByAddress 0x23 is immo-free; the flash-upload path uses the programming session. On the commonly immo-off US M-box no immo auth is needed to read; on matched/EU cars the programming session itself can be immo-gated. WRITE (OBD reflash): Galletto-class flashers work on this ECU - programming session (0x10 85), seed/key (0x27), erase (routineControl 0x31), requestDownload (0x34), transferData (0x36), exit (0x37); the write/dev session is immo-gated on matched cars. ALWAYS run an ME7-checksum pre-flight and protect the bootloader/bank0 region. BENCH/BOOT (recovery + RSA siblings): C167 boot-strap-loader (BSL) over K-line is immo-immune but needs ONE internal boot pin grounded (P0L.4 / flash pin ~24) - NOT a pure-cable operation; used to recover a bad flash or handle RSA-signed ME7.1.1 relatives. IMMO: US B5 S4 8D0907551M is commonly immo-off/'not provisioned' so flashing is straightforward; matched/EU cars need component security/SKC handled. A wrong-checksum flash sets P0601 and won't start; P0601 cannot be cleared from boot mode alone - it needs a checksum-correct file flashed via the normal VAG protocol.

Engine codes in this family

Staging - what each stage really gives

Safety limits

Every car using this platform (1)

Stock power and typical remap figures per car. Stage results assume a healthy engine on good fuel.

CarEngineEngine codeStockStage 1Flash access
Audi S4
B5 1997–2001
2.7L V6 30v biturbo petrol AGB / AZB265 hp≈310–330 hp / +90–100 Nm — remap (boosOBD KWP2000 flash (per-ECU header — 4Z=physical addressing);

How confident is this?

Well established: the 2.7T S4 ECU has a 1 MB full flash on an EXTERNAL NOR chip read by a C167 processor. It is little-endian, and factory DAMOS addresses equal file offset + 0x800000 (confirmed on a real file). The program is stored on this external NOR chip mapped at 0x800000, not in on-chip flash. The ME7 checksum layout, including the CRC-32 group, matches the open-source ME7Sum code (crc32.c uses poly 0xEDB88320; me7sum.c runs ROMSYS -> CRC/Main-Data -> Main-Program -> Multipoint and is RSA/MD5-aware for signed bins) and the published M-box function locations. 8D0907551M is NOT RSA-signed (ME7Check reports 'File is OK'). KFMIRL at 0x14BEE and the boost/wastegate-duty limiter at 0x19BED (u8, second row at 0x19C04, both set to 242 by GIAC) were confirmed by comparing stock against a real GIAC 'Stage 3-minus' read (0.668% / 7006 bytes differ). Two things are firm: the torque model must move in step with KFMIRL, and the OBD/boot-mode flashing and immobiliser boundaries hold. Uncertain or variable: (1) KFMIOP (0x16186), LDRXN (0x1DCF4), KRKTE (0x1C2BC), MLHFM (0x14254) and LAMFA (~0x1C370) are factory-DAMOS/XDF addresses that were NOT separately confirmed by the tune comparison.

VAGPULSE reads, backs up and writes this ECU over the K-line through the OBD port, from a Windows laptop. Diagnostics, fault codes, coding and Stage 1-3 maps are in the same app. It saves a backup every time it reads the ECU, and it corrects the checksum on the tunes it builds; write only tunes it built, because a map you edit by hand is not yet fully checksum-corrected. That covers the cars on this page that run a Bosch ME7; a car listed with another engine computer (FSI, MED, Simos or Motronic M3.8) is not written by VAGPULSE.

See VAGPULSE
All vehicles Guides VAGPULSE home

Don't want to build the map yourself?

Ready-made Stage 1–3 maps for your engine, built and checksum-validated by us, from $99. Plain .bin, no encryption and no lock-in: flash it with any tool that writes your ECU. VAGPULSE itself writes Bosch ME7 petrol ECUs only. Matched to your own ECU, so turnaround is usually 24–48 hours, no hardware to wait for.

We can also put a known-good factory calibration back on a module from $20, or tune a file you have already read yourself.

See files & tuning services