The simplest way to help GStwin is to use this Amazon link to shop

Main Menu

EFI updates

Started by chris900f, January 30, 2023, 07:11:35 PM

Previous topic - Next topic


I think the whole, "the bike comes lean from the factory" is 100% people just wanting short warm-up times with little need for choke. Aka, giving the bike such a rich pilot jet that the bike is fueled like the choke is on 100% of the time.

Nobody has ever really complained about the off-idle fuel mixture with the stock pipe and air filter. People just like to mess with stuff. But nothing is more reliable than keeping everything stock.  I think messing with the jetting is only warranted if you have an aftermarket exhaust and air filter.


I notice that the UK gets 135 mains while other markets get a 130. I'm seeing some pretty rich AFR's but I'm at 2200ft, so that could make a difference. I'm thinking the airbox earns its keep as a cold air intake and I would opt for a drop-in before a lunchbox with a carb set-up.
I already have a V&H SS2r can ready to go, so if I go that way I'll be able to datalog and compare to see what a higher flowing pipe does to the AFR numbers.

So far aligning the manifolds to the ports has been my best "power mod" lol


im currently running 140 home drilled mains with kn lunchbox ru2970 with 3 circuit carb.
Plan to change to airbox.
but i dont have the rubber boots and to get them here it costs me around 100 dollars...

i see various benfits for the airbox:
More filtering
Water protection
Colder air intake
lung ="air buffer"
1 filter and only one airbox for both cylinders maybe smooths the pressure??
More silent(less valve an bluurb induction noise)

space taken+ difficult to fit
rubber boots
crooked or bent airbox so the rubbers dont face straight to carbs, i have to try mr72 heat gun method.

you would need to modify the V&H headers to fit the  O2 sensor? or you have already cut it as a slipon?


Yes, I agree there are some advantages to using the airbox; but It is a difficult fit and makes changing jets a pain. I found that removing the bolts for the frame mounted petcock, and just letting it hang outside the frame is essential--they probably tell you to do that in the manual but I never checked.

I think the airbox minimizes the difference in air temperature between start-up and a fully heated engine so jetting and AFR's stay more consistent. I wouldn't have given much consideration to intake air temps, but after looking at my last few logs I'm thinking it could be a much bigger deal.

So a few days ago I went out for an evening ride. It is light until around 10:30pm here this time of year so it's really the best time of the year to go for a ride after dinner. I took a familiar route through town, to a secondary highway and rode out to a local small rural airport about 20km from home. I like to stop there and take a break and then turn around and ride home--it makes for a decent ride with a good stretch of 100km/hr, with shorter stretches of 80, 70, 60, and 50. I decided to datalog to see the difference between riding with the TPS unplugged versus active.

I started with the unplugged TPS...I noticed the bike did not start as well, but otherwise ran ok.

After getting to the airport, I took a 10 minute break, plugged the TPS in and rode home on the same route

The results are pretty close, but you can see a difference in the lower RPM range, where the AFR's are leaner with the TPS unplugged. To me this suggests that there is more ignition advance in this range when the TPS is unplugged and the bike is just running on a pre-programmed 2D curve. The leaner AFR indicate a more complete combustion, so you could actually run fatter jetting here and get a bit more power, which is the point of running more advance for higher performance. On the other hand, since you are running leaner, you are actually losing the advantage of the richer AFR's seen on the 2nd log if you are running the stock jetting.
You can also see that the 3800RPM range is leaner with the TPS active in log#2 These are some very lean AFR's. leaner than stoichiometric (14.7:1) which is pretty unusual for an air-cooled bike.

Now let's go back and look at my 1st log from last week.

This is the same route, on the same tank of fuel, but this was on a warm afternoon as opposed to a cool evening. Notice that the whole range is richer than either of the evening ride logs. Subjectively, I was pretty happy with the performance on this ride, and was a less impressed with the evening ride. The afternoon log shows air intake temps in the 90's and peaks out at 100F. The evening ride logs show a maximum intake temp of 88F.

I don't have any other explanation for the differences in AFR and subjective power than the hotter, thinner air resulted in a slightly richer mixture. So we're back to "tuned lean from the factory" on a cool evening, and "just right" on a hot, sunny afternoon. I guess this is the weakness of carbs, EFI will compensate for intake air temperature via the speed/density if you get 12.5:1 at a specific combo of MAP vs RPM, it will always be 12.5:1 at that point regardless of the ambient temperature. And, it also follows that the bike will always make more power (and use more fuel) on a cold day than a hot day.

What do you think? Have you noticed that your bike seems happier with more mid-range punch on some days than others?


Confirmation of the intake air versus AFR hypothesis. 102F max temperature at the sensor, about 85F ambient


Hot day ride

Cool night ride


Can you still program the speeduino? i would put a temperature/humidity sensor in the airbox, no need to drill, you can use the drain outlet/hose
where are you getting your air intake temp numbers?

