Giter VIP home page Giter VIP logo

simple-ble-glucose-reader's Introduction

Introduction

This project shows the proof of concept to read data via Bluetooth from a glucometer with a React Native application.

An showcase of the prototype can be viewed on YouTube by clicking on the image or here https://youtu.be/pEUnmSh7OcE:

Simple BLE Glucose Reader

UML

User Flow

User Flow

Bluetooth Communication Flow

BLE Flow

Observations

  • Roche its Accu-Chek Guide Glucometer is certified against Continua Guidelines which mention among others the standards IEEE 11073-10417 (Personal Health Device/Glucose Meter) and IEEE 11073-20601 (Personal Health Device/Optimized Exchange Protocol). It also is certified against the Bluetooth specification SIG Glucose Profile and Glucose Service.
  • Bytes in a data type greater that byte are transferred with ordering Little-Endian (https://en.wikipedia.org/wiki/Endianness).
  • Glucose data is stored as 16 bit signed float. The IEEE-11073 16-bit SFLOAT differes from the IEEE 754 16-bit!
  • The HCI Log, a raw bluetooth communication dump, was hughely useful when explored with Wireshark.
  • Bluetooth services must first be retrieved before any command can be sent which does modification e.g. write, enable notification, etc.
  • Some commands can only be performed after authentication and securing the transmission - this is usually done via normal pairing.

Tested Devices

Glucometer

  • Roche Accu-Chek Guide

Smartphone

  • Samsung Galaxy S20 (Android)

Links

Open Source Glucometer App xDrip

Relevant React Native Libraries

Bluetooth HCI Log

Signed Float in Bluetooth Standard

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.