Bosch MS6
Applies to: IOcan · Standalone controller. What this means
You have a ZF 8HP or a Porsche PDK to run and a Bosch MS6 managing the engine. Read this one before you plan the loom: the MS6 preset is output-only, so it carries none of the mandatory inputs the gateway needs. Everything comes from device inputs, another preset, or hand-mapped CAN inputs.
This page covers the ECU side. The transmission side — which controller to add and which transmission preset to pair — is on the per-transmission pages (8HP · PDK).
Choosing between devices? Which device do I need? settles it in one question, and compares the IOcan CAN gateway with the standalone transmission controller.
Compatibility summary
| Preset name in the app | Bosch MS6 |
| Torque broadcast | Not applicable |
| Injector pulse width | No |
| Recommended torque method | Decided by wherever you source the signals, not by this preset |
The preset belongs to the shared CAN layer, so it behaves the same behind the IOcan gateway drivers and the standalone transmission drivers.
⚠️ This preset is output-only. The Bosch MS6 entity transmits transmission state to the ECU — current gear, cut and blip requests, and next-gear RPM — and reads no signals back.
Every mandatory engine input must therefore be sourced elsewhere: from another CAN preset on the same or another bus, from hand-mapped CAN inputs, or from physical inputs on the device.
Plan the signal sourcing before wiring. See the signal requirements matrix for the full mandatory set.
What this preset does not provide
The OEM gateways require seven mandatory inputs — eight on PDK. This preset does not carry the following, so they must be supplied from a device input, another CAN preset, or hand-mapped CAN inputs:
- Everything — this preset reads nothing from the ECU
A missing mandatory input raises fault 0x0001 and the driver will not run,
so resolve these at the wiring stage rather than during commissioning. The full
set is on the
signal requirements matrix.
Signals this preset does provide: —
Wiring
- One CAN bus between the ECU and the device.
- The bitrate must match on both ends.
- Termination: exactly two 120 Ω terminators, one at each physical end — the device's is software-switchable, so enable it only if the device sits at an end. See CAN Bus Diagnostics.
- Twisted pair, routed away from ignition and injector wiring.
Setup
- Enable the CAN stream output in the ECU's own software, and note its base ID or configured frame set.
- Add a CAN bus in the device configuration, at the matching bitrate.
- Add the Bosch MS6 preset to that bus. It will begin transmitting transmission state to the ECU.
- Source every mandatory input separately — see above. This is the whole job on this ECU, and it is worth doing before anything else.
- Choose a torque calculation method — see below.
- Set a Timeout and Timeout mode on every input feeding the torque
estimate.
UsePreviousholds a stale value forever and is the wrong choice on anything safety-relevant.
Torque signal setup and validation
Not applicable — this preset reads nothing from the ECU. Source a torque input or the signals a calculated method needs from elsewhere, then choose the method on that basis.
The full method reference, the correction maps and the all-or-nothing VE table warning are on Engine torque estimation.
Validate before driving. The torque value sets clutch pressure, nothing checks whether it is plausible, and under-reporting is the direction that slips and overheats clutches. On a gateway it also sets the depth of every shift cut, because the TCU's requested torque limit is rescaled against it.
Verification checklist
- [ ] RPM tracks the ECU's own RPM channel.
- [ ] TPS reads zero closed and full scale at wide-open throttle.
- [ ] MAP is plausible at idle and tracks load.
- [ ] Every signal from the "does not provide" list above is present and correct from its alternative source.
- [ ] Engine torque is present, changing, and passes the verification points.
- [ ] No mandatory-input faults are active.