Circuit to trick ECU
Circuit to trick ECU
Author
Discussion

guitarcarfanatic

Original Poster:

1,894 posts

152 months

Monday 9th October 2017
quotequote all
Long story short, the GM cold start values are a bit stingy on my Saab 9-3 tid in moderate weather. When really cold, no issues and again no issues when warm. But can be temperamental in moderate weather unless you disconnect the temp sensor which tricks the ECU into a richer mix.

The documented solution is to remap the cold start values. Solves the issue - apparently the GM original values didn't account for engine wear/tear.

My Saab is a bit of a beater and i'm looking at a simpler fix - could I wire a circuit in line with the temp sensor that gave the ECU a dummy resistance value to trick it using the better mix? I was thinking on a relay so it activated at the turn of the ignition for 1 minute. A bit of logic that states not to activate if previously activated within 4 hours.

I quite like hobby electronics and playing around with this sort of thing. Is it easily possible? I was thinking a relay timer chip but just wanted to check no obvious pitfalls!


GreenV8S

30,956 posts

301 months

Monday 9th October 2017
quotequote all
That sounds simple enough to do if you're happy with simple electronics. My main reservation is that hobby grade electronics may not be very robust against electrical noise, dirt and heat so you might need to keep that in the cabin and give it some electrical protection. The temp sender is probably a simple thermistor and you can insert/remove an extra resistance easily using a transistor - or a relay, if you're more comfortable with that technology. It should be possible to do it without breaking the circuit during the changeover.

It's a bodge, but for a beater that wouldn't worry me.

Dire Grammes

40 posts

96 months

Monday 9th October 2017
quotequote all
Are you trying to solve a starting problem or a running problem at medium temperatures?

guitarcarfanatic

Original Poster:

1,894 posts

152 months

Monday 9th October 2017
quotequote all
Only a starting issue (takes about 5 seconds longer than it should). The accepted fix is to up the values in the ECU for the cold start, but it's £100+ to get someone to chuck it on an ECU reprogrammer.

I thought it would be more fun to engineer a solution with a couple of quids worth of components.


GreenV8S

30,956 posts

301 months

Monday 9th October 2017
quotequote all
If that was me I'd start by finding out the electrical characteristics of the sensor and the circuit to it. I suspect you'll find it is a thermistor connected into a voltage divider circuit powered by the CPU. In that case you will probably find the resistance goes down as the temperature goes up. I assume you would want to give the ECU a 'colder' signal during the problematic temperature range, which means adding a series resistance. You can calculate or measure the current through the sensor to see whether you can afford to power your device directly from the sensor circuit. If not, you will need to find whether either side of the circuit is at battery +ve or -ve so that you can power your add-on from that to the other battery terminal. With a little ingenuity you may be able to have your circuit arm itself based on the thermistor reading at power-up. You'd disable it with a timer. It seems to me it should be possible to do all this with simple analog logic. For testing, I'd just add the extra resistance in series with the sensor and use a momentary normally-closed switch to bypass it for normal running just to check whether the concept works before you try to automate it.

Dire Grammes

40 posts

96 months

Monday 9th October 2017
quotequote all
guitarcarfanatic said:
Only a starting issue (takes about 5 seconds longer than it should). The accepted fix is to up the values in the ECU for the cold start, but it's £100+ to get someone to chuck it on an ECU reprogrammer.

I thought it would be more fun to engineer a solution with a couple of quids worth of components.
In that case, here you go.
One resistor (330 Ohm) is the temperature sensor and the other resistor (1800 Ohm) is added for the cold start hack with a relay
Ignore the resistor values as they are for a TVR
You will need to work out what size resistor is to be used for the cold start hack




Edited by Dire Grammes on Monday 9th October 19:52

guitarcarfanatic

Original Poster:

1,894 posts

152 months

Tuesday 10th October 2017
quotequote all
Thanks guys, some good for thought. Will get testing on the existing sensor and determine the values I need to simulate smile

AW111

9,674 posts

150 months

Tuesday 10th October 2017
quotequote all
If it started ok with the temperature sensor disconnected, can you just use a timed relay to disconnect it?
I'm tinkering with an idea to use the sensor reading to drive the relay.


guitarcarfanatic

Original Poster:

1,894 posts

152 months

Tuesday 10th October 2017
quotequote all
AW111 said:
If it started ok with the temperature sensor disconnected, can you just use a timed relay to disconnect it?
I'm tinkering with an idea to use the sensor reading to drive the relay.
If I do this, it throws an error code as the ECU registers a fault. The timed relay has to simulate the sensor in a colder state smile

guitarcarfanatic

Original Poster:

1,894 posts

152 months

Tuesday 10th October 2017
quotequote all
To add...

When the sensor is disconnected, the ECU assumes the worst and starts based on a -30C temp range.

AW111

9,674 posts

150 months

Tuesday 10th October 2017
quotequote all
guitarcarfanatic said:
If I do this, it throws an error code as the ECU registers a fault. The timed relay has to simulate the sensor in a colder state smile
Ok.