At first, your photo of the EFI system in a bucket broke my heart a bit. Not because this EFI system were something i would put in my own bike someday but  simply because it was very interesting the idea of seeing how much could be squeezed with an EFi +timing vs carbs.
if it was a total success eliminating the major drawbacks of carbs i could start considering it in a mad day.
In some point you are like almost fitting ABS in a normal brake system.

Now the idea of datalogging carb operation is very interesting and im sure your info could get some insight never seen before.

i know that maybe is too much, but i would put more sensors, more info . with an arduino is cheap and easy and it would be very interesting to see relations.

Gear sensor:
(i know this is more labor intensive because you have to insert new pins apart from neutral if you want to read all the gears)
it is said that the 2002+ ecu reads the gear in which you are to decide some things about the fast idle solenoid or the ignition timing advance along  the TPS, based on? fuel emission laws?actual performance?, doubt it

That is why the neutral sensor changes and it has 3 cables.  i dont really know how it works but looking electrical diagrams the neutral sensor stops having 1 wire to have 3.
Im running the older 1 ground wire switch from my 89 with a new electrical harness (04 i think) with a 1 pickup signal generator with a new style Ecu, dont know if it is J32 or J33, also this, which one you are running?
How many wires do you have in the gear sensor?  what about a test with this disconnected?

Carbs are very...temperamental. some rides i have  almost perfect response and others not so much.
i cant really tell you something concrete now as i have a slight problem with misfires that usually gets worse when the bike is hot but some days it almost doesnt happen.
i have to change spark plugs at first instance and see if it goes away.


Armandorf: thanks for you interest, I'll try and address you questions.

The main problem with my EFI install revolves around the fuel pump. This self-contained unit was really central to my idea of building a totally reversible system, since it doesn't require a return line to the fuel tank, hence no need to drill into the tank for a fuel return (as I had to do with my other bike).

The weakness in this pump is the float valve. It works like the float in a regular carb, but it is poorly constructed. Also, these pumps are designed so that you can't take them apart. Well I took it apart anyway, and found that I may be able to modify the needle/seat so that it doesn't overflow all the time. The pump motor and regulator work fine, but the float is a well known problem with the original Kohler pump as well as these Chinese copies.

The next problem was that the MAP signal at idle was really erratic...but more on that later.

The next, next problem was road tuning a bike that didn't idle well, since I am in a city environment with a lot of traffic, it was pretty dangerous.

The final problem was that the TBI's were not as secure as I thought and would need some reinforcement to prevent them getting pushed out of the manifolds by even a minor backfire, This problem is made worse by the design of the frame, since you need to pull the tank to access the TBI's or the pump--not something you can do on the side of the road.

Datalogging the carbs I found that the MAP signal is very erratic even with the stock set-up and that Suzuki jets quite rich at idle and just off idle to smooth this out a little. So if I can get the EFI working again I have a much better starting point.

The AFR mapping (histograms)I have done of the regular carb operation have another value as well. This table can be loaded into the TunerStudio software as an AFR target table. Using a software function called Autotune, I can use this AFR target table based on the bikes actual factory AFRs to re-write the VE Table (operating fuel table values) as I ride. This should somewhat eliminate the idle problem and the road tuning tuning problem already mentioned.

As far as the intake air temperature sensor, this is mounted right at the filter intake of the airbox. Actual temps are not as important as noting the differences/changes in recorded AFR's at different ambient air temperatures. I'm analyzing this information mainly out of my own curiosity at this point, but what I've discovered is that a difference of just 10 degrees F can make a substantial change in the recorded AFR's, even though the carb jetting remains unchanged.

I was not expecting these significant changes and they have ramifications for carb jetting and the use of pods or a lunchbox air filter as I recorded much higher air intake temps when running the pods--eg 120F on a chilly day.

For EFI tuning I have the histogram table from a hot day which made the AFR's richer and the bike ran "perfectly" in these conditions. The EFI firmware scheme for using MAP as the fuel load indicator is called the speed/density equation where MAP+RPM gives the speed part and intake air temp gives the density, so the changes in air temp (density) are automatically compensated for in the modulation of the pulse-width of the injectors. with the base pulse-width being set by the VE table.(A Set PW Value@ xMAP vs xRPM)

You wrote: "Gear sensor: (i know this is more labor intensive because you have to insert new pins apart from neutral if you want to read all the gears)it is said that the 2002+ ecu reads the gear in which you are to decide some things about the fast idle solenoid or the ignition timing advance along  the TPS, based on? fuel emission laws? actual performance?, doubt it"

My understanding is that the 04+ ECU has a programmed 2d (Advance vs RPM)timing curve, the TPS acts as a modifier to this programmed curve, modulating the timing to more precisely match the engine load. It is not a true digital system, but gives the similar result of a 3D curve, since the engine load at a particular RPM can be deduced/calculated by the throttle position. The ECU does not need to know what gear you are in, but it does need to know the engine position in its cycle to correctly predict when the next spark should occur; this is why the newer bikes have a 6-lobe signal-generator rotor. The lobes are of different widths to provide engine position info to the ECU, there is one large lobe that has its rising edge at 40 degrees BTDC and its falling edge at 5 degrees BTDC. This "fat" lobe covers the range of the available advance--the 5 previously read lobes give the ECU the engine position and RPM and the ECU uses this and the pre-programmed 2D curve (modulated by the the TPS) to decide where on the fat lobe to fire the spark.

