FreeEMS Issues - Firmware
View Issue Details
0000148FirmwareCalculations (Inj/Ign)public2011-06-15 16:422012-03-23 18:08
New Feature
0000148: Add priming pulse code
Add ability to toggle the configured injector channels at boot time to prime the manifold and bleed air and vapour from the injectors, pre starting. Requires 0000122 to be completed. Good thread on it here: [^]

That I need to distill into a FreeEMS specific thread or page. There is a lot of crap in there that makes no sense for us, due to it being MS related. Some of the concepts are good, though.
No tags attached.
child of 0000048assigned Fred Complete Basic Firmware Functionality 

2012-03-20 23:23   
This is getting done now in a perfectly usable but crude way that isn't portable over injector config changes. Required by user Peter.
2012-03-20 23:41   
Hopefully done in a temp commit. Will update with hash once finalised in the master branch.

Please test using your LogicSniffer:

Look for a pulse on the inj outputs correct for the temperature of defined pulse + dead time on all channels once, briefly when powered up

So set the temp with a pot and measure the pulse and check the dead time and priming tables and see how it looks

Requires a configured build, pick any with a fueling setup, or test with several different ones to ensure the code works as desired.
2012-03-21 21:18   
PETERJSERIES defined. All six channels produce the same pulse.
CHT-295K Pulse-3.8mS
    655K 3.8mS
    205K 3.8mS

It's more than possible that I'm screwing something up, but I'm getting 3.7905833mS on the primer pulse irregardless of where Megatunix says the CHT is. I guess I'll try changing the IAT reading now.

The priming pulse time isn't changing with the IAT varying either.
2012-03-21 21:26   
Interesting! Did you try any configurations with less than 6 injection channels to ensure it only fires the right ones? I'll take a look and see what I screwed up.
2012-03-22 03:22   
I've had a look, and I don't see it. Tomorrow I'll actually try it out and add some debug and see what I can find out. Thanks for your patience. You may care to combine that with your settings and custom decoder etc and try it anyway, it will likely help under all circumstances, and not really hurt under any.
2012-03-22 04:27   
I didn't try any other configurations yet.

You should let me try it on my actual setup before you spend too much time on it. It seems like if Megatunix shows a CHT that main.c should be seeing the same value. I set the Saleae LA at a couple of different sampling rates, but I kept getting the same pulse time. I can't think of anything I did wrong. I'll try and take a look at the code tonight.
2012-03-22 04:35   
The only thing that crossed my mind was that maybe it's too soon after ADC initialise, but I doubt it. I probably cocked something up. Don't worry about the code, I'll sort it out tomorrow and push a new version to play with once I've tested it a bit.
2012-03-22 18:32   
Peter, I found the issue, this one should work properly, one line change. [^]
2012-03-22 19:30   
Unsure how it went back to assigned, re-resolved.
2012-03-23 14:57   
Just tested with slater config and got a single priming pulse that DID track temperature on the first ignition channel, so it's not right. Will fix and push to master in a while.
2012-03-23 15:47   
Found the issue, it worked for you by luck. Fixing now.
2012-03-23 16:33   
OK, fixed in 3f59fde9c4601df7be8e37a783e44357c5876ebe please test (on master branch).
2012-03-23 17:45   
SLATER defined. I'm getting priming pulses on PT6&7.

4.3mS with a floating CHT
7.16mS at about 200K
1.8mS at about 655K

Do you want me to setup an actual circuit to test some intermediate temperatures?
2012-03-23 17:47   
No, if it works on your setup as well as his, and you're happy with it, please close :-)