Error Codes

From Mooshim Engineering Wiki
Jump to: navigation, search

This page is to help Android users understand common connection issues. Android's Bluetooth Low Energy (BLE) tends to be much less reliable than iOS's, because implementation was not centralized and is different for all the handset manufacturers.

Before diving too deep, 99% of the time the only solution to these connection issues is to reboot the phone. Often, simply quitting the Mooshimeter app and resetting Bluetooth on the phone will fix the problem.

Connection failed. Status: XXX

When the connection to a Mooshimeter fails on Android, the system will return an error code with the message "Connection failed. Status: XXX".

All other error codes are the error code returned by the Android system with the failed connection. Those can be found here.

The most common error codes seen in the field are:

  • -1: Timeout
  • 133: GATT_ERROR (generic error)

The most common error code is code 133 (0x85 in hex), which unhelpfully refers to the catch-all "GATT_ERROR". In most cases, this means something has gone wrong in the operating system itself, and the phone should be rebooted (though often force-quitting the Mooshimeter app and turning Bluetooth off and on again will suffice).

Initialization failed. Status: XXX

This means the Bluetooth connection succeeded, but something went wrong in setting up the Mooshimeter to take measurements.

Status -1 indicates that the Bluetooth attributes required for communication with the meter were not discovered. This is rooted in long standing Android bugs related to service discovery. If you're seeing this issue after a firmware upload, rebooting the phone is your best option, as the phone thinks that the Mooshimeter is still in bootloader mode.