Thanks Yoshi, that's a tricky pattern.
Sorry eco, didn't notice the link the first time:
http://autospeed.com/cms/A_109357/article.html
"Pre-injection is designed to reduce combustion noise, and involves the injecting of a very small quantity of fuel (less than 1 milligram) prior to the main injection. This early injection allows the gradual increase in the temperature of the combustion chamber, slowing down spontaneous flame-spread and reducing the amount of fuel burned at the beginning of combustion. This
reduces idle noise output by over 3dB. Pre-injection occurs only if the engine speed is less than 3200 rpm.
The start and duration of the main injection
depends on the amount of load and whether or not a pre-injection process has already occurred. Main injection is cut if the engine exceeds maximum speed, or if there is insufficient fuel pressure in the injector rail (ie less than 120 Bar).
Finally post-injection can occur in engines equipped with a cat converter - presumably to quickly
bring the cat up to operating temperature."
So it may work, it depends on the duration of that initial squirt. Sounds like it would work if you only drive above 3200rpm with a hot cat
I won't be able to sort it out for you entirely, but of course you are welcome to do whatever you need to to the code. You *might* need to tap into the crankshaft position sensor to determine if the last pulse was a pre-ignition or what.