If you are using stock C3I ignition, it should be in bypass mode for cranking. In bypass mode, the ECU is out of the picture for any spark control as the spark timing is controlled directly by the crank trigger (10* BTDC). What are your programmed settings for "crank to run mode rpm" and "engine revs to run mode"? Normally, these are around 400 and 12 respectively. So... After cranking above 400rpm for 12 crank counts, the ECU will switch from cranking mode to run mode (turns off bypass mode) where the ECU will be able to control spark.
More than likely it's a fuel or air control issue during cranking. You can adjust the cranking fuel up or down or adjust the "starting IAC pos. vs. coolant temp.". You can even try cracking the throttle slightly during cranking to determine if it wants more air or not. Also, you can throw a little extra fuel at it during cranking by "pumping" the throttle.. This will add fuel similarly to the accelerator pump in a carburetor. This may also help you determine if it needs more fuel during cranking.