For reference, both the inlet air and coolant sensors on my MR2 read around 20k at -20C, 10k ohm at zero C, 300 ohm at 100C.

Dire Grammes

40 posts

96 months

Tuesday 10th October 2017
quotequote all
guitarcarfanatic said:
AW111 said:
If it started ok with the temperature sensor disconnected, can you just use a timed relay to disconnect it?
I'm tinkering with an idea to use the sensor reading to drive the relay.
If I do this, it throws an error code as the ECU registers a fault. The timed relay has to simulate the sensor in a colder state smile
Due to it throwing an error code you can't use the above circuit I posted as the temperature sensor circuit would momentarily go open circuit as the relay contacts switched from temp sensor to resistor

You can use a very similar relay circuit that switches a resistor in parallel with the temperature sensor during cranking, you will only need a standard 4 terminal relay

You could also use one of these and wire the second sensor into a cold start circuit
http://www.ebay.com/itm/40MM-LCD-Car-Water-Tempera...


AW111

9,674 posts

150 months

Tuesday 10th October 2017
quotequote all
Dire Grammes said:
Due to it throwing an error code you can't use the above circuit I posted as the temperature sensor circuit would momentarily go open circuit as the relay contacts switched from temp sensor to resistor
Easy. Wire the extra (2k?) resistor in series with the temperature sensor and use a NC relay to short out the extra resistor unless cold start is enabled.
Sensor always connected, so no ECU codes.

Dire Grammes

40 posts

96 months

Wednesday 11th October 2017
quotequote all

IGNORE THE NONESENSE I HAVE POSTED BELOW ABOUT WIRING A RESISTOR IN PARALLEL WILL GIVE THE OPTIONS OF HIGHER OR LOWER RESISTANCE VALUES. LOWER YES, HIGHER NO. THANKS TO Mr2Mike FOR POINTING OUT MY MISTAKE


AW111 said:
Dire Grammes said:
Due to it throwing an error code you can't use the above circuit I posted as the temperature sensor circuit would momentarily go open circuit as the relay contacts switched from temp sensor to resistor
Easy. Wire the extra (2k?) resistor in series with the temperature sensor and use a NC relay to short out the extra resistor unless cold start is enabled.
Sensor always connected, so no ECU codes.
Yes very good idea but, the problem with wiring a resistor in series with the temp sensor by whatever means will only give the option of being able to increase the total resistance value being sent to the ECU
If you read my above post you will notice that I have suggested a circuit with a relay that switches a resistor in parallel that will give the options of higher or lower resistance values when cranking
What we could easily overlook is that a problem could be created with all of these methods. Due to the engine starting OK when hot or cold as it does do with its standard circuit as is right now, when a resistance value is changed so as to overcome the starting problem at medium temperatures it may result in the engine not starting when hot or cold

Above I have posted a method of adding a second temperature sensor into a coolant hose, by adding a second sensor the OP could design, build and wire an electronic circuit that would switch in a different resistance value to the ECU only when the engine is at the medium problematic temperature

AW111 I think it would be a good idea for the OP to add a second resistor in series with the temp sensor and test it out through all temperatures as in hot, cold and medium. Should the engine start OK at all temperatures the OP could use your method of using a NC/NO relay that would never open circuit the temp sensor signal and throw an error code

What do you think?

Edited by Dire Grammes on Thursday 12th October 17:44

PositronicRay

28,161 posts

200 months

Wednesday 11th October 2017
quotequote all
If a code is logged on a beater is it really a problem?

Dire Grammes

40 posts

96 months

Wednesday 11th October 2017
quotequote all
PositronicRay said:
If a code is logged on a beater is it really a problem?
Will the engine light stay on with this code?

AW111

9,674 posts

150 months

Wednesday 11th October 2017
quotequote all
Dire Grammes said:
Yes very good idea but, the problem with wiring a resistor in series with the temp sensor by whatever means will only give the option of being able to increase the total resistance value being sent to the ECU
If you read my above post you will notice that I have suggested a circuit with a relay that switches a resistor in parallel that will give the options of higher or lower resistance values when cranking
What we could easily overlook is that a problem could be created with all of these methods. Due to the engine starting OK when hot or cold as it does do with its standard circuit as is right now, when a resistance value is changed so as to overcome the starting problem at medium temperatures it may result in the engine not starting when hot or cold

Above I have posted a method of adding a second temperature sensor into a coolant hose, by adding a second sensor the OP could design, build and wire an electronic circuit that would switch in a different resistance value to the ECU only when the engine is at the medium problematic temperature

AW111 I think it would be a good idea for the OP to add a second resistor in series with the temp sensor and test it out through all temperatures as in hot, cold and medium. Should the engine start OK at all temperatures the OP could use your method of using a NC/NO relay that would never open circuit the temp sensor signal and throw an error code

