Our collision checking is done in the collision_space package in the collision_environment stack. We primarily use ODE for collision checking (src/environmentODE.cpp), though there is also a somewhat out of date version of collision checking using Bullet included in the same directory. For information on what ODE does you can look at http://opende.sourceforge.net/wiki/index.php/Manual_%28Collision_Detection%29.
For collision checking with the PR2 we insert a set of meshes for the robot's body as well as meshes or geometric primitives associated with recognized objects into the collision space. We also include a set of self-filtered oriented bounding boxes associated with range sensor hits into the collision space. If you have any specific questions about our use of ODE I'm happy to try to answer them.
-- E. Gil Jones ([hidden email]) Research Engineer Willow Garage, Inc. 68 Willow Road Menlo Park, CA 94025 650.475.9772