-   OpenGauge / MPGuino FE computer (
-   -   Gallons Per Hour Error? (

Coyote X 01-21-2009 09:22 PM

Gallons Per Hour Error?
I got an ALDL connector for my Astro and now I can monitor the computer with a laptop. I noticed that the MPGuino tracks along perfectly with the mph and injectors at low pulse width, but when the injectors go over around 3-4millisecond pulse width the MPGuino does not increase the gph number any further.

I have 0055314688 usec/gal in it but changing the number to a smaller or larger number doesn't seem to get it to read the larger injector opening times, it just changes the displayed number but still does not read larger injector opening times. So if there is an error I figure it has to be either somehow the injectors are going above 5 volts after 4ms or a timer just cant get above ~4ms.

I have been trying to figure out the code to see if there is something overflowing and keeping it from reading a 8ms pulse width or larger but I don't see anything. Is there any quick way to get a pulse width number displayed on the custom screen? Or does anyone have any idea of why it won't read anything larger?

dcb 01-21-2009 11:25 PM

Hmm... you can get duty cycle with:

void doDisplayCustom(){displayTripCombo('M','G',instantmpg(),'S',instantmph(),'G','H',instantgph(),'C',current.mpg());}     

void doDisplayCustom(){displayTripCombo('M','G',instantmpg(),'S',instantmph(),'%','D',instant.injHius*2000,'C',current.mpg());}

It uses a much less complicated arrangement than the instant fuel consumption so it might tell us something.

Might need a scope, or record the injector with the laptop soundcard?

Just curious How does one get to injector pulse width with ALDL ?

I'll try some different ranges with the signal generator in the meantime.

Coyote X 01-21-2009 11:48 PM

I'll take an oscilloscope out and get a video of everything running together so it gives some good diagnostic information. The van has an inverter built into it so plugging in stuff is real easy :)

I am using a standard usb ALDL cable and Tuner Pro RT. Tuner Pro RT is pretty nice. I will probably pick up the memcal adapter so I can burn my own eeprom chips to adjust some of the stuff in the computer this summer.

dcb 01-22-2009 12:53 AM

Well, it looks ok on the generator. Played with it to an on time of 1 millisecond and off (injector open) time of 200 milliseconds. It will be interesting to see the scope perhaps.

Coyote X 01-22-2009 11:58 AM

The instant.injHius value stays consistent with the gallons per hour so it has to be something in the injector signal. I will get a scope out to it and see what is going on as soon as I get time today hopefully.

Coyote X 01-22-2009 04:55 PM

Quick video uploaded to youtube. I will try and get something better in a little while. I didn't do much with it other than set it up and grab a quick video to make sure youtube had good enough resolution to see the numbers on the display.

Coyote X 01-22-2009 05:18 PM

2 more

Still doesn't make a lot of sense to me. There is like a 1V difference between the injectors being on and off on the scope. Look at the second video where I set it to a larger time per division and you can see the on time is higher than the off time but not by much. it is 2V per division on all the videos. 0V is the second to last line on the display.

dcb 01-22-2009 08:55 PM

Ok, I think we are looking at a "peak and hold" setup here.

The lowest line is the peak (0 volts), the middle line is the hold. The upper line is 12 volts, right?

I think you *might* be able to add a 20k or so potentiometer (ahead of the guino injector resistor) and set it up so that middle line is below 2.3 volts on the mpguino and the upper line is above 2.5 (or do some figuring and use resistors).

Coyote X 01-22-2009 09:28 PM

That is about what I was thinking after digging around a bit. I should go out and get a video of the signal after the zener and resistor so we can see exactly what the avr is seeing. Each line is 2V and the spike that goes off the top is 14V. The middle line is 4V and after the second spike it is around 5V. It really doesn't make sense because the 0V pulse is always the same size then it spikes to 14V then goes to 4V and the 4 volt is as long as the pulse width reported on the ALDL plus ~0.5ms. But then to close the injector I would figure it needs more than a tiny spike at 14V before sitting at 5V. I always assumed a closed injector should read 14V since it is switched on the low side.

If it is a peak and hold injector that means probably a good bit of the GM TBI cars use the same type of injectors and it might be something that needs checked on a few other engines. I will check with some neighbors and see if I can find any other TBI engines around here.

Coyote X 01-22-2009 10:06 PM

It is dark so the lines aren't visible but you can pretty much tell what is going on without them. I had it on 50ms at the start then changed it so a single pulse could be seen. I switched it to ground and back so you could see where 0V was at on the scale. The zener is pretty much only cutting off the 14V spikes and not doing much else it looks like. If I had a second probe I could have measured before and after the filter at the same time. I might do that next week when I can pick up a second probe from school.

Looks about the same as before the zener/resistor but there is even less of a difference between on and off. I did notice that at idle the 10x probe was loading the circuit enough to make it read 99% duty cycle. It would go back to normal reading when off idle. I am kind of surprised it even can read a signal like that and get any useful data out of it. It might only be reading the curve of the peak and not the sustained injector hold signal. That would possibly explain why it has such a narrow range of values it reads. I am just guessing about that though

dcb 01-22-2009 10:06 PM

Ok, it looks just like waveform Y in figure 2, here:

that lists it as 14 and 11 volts, not 5. Hmm.

If it were 14 volts then a 20k resistor in parallel with the zener should just about do it.

If it's really 4 volts and 5 volts, then maybe a 120k resistor in parallel with the zener would work.

(assuming standard zener and 100k resistor on injector lead)

Coyote X 01-22-2009 10:14 PM

I might have a bad 10x probe. I took it from the student lab since the guy who has the proper equipment was not there today. So the internal resistors could be about blown apart. I could also have a nasty ground loop throwing off my ground from the built in inverter :)

I need to get my own probes I just never think about it till I need them, then I don't want to wait for them to get shipped in.

Coyote X 01-22-2009 10:29 PM

Looks like the voltages are off on the probe. I hooked it directly to power and it was only reading about 5 volts. So I should just toss this probe in the junk pile when I take it back to school. :thumbup:

I will try a 20k tomorrow and see how it does.

dcb 01-22-2009 11:06 PM

Ok, I appreciate the effort and scoping very much too :) Removes much guessing and wood burning smells.

