I am working on a project with someone and we have rendering setup.
When we try to render an object using dBodyGetPosition(), it renders it in the wrong place. To make it render in the correct place we HAVE TO multiply the position by 2.
Try setting an object position in ODE to (1, 2, 3), and then immediately get its position. It will return (1, 2, 3), which should convince you ODE doesn't have a hidden scaling problem. It just works with what you give it.
ODE is unitless - it just deals with numbers. You decide what units you want to use, and so long as you're consistent, ODE doesn't care/know. By consistent I mean - if you use cm for your distance unit (when setting positions), and seconds for your time unit (when stepping the simulation), then you'd better use/expect to see velocities in cm/s if you ever set/read the velocity in/from ODE.
It's much more likely that the problem is either on the rendering, or model import side. Both of these will probably support scaling, which has plenty of potential for bugs or misunderstandings.
Cheers - Danny