My fan mod is mocking me
Thread Starter
Joined: Apr 2008
Posts: 2,023
Total Cats: 19
From: Outside Portland Maine
I installed the fan mod a while ago, and once I got it working, I sort of stopped thinking about it. I recently noticed my coolant temps climbing at idle, so I checked and it wasn't working.
Turns out it works, when megasquirt decides to turn it on. For some reason it doesn't turn it on when it's supposed to.
If I play with the on and off temps in megatune, I can get it to come on, but whether or not it actually comes on seems to depend on absolutely nothing except MS's mood.
Anybody got any ideas? Doesn't seem like a hardware problem because whenever the indicator is green in megatune the fan is on, and as soon as the indicator shuts off, the fan shuts off.
Turns out it works, when megasquirt decides to turn it on. For some reason it doesn't turn it on when it's supposed to.
If I play with the on and off temps in megatune, I can get it to come on, but whether or not it actually comes on seems to depend on absolutely nothing except MS's mood.
Anybody got any ideas? Doesn't seem like a hardware problem because whenever the indicator is green in megatune the fan is on, and as soon as the indicator shuts off, the fan shuts off.
Thread Starter
Joined: Apr 2008
Posts: 2,023
Total Cats: 19
From: Outside Portland Maine
Sure, I don't know what exactly you're looking for in the log, so here is a random one from Sunday where the temp hovers around the 'fan on' temp.
Sorry, I forgot to ask which output the fan is on. Let me know and I'll have a look.
Thread Starter
Joined: Apr 2008
Posts: 2,023
Total Cats: 19
From: Outside Portland Maine
How can you tell that they read high? and how do I fix that?
and shouldn't the fan come on anyway, since it should be triggered by those high fan values?
and shouldn't the fan come on anyway, since it should be triggered by those high fan values?
Joined: Sep 2005
Posts: 34,402
Total Cats: 7,523
From: Chicago. (The less-murder part.)
JS0 is bit 5 of porta (counting from 0). So decode porta in the logs, and you'll get the status of that pin.
edit: CLT is indeed reading awfully high, but bear in mind that this could simply be from having the wrong thermfactor.inc file on the laptop while doing the logging- what MegaTune writes to the log and what the MS works with internally are different things, based upon independent scaling of the raw ADC data. (edit 3: I don't think this is an .inc problem.)
edit 2: In that log, JS0 turns on at 1838.866 when CLT goes from 219 to 223. It turns off at 1993.315 when CLT falls from 207 to 203, suggesting a 10 degree hysteresis.
This suggests that the fan mod is behaving in a coherant fashion- the scaling of the CLT sensor is simply, as they say, whack. Perhaps incorrect data was used when EasyTherming the S19 file during the last firmware update?
edit: CLT is indeed reading awfully high, but bear in mind that this could simply be from having the wrong thermfactor.inc file on the laptop while doing the logging- what MegaTune writes to the log and what the MS works with internally are different things, based upon independent scaling of the raw ADC data. (edit 3: I don't think this is an .inc problem.)
edit 2: In that log, JS0 turns on at 1838.866 when CLT goes from 219 to 223. It turns off at 1993.315 when CLT falls from 207 to 203, suggesting a 10 degree hysteresis.
This suggests that the fan mod is behaving in a coherant fashion- the scaling of the CLT sensor is simply, as they say, whack. Perhaps incorrect data was used when EasyTherming the S19 file during the last firmware update?
Last edited by Joe Perez; Sep 16, 2008 at 10:04 PM.
Thread Starter
Joined: Apr 2008
Posts: 2,023
Total Cats: 19
From: Outside Portland Maine
The coolant temps in the datalog are about what I was seeing on the display in MS, and as they climbed above about 215, the dash needle started to climb as well.
I was having to shut my car off whenever it would have to idle because the fan wouldn't come on to keep it cool.
The driving scenario in this particular log was me driving through a town at 25mph stuck behind somebody going really slow. The engine wasn't getting much airflow and the fan wouldn't come on, so it got pretty warm.
I was having to shut my car off whenever it would have to idle because the fan wouldn't come on to keep it cool.
The driving scenario in this particular log was me driving through a town at 25mph stuck behind somebody going really slow. The engine wasn't getting much airflow and the fan wouldn't come on, so it got pretty warm.
Joined: Sep 2005
Posts: 34,402
Total Cats: 7,523
From: Chicago. (The less-murder part.)
I think what's happened is that the MegaSquirt's internal calibration table for the CLT sensor has been lost somehow. Either it just up and corrupted itself, or some bad data got entered in EasyTherm the last time you did an update.
Let me explain how this is possible. When you ran the S19 through EasyTherm, it modified some scaling data inside the S19 file which then got burned to the CPU. As a separate process, it also wrote out the thermfactor.inc file, which you copied to MegaTune.
In actual operation, the CLT sensor is read by an ADC and expressed as an 8 bit number, from 0 to 255. The MS (having had its firmware run through EasyTherm) knows what actual temperature each one of these raw numbers corresponds to.
However, the datastream that it sends out to MegaTune (which drives the gauges and the log) is not the decoded temperature, but the raw ADC value. MegaTune does basically the same process as the MS did- it looks in the thermfactor.inc file and figures out what temperature corresponds to the ADC number that it's getting, and this is what it displays and logs. If it seems that this is stupid, redundant, unnecessary, and overcomplicated, it's because it is.
So, if the scaling inside the MS is somehow corrupt, the MS will behave incorrectly with regard to temperature-driven events. However, since the thermfactor.inc file in your MegaTune directory is not corrupt, you will see the correct temperature in the logs and on the gauge. It makes you think that the MS knows what the correct temperature is, however this is not the case. The coolant temp in the log will be eactly the same as what you saw on the display, but the key point is that neither of these are a guarantee that the MS properly scaled the CLT data for its own internal calculations, since both the log and the display are driven by raw data that is decoded externally. Does this make sense? (It's counterintuitive, I know.)
What I suggest is that you re-load the firmware from scratch, starting with a clean S19 and running it through EasyTherm. (Don't forget to unplug your igniter, re-load your MSQ when done, yadda yadda...)
Thread Starter
Joined: Apr 2008
Posts: 2,023
Total Cats: 19
From: Outside Portland Maine
Does anybody have a link to a good copy of the high resolution firmware? I think I lost my file and it took me forever to find it the first time. All the links in the sticky threads here are broken.
Joined: Sep 2005
Posts: 34,402
Total Cats: 7,523
From: Chicago. (The less-murder part.)
Does anybody have a link to a good copy of the high resolution firmware? I think I lost my file and it took me forever to find it the first time. All the links in the sticky threads here are broken.
Can you point me to the broken links you refer to?
Joined: Sep 2005
Posts: 34,402
Total Cats: 7,523
From: Chicago. (The less-murder part.)
I couldn't even make an educated guess as to which is correct.
MS2 is different - it sends the decoded value to MegaTune, which lets you get away with not needing any INC files for your sensors.
Thread
Thread Starter
Forum
Replies
Last Post
StratoBlue1109
Miata parts for sale/trade
21
Sep 30, 2018 01:09 PM