It looks like a balancing act on the actual resistor. A more refined guess would be 23500 ohms for 2.664 volts when injector is off, and 2.093 volts when in hold. And no promises if your alternator goes out ;) But it really depends what is getting through to the CPU pin as you mentioned.

It might otherwise need some non-linear circuit that increases the spread between hold and closed.

Coyote X 01-22-2009 11:47 PM

I was thinking worst case would be it needs an op amp to drive the input. But really a pull down/voltage divider resistor should work fine. I drove it home with the scope running the whole time and the voltages never changed, so once I get a balance point above/below 2.5V it should be fine long term I figure.

Having to divide the voltage between 14 and 11V should not be that hard though really. The zener can protect the AVR from over voltages and the two resistors as a voltage divider should be all that is needed. I will try out this weekend first with a 100k pot pulldown and a lcd scope I have that will be good enough to see the voltages now that we know what we are looking for.


                to AVR ---+------+---|___|-- Inj Input
                          |      |
                        .-.    |
                        | |    z
                      R2 | |    A 5.1V Zener
                        '-'    |
                          |      |

                        GND    GND

One of these days I will quit making you add stuff to the schematic :D

Coyote X 01-23-2009 12:51 PM

Put a 22K resistor in for R2 in the picture and it seems to read properly now. Apparently I was only reading the very low end of the signal before because with the calibration I was using it is reporting 10gph at idle now :D

I will adjust the calibration now and hopefully it should be all good. I will keep the laptop showing the injector pulse width and keep track of the MPGuino for a while and make sure it is long term stable but it seems about right now.

