Idle should be pretty high on start up, mine runs at about 1500 for a minute or so depending on temp. Yours seems even higher than that, I agree that something is wrong.
The ECU/DME controls that setting by using the ICV and running a very rich mix. The DME detects temp with two sensors. Coolant temp (CLT) is in the cylinder head, air temp (IAT) is built into the AFM. They're really easy to test, just hook up a multi-meter in ohms (resistance) mode. A cold sensor will have a very high reading, like 9000 ohms (9 KOhms). As the temp climbs, the resistance falls. A hot sensor should only read out a few hundred ohms. Dean & I posted a pretty good thread about that here:
http://www.m42club.com/forum/index.php?topic=18012.msg123483#msg123483I'd recommend testing it all to eliminate problems and save yourself some cash. I use a multi-meter more often than any other tool! I bought a good one on Amazon for like $40, it's paid for itself many times over. Don't replace stuff willy-nilly, test it all. You run the risk of swapping out a good part for an incorrect aftermarket part. Here's a good post I wrote a while back about the sensors and how they should be tested:
http://www.m42club.com/forum/index.php?topic=17926.msg124060#msg124060Be aware that there are two very similar parts on the head. The CLT
sensor runs to the DME, it's critically important. The coolant temp
sender runs to the gauge cluster. It's relatively unimportant. The engine temp sensor has a brown case and two pins, usually mounted further forward. The gauge temp sender has a white case and just a single pin. If you swapped a few plugs around the wrong way when you did the hose delete, that'd cause some troubles. I've done it myself...the oil pressure sender, temp sender and CLT sensor all use the same plug, and the wires are long enough to put them together wrong. When I did the hose delete years ago, I mixed them up. I ended up with an oil warning light and the temp gauge never responded. Just like the crank & cam sensors...or the coil plugs for that matter...the same wiring connector plugs in the same locations make it pretty easy to mix them up.
I'll have to check my documentation to see which sensors the DME uses during the warm-up open-loop mode. I know that it ignores the O2 and many other sensors. A/C and O2 will also bump up the idle, but I don't think that happens until after the car warms up, when the DME switches to closed-loop mode.
Sorry about the novel I just wrote, LOL. I hope it's helpful.