Trouble reading beacon's battery level

Battery level information is only available (i.e. non-null) after connecting to the beacon.

About how to do that: you can take a look at Examples app, bundled with the iOS SDK.

Here’s how to initiate the connection:

And here’s the delegate method which’ll get called once connections succeeds, here you’ll be able to read the battery level:

One more thing: to be able to connect to your beacon, you need to provide your authorization ID and token, so that the app knows it’s you trying to connect, not some unauthorized 3rd party. Here’s an appropriate line in our Examples:

You can get your ID and token on in the Account Settings section.