dcb 01-23-2009 04:10 PM

Edit: This message is deprecated. I'm not happy with this solution. Original follows:

Ok, thx, that is encouraging.

Here is a picture of this very simple procedure (not a FL board) if anyone else thinks they have peak and hold and wants to try it. Please report your findings if you do. You can identify peak and hold by unplugging an injector and measuring the injector with an ohmmeter (2-7 ohms is peak and hold, 10-15 is saturation), they are in a fairly small percentage of cars these days, mostly from the late 80s and early 90s from what I can gather:

The zener in question on the spiffed board is the lower right one in this picture (I think):
kits:mpguino:04_place_220.jpg [SpiffieWiki]

Here is a source for the resistor used in this circumstance: 22K Ohm 1/4-Watt Carbon Film Resistor (5-Pack) -

It could be added as an optional resistor to the schematic, not sure what to do with the pre-assembled units I'm planning on. It makes the signal on a saturated injection system less definite, and those seem to be in the majority so maybe I have to add some questions to the ordering process, and possibly add a jumper to the next revision.

Coyote X 01-23-2009 04:48 PM

If it is needed I can scope out a saturation injection system and show what voltages it is getting. I really don't think it will matter much if the resistor is on there for the saturation type systems.

Maybe trying to get the values higher would work better so the hold value is 2.3V and off is 2.8 or so would make it so that even the saturation injection systems can handle the voltage range easily and keep the system universal for all cars that way. I think with the off voltage of 2.6V it might not be accurate when the battery voltage drops if running without an alternator. So either putting a 30k mini pot on there to tune it with or trying to find the ideal single resistor would be better than having to make people figure out what they need. To keep it absolutely flexible for all circumstances I think it needs a potentiometer. Once it is adjusted and reliably reading then it will never need to be messed with again unless they want to swap it to another car.

100K-Ohm Horizontal-Style Trimmer - Radio shack has a 100k trimmer. There is no need for one that high of a value but it is cheap and easy to get and will work just fine. Plus it could be turned to 100k and guarantee it won't affect a saturation injection reading since the zener would take over at that value.

dcb 01-23-2009 05:48 PM

Did you get a chance to measure peak and hold at the guino?

I don't know if there is a perfect resistor, I tried a 22k on a 3cyl metro, it worked fine. But I hate to make a revision right before shipping, that's how nightmares happen :) The current layout has been pretty well tested and how to explain the tuning of a trim pot escapes me at the moment (while doing a brake torque in your driveway, take this small screwdriver and... :) ).

I'll have to think about how to handle it. I have a stack of boards I can ill afford to make into coasters, and in most cases they won't be coasters. Implied in all of this has been user participation, so I think I want to look into addressing it on the ordering page (enter year and make, etc) and have to come up with a calibration calculation page based on year make model as well for folks to use at fillup that can maybe simplify the process and start gathering some vehicle stats. But I'm gonna take that off line and send you a PM about it.

dcb 01-23-2009 06:41 PM

