In converting my BMW M54 from the factory ECU to MS3, I have the luxury of being able to swap back and forth to see how the factory ECU behaves when I need to set Megasquirt parameters. Most are fairly straightforward, like fuel timing, cranking ignition advance and so on.
When it comes to cranking Pulsewidths, I found the results weren't as easy to translate. Attached is a composite picture of the prime and cranking pulsewidths over a span of 10 cranking revolutions. As the engine cranks the PW for cranking fuel decreases. This was consistent over a a great span of temperatures, the final cranking pulse is typically 25% less than the first one.
This makes sense to me because as the engine cranks the manifold pressure is drawn down and decreases from 100KPa; having a constant PW would effectively make the charge richer.
I would love to emulate the behavior of the stock ECU in that it
always starts on the first crank, the tapering PW may help.
My suggestion would be to allow cranking PW to decrease by XX% over 10 engine revolutions.

- composite picture showing prime and cranking PW for a single cranking event with fuel pump disabled
- OEM cranking fuel.jpg (66.72 KiB) Viewed 748 times
I logged the starting pulsewidths with the fuel pump disabled over a great range of termperatures. The graphical data look like this:

- Graph of OEM cranking PW for BMW M54 engine showing the PW for the first injection and last during single crank event. My req_fuel is 13.3 for 24lb injectors.
- cranking pulsewidths.jpg (43 KiB) Viewed 748 times