How to Calibrate Temperature Sensor Beacons?

We have several clients using the temperature/humidity sensor beacons in industrial situations. A question we have had is how is the temperature/humidity calibrated? For scenarios that require monitored temperature/humidity, it’s often necessary to show the readings have been calibrated over time.

M52-SA Sensor beacon

Most sensor beacons don’t have a calibration certificate. The long term drift of the sensor is <0.04C/yr and <0.5 RH/yr so in most applications it doesn’t usually need calibration. If you need accuracy better than this you will usually need to calibrate in the software of the phone/device that receives the beacon signal. That is, you will need to periodically measure the real temperature/humidity using another calibrated instrument and apply any offset to the read values.

S5 Sensor beacon

Another option is to use the one beacon, the S5, that does have a temperature/humidity calibration certificate.

AKMW-iB005N-SMA Replaced by S1 USB

The iB005N-SMA is no longer manufactured and has been replaced with the S1-SMA.

S1-SMA

The S1 USB doesn’t use batteries and instead uses USB for power. The USB isn’t used to set up the beacon and the manufacturer smartphone app, via Bluetooth, is used instead. The ‘SMA’ means it has an external rather than PCB antenna which moves the antenna away from the device supplying the USB power thus providing better Bluetooth radio signal and longer range. The S1 is also available without an external antenna.

We have a few iB005N-SMA remaining in stock of you particularly need that model.

How to Read the AnkhMaway Sensor Data?

Since we have been selling the AKMW-iB003N-SHT  and AKMW-iB004N PLUS SHT we have been getting a few questions regarding accessing the temperature and humidity data.

You should first read the manufacturer’s SHT20 User Guide (username and password supplied with your beacon).

If you are connecting via GATT to read the sensor data then you will need to set the beacon to be always connectable. The way to do this is (for some strange reason) only shown in the iB001M user guide:

advertisementcontrol

So if you wish to transmit iBeacon and remain connectable, set the value to 0x82. Note that if you subsequently set the beacon ‘on’ or ‘off’ in the ‘simple’ configuration screen, accessed via the spanner icon (Android) or Configure option (on iOS), then this will overwrite your set value.

However, you might instead consider reading the sensor data from the advertising data which a) is much easier to program and b) uses much less beacon battery power and c) allows multiple apps to see the data at the same time.

There’s also an iOS example app in the BeaconZone AnkhMaway technical area.

Getting the AnkhMaway Battery Level from Advertising Data

One of the great things about AnkhMaway beacons is that they provide the battery level in the advertising data. This allows you to view or easily programmatically determine the battery level without connecting. For example, here’s the output from the Android iBeaconDetector app:

batteryinadvertisingdata

The last two useful hex characters of the advertising data, ‘5E’ in this case, gives the level out of 100. You can use an online Hex to decimal converter to see the value in decimal that’s 94% in this case.

Note that the battery level in the advertising data is only present for recent firmware versions which might not be the case if you haven’t purchased the beacons from BeaconZone.

Inspecting Data from Bluetooth Gateways

Bluetooth gateways scan for beacons and send detected data your server, BeaconServer™ or BeaconRTLS™. However, what if you don’t have a server yet or want to determine if a gateway is actually sending data?

Ubeac allows you to set up a hook to receive gateway data. What’s more, they have some informative setup videos for our INGICS, Minew, AnkhMaway and Aprilbrother gateways.

Ubeac INGICS Setup

Read about Beacon Proximity and Sensing for the Internet of Things (IoT)

View Bluetooth gateways

Setting the iB003N State

The iB003N can transmit up to three channels: iBeacon, Custom and Accelerometer Data. If you only want to send iBeacon, the iOS and Android app ‘Config’ screen implicitly sets the state to iBeacon only transmission when you set the iBeacon parameters.

On iOS only, the Eddystone screen allows you to set the custom channel to send Eddystone that implicitly sets the state to transmit the Custom channel only.

What if you want to transmit both iBeacon and Custom channels or also send the acceleration data? What if you want to enable motion triggered broadcasting? For cases such as these, you have to set the beacon state explicitly (manually) via the Bluetooth Service Characteristic 0x2A80 as described in the iB003N user guide .

Sleepy bit rot on Twitter has produced a useful table showing what values have to be set for some specific configurations:

Beacon Programming Examples

We have some new documentation for our AnkhMaway customers*. In the Ankhmaway Technical Area we have two new Android examples on:

We also have a new user guide for the iB001W rechargeable wrist beacon.

* Password protected – only available to customers who have purchased products.

New Data Logger Beacon in Stock

We have the new iB004-PLUS SHT Logger beacon in stock. It stores up to 200 temperature and humidity data over a user defined period of 1 to 120 minutes.

As with the non-logging iB004-PLUS, it has a large battery and sends the battery level in the advertising data. The current temperature and humidity can also be extracted from the advertising data without connecting to the beacon.