I just tried watching digital 2 on my picscope and for some reason the 22k resistor seemed to allow the voltage to spike (or my cheesey picscope didn't like it for some other reason). Without it, the signal at the cpu pin was pretty clean.

Coyote (or anyone) If you get a chance with your fancy o-scope to measure the effects of the additional resistor at the CPU, I would greatly appreciate it. But at the moment I don't think we have a "peak and hold" solution.

Coyote X 01-23-2009 07:07 PM

It is a minor issue either way. I am thinking a 25k or so resistor might do better but I think a pot that is set default to 100k would be a non issue for 90% of the cars. But those few cars that have problems it could be a quick matter to adjust it with 2 people in the car. One driving the car with enough load to make it read incorrectly and the other adjust the pot so it starts reading correctly. It should take like 30 seconds at most to adjust it for the few that need it. The 22k might be a bit low for me I noticed when it is sitting idling with every accessory on to try and lower the voltage I could get it to spike to 5-8gph here and there. So maybe shooting for 2.3-2.4V when off might be ideal.

But for now I would just put a notice on the order page about peak and hold injectors will not work as-is with the first revision of the board and think about adding a pot or whatever to the future boards.

That last video was measured at the AVR pin so it is exactly what it is seeing before the resistor is added. The scale won't mean much though because the probe I am using is broke so I am not sure about the voltages.

dcb 01-23-2009 07:42 PM

I appreciate it.

Also, here is more analysis, rough guesstimate that the major years of issue are 87 to 93, just to get an idea:

Of the 55116 cars on ebay of 1987+ vintage, 2219 are 93 or older (%4).

Of the 1873 cars in the ecomodder garage of 1987+ vintage, 307 are 93 or older (~16%). As expected, we hold on to our cars longer :thumbup: , which is cool except for the higher probability of hitting a peak and hold system.

If you are not sure, measure an injector before you order I guess.

Coyote X 01-24-2009 12:18 AM

I will try a few resistors this week and see what I can figure out. Adding a second set of holes right beside the zener would not really be an issue for the next round of boards but I still think a 100k trimmer pot would be best. If it was left off most boards like the pull up/down vss resistors. But have the holes available for anyone that needs them to run to radio shack and pick up the pot I linked to earlier. Even the pot could be soldered directly on top of the zener pretty easily, just bend the center pin over to one side, so a redesign might not even be worth doing.

I probably won't get much done tomorrow I have to use the van to haul some people around so I just had to clean my mess up in it today and put the dashboard back together. But this week coming up I will try a few more resistors and see what the scope shows me.

This might be more of an issue for the MPGuino than just 10-15%, since a lot of 96 up cars will have people that want to use an OBD2 type setup. And I would guess that probably every GM and Ford built TBI setup is peak and hold. So that will be a lot of people who have peak and hold in the 80-95 range. Also I checked the Holley Commander 950 in my kit car today and it is also peak and hold injectors :)

dcb 01-25-2009 04:28 PM

possible patch
Update, I tried these mods to the circuit, it worked on a saturated but I need to get the resistor values dialed in better. The idea is to make the injector firing detection relative to the supply power.

Tapping into the other side of the diode provides a .7 volt gap from system voltage, so there is some built in-tolerance for the hold driver voltage.

Still sorting it out though, not a final recommendation, need to figure out RX and R2, 2n3906 assumed. Changes in blue.

Here is a retrofit of the circuit using ~50k resistors for rx and r2 (again not final), resistor to zener trace has been cut on the bottom side, blob of hotglue would be a nice touch:

Adds one transistor and a resistor to the design if it works.

Weird thing is with R2 and RX at 50kohms, the CPU pin voltage was limited at about 2.5 volts. Is it possible the current is so low that the high impedance cpu pins are doing the clamping?

Coyote X 01-27-2009 01:24 AM

I know the 10x probe was messing with the signals at the cpu so it is pretty high impedance there. I didn't really look into it much other than notice the 10x probe didn't work and moving on to something else.

I will try building that circuit this weekend if I get time. One thing though is pretty much nothing is going to be completely 100% in all situations except for measuring the injector current somehow >~0.5amp and outputting a voltage for the arduino to see. I don't think anyone wants to cut their injector wire to do that though :)

I messed with the resistors on mine and with a 22k and a 3.3k on there giving me 25k ohms seems to do the trick. I can make the injector signal jump if I am at idle with the wipers and rear blower on high, then simultaneously turning on the headlights and front blower on high. I can get it to read incorrectly for about one injector pulse till the alternator gets the battery back over 11V. Other than that it seems dead stable at around 25k. 27k ohm resistors are a standard size so I would say just use a 27k if you are lazy and don't want to modify it much.

dcb 01-27-2009 07:37 AM

