You know that button on the console, the one that firms the car up? This post is the plan for finding out what it really does. The canonical version I work from, not a cleaned-up retrospective.
I register predictions here before any data exists. When the data disagrees with one, the original prediction stays in the post. When the plan changes, I update it in place and add a dated line to the history at the bottom, so the old scope remains visible.
The plan has changed. The first version had more devices, more phases, and about seven more weeks. Reality cut it down once, and a hard look at what had actually been done cut it down again. The history says how.
The car, and why it's a good subject
The test vehicle is a 95B-generation Porsche Macan S. PASM adaptive dampers on steel springs, Sport Chrono, and Pirelli Scorpion Verde All Season tires, staggered: 265/45 R20 front at a placard 37 psi cold, 295/40 R20 rear at 40. Summer cold readings sit about 1 psi over placard, so every session starts the same way: set placard cold pressures, write them down, log the hots after.
That PASM button is a production calibration A/B test sitting right there on the console. Somewhere, a ride-and-handling team tuned Normal and Sport as two deliberate points in the comfort-versus-control trade, signed them off, and shipped them in every car. I can't see their damper maps. But I can measure what changes from the driver's seat, then decide whether the trade makes sense. That's the calibration problem I want to practice, scaled down to one owner, one car, and a few hundred dollars of instruments.
The sequence is simple: feel it, measure it, model it, tune it. Every part of the plan belongs to one of those steps.
Why these phases
A ride-and-handling team moves between four kinds of work. It tunes passive hardware: springs, bars, bushings, dampers, tires. It calibrates active systems on top: adaptive damping, air springs, steering assist. It tests subjectively and objectively, translating feel into engineering direction. And it keeps simulation tied to the real car with correlation data.
I want to practice translating a driving sensation into a number and back.
This plan covers three of the four and parks one:
- Active systems calibration. The PASM study measures a production active-damping calibration from the outside. Then the final phase re-derives one: semi-active strategies tuned on a model identified from this exact car, judged against the factory modes.
- Testing and evaluation. Blind rating sheets against instrumented metrics. The finished table pairs each subjective claim with the metric that should move with it.
- Virtual integration. The quarter-car gets fitted to measured data before I trust it for calibration work. Physical testing refines the model, and only then can the model steer more physical testing.
- Passive hardware tuning. Parked. The one passive variable an owner can change for free is tire pressure, and a pressure experiment (predict, change, measure, confirm from the seat) is a further-study idea only. It is not scheduled, and nothing in this plan depends on it.
I'm using the same sequence as production chassis development, scaled to one owner, one car, and one autocross day.
Instruments: two boxes, both standalone, no phone
- RaceBox Mini S (25 Hz GNSS + gyro, logs to itself) owns position, speed, path curvature, and yaw rate. It rides where it can see sky, which in practice means the roof. A road car's yaw dynamics live below roughly 5 Hz, so 25 Hz covers the handling program comfortably.
- A ~30 g AHRS IMU logging 200 Hz to its own onboard storage (WitMotion WT901SDCL-BT50) owns ride. Two details decide whether that channel is useful. Bandwidth first: secondary ride, the busy patter that dominates how firm a car feels, lives at roughly 4 to 25 Hz, and a 25 Hz logger sees only up to Hz. It physically can't see the top of that band, no matter how good it is. Mounting second: the sensor has to follow the structure, and mount resonance scales with stiffness over mass. A phone is too heavy to ever sit rigidly in a car you won't modify. But a tiny IMU on a few square centimeters of stiff VHB tape resonates far above the measurement band. That's why real accelerometers are small. The IMU comes out after every session, no phone rides in the car, and data offloads at a desk.
- Steering angle has no sensor, and the protocol never needs one. Tape index marks on the wheel exist so a fixed steer angle can be held repeatably against a reference. Nothing more.
- Clock sync: two independent loggers means two drifting clocks, so recordings get aligned in post by cross-correlating their acceleration envelopes. The driving itself is the sync signal.
Everything is non-invasive. Tape, a grippy pad, nothing the car notices. One trust rule: each logger's true sample rate gets read off its own files before any spectrum gets believed, because a spec sheet tells you what a sensor writes, not what it measures. The first data day proved the point. The IMU writes 200 frames a second and produces about 104 new accelerometer values in them, so the ingest drops the duplicates first. That's in the Storm Stadium entry, with the numbers.
The campaign: one autocross day
The field campaign is one autocross day, deliberately. Analysis and modeling are desk work. Only that one day needed the car moving on a schedule, and it has happened: SCCA Cal Club at Storm Stadium, Lake Elsinore, 2026-08-15, entry in B Street. Six timed runs in the afternoon session, alternating PASM Normal and Sport+ every run, both loggers aboard, cold pressures set to placard 37/40 before the first run. The damper button was the only thing I touched all afternoon.
Those runs give me per-mode transients, slalom sections, roll behavior, and the first real test of the registered predictions. They can't give me anything quasi-steady, because an autocross never holds a state long enough. Nothing else is scheduled. If the car goes to another event, that's more data, not a new plan.
The ratings. After every block, the plan calls for a structured sheet: steering (on-center, effort build, response), ride (primary, secondary, impact, float), handling (balance, body control). I fill it out before looking at any data, then open the plots. The resulting table pairs every subjective claim with the metric that should move with it and records where they disagree. Day one's sheets didn't get filled per run. That's the first thing to fix, not a footnote. An on-center weave test is out of scope rather than done badly because it genuinely wants a steering channel. On-center feel stays in the subjective sheets, where it doesn't have to pretend to be a number.
Further study: controlled inputs, only once a venue exists
The tests in this section are designed, not scheduled. None of them runs until a proper venue exists: open lot space or a quiet closed course where a fixed speed and a fixed wheel angle can be held on purpose. Right now there is nowhere to do that, so these tests remain further study.
Handling, controlled inputs. Kept in the linear range, roughly 0.6 g and under, which an all-season-shod SUV reaches with dignity intact:
Understeer gradient, constant-steer spirals. My favorite piece of the design needs no steering sensor at all. In the linear range, the steer angle splits into a geometric term and a grip term,
where is steer angle, is wheelbase, is path curvature, is the understeer gradient, and is lateral acceleration. Hold the wheel fixed on a tape mark and ramp speed slowly, so is constant but unknown. Rearrange:
Plot against from the GPS and the unknown steer angle becomes the intercept, which means the slope is . The missing steering measurement drops out. Three ramps each direction, required to agree. Repetition is the cross-check, shaped after the intent of ISO 4138 without claiming compliance.
Step-steer transients, per PASM mode. Five each in Normal and Sport, scored on yaw-rate rise time, overshoot, and settling from the gyro. Registered prediction: the steady-state gradient will barely move between modes, because that number belongs to the tires and geometry. The mode differences will show up here, in the transients.
Ride, controlled inputs. Per PASM mode, three passes over one speed bump at a fixed marked speed, plus two speed-matched passes over a rough repeatable surface. From that come power spectral densities, comfort-weighted RMS in the style of ISO 2631, and a primary/secondary split (0.5 to 4 Hz body motion against 4 to 25 Hz harshness, because "Sport is firmer" is not a finding but where it's firmer is). The bump decay, via log decrement, yields an effective heave damping ratio per PASM mode. That ratio is the single number I want most. My registered guess: Normal and Sport sit further apart in damping ratio than in ride RMS. I'm happy to be wrong about that in public.
Tires, idea only. A front-axle pressure change to move balance (placard 37/40 against 41/40), spirals repeated per configuration, gradient measured per configuration, pressures back to placard before the drive home. Filed here as a further-study idea. It is not part of the plan.
Then: fit the model, re-derive the calibration
This phase waits on the ride data above, so it waits on the venue. When it comes, controlled-input spectra and bump decays feed a grey-box quarter-car fit per PASM mode. Assumptions disclosed up front: corner mass estimated from published curb weight and distribution, tire vertical rate estimated from pressure. And the big one: PASM is continuously variable and nonlinear, so what the fit recovers is an equivalent linear damping per mode. A summary of behavior, not a copy of the real valve map. That limitation stays attached to the fit.
On the identified model, I'll implement the classic semi-active strategies (skyhook, groundhook, acceleration-driven damping, clipped-optimal), excited by standard ISO 8608 road-class profiles plus a measured bump geometry. The output is one figure: comfort (weighted RMS) against tire-load variation, with Porsche's Normal and Sport plotted as two fixed points and the semi-active frontier drawn through the same axes. That figure will show how much of the gap between two fixed calibrations the switching logic buys.
What ships
Results land as two posts. The field report is already up: the Storm Stadium entry, six runs, two damper maps, and the three ways the data caught me being wrong. The model-and-control study follows when the controlled-input data exists. Raw run folders and the analysis pipeline don't wait for the write-ups, though. They go public as they land, in the vd-macan repository, so every number in these posts can be regenerated from the raw logs. The car also becomes the first entry in a set of structured driving notes, with spectra beside the impressions.
Predictions stay fixed once data collection starts. Claims are scoped to what the instrument can support. Maneuvers happen on closed courses only. Cold pressures are set and logged every session. And when a result embarrasses a prediction, the prediction stays in the text.
Plan history
- 2026-08-05, v1. Original plan: phone as ride sensor, three articles, ~10 weeks.
- 2026-08-05, kit reality. Rigid phone mounting isn't possible in this car, so ride sensing moved to a small taped AHRS IMU (mount resonance scales with stiffness over mass, and small wins). Steering-channel tests cut rather than done badly. A VBox was considered and rejected: the affordable tier is the same 25 Hz class as the RaceBox with no ride channel, and the tier that would matter is five figures.
- 2026-08-05, kit simplified. Phone retired from the project entirely; both loggers standalone. Single-channel ride scope by choice. A second IMU, an OBD steering feed, and heave-pitch analysis wait behind explicit triggers. An instrument has to earn its way into the car by a question demanding it.
- 2026-08-05, campaign compressed. All field work fits one autocross day plus short controlled-input measurements (later unscheduled, see 2026-08-16), timeline ~3 weeks. Entry accepted in B Street, SCCA Cal Club, Storm Stadium, Lake Elsinore.
- 2026-08-14, gear landed, configured. The AHRS IMU arrived (the Bluetooth-5, internal-storage WitMotion variant). Config locked from the official protocol docs: 200 Hz to onboard storage with the filter bandwidth raised to 98 Hz, because the firmware quietly pads duplicate samples whenever output rate outruns bandwidth and the factory 20 Hz default would have made "200 Hz" a fiction. Six-axis fusion (a car is a rolling magnetic disturbance; GPS owns absolute heading), accelerometer leveled, onboard clock set. The RaceBox landed the same evening, configured. Full kit in hand with a day to spare.
- 2026-08-16, ride block unscheduled. There was never anywhere to run it, and the plan now says so instead of pretending otherwise. The controlled-input ride design (bump decays, rough-surface passes, the heave damping-ratio number) moves behind a venue trigger: it runs when lot space or a quiet closed venue exists. The damping-ratio prediction stays registered. Day-one autocross data is in; see the Storm Stadium entry on the log.