After struggling with the morning starts section of my code & hardware, I found out that the problem was due to the battery voltage getting as low as 7V when cranking.
So 7V divided between the 5 ohms resistor and the 4 ohms injector resistance results in not enough voltage to open the injector.
I made a lot of changes to the hardware and software during the last two weeks and could not explain myself why everything worked fine if forcing the input signals, but as soon as tryed to start the car, the injector just won't open.
Reading the megasquirt manual I learned how the 'peak and hold' circuit works and just implemented it in my code and removed the series resistor.
Problem solved. The peak and hold runs at 60% duty cycle when cranking and 30% duty cycle when running.
The red line in the picture shows the coil pulse and the blue one shows the peak and hold function. 1 ms peak of full voltage and then 8 ms of 30% duty cycle (4 volts)
Bookmarks