I don't know if there is a 100% fix either. I don't know what happens to the hold voltage when the alternator goes out. I am assume it is a function of supply voltage, but it is conceivable that they got fancy with the hold voltage drivers, in which case supply voltage could drop below the hold voltage.

resistor experiments:
r2>=2520 ohms (base current @peak =.005a @hold (11 volts) = .00063a)

A 50k seems to work too for r2, so I don't think it is too critical. And a 50k offers much more protection than 2520 so I might just go with that. it means about 0.0000036 amps through the base in "hold" which is about 72 times the base cutoff current, and .0003 amps at peak.

rx=50k ohms

dcb 01-27-2009 09:24 AM

I keep forgetting to mention that this circuit in post 24 inverts the injector signal, so you have to switch the occurrences of RISING and FALLING in the source code.

dcb 01-27-2009 11:42 AM

Ok, 50k ohms it is, for rx and r2. I did some bench testing. With a 16.2v supply the pin went high at about 14.9v. That should translate to any injector signal that is 1.3 volts or more below system voltage registering as "injector open".

With 50k on two of the transistor leads, it will be pretty well isolated and should prove reliable.

It will also allow the strongest signal for the saturated injectors (the majority of vehicles have saturated as far as I can tell), whereas the resistor patch attenuates the signal for saturated injectors.

And it seems to be operating within established parameters.

So I like this solution now :)

Coyote, I'll ship this guy to you so you can play with it. You are short a guino so this works out pretty nicely :thumbup:

dcb 01-27-2009 08:21 PM

welp, the transistor version failed regression testing in my saturn miserably :(

I tried 50k, 4.7k, even tried adding another diode in series to the emitter so that the drop was at least 1.8v before considering the injector open. The change in resistors had no effect, the instant gph would go way high as compared to the control guino and the resulting fuel used was also high.

Adding the diode introduced a reboot whenever I hit the gas :) eventually had to reflash the bootloader, stopped doing that when I shorted out the diode. wierd.

I'm running out of inspiration here. This fix for peak and hold is turning into a whole resistor/diode network. Coyote, I want to hold off on shipping a sec and see if any other simple fix ideas come up so I can get you a more "production" like unit.

Coyote X 01-28-2009 12:30 AM

I need to change the resistor across the zener to 27k. I really think that will fix it. I had to haul a neighbors truck home when he broke down and I watched the mpguino running with the 25k and it didn't jump or do anything erratic at all. I didn't try on purpose to make it jump by turning on a lot of stuff at once so I think 25k is pretty close. 27k should be pretty much right in the safe spot so even if the alternator is disconnected the injector will probably quit firing before the mpguino quits reading.

Once I get it where I am happy with it I will stick it in the Metro and scope it out and see how it reads. I don't see any problem with it working just fine on a saturation injector with the resistor across the zener.

I will swap out and put a 27k in tomorrow. I figure if it works 99% with a resistor there is no point in getting really nuts about that last tiny bit of precision. Also I went from 19mpg empty to 14mpg with an extended cab ford ranger on the back :)

dcb 01-28-2009 07:04 AM

I'm coming back around to a 100k trim pot in parallel with the zener for now, with optional capacitor for pwm based hold circuits. I do want to keep the emphasis on precision however, that is the main advantage the mpguino has over OBD solutions post 96.

I got a peek at an existing peak&hold circuit and not including connectors it had twice as many parts as the mpguino. Basically they combined every option we have discussed thus far, and it still needed trim pot adjustments and resistor swaps :)

So some guess at the pwm frequency is probably in order. The pwm in this, possibly unrelated to anything automotive, graph has a period of 600uS. We are subtracting a 500uS "mechanical delay" from each pulse. So it is believable.

Unfortunately with a trim pot in the circuit it means the the target reactance of the capacitance also moves around, which means two trim pots for the subset of injectors that are both peak & hold AND where the hold circuit was implemented with PWM. I don't know how to guess at those numbers.