If you want to use the new gen ECU you will also have to use the 6 lobe rotor, and possibly the pick-up from an (03)04+ bike.

Finally the fast idle solenoid seems to be timed to a simple RPM counter. Once the engine is running for a few cycles, it triggers the solenoid for a set number of revolutions, then turns it off. The ECU uses a grounding pin and the 12v+ is constant at the connector. I used the 12v+ from this plug to power the o2 sensor with the EFI set-up.


Ok, thanks for the nice explanation

But i still dont understand some points>
are you running J32 or J33, your other posts had some timing differences based on your tests.This could affect in some way?

Were you planning to control ignition with the speeduino,? at some point you should disconnect the spark plug coils from the harness and control them via <mosfets?< with speeduino.
Or maybe your plan was after understanding the stock ECU behaviour
simply by a generic timing ?map?.. sorry i dont know how this is controlled.
The rotor pulse decoding template screenshots..i dont understand if  you are getting rpm from there or from the tach signal only.
as you said the rotor gives you the angle of the crankshaft so you can plan ahead.

the second gear sensor is for some obscure? reason, i read in this forum that in some way it controlled emissions or timing, dont really know but i would suggest you to test disconnecting it to see if something changes.

yes, i  have the new style rotor and ecu with the TPS disconnected and the solenoid & emission vaccum hoses removed


I'm running the Speeduino as "fuel-only". I take the RPM input from the stock ECU's Tach output, which is buffered through a capacitor to maintain the stock tachometer function and give a nice on/off signal. I can verify the quality of the signal via the TunerStudio software's ignition log...the signal is good, but I changed the Tach signal wire to a shielded audio cable to filter out stray noise signals. Theses issues are covered more in depth earlier in this thread.

I'm running an ecu that I sourced from the UK to get the 12 degree advance at idle that was used on all previous iterations of the GS500, as I thought the J33's 5 degree advance at idle was too low. My source on this was the service manual that lists all the different specs for different years and different markets. I think it's probably a J32, but can't confirm at the moment.

The only obvious difference that I've noted is that the fast idle only goes up to 2800-3000 rpm, where with the original J33 it goes all the way up to 4000rpm. I think/feel that there is less of a "gap" between idle and off idle operation, but I've never confirmed this with a timing light. The J32 comes paired with a slightly different signal generator rotor that has the falling edge of the "fat-lobe" at 12 degrees rather than 5. In any event the bikes runs and idles well in stock configuration. The issue with the MAP signal is that the twin engine has gaps where neither cylinder is in the induction phase...this is why I say that a 4 cylinder engine was so much easier to establish a good idle with the EFI, as there is always 1 cylinder in the induction phase.

I don't see any input for a 2nd gear sensor on the ECU's pin-out, it could be different in European markets that used pair valve systems.


Gs500Hk3/Gs500Huk3 P-19
      h ttps://
Has 3 wires in the neutral switch.
Also 04 :  h ttps://

Anyway, what about the Vance and Hines,once you get more info you will try it?

I always thought all the new style rotors were identical. I have a salad of components that I don't really realized till now.


Those links are infected...don't click


No virus for me, what was specifically triggered? ads?
i have an ad blocker. nothing strange happens.

i was thinking, i know there were a lot of issues , mainly with the pump (my temporal workaround for testing could be fitting a feedback style pump and using the gas cap open with a hose for testing).
Have you considered running the pump inside the airbox, it fits?
that way you can also use it to collect overflow(this is bad, the spilled gas evaporates enrichens mixture, but should be some kind of last resort)

What about smoothing out the MAP signal, like a capacitor smoothing transitions?
because if your engine load is that metric,now is inconsistent, and engine load unless you whisky throttle isnt so quick, is progressive, as you should accelerate.


That's some funny $hit man, we'll just let the leaky pump dump fuel into a semi-contained space where it can vaporize in a continuous flow of air getting pulled into an internal combustion engine--oh and just for laughs we'll have the whole thing mounted a few inches under a sheet metal tank with five gallons of gasoline sloshing around inside. :hithead:  :cheers:

I think I can fix the pump :wink: In the meantime the datalog info with the AFR's has probably never been seen outside of Suzuki's engineering department. I have the baseline info for the stock set-up. I'll try and get the V&H can installed soon and then we will learn how that affects the mixture. If I end-up re-jetting then the results will be captured as actual data--so I'm still having fun.

If you really want to learn more about EFI you can get an Arduino mega cheap, the Speeduino firmware is free, and you can get the freeware version of TunerStudio from EFIanalytics. That's all you need to set-up a project and explore the many, many ways to implement efi or ignition or both without actually having to build anything--good fun.

SMF spam blocked by CleanTalk