Speeduino is now on Github Sponsors (Rather than Patreon): https://github.com/sponsors/noisymime
Help with building your Speeduino, installing it, getting it to run etc.
User avatar
By gpineau
The screen is much less restrictive than the stock air filter which is made of felt. Its possible but i think it is minimum.
to test it I could remove the stock air filter and see if it leans out?

For sure I want to drive it and see if it has had a bad side effect on power.
Possibly, its running richer because its not spitting the fuel out any more. Whatever fuel was dripping, wasnt going in the engine. Though should one assume it was spitting when you first tuned it As well!

Whatever, you should probably re run the autotune.

The thing about filters, it is there for a reason. Guess its just a choice how much you want. :)
User avatar
By gpineau
I wasn't going to run without a filter. I was just going to pull it temporarily to validate what LAV1000 was theorizing.

Regardless I need to re-tune on the road. I want to be sure I have not hurt the power. I know how it was behaving before the screen were put in and I will notice any big differences. That is a week or so away.

I ruined my paint job on the tank. Not sure how. I think the shelf life on my clear coat may have expired. 2 weeks after painting it I spilled gas on it and it was destroyed. I've ordered some single step acrylic but it's on a slow truck from Michigan. If I get anxious I could drive it with just the primer. ...
User avatar
By gpineau
I managed to get our an ride for about a mile before it started snowing again. So not much tuning got done. I did take some time indoors to install a new shock rocker that lowered the bike about 1.25 inches. It feels much better to me now that I can stand it up with both feet on the ground. Also found the windscreen for it and put it on to see how it looks. I'm thinking it looks pretty cool. Cafe racer style.

Waiting for the snow to melt and some warm weather so I can get it out on the road again.
Cc1.JPG (87.67 KiB) Viewed 2708 times
c2.JPG (72.07 KiB) Viewed 2708 times
c4.JPG (83.63 KiB) Viewed 2708 times
c5.JPG (69.63 KiB) Viewed 2708 times
c6.JPG (70.24 KiB) Viewed 2708 times
User avatar
By gpineau
Cylinder 4 was getting very hot. The temperature of it's tail pipe was 100 degrees hotter that the others. thinking I had a bad injector I pulled the tank in preparation of digging down to the air box but thought I would check the plugs first. Glad I did. Plugs 1 and 4 were nearly fouled. Pulled all the plugs, cleaned them and re-gapped them. Problem appears to solved for now. But the question is why are the plugs fouling so quickly.
Perhaps I have it too rich at idle?
Another mystery to be solved. It's come a long way but still can call it a success yet.
20200223_182235.jpg (5.07 MiB) Viewed 2654 times
20190707_160031.jpg (2.67 MiB) Viewed 2654 times
User avatar
By gpineau
Zero in on injector dead time.

Dead time meaning the time when the injector is not flowing when it is told to do so. This is opening lag minus the turn off delay. I was determined to get this right and built an injector tester and measurement jig, (poor man’s version) I spend a few days checking the injectors I was going to use to characterize the flow rate and the dead time.

When I first got all the electrical items done, I was so excited to see it working I just used the default 1 ms for the injector dead time. I proceeded to tune from there.

However, when I used the numbers from my test jig in my motorcycle, I was getting VE values in the 60’s and 70’s at idle. I eventually came to realize the injectors in a stand-alone test jig with a dedicate drivers and dedicate power supply behave differently than injectors in the wild with batteries, alternators and other electronics. Really the only valuable data I got out of the tester was the cc/min number and the opening lag time. And the slope of the voltage correction graph.

I was able to make adjustment to the VE table to make up for the incorrect numbers but when the VE values were so high I suspected that the number was not correct. So, I did an experiment to determine the real dead time of the injectors. This was not my idea but has been practiced by a number of other tuners. And my version goes like this.

Tune the motor at about 2000 RPM the best you can, using simulations injection 1 squirt per cycle.
Record the AFR, kill the engine and in the engine constants menu change to 2 squirts per cycle. Run the engine with 2 squirts and record the AFR.
Compare the 2 AFR numbers that you recorded. If they are close to the same number then you are finished but if not….

Change the value in injector characteristics by adding or subtracting 0.1ms to the dead time. Then repeat the 1 squirt / 2 squirt measurements as described above recording the AFR numbers
Compare the 2 AFR numbers and if the difference between the two numbers is less than it was the first time then you are going in the right direction. You can add/subtract another 0.1ms and do again. If the difference between the two AFRs is greater than before they then the change was in the wrong direction and you need to adjust the other way.

You repeat these steps until the two AFR number approach the same and the difference is near zero. They probably will not ever be exactly the same but close is good enough. When you reach the point in the experiment when the two AFRs cross from rich to lean then you should stop and use that number because it is as close as you are going to get. What I mean by “cross” is that when the result of (AFR1 minus AFR2) changes sign from ( + to – ) or from (– to +) value.

Now if you have a good strong battery and charging system you can switch back to whatever injection scheme you were using and proceed to finish the tune. But if you are like me and using a smaller motorcycle battery you will have a slight change to the dead time due to the extra load that running simultaneous puts on the battery. When I went back to Alternating injection it went a little toward rich and I made another small adjustment to the injector dead time.
User avatar
it's great to see you exploring methods to determine real-world injector latency. 8-) For a comparison in techniques for readers to ponder, the quoted text below is an updated draft I did a couple years ago of how I calculated running latency, which includes both opening and closing, as both values change under different conditions for a different total value.