Coyote X 01-28-2009 10:23 AM

Know of a simple DC inductive clamp setup? If we could measure current on the injector wire without cutting it then we would have a perfect 100% setup that always worked.

All injectors pull more than an amp when on and 0 when off so an inductive clamp could read that without cutting the wire. We just have to figure out how they work reliably.

Coyote X 01-28-2009 06:58 PM

27k is a bit much. It misses half the injector pulses. I picked up a 47k potentiometer at Radio Shack today and will put it on there.

One other thought we could do is a voltage comparator. Link. This is a very basic schematic that is generally what I was thinking of. Just the bottom half of the circuit is needed so it outputs when the voltage drop from vcc(battery voltage) is greater than 2.5V. The 10k pot in that schematic could be replaced with a pair of resistors once the value is known to make it trigger on a 2.5V drop or whatever is needed. So that circuit would add an op amp and 2 resistors to the overall design.

That type of circuit should work with just about any injector system and be very tolerant of just about anything that I can think of, as well as give a pretty clean output to the mpguino with just a standard resistor/zener input.

dcb 01-28-2009 07:05 PM

I think in version 2 we can look at using the built in comparator interrupt on the atmega. You can set a rising or falling interrupt relative to an external voltage reference. For pwm we can basically wait for the signal to stabilize and back up in time to when the stabilization occured. But it is going to have to wait a while unless someone runs with it.

Coyote X 01-29-2009 03:40 PM

Been messing with the pot mounted across the zener and have pretty much figured it is ok but I don't think it is going to work out for a 100% solution.

I had the scope and laptop in there running along with the mpguino and I can't get a good position that it reads everything. If I set it so it runs good without missing pulses at off idle speeds it reads high at idle slightly. If I set it to read right at idle it misses some pulses. With the alternator unplugged it reads way off.

So Back to the voltage comparator. I think it is pretty much going to need an op amp to be a 100% accurate solution in all situations. Using the built in comparator won't work since it would have to go to polling to find the injector open time and not use interrupts. With an op amp it can be a 8 pin dip chip and 2 resistors. That would read pretty much any injector signal. I will try and build something this weekend and see what I can figure out.

Coyote X 02-04-2009 12:36 AM

So after thinking about it if the ECM is wanting to maintain a 1 amp current and the resistance of the coil is 3ohms then it will require 3 volts minimum to maintain on. So the voltage drop will always be constant across the injector at 3 volts and that means more or less constant 3V drop across the injector pin. So for a basic proposal for how to measure a constant voltage drop


                        z 3V Zener
                        A              LM741 op amp
                        |                |\|
                        |                |  >-  out
            INJ -------)----------------|-/
                        |                |/|
                      | |
                      | | 10k

This could be an add on board in front of the stock MPGuino if the op amp had 12V and gnd hooked up. The biggest problem is that a 3V zener is pretty hard to find so a slight modification to the circuit will let it be tuned from a 0-5V drop...


            12V        .--------------.
              o--------|              |
                        |            .-.    100k pot
                        |            | |<------.
                        z 5.1V Zener  | |      |
                        A            '-'      |    LM741 op amp
                        |              |        |
                        |              |        |    |\|
                        o--------------'        '-----|+\
                        |                            |  >-  out
            INJ -------)-----------------------------|-/
                        |                            |/|
                      | |
                      | | 1k
