Ford Power Stroke Nation banner

How the PCM and IDM work

66K views 177 replies 50 participants last post by  Garbage_Mechanic 
#1 ·
From another thread maybe you guys that have a much better understanding then I do of this can school up the masses on how the pcm and idm work and how they work together? Make me smarter then the PCM is the brain and the IDM is the electric engine to fire the injectors.

Tom
 
#142 ·
I am having pcm problems and one guy said it could be the grounding tab on the pcm. I didnt see one. He said it was on the bottom bolt on the pcm bracket in the cab. Is this really true? I cant see were a pcm grounding tab would connect to the pcm anyway. The only connections is to the pins that connected to the connector thought the firewall.
 
#143 ·
The grounding tab is a small spring that is connected to the mounting bolt area. A lot of people drop it out when installing a chip never to be found again. Look at the holder and you can see a slot from the lower bolt hole into the holder that the spring would fit and rub on the case of the PCM.

As far as the limits of what you can do in the cylinder those will never change so once those are reached all the electronics in the world is not going to fix anything. The truth is that it's going to take getting all the fuel into the cylinder in ~ 2 ms to make high power at higher RPM's. That is where the HEUI system gets itself into trouble. If you can get the injector to deliver ~250 mm3 fuel in ~2 ms and get it to repeat that at 4000 RPM the 7.3L will come around in the power department. That is about the current limit for a big single charger fuel only motor. Twins can use more fuel as can a NOS motor. At 5000 RPM you got to do it quicker! In my mind that is step #1 to getting the problem resolved. Now if you want to run the power up to where current Cummins and Duramaxs are at the fuel rate will need to be higher ~ 300 mm3 @ 2ms.

With enough money it might happen but so far I've not seen or heard of a HEUI injector system getting that done.
 
#144 ·
Golfer,
This just came to mind and I was wondering if you guys have any thoguths on this.
A salesman trying to set me up to sell reman IDM's told me that as the trucks age they tend to loose their ground connections. And when and IDM 'goes out' and you replace it with a reman and it doesn't work, it's the grounds causing that. He said the IDM's adjust, or learn to deal with the poor, diminishing grounds over time. And the new IDM wants good fresh grounds.
I have no electronics knowledge so I don't know whether to believe him or not.
From your research, is this even possible with the IDM?
 
#145 ·
Grounds

Jim, there is no "learning"; one could say that there is compensation of sorts, but not in a corrective way.
With the road salt used up noth, you will see way more grounding problems than we ever will.
The IDM case grounds via the bracket / bolts and R&R'ing them will restore contact. I have measurud as much as 75 volts on ungrounded cases !
 
#147 ·
Does it really matter about chassis ground to the case? There is a common electircal ground between the PCM and IDM that is isolated from the chassis and the IDM provides both positive and negative to the Injectors. Just curious to see what problems are caused from the case of the IDM floating....
 
#151 ·
My head is reeling lol...

But still, could it be possible to either re-engineer the electronics in the injector to act faster/stronger with a given voltage or heck, even re-engineer the entire IDM to new standards to allow to do its thing faster?

When will the factory IDM's internal transformers start to become a limitation in terms of getting enough transformed current through to the injectors? I assume thats how it does it.. I know of no other way to increase voltage by 8-10 times...

Or am I totally missing something.

Sweet thread
 
#152 ·
When will the factory IDM's internal transformers start to become a limitation in terms of getting enough transformed current through to the injectors? I assume thats how it does it.. I know of no other way to increase voltage by 8-10 times...

Or am I totally missing something.
It is minature hamsters and Pixie dust.... that's why it quits working when it gets wet because the hamsters drown.

Sorry, had to make a smare a$$ remark in this thread for some unknown reason.... I miss Charles!
 
