Software opinions

PRIME PULSE table is used to define a single fuel injection event when the Primary trigger sensor signal is first recognized.

That’s from V2 help. Can you make in V3 so the prime pulse happens during fuel pump after start activity so before you even start any cranking? I find it helps start the engine a lot on another ecu, the start is literally instantaneous. Something I could never achieve on EMU.

Of course it would be great if you could choose if you want the prime pulse like it was in V2, during fuel pump priming, or even after adjustable delay after ignition on.

Some bug/thoughts report after testing the V3 yesterday :slight_smile:
So far the V3 is a HUUUGE upgrade from V2!! Mainly the DBW functionality a ACC enrichment is so much better and easier to understand. But we found few bugs:

  1. There is a bug with the VVT tables and Y/X axis. It is hard coded to have RPM on the Y axis and MAP on the X-axis even, if you select “Load on Y axis” in the configuration. All other windows change the logic besides the VVT windows.

  2. When coding Fn functions, it would be nice to have the “invert output” from V2. When switching something with the H-bridge to ground, it is neccesary to invert the output. Current solution is to invert all parameters to the opposite logic (Greater = LESS etc.). Little bit annoying

  3. Cycling idle - still a little bit confused with this option. My first thought was, it could be great for switching spark cut (rotational idle) after some hard pulls with a turbocharged car to lower EGTs. We were using this rotational idle quite a bit on V2 for cooling down the exhaust. It would be great, if you could program an function (for example if EGT>900°C) to switch on the rotational idle. I think the function now only raises the airflow for better coolant flow (which is great), but this would be a very nice addition. :slight_smile: Also this contains a little bug. We tried to switch this function to always on and then disable and it kinda stuck on high idle and dropped to normal after deactivating all options in the window.

  1. Added to the bugtracker
  2. We will add invert output function
  3. I’m not sure if I understand you correctly.

The idea for Cycling idle is to enable on user request independent on the main idle function.
So you can create a function to activate it when egt is high or coolant temperature is high. Then when you come to idle, the Cycling idle is activated instead on the main idle strategy.

According bug we will check it.

1 Like

Do you want to have the option to spark cut for Cycling idle to allow fuel flow into to engine?

Yeah, that would be great. In V2 this type of idle was called “Ignition cut”. Some ECUs call this “rotational idle”. This function dramatically lowers the EGT after hard pulls or ALS and cools down rapidly the heat soaked engine/ exhaust/ turbine. It is VERY effective for cooling.

So my idea is (example): IF egt lower, than <850C = normal idle. IF egt higher, than >850C, turn on ignition cut idle. And time delay (run this idle for x seconds) could be achieved with the help of Fn function.

So we just add option to cut ignition for cycling idle.
The condition could be easily defined by function.

2 Likes

The problem with prime pulse after switching ignition on is that there might be no pressure in the fuel lines.

From our research, the priming when the first trigger tooth is detected works much better as in most case it is after fuel pump priming and the pressure is built. So it is very deterministic.

In V3 the trigger system was rewritten in 80% to get the spark as soon as possible (in comparison with the V2).
If the triggers allow sync without cam sync (eg. 60-2, 36-1, 12+1), using wasted spark during cranking + prime pulse allows to start the engine immediately.

I will prepare document how to set up trigger and fuel to get very fast startup.

3 Likes

The new strategy lets you achieve a MUCH faster start, especially with a K24 which tends to be slower cranking/starting.

I confirm too, honda B series and K series starts very well on the new strategy, much better than on the V2

Has anyone noticed the knock sensor CEL doesn’t seem to activate? I have output configured and checked the CEL, but knocking (by dropping the threshold voltage) doesn’t seem to cause the CEL to light up, despite the knock log detecting knock

It works for me using Vw/Audi dash with canbus. But I can’t speak to other configurations.

test.emub3 (58.3 KB)
test.emublog3 (614.7 KB)

I worked for a while on idle settings, and i cannot understand why the idle airflow pid correction is permanently at 10% with everything 0 at the pid settings. I also tried different values for the pid controller other than 0 everywhere, and it still stays at 10 permanently that results at very high idle.

I have to say, that in the V3, a lot of functions have moved into pid controllers. I am not sure this is the right direction.

For PWM valves the PID output is clamped to PWM MIN DC and PWM MAX DC what seems now wrong.

Here is a link for fixed firmware:

Please remember the AIR % pid corrects the air % based on PID ignition correction.

And please trust me the current PID based strategies works much much better than any V2 strategy.

2 Likes

I agree…the current idle strategy is a hudge improvement to V2.
With V2 i needed a lot of logic and extra signals like steering pump pressure switch to get a strong and responsive but not too nervous idle. The ignition part was too uncontrolable.
On V3 with only well tuned PIDs i got OEM like results…without any extra signals. From my point of view u did a great job there.

But i noticed one strange interaction between idle and overrun fuelcut in 3.026:
If u are in idle and then increase engine rpm to >overrun threshold without useing padel (e.g. shifting into lower gear or vehicle gets faster in downhill)…the engine stays in idle control and fuelcut doesn’t get active. Controller then runs into its limit.
In downhill, where u want to use engine brake, this is not nice.

1 Like

I will check it as it looks like a bug

I finally got V3.026 running on my 1JZ and noticed the same thing.

Hi, Gear Shift Strategy can work with DSG?

No, DSG strategy has own cut and blip that mimic the OEM style to get as fast as possible gear transitions.

I upgraded to the firmware you supplied and the pid is now ok, but. Look at this log please. Notice towards the end of the log. I have armed state air flow set at 22% flat up to 2600rpm. But log shows 27,5% at 1300rpm and it doesn’t return to active state, unless i lower the armed state manually.
Then if you bo back earlier in the log, i have 21% in the active state table for 860rpm target with all pids off, and it stays at 26,5% with active state.
Where are these numbers coming from? They don’t match neither the armed state table, or the active state table.
test2.emublog3 (836.1 KB)

It is effective DC.

For PWM solenoid you enter DC to the tables and this DC is the range between MinDC and MaxDC.

For example if the minDC is 20% and maxDC is 100% then 0% DC in the table, gives you 20% of effective DC, 50% gives you 60% DC and so on.

The log value is misleading as it shows the real DC that controls the solenoid.

I add another log channel with the effective DC , and airflow % will be the value without “normalisation”