Engine profile

B48 / B46 (modular B-family).

Successor to the N20; the 2.0L turbo modular engine across the BMW range plus MINI Cooper S / JCW.

F/G-series 2.0L turbo I4, 2015+UDS over DoIP14/22 params verifiedIndependent profile

Overview

Successor to the N20; the 2.0L turbo modular engine across the BMW range plus MINI Cooper S / JCW.

Engine familyB48 / B46 (modular B-family)
EraF/G-series 2.0L turbo I4, 2015+
Diagnostic protocolUDS over DoIP
Verification63% of 22 params

Common models

F20/F22/F30/F32 x20i/x30i; G20 330i; G01 X3 xDrive30i; G02 X4 30i; F39 X2; F40 128ti; MINI Cooper S / JCW.

Supported live-data parameters

Beemuu’s B48 profile reads 22 parameters from the engine control module. 14 are marked verified — sourced from the OBDb DID database and confirmed against the project’s own OBDb-verified community data set. The remaining parameters are seeded from standard OBD-II PIDs or marked as BMW-specific but pending real-car verification.

Each parameter has a query path (either an OBD-II PID like obd:0C or a BMW-specific identifier) and a decoder (how raw bytes are converted to engineering units). The full schema is documented in docs/DECODE_FUNCTIONS.md.

Parameter IDLabelUnitQuery pathDecoderStatus
rpmEngine speedrpmobd:0Cu16_quarter✓ verified
coolantCoolant temp°Cobd:05temp_u8✓ verified
iatIntake air temp (post-IC)°Cobd:0Ftemp_u8✓ verified
mapManifold pressure (abs)kPaobd:0Bu8✓ verified
baroBarometric pressurekPaobd:33u8✓ verified
loadEngine load%obd:04percent_a✓ verified
throttleThrottle position%obd:11percent_a✓ verified
speedVehicle speedkm/hobd:0Du8✓ verified
voltModule voltageVobd:42u16_milli✓ verified
ambientAmbient temp°Cobd:46temp_u8✓ verified
battery_vBattery voltage (DME) [needs verification]Vdid:4002u16_tenths⚠ unverified
hpfp_railHPFP rail pressure [needs verification]MPadid:44F0u16_tenths⚠ unverified
boost_cmdBoost command (relative) [needs verification]kPadid:4367u16_tenths⚠ unverified
mafMass air flow [needs verification]kg/hdid:4077u16_div100⚠ unverified
ambient_presAmbient pressure (DME) [needs verification]kPadid:4003u16_div100⚠ unverified
dme_tempDME temperature (signed, 0.25C resolution) [needs verification]Cdid:4001s16_div4⚠ unverified
eng_torqueEngine torque (signed) [needs verification]Nmdid:4500s16_div100⚠ unverified
lambda_1Lambda bank 1 [needs verification]did:400Bu8_div100⚠ unverified
inj_timeInjection time (per cylinder) [needs verification, UDS only]msdid:4363u8_div100✓ verified
gearGear position (EGS) [needs verification, UDS only]did:DA0Au8_enum✓ verified
engine_stateEngine state (DME) [needs verification, UDS only]did:4004u8_enum✓ verified
knock_detectKnock detection (DME) [needs verification, UDS only]did:401Fu8_enum✓ verified

Common B48 faults worth scanning for

B48 inherits the B48/B46 timing-chain wear concern; valve-cover oil-seal failures on early production; high-pressure fuel-pump issues on early B46 SULEV variants.

For BMW-specific fault codes that come up on the B48, see the DTC index — particularly the fuel-pressure, VANOS and boost-pressure families. The project’s community opinions have per-code repair paths contributed by owners and indie technicians.

B48 questions

What is the B48 engine?

Successor to the N20; the 2.0L turbo modular engine across the BMW range plus MINI Cooper S / JCW.

How do I connect Beemuu to a B48 car?

UDS over DoIP is the standard. E-series B48 uses KWP2000 over K+DCAN; F/G-series B48 uses UDS over DoIP via an ENET cable.

What live-data parameters does Beemuu read?

22 parameters; 14 verified, the rest seeded and pending real-car validation.

What should I check first?

B48 inherits the B48/B46 timing-chain wear concern; valve-cover oil-seal failures on early production; high-pressure fuel-pump issues on early B46 SULEV variants.

Read the engine in front of you.

Beemuu reads the B48 over K+DCAN or ENET/DoIP and renders live data the way the engine actually behaves.

Download BeemuuAll engines

Last updated: 2026-08-02 · Beemuu contributors