As explained in the protocol section, the model that implements the Wheel is an array of up to 256 positions which we will call *variables*. Each one has 16 bit value with interpretation varying according to the meaning.

From | To | Description | Type | Notes/Unpacking |
---|---|---|---|---|

16 | 22 | Serial No | String | Every item has 2 bytes of the S/N . High order byte = first cha |

23 | 25 | PIN Code | ||

26 | 26 | Version | 3 numerics | High Order Byte = first version, high 4 bits of low order byte subversion low order 4 bits sub sub version |

27 | 27 | Error Code | ||

28 | 28 | Warning Code | ||

31 | 31 | Work Mode | ||

34 | 34 | Batery Level | numeric positive | Is in % |

37 | 37 | Remaining Milieage | numeric positive | Km * 100 |

38 | 38 | Current Speed | numeric positive | Km/h * 1000 |

41 | 42 | Total Mileage | numeric positive | v[42] * 65536 + v[41] in meters |

50 | 51 | Total Runtime | numeric positive | v[51] * 65536 + v[50] in seconds |

58 | 58 | Single Runtime | numeric positive | seconds |

62 | 62 | Temperature | numeric positive | ºC * 10 |

71 | 71 | Voltage | numeric positive | V * 100 |

74 | 74 | ? | ? | Working to know what is. For the moment no idea |

80 | 80 | Current | numeric with sign | if v[80] > 32768 I = v[80] - 65536 else I = v[80] in Amperes * 100 |

97 | 97 | Pitch Angle | numeric with sign | if v[97] > 32768 pitch = v[97] - 65536 else pithc = v[97] in º * 100 |

98 | 98 | Roll Angle | numeric with sign | if v[98] > 32768 roll = v[98] - 65536 else pitch = v[98] in º * 100 |

99 | 99 | Pitch Angle Velocity | numeric with sign | if v[99] > 32768 vpitch = v[99] - 65536 else vpithch = v[99] in º * 100 / s but need to confirm |

100 | 100 | Roll Angle Velocity | numeric with sign | if v[100] > 32768 roll = v[100] - 65536 else vpitch = v[100] in º * 100 / s but need to confirm |

115 | 115 | Probably general speed limit | numeric positive | m/h |

116 | 116 | Speed Limit (setteable) | numeric positive | m/h |

178 | 178 | Flags | bit 0 -> Limit Speed, bit 1 -> Lock , bit 2 -> Beep, bit 11 -> Activation. Bits from lower significance | |

182 | 182 | Average speed | numeric positive | m/h |

185 | 185 | Single Mileage | numeric positive | in meters |

210 | 210 | Ride Mode | numeric positive | |

211 | 211 | One Fun Bool | No Idea |

Some variables are repeated from position 176

From | To | Description |
---|---|---|

176 | 176 | Error Code |

177 | 177 | Warning Code |

179 | 179 | Work Mode |

180 | 180 | Battery Level |

181 | 181 | Current Speed |

183 | 184 | Total Mileage |

187 | 187 | Temperature |

188 | 188 | Voltage |

189 | 189 | Roll Angle |

190 | 190 | Pitch Angle |

191 | 191 | Max Speed |

218 | 223 | Activation Related |

Also 9BMetrics uses variable 0 to store the altitude variation from the iPhone altimeter if available.