Just a tip, if you are misfiring usually it is ignition. If you are backfiring or "late firing" it IS ignition. For op, i would put my money on ignition timing. get a light on it and see what the hell it is doing. Or view live data with winaldl or simmilar to see what the computer is trying to do. I have had bad ignition modules that would go on the fritz when the truck warmed up max out the ignition advance and retard alternately, looked like you were watching a damned am radio signal on the live data stream. Had all sorts of issues, high idle, idle stumble, stalls, and reduced power. as a redneck test / get me home fix, unplug the ESC wire and using a light set about 18 degrees advance at idle and it will run ok ish. but if unplugging esc fixes the idle i would take a peek at the ICM.