#153 ·
Well no matter how fast you make the electronics (electricity is pretty fast already, lol), you still will not overcome fluid dynamics, it can only move so fast and in certain instances forcing it to go faster at a higher pressure will actually work against you, so i've heard. Sure you can enlarge passages and such, but there is a limit. As the RPM's get higher, it's just harder to move both fuel and oil into and out of the injector in the 48* of crank rotation needed (electronically less)

Or, just make some slugs out of steel that fits in the head and a duramax injector goes inside that, then never worry about high pressure oil or rev limitations again.
 
#156 ·
I support your theory, I've always thought you could "adjust" injector latency by adding more ICP, but I think you will find that the guys with a flow bench can disprove this; something about poppets floating at high pressures. That's not to say that this can't be overcome eventually, but I don't think it's a viable solution yet.

Also the HEUI 466 and 530's run the same rail pressure or close to what 444's run. The nozzle spring rate is 3650psi.

There's also something to be said about being able to "scale" the fuel correctly throughout a given RPM range. Wouldn't it be nice to have 4ms of adjustable PW to 5000rpm without the need to cross fingers, light candles and chant to the IDM gods?
 
#157 ·
There's also something to be said about being able to "scale" the fuel correctly throughout a given RPM range. Wouldn't it be nice to have 4ms of adjustable PW to 5000rpm without the need to cross fingers, light candles and chant to the IDM gods?
The linear fueling thing.... I'm doing that now. But my question to you is what good is 4ms of PW at 5000 rpms? Think overlapping injection events and time to hit the piston bowl.....
 
#163 ·
Quite possibly. Like I said, it was a LONG time ago and I wasn't sure if I even remembered it correctly. It just seemed to me that it was 3800.

Dave, thanks for correcting me on that. I always defer to the knowledge and opinions of those who understand better than I. :bowfast: I'll make sure not to make the same mistake twice. :D
 
#164 ·
All you guys working on tuning. Here is something i recently ripped from the IDM ROM.

