I figured the tune was instant.
The shop spent 3 1\2 hours on it today.
Coils turned out ok.
Plugs looked good (32,000 miles) but I told him to change them anyway.
We thought we had it resolved after changing the plugs but the random misfire code came back after a 15 minute test drive and after the mechanic shut it off and restarted it.
Worth noting, the truck is running smooth with great acceleration except when at idle.
There are no signs of misfire driving, climbing hills, etc...
The idle was still set too low. It was around 550 and the truck was still shaking when in neutral and drive.
I had the SCT dongle and iPad with me so we were able to adjust the idle.
Now according to the software it is set at 775 rpm but using the Snap On scanner it was fluctuating between 700 and 750.
It still has a bit of a shake to it but we both think that's attributed to the cams.
So we called it quits after adjusting the idle.
I drove home, approximately 35-40 miles and close to an hour.
Both city and highway driving. The truck ran flawlessly the entire ride home.
I stopped off at the supermarket to pick up a few things and within less than a minute and no more than 300 feet the engine light was back.
I got back home checked the code and sure enough its a random misfire.
So I plugged the dongle back in and bumped the idle a little more.
This time I decided to advance the timing in the 0-2000 rpm range by 2 degrees.
I have purposely gone out of my way the rest of the day driving around the city and highway. I have been in and out of the truck at least half a dozen times and have ran up 70 miles.
So far the idle has smoothed out even more, acceleration seems smoother and most important of all, no misfire code.
It's still too soon for me to get excited but I'm keeping my fingers crossed that the issue was too little spark at idle with the larger cams.
The shop feels the work was done correctly and based on how it performs (aside from at idle) I believe him.
He has been great to work with and is willing to take it apart again if all else fails to make sure everything was setup right.
At this point I don't feel it's necessary but if the code shows up again I'll most likely have him double check.
Since all this came up I have been searching the Internet and couldn't belive the amount of posts with people having the same misfire problem with no clear solution to the fix.
I believe my situation is unique because of the cams. I guess I'll find out soon enough.