What do you think?
It all depends on what type of sensor it is. The most commonly used sensor is / was an NTC sensor, where the resistance decreases non-linearly with temperature. In 80s/90s Toyotas, the resistance is in the 10-30 kOhm range at zero C, and a few hundred Ohm at 100 C.
If the OP posts make/model /year, I can probably find the sensor specs.

My plan is to have the relay short-circuit the extra series resistor unless cold start was needed. In this state the circuit is electrically identical to the original factory state.
When cold start is needed,the relay opens, increasing the total resistance to (sensor+resistor). Only a NC relay is needed.

TooMany2cvs

29,008 posts

143 months

Wednesday 11th October 2017
quotequote all
Of all the marques that might have cocked up in their cold-weather testing, I'm really not sure Saab are top of the list of likelies...

Think I'd be figuring what the real problem is, rather than putting a lot of energy into working around it.

Dire Grammes

40 posts

96 months

Wednesday 11th October 2017
quotequote all
AW111 said:
Dire Grammes said:
Yes very good idea but, the problem with wiring a resistor in series with the temp sensor by whatever means will only give the option of being able to increase the total resistance value being sent to the ECU
If you read my above post you will notice that I have suggested a circuit with a relay that switches a resistor in parallel that will give the options of higher or lower resistance values when cranking
What we could easily overlook is that a problem could be created with all of these methods. Due to the engine starting OK when hot or cold as it does do with its standard circuit as is right now, when a resistance value is changed so as to overcome the starting problem at medium temperatures it may result in the engine not starting when hot or cold

Above I have posted a method of adding a second temperature sensor into a coolant hose, by adding a second sensor the OP could design, build and wire an electronic circuit that would switch in a different resistance value to the ECU only when the engine is at the medium problematic temperature

AW111 I think it would be a good idea for the OP to add a second resistor in series with the temp sensor and test it out through all temperatures as in hot, cold and medium. Should the engine start OK at all temperatures the OP could use your method of using a NC/NO relay that would never open circuit the temp sensor signal and throw an error code

What do you think?
It all depends on what type of sensor it is. The most commonly used sensor is / was an NTC sensor, where the resistance decreases non-linearly with temperature. In 80s/90s Toyotas, the resistance is in the 10-30 kOhm range at zero C, and a few hundred Ohm at 100 C.
If the OP posts make/model /year, I can probably find the sensor specs.

My plan is to have the relay short-circuit the extra series resistor unless cold start was needed. In this state the circuit is electrically identical to the original factory state.
When cold start is needed,the relay opens, increasing the total resistance to (sensor+resistor). Only a NC relay is needed.

Dire Grammes

40 posts

96 months

Wednesday 11th October 2017
quotequote all
AW111 said:
Dire Grammes said:
Yes very good idea but, the problem with wiring a resistor in series with the temp sensor by whatever means will only give the option of being able to increase the total resistance value being sent to the ECU
If you read my above post you will notice that I have suggested a circuit with a relay that switches a resistor in parallel that will give the options of higher or lower resistance values when cranking
What we could easily overlook is that a problem could be created with all of these methods. Due to the engine starting OK when hot or cold as it does do with its standard circuit as is right now, when a resistance value is changed so as to overcome the starting problem at medium temperatures it may result in the engine not starting when hot or cold

Above I have posted a method of adding a second temperature sensor into a coolant hose, by adding a second sensor the OP could design, build and wire an electronic circuit that would switch in a different resistance value to the ECU only when the engine is at the medium problematic temperature

AW111 I think it would be a good idea for the OP to add a second resistor in series with the temp sensor and test it out through all temperatures as in hot, cold and medium. Should the engine start OK at all temperatures the OP could use your method of using a NC/NO relay that would never open circuit the temp sensor signal and throw an error code

What do you think?
It all depends on what type of sensor it is. The most commonly used sensor is / was an NTC sensor, where the resistance decreases non-linearly with temperature. In 80s/90s Toyotas, the resistance is in the 10-30 kOhm range at zero C, and a few hundred Ohm at 100 C.
If the OP posts make/model /year, I can probably find the sensor specs.

My plan is to have the relay short-circuit the extra series resistor unless cold start was needed. In this state the circuit is electrically identical to the original factory state.
When cold start is needed,the relay opens, increasing the total resistance to (sensor+resistor). Only a NC relay is needed.
Yes I understand your plan but I don't understand how your relay will know when it is needed to switch in the 2nd resistor, a switching circuit for the relay is needed, I explain it all above
Something I have noticed and have done so many times in the past, you, I and the OP have delved too deeply and overlooked the obvious -
A variable resistor solves the problem and is a very simple solution, the resistor can be fitted to the dashboard and wired directly across or in series with the temperature sensor, the resistors best working settings can be marked on its knob or facia plate and turned to these best settings as and when needed, obviously the variable resistor would be left in the 0 Ohms position when not needed
https://www.ebay.com/p/1k-2k-5k-10k-Ohm-Linear-Tap...



What do you think?