I have both a iPod touch 1G and an iPhone 3G, to soon be joined by either a 3GS or a third-gen touch.
As a developer, I need more than 1 piece of hardware. Up until recently I'd been keeping 2.2.1 on the touch and 3.0 on the iPhone, but I think at this point it's safe to say that 2.2.1 can be left behind for development, so now the iPhone is rocking 3.1 while the touch has 3.0.