The reason for measuring PW while varying lambda (aka AFR) gets back to the:
Megasquirt Fueling Equation
PW = REQ_FUEL * VE * MAP * E + accel + Injector_open_time
E is lumped enrichments (base value is 100%). We'll ignore it here since it can be kept constant during testing. accel is acceleration enrichment. We'll ignore it too.
The REQ_FUEL term includes the desired Fuel-to-Air ratio, 1/AFR. For example, enrichening the mixture, aka increasing desired fuel-to-air ratio, increases REQ_FUEL. We'll break out the AFR dependence and replace the REQ_FUEL term with BASE_FUEL/AFR.
Re-writing the equation, we get:
PW = BASE_FUEL/AFR * VE * MAP * 1 + Injector_open_time
Or:
Injector_open_time = PW - BASE_FUEL/AFR * VE * MAP
To keep the VE term roughly constant, we can take measurements at idle (or other low rpm) and tweak the desired AFR up and down, with EGO correction enabled so that the PW will adjust to give our desired AFR. I haven't worked out all the rest of this, but the intercept from plotting MAP/AFR versus PW gives the injector open time. Idle, or near idle, is used because it has the lowest fuel requirements and thus provides the most sensitivity to injector open time.
I haven't read up on the variations on this, but it seems like after doing an initial adjustment, that you could repeat it at a different battery voltage, such as all electricals on, or alternator disconnected, and figure out the deadtime voltage correction too.
-Bob