Sorry about the table alignment (i'll fix that when i fugure out what it is)

If you look closely at the table you will notice that every other entry is limited in range to 7. That is 0-7 which may or may not represent 8 injectors.

I have no clue what this table is yet.


EE87 .byte 0x00,0x01,0x00,0xC8,0x03,0xE8,0x00

EE8E .byte 0x02,0x00,0xC8,0x04,0xB0,0x00,0x04,0x01
EE96 .byte 0x90,0x00,0xC8,0x00,0x08,0x01,0x90,0x01
EE9E .byte 0x90,0x00,0x10,0x01,0x90,0x05,0x78,0x00
EEA6 .byte 0x20,0x01,0x90,0x02,0x58,0x00,0x40,0x01
EEAE .byte 0x90,0x03,0x20,0x00,0x80,0x01,0x90,0x03
EEB6 .byte 0xE8,0x01,0x01,0x01,0x90,0x04,0xB0,0x01
EEBE .byte 0x02,0x01,0x90,0x06,0x40,0x01,0x04,0x02
EEC6 .byte 0x58,0x00,0xC8,0x01,0x08,0x02,0x58,0x01
EECE .byte 0x90,0x01,0x10,0x02,0x58,0x05,0x78,0x01
EED6 .byte 0x20,0x02,0x58,0x02,0x58,0x01,0x40,0x02
EEDE .byte 0x58,0x03,0x20,0x01,0x80,0x02,0x58,0x03
EEE6 .byte 0xE8,0x02,0x01,0x02,0x58,0x04,0xB0,0x02
EEEE .byte 0x02,0x02,0x58,0x06,0x40,0x02,0x04,0x04
EEF6 .byte 0xB0,0x00,0xC8,0x02,0x08,0x04,0xB0,0x01
EEFE .byte 0x90,0x02,0x10,0x04,0xB0,0x05,0x78,0x02
EF06 .byte 0x20,0x04,0xB0,0x02,0x58,0x02,0x40,0x04
EF0E .byte 0xB0,0x03,0x20,0x02,0x80,0x04,0xB0,0x03
EF16 .byte 0xE8,0x03,0x01,0x04,0xB0,0x04,0xB0,0x03
EF1E .byte 0x02,0x04,0xB0,0x06,0x40,0x03,0x04,0x05
EF26 .byte 0x78,0x00,0xC8,0x03,0x08,0x05,0x78,0x01
EF2E .byte 0x90,0x03,0x10,0x05,0x78,0x05,0x78,0x03
EF36 .byte 0x20,0x05,0x78,0x02,0x58,0x03,0x40,0x05
EF3E .byte 0x78,0x03,0x20,0x03,0x80,0x05,0x78,0x03
EF46 .byte 0xE8,0x04,0x01,0x05,0x78,0x04,0xB0,0x04
EF4E .byte 0x02,0x05,0x78,0x06,0x40,0x04,0x04,0x06
EF56 .byte 0x40,0x06,0x40,0x04,0x08,0x07,0x08,0x00
EF5E .byte 0xC8,0x04,0x10,0x07,0x08,0x01,0x90,0x04
EF66 .byte 0x20,0x07,0x08,0x02,0x58,0x04,0x40,0x07
EF6E .byte 0x08,0x03,0x20,0x04,0x80,0x07,0x08,0x03
EF76 .byte 0xE8,0x05,0x01,0x07,0x08,0x04,0xB0,0x05
EF7E .byte 0x02,0x07,0x08,0x05,0x78,0x05,0x04,0x06
EF86 .byte 0x40,0x00,0xC8,0x05,0x08,0x06,0x40,0x01
EF8E .byte 0x90,0x05,0x10,0x06,0x40,0x02,0x58,0x05
EF96 .byte 0x20,0x06,0x40,0x03,0x20,0x05,0x40,0x06
EF9E .byte 0x40,0x03,0xE8,0x05,0x80,0x06,0x40,0x04

Now , if that is not enough there is another table.

Notice that the second entry in this table is 0x49, and the entry directly below is 0x4a, then 0x4b and so on. This table is ascending in terms of indexing.
The table is formatted by 8 bytes. It may be offset in either direction as i have no clue what it is yet.


EFDF .byte 0x00,0x49,0x7F,0x28,0x28,0x04,0xEE,0x87
EFE7 .byte 0x00,0x4A,0x7F,0x28,0x28,0x04,0xEE,0x8D
EFEF .byte 0x00,0x4B,0x7F,0x1E,0x0A,0x04,0xEF,0x23
EFF7 .byte 0x00,0x4C,0x7F,0x1E,0x0A,0x04,0xEF,0x29
EFFF .byte 0x00,0x4D,0x7F,0x1E,0x0A,0x04,0xEF,0x2F
F007 .byte 0x00,0x4E,0x7F,0x1E,0x0A,0x04,0xEF,0x35
F00F .byte 0x00,0x4F,0x7F,0x1E,0x0A,0x04,0xEF,0x3B
F017 .byte 0x00,0x50,0x7F,0x1E,0x0A,0x04,0xEF,0x41
F01F .byte 0x00,0x51,0x7F,0x1E,0x0A,0x04,0xEF,0x47
F027 .byte 0x00,0x52,0x7F,0x1E,0x0A,0x04,0xEF,0x4D
F02F .byte 0x00,0x53,0x7F,0x1E,0x0A,0x44,0xEE,0xF3
F037 .byte 0x00,0x54,0x7F,0x1E,0x0A,0x84,0xEE,0xF9
F03F .byte 0x00,0x55,0x7F,0x1E,0x0A,0x44,0xEE,0xFF
F047 .byte 0x00,0x56,0x7F,0x1E,0x0A,0x44,0xEF,0x05
F04F .byte 0x00,0x57,0x7F,0x1E,0x0A,0x84,0xEF,0x0B
F057 .byte 0x00,0x58,0x7F,0x1E,0x0A,0x44,0xEF,0x11
F05F .byte 0x00,0x59,0x7F,0x1E,0x0A,0x84,0xEF,0x17
F067 .byte 0x00,0x5A,0x7F,0x1E,0x0A,0x84,0xEF,0x1D
F06F .byte 0x00,0x5B,0x7F,0x28,0x03,0x01,0xEE,0x93
F077 .byte 0x00,0x5C,0x7F,0x28,0x03,0x02,0xEE,0x99
F07F .byte 0x00,0x5D,0x7F,0x28,0x03,0x01,0xEE,0x9F
F087 .byte 0x00,0x5E,0x7F,0x28,0x03,0x01,0xEE,0xA5
F08F .byte 0x00,0x5F,0x7F,0x28,0x03,0x02,0xEE,0xAB
F097 .byte 0x00,0x60,0x7F,0x28,0x03,0x01,0xEE,0xB1
F09F .byte 0x00,0x61,0x7F,0x28,0x03,0x02,0xEE,0xB7
F0A7 .byte 0x00,0x62,0x7F,0x28,0x03,0x02,0xEE,0xBD
F0AF .byte 0x00,0x63,0x7F,0x1E,0x0A,0x41,0xEE,0xC3
F0B7 .byte 0x00,0x64,0x7F,0x1E,0x0A,0x82,0xEE,0xC9
F0BF .byte 0x00,0x65,0x7F,0x1E,0x0A,0x41,0xEE,0xCF
F0C7 .byte 0x00,0x66,0x7F,0x1E,0x0A,0x41,0xEE,0xD5
F0CF .byte 0x00,0x67,0x7F,0x1E,0x0A,0x82,0xEE,0xDB
F0D7 .byte 0x00,0x68,0x7F,0x1E,0x0A,0x41,0xEE,0xE1
F0DF .byte 0x00,0x69,0x7F,0x1E,0x0A,0x82,0xEE,0xE7
F0E7 .byte 0x00,0x6A,0x7F,0x1E,0x0A,0x82,0xEE,0xED
F0EF .byte 0x00,0x6B,0x7F,0x1E,0x0A,0x04,0xEF,0x59
F0F7 .byte 0x00,0x6C,0x7F,0x1E,0x0A,0x04,0xEF,0x5F
F0FF .byte 0x00,0x6D,0x7F,0x1E,0x0A,0x04,0xEF,0x65
F107 .byte 0x00,0x6E,0x7F,0x1E,0x0A,0x04,0xEF,0x6B
F10F .byte 0x00,0x6F,0x7F,0x1E,0x0A,0x41,0xEF,0x71
F117 .byte 0x00,0x70,0x7F,0x1E,0x0A,0x82,0xEF,0x77
F11F .byte 0x00,0x71,0x7F,0x1E,0x0A,0x04,0xEF,0x7D
F127 .byte 0x00,0x72,0x7F,0x1E,0x0A,0x00,0xEF,0x53
F12F .byte 0x00,0x73,0x7F,0x01,0x02,0x04,0xEF,0x53

There are some other tables. One of which i figured out. It maps the injector numbers and left right feeder channels. Another seems to be an ADC correction table (used for the high voltage monitoring code)

I see no reason to think that these are anything other than tables. I've searched the ROM for functions or structures in case these were pointers. I did not find anything that would suggest otherwise.
 
#167 ·
high and low whats to differcnce dose that mean 4 cyl. are making more power than the other 4 and is that why i keep getting cyl8 missfire code
 
#168 ·
With all of that been said what is your opinions of the reprogrammed IDM modules from BDP? its supposed to increase the injectors by around 30hp woudl this be good or bad?
 
#170 ·
Yeah you are correct that is my fault.. Does it add any extra wear and tear on the injectors or anything thing else?
 
This is an older thread, you may not receive a response, and could be reviving an old thread. Please consider creating a new thread.
Top