While I don't normally test my injectors on the bench for data, and just jump directly to the running tests; the biggest benefit to your injector bench-testing is to allow variable voltage for creation of your injector voltage corrections table, which most find is rather important in a good tune. ;) Rock on!
>>> Please provide feedback in order to improve this procedure <<<

Injector Latency Testing and Calculation (Open Time or Dead Time)

This method for determining injector latency compares two sets of pulse width values from two running conditions. The contrast between the two conditions is the number of injections, per injector, per-cycle. If we adjust the running in each condition to the same AFR/Lambda at the same load and RPM, the total fuel flow is assumed to also be the same, and the difference between the values of the two conditions is the effective injector latency.

Set Speeduino to the number of injections, per-injector, per-cycle, to the cylinder count; e.g., 4-cylinder = 4, etc. Select 2 per-cycle if your system is limited to that. Speeduino cannot be in sequential mode for this testing unless your code version allows multiple injections-per-cycle in sequential mode.

Bring the engine up to temperature and allow to stabilize, including voltage. In neutral gear, hold engine speed at a specific target rpm (e.g., 2500 RPM), with EGO (AFR/Lambda) corrections ON. Using a throttle stop, clamp, or wedge may be helpful to hold target RPM steady. As the AFR will slowly waver, the corrections should vary back and forth across zero correction. If necessary, temporarily tune the VE Table cells you are testing in close to the AFR target, so the corrections are smooth and relatively slow. Log stable running at the fixed rpm for several zero-crossings. Review the log and note the injector pulse-width at zero correction as "PWa".

Repeat with minimum injections-per cycle, which is usually "1, simultaneous" or "2, alternating". Again read the pulse width when the O2 correction crosses zero, recording this time as PWb. !! DO NOT DRIVE WITH THESE SETTINGS. RETURN TO YOUR ORIGINAL TUNE SETTINGS BEFORE LOADING THE ENGINE !!

Calculation to separate the known correct fuel flow from the unknown latency (open or dead time):
(#a * PWa) - (#b * PWb) / (#a - #b) = Latency

#: Number of injections (per injector, per-cycle)
PW: Pulse Width (at zero crossing)

Example using a 6-cylinder engine and system code limited to 1 or 2 injections per-cycle:
Test "a": Set-up Speeduino for 2 injections per-cycle simultaneous (2 per-injector per-cycle). Run, fully warmed, at fixed 2500 rpm while logging. On log review, when the EGO correction to the target AFR is zero, the PW is 1.6ms.
Test "b": Speeduino is reconfigured to 2 injections per-cycle alternating (1 per-injector per-cycle), and run under the exact same conditions. On log review, the PW at zero correction was 2.3ms.

(2*1.6) - (1*2.3) / 1 = 0.9 ms

Notes: 1) Most injectors exhibit non-linear (odd) latency time at very small pulse widths. Engines with very large injectors may require loading the engine at a steady load and RPM in order to bring the injectors into the linear operating region.
2) MegaLogViewer (free or registered) is suggested for reviewing logs and test results easily and accurately, and with greater safety when not running or driving the vehicle. Registered versions of TunerStudio are able to review logs.
3) If your system is not capable of switching injection modes, simple change of injections-per cycle works well also, e.g., testing at 2-squirts and then at 4-squirts per-cycle. Remember, the point is to make two (or more) tests with exactly the same conditions, except for number of injections per-cycle, revealing differences caused by incorrect latency across a different number of injections.
4) After completion, the comparative test may be repeated with a loaded electrical system (reading lower voltage), finding the first value of the injector voltage correction table.

User avatar
By gpineau
Nearly done. Close enough to call it a finished project.
The base tune spark advance is not correct. The advance at high rpm actually goes down rather than UP. I replaced the spark advance with one I generated using the megasquirt table generator.

The O2 sensor heater burned out so I replaced the sensor with a new one. Also found that the autotune warm up enrichment had set the warmup temperature to 174 degrees. Causing the ECU to switch in and out of warmup. I change the warmup enrichment to terminate at 116 degrees.

With the new advance table and the new o2 sensor, went for a tuning ride. Because the last tune attempt was done with a defective O2 sensor the bike was running way too rich. After about 10 minutes of tuning at various RPM and loads the bike is running better than ever. I'm not real good at speed shifting but it is very easy to hit 80 mph before you realize it. It is an absolute thrill to find an open stretch of straight road and go through the gears. It accelerates very well and pulls hills with little effort. I know my other Connie and my V-Star would not be able to keep up.

There is still some tweaking to be done but for the most part I am calling the project finished. Unless there is a cool exhaust or raised handle bars or some really amazing improvement I won't be posting as often.

I learned a lot, enhanced my vocabulary of 4 letter words, and broke a few tools. God only knows how much money I spent on solutions that didn't work out. But all in all I had fun and I feel a level of accomplishment.

By JHolland
gpineau wrote:
Thu Apr 30, 2020 5:55 pm
The O2 sensor heater burned out so I replaced the sensor with a new one.
Its a ceramic heater, its unlikely to have burnt out, it most likely cracked, its usually caused by bringing the power up too fast when cold or while condensation is present. There its also an issue with some LSU4.2 controllers that copied the schematic from a leaked preliminary datasheet. Its worth investigating the problem or it could get expensive.

Whats the next project?
M43 turbo

are any of you running sequential ignition or coil[…]

Writing up my experience in case it helps others. […]

Rev counter question

Thanks very much for looking at that in detail. I[…]

So since I still struggle with my signal from the[…]

Still can't find what you're looking for?