Re: 2009 Harley engine difficult to start
Posted: Sun Aug 15, 2010 7:52 am
I think the problem is just that a tooth is being missed every time you almost get synch. I took your datalogs and pulled out all the stuff that was extraneous to your starting problem so you can more easily see the patterns going on. I have attached the one from the last datalog, but the others are very much the same.
The key columns to look at are the tachcount, deltaT and trig+/- columns. Rpm would be useful, but you have lag filtered it making it useless. delatT is the raw time (us) between tach teeth, that is between every group of 16 teeth or half a turn of the crank. The first value in a start just represents the starter rpm. When a non-wasted spark occurs, you should see this time drop significantly. then the next should maybe increase a little because its a wasted spark and engine drag will slow it a little, then the next should drop again and so forth.
Looking at the first attempt, which was a good start, this doesn't happen in that the first 3 times keep increasing, probably meaning no spark occurred on at least one point where it should have been non-wasted. But then a good spark and deltaT drops in half and we have synch and good to go. Trigger count doesn't move.
On subsequent attempts to restart, most of which fail, the typical sequence is a non-wasted spark is fired, the deltaT drops by half or more, but then 1 or 2 missed teeth occur (actually its probably 2 or 3, because the code corrects for 1 missing tooth, but if a second occurs, it just kills synch without incrementing the counter.) Then it takes a few tenths sec to regain synch, then the cycle repeats.
Once you get started synch stays solid. Typically this means the VR signal is too weak at cranking rpm (all VR sensors get stronger as the wheel turns faster). The only solutions I know for this are to move the sensor in closer (you said you did, but I don't know if you can get it closer still), maybe increase cranking Tolerance to 150 since its easy to do, try the default alpha-beta-gamma settings, again easy to do, but neither of the last two are going to help if a tooth is really being missed, they will just postpone the loss of synch. Other options are: get a more sensitive VR sensor, or fool with components in the VR circuit. Bruce has a bunch of sticky posts on this.
Just as an aside, what makes things hard to analyze is that the datalog is not synchronous. The tachcount updates every time a tach interval passes and that helps, but the numbers on that line may be before or after that update. Since we have very low speeds here, we often get 2 or 3 lines with the same tach count, so that makes it easier to see what numbers are related to that tach interval. (The reason data isn't synchronous is that you can't stop controlling the engine just to send out all the data, it has to be done one word at a time so as not to interfere with engine control.) Another factor is that this is an odd-fire engine, so the spark firings are not evenly spaced.
The key columns to look at are the tachcount, deltaT and trig+/- columns. Rpm would be useful, but you have lag filtered it making it useless. delatT is the raw time (us) between tach teeth, that is between every group of 16 teeth or half a turn of the crank. The first value in a start just represents the starter rpm. When a non-wasted spark occurs, you should see this time drop significantly. then the next should maybe increase a little because its a wasted spark and engine drag will slow it a little, then the next should drop again and so forth.
Looking at the first attempt, which was a good start, this doesn't happen in that the first 3 times keep increasing, probably meaning no spark occurred on at least one point where it should have been non-wasted. But then a good spark and deltaT drops in half and we have synch and good to go. Trigger count doesn't move.
On subsequent attempts to restart, most of which fail, the typical sequence is a non-wasted spark is fired, the deltaT drops by half or more, but then 1 or 2 missed teeth occur (actually its probably 2 or 3, because the code corrects for 1 missing tooth, but if a second occurs, it just kills synch without incrementing the counter.) Then it takes a few tenths sec to regain synch, then the cycle repeats.
Once you get started synch stays solid. Typically this means the VR signal is too weak at cranking rpm (all VR sensors get stronger as the wheel turns faster). The only solutions I know for this are to move the sensor in closer (you said you did, but I don't know if you can get it closer still), maybe increase cranking Tolerance to 150 since its easy to do, try the default alpha-beta-gamma settings, again easy to do, but neither of the last two are going to help if a tooth is really being missed, they will just postpone the loss of synch. Other options are: get a more sensitive VR sensor, or fool with components in the VR circuit. Bruce has a bunch of sticky posts on this.
Just as an aside, what makes things hard to analyze is that the datalog is not synchronous. The tachcount updates every time a tach interval passes and that helps, but the numbers on that line may be before or after that update. Since we have very low speeds here, we often get 2 or 3 lines with the same tach count, so that makes it easier to see what numbers are related to that tach interval. (The reason data isn't synchronous is that you can't stop controlling the engine just to send out all the data, it has to be done one word at a time so as not to interfere with engine control.) Another factor is that this is an odd-fire engine, so the spark firings are not evenly spaced.