(created by AACircuit v1.28.6 beta 04/19/05

That gives us a way to precisely calibrate the voltage drop.

All the peak and hold injector circuits I could find are 12V > fuse > injector >ecm(gnd) so measuring INJ at the ecm and assuming the 12v going into the mpguino is not significantly different than the 12V side of the injector this circuit should work. I will build one tonight and test it once I can get the van out on the road after the blizzard goes away. If this works it could be added to the standard circuit but it is adding a good bit more mess to it. It should be a 100% solution though :D

Coyote X 02-07-2009 07:35 PM

1 Attachment(s)
Went ahead and tried the op amp circuit. I used a pair of 47k resistors instead of the variable pot. This should give me a 2.5V drop for the injector. From the tests in my driveway this seems to be about right.

I will drive it around a few days and hook the laptop back up to the ALDL to verify that the numbers track evenly. I can brake torque it in my driveway and the numbers are dead stable. I can go up to the point the back wheels start spinning and the gallons per hour seems about right with the amount of throttle I am giving it.

I will try it out in my metro tomorrow to make sure the circuit still works with every type of injector but so far so good :thumbup:

Coyote X 02-08-2009 01:25 AM

Got bored and it was nice outside so I went out and tested it. It works good until the pulse width gets pretty long. The voltage drop on the injector decreases past 2.5V drop towards the end of the pulse. So I put a potentiometer in place of the two resistors so I could vary the voltage drop it is looking for. Turns out it works perfectly 100% with a voltage drop of ~0V to 0.5V. I can turn every accessory in the car on at once and the numbers don't change other than when the computer responds to the extra load on the engine and opens the injectors slightly more. There is no jitter or variance from what the laptop is reporting from the ALDL port.

So it might be possible to do away with the zener and potentiometer and just go straight for 12V on the - input. I think it needs a voltage drop of 0.1V on it though just in case there is a tiny difference in voltage on the MPGuino compared to injector voltage. Maybe just a standard silicon switching diode could give a 0.7V drop and skip a lot of the mess in the circuit. I will pick up another op amp this week and build a breadboard interface circuit for the official MPGuino.

Maybe use a 1N34 diode if I can find one, I think they had a pretty small voltage drop of like 0.3V or something and very little capacitance. A bit more experimenting and I should have the simplest circuit I can get on there figured out. Right now it is 3 components a zener, resistor, and pot. It might also be possible to just connect - straight to 12V and use a potentiometer on the offset null to tune the circuit. Once I get one on a breadboard I can try a few things and see what I can come up with that is reliable and simple now that I know the basic idea works good.

Also the ascii drawn circuit has the + and - reversed if anyone wants to build one :)

Coyote X 03-04-2009 07:39 PM

I still have no perfect solution to the peak and hold injectors without cutting the injector wire. The opamp circuit works just fine and shows ok looking on the scope. It doesn't give a single pulse but a double pulse. When the voltage spikes from the inductive kick it goes high again. So the only thing I have been able to think of is maybe when coasting down with the injectors on just at 1% duty cycle or so the arduino is missing the interrupt signal and not stopping the injector open timer. I set the delay to 0 to try and take that out of the list of things that could cause problems. Didn't seem to do anything.

If missing interrupts is the case then the only choice is to cut the injector wire and put a current sensing circuit in there to trigger the arduino. The signals are pretty short on the scope. A current sensing system could trigger anytime there is current flowing so it would get rid of the problem of the inductive spike making a double pulse out of the signal.

If it is something else I am out of ideas to try :( I am probably just going to try building a current sensing circuit and see what that can do for me. It won\'t be ideal having to cut the injector wire but it at least should reliably read the signals.

For the simple circuits the pot across the zener seems to give good readings as long as the voltage is stable. The opamp gives good readings for various voltages but then goes nuts on very low duty cycle signals. If I can\'t do any better I think the pot across the zener gives better numbers since the voltage jumps don\'t seem to be that big of a deal compared to it showing 12-18gph while coasting or slowing down.

dcb 03-04-2009 09:20 PM

Hmm... maybe a clip on hall effect thingie?
Hall effect - Wikipedia, the free encyclopedia

edit: $11 from mouser, not clamp on but looks pretty straight forward:

All times are GMT -4. The time now is 04:52 PM.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, vBulletin Solutions Inc.
Content Relevant URLs by vBSEO 3.5.2
All content copyright