⚙ hardware · experimental · bench rig moving

FlyByWire.
Bin the throttle cable.

The Cerbera's throttle cable run is famously horrible — over the brake servo, around the steering column, through the bulkhead at an awkward angle. So I'm replacing the cable with a Raspberry Pi Pico, a stripped-down Bosch electronic throttle body, and closed-loop PID control. The ITBs stay; only the cable goes. Bench rig moving under PID control as of June 2026 — pedal in, throttle follows, closed-loop, safety latches working.

How it works

A modern DBW pedal in the cabin sends position to a Raspberry Pi Pico mounted under the dash. The Pico applies a throttle map curve to get a target, reads the throttle body's own position pot for feedback, runs a PID loop at 200 Hz, and tells an IBT-4 H-bridge how hard to drive the throttle body's motor at 1 kHz PWM. The throttle body's shaft is fitted with a small lever that pulls a short Bowden cable to the existing ITB linkage. The intake butterfly inside the housing carries on spinning uselessly. It doesn't care.

  • Raspberry Pi Pico (RP2040)
  • Bosch DV-E5 ETB (Vauxhall Z18XER)
  • Audi A4 B7 DBW pedal
  • IBT-4 H-bridge (opto-isolated)
  • Stuck-linkage detector
  • USB WebSerial tuner
   Audi pedal               Bosch ETB (no butterfly)
        │                          ▲
        │ 6 wires                  │ shaft → lever
        ▼                          │ → Bowden cable
   ┌─────────────┐                 │ → ITB linkage
   │ Pi Pico     │ IN1 / IN2       │
   │ dual-core   │ 1 kHz PWM       │
   │ PID + safety│ ──────▶ IBT-4   │
   └─────────────┘        opto-iso │
        ▲                  ▼       │
        │ USB-C       ┌─────┐      │
        ▼             │ DC  │──────┘
   Laptop tuner       │motor│
   (WebSerial)        └─────┘
                       SPRING ← always present
                       (the real master failsafe)
▼ Why bother

Cable's hated.
DBW's free upgrades.

The Cerbera throttle cable is the source of half the "sticky throttle" complaints on PistonHeads. Replacing it with wires turns out to unlock some genuinely useful side effects.

tidy

No more cable run

Six small signal wires through the bulkhead grommet replace a 6 mm Bowden cable that hated tight bends. Cleaner engine bay, no friction, no stretch over time.

free

Cruise control

Once the Pico knows where the throttle is and where the pedal is, holding a steady speed is just software. No extra hardware.

programmable

Throttle map curve

Drag points on a graph from a laptop to make the first 20% of pedal travel softer for traffic, then sharper at the top. Saves to flash.

safer

Anti-stall + rev limit

Blip the throttle if RPM falls off a cliff. Refuse to open it past X% if RPM is above Y. Both are 5 lines of firmware once the sensors are in.

▼ Safety design

Four layers, none in software.

The throttle is the one thing where "controller crashed" must equal "engine returns to idle." Every safety layer is hardware. The firmware just adds a fifth.

layer 1

Mechanical spring

Strong return spring on the ITB linkage. Default state = closed. If nothing pulls against it, the throttle is shut. Master failsafe.

layer 2

Driver coasts on idle

The IBT-4 H-bridge needs both inputs PWM-driven to push the motor. Both inputs low = coast. Lose power, lose signal, lose firmware — outputs float low, motor coasts, spring wins.

layer 3

Stuck-linkage detector

If the firmware is commanding >30% duty but the throttle position isn't moving within 500 ms, latch a fault and let the spring close everything. Catches seized cables, dead motors, stuck sensors. (Uncle Mark's suggestion.)

layer 4

Hardware watchdog + pedal cross-check

RP2040's built-in 100 ms watchdog: firmware hangs → chip resets → outputs float → spring closes throttle. Plus a software cross-check on the pedal's two redundant Hall sensors every PID tick — disagree by >5% and the throttle latches closed.

▼ What's built

Bench rig moving under PID.

Firmware + tuner running. Pedal wired and calibrated. Throttle body wired and calibrated. IBT-4 driving the motor closed-loop. The car doesn't get touched until every failure mode demonstrably closes the throttle on the bench.

firmware

Pico firmware

Arduino-pico + PlatformIO. Dual core: PID on core 0, safety + telemetry on core 1. Boot reason capture, latched faults, hardware watchdog, 200 Hz PID, 1 kHz PWM, USB CDC tuning protocol. Runtime-tunable safety thresholds. Saves calibration + map to flash via LittleFS with schema versioning.

tool

WebSerial tuner

Single-file HTML, no install. Four needle gauges for raw sensors, draggable 5-point throttle map editor, live capture buttons, simulate mode so you can poke at the UI with no Pico connected.

done

Bench rig ✓

Pedal wired (VAG workshop diagram pinout — not the obvious guess). ETB wired and proven on signal 1. IBT-4 wired and isolated. Motor moves under PID control from pedal input. Stuck-linkage detector caught a wiring mistake before the motor did anything bad.

next

Failsafe test pass + fab

Formal 10-point bench test: yank sensor wires mid-drive, force watchdog reset, brown-out the supply, simulate stuck throttle. Then shaft lever fabrication, 3D-printed enclosure, production loom with VWP cable, fit to car.

▼ Bill of materials

~£90 for the lot.

Most of the budget is donor parts from UK eBay breakers. The Pico and the IBT-4 are the only "new" parts in the bag.

ComponentRoleSource
Audi A4 B7 DBW pedal (Bosch dual Hall, 8E2721523J)Pedal position with built-in cross-check signalDonor
Vauxhall Z18XER throttle body (Bosch DV-E5)Motor + gearbox + 2-track position potDonor
Raspberry Pi Pico (RP2040)Controller + USB tuningNew
IBT-4 H-bridge (BTS7960 + EG3013S drivers)Opto-isolated H-bridge between Pico's 3.3 V logic and the throttle body's motor. Mark's pick over the Pololu G2 for current rating + input isolation.New
12 V → 5 V automotive DC-DC + TVS diodePower + load-dump protectionExisting stash
Strong return spring, brackets, cable glands, Deutsch DT connectors, project boxMechanical + wiringMix
▼ Disclaimer

This is experimental.

It is bench-rig stage. The car has not been driven on this. Even when it does drive, it's a one-off, in-development build. Read the safety design, understand the failure modes, do your own analysis.

Bin the throttle cable on YouTube.

Bench-rig validation, shaft-lever fabrication, install in the Cerbera, first drive — every milestone goes up as a video.

▶ Subscribe