I?m posting this for a friend from another forum.

I've never gotten into any auto programming stuff. Done some PLCs and main computers, but never had time for autos.
Been hanging around a friend's auto repair shop for fun. Sometimes my oddball way of looking at problems helps.
One of their corporate customers brought in a box truck with some weird problems. The original motor had become unusable, and someone put in another one.
It had never run right since.
Since that time, they had discovered my friend's shop and had been very pleased with his work. So they brought in the one no one else had been able to fix.
They managed to get everything straight except for a weird skip. After doing everything they could think of, they had finally run it down to four cylinders.
Since the cylinders were 1,4,6,and 7, and this is a 5.3L engine, it looks like something to do with the DOD system.
Problem is, this does not appear to be a DOD engine.
They had a working theory that someone had either removed the DOD parts, or put a non-DOD engine in a truck that used to have one. There is really no telling what has been done to this engine. The original mechanic is not available it seems.

After a while, it started sounding interesting, and I got involved. After a few suggestions, most of which they had already thought of, they decided to get a local guy that one of the mechanics knew, to go in and delete any DOD stuff in the computer.
Not sure if that helped or not, but at the end, the engine will run fine at regular speeds.
When at idle, it has four dead cylinders. If idled for long, those four plug will get fouled.
I checked, and the spark is not firing on those four cylinders at idle, but is at speed.

They were thinking that maybe the original guy put regular lifters in on the DOD cam. I pointed out that no matter what cam, lifters, or anything else was done, it would not kill the spark.
Unless the motor has a centrifugal switch of some kind that kills the spark when the RPMs goes below a certain amount, something of which I have never heard, then the computer has to be doing it.
It was pointed out to me that the DOD had been deleted from the computer.
I pointed out to them, that computer programs are long and can be complicated.
What if this program has two protocols. One for normal running and one for idle to save gas? And only the DOD at speed had been deleted.

Having never studied the program on one of these, I am only making guesses based on other type programs I have worked on and written. If it is DOD, its crippled, because its turning off the spark, but not the injectors.
The fleet owner came and got the truck as is. They are fairly happy with it, because before it was unusable. Now its not bad, just don't let it idle for long.
They told him to bring it back if it did something else or got worse. In any event, it will most likely be back for service since they do most of the service on their trucks.

Meanwhile, I told them I was going to post the question here, where the real experts hang out. With any luck it will obvious to someone here.
I wish I had been there when they did the delete. But the guy came in on a weekend, and I was turkey hunting.

I think its a 2007, but what original engine it had in it no one knows. I should have checked the VIN, but I forgot.