Any success with Bullet's CharacterController?

I must add my two cents. IIRC, Panda’s PhysX wrapper doesn’t have continuous collision detection support, which makes it unsuitable for many use cases – any thrown/falling object (be it a grenade or even a crate) will often just fly through walls. This is an important thing to know, if you don’t want to spend a lot of time building stuff around PhysX just to find that one feature is missing.