I'm having problems getting readings from the magnometer using the new motion module.

Attitude, Gravity, and User Acceleration all seem to return valid values, but get_magnetic_fields() always returns (0.0, 0.0, 0.0, -1)

Here is the code I was trying:
https://gist.github.com/anonymous/1eea7757f841c1f93ba4

The output just shows

(0.0, 0.0, 0.0, -1)

10 times in a row. Am I doing something wrong? I'm on a 5s, so motion should definitely be available. I've tried quitting other apps, and even rebooting my phone. Thoughts?