Analyte meter

A portable data-management system based on an analyte testing device which communicates wirelessly with a mobile device. The mobile device runs an application to manage and analyze data obtained by the analyte testing device. The mobile device may assist the user in displaying testing data, identifying patterns to assist healthy behavior or issue warnings based on the collected data. The mobile device may be connected to a network to store user health data for use by other parties.

TECHNICAL FIELD

The present invention relates generally to a method and system for managing health data via a health meter and a mobile device. More specifically, the present invention relates to a portable system that manages and displays information associated with the health of an individual, such as measurements of an analyte in a bodily fluid made by a testing device, on a mobile device.

BACKGROUND

The quantitative determination of analytes in body fluids is of great importance in the diagnosis and maintenance of certain physiological conditions. For example, individuals with diabetes frequently check the glucose level in their bodily fluids. The results of such tests can be used to regulate the glucose intake in their diets and/or to determine whether insulin or other medication needs to be administered.

Diagnostic systems, such as blood-glucose monitoring systems, may employ an instrument, such as a meter, to calculate the glucose concentration value in a fluid sample from an individual. Such instruments operate by measuring an output, such as current or light, from a reaction with the glucose in the sample. The test results typically are displayed and stored by the meter. Basic systems allow the user to access the test results directly from the meter via a display and a keypad or other interactive component.

Since measurements for individuals with diabetes is crucial, it is imperative that instruments are available that allow convenient readings of diagnostic results. For example, specialized systems are available, but these systems are expensive. Further, information relating to measurements is helpful for a user, if the information is readily accessible, but specialized testing devices are often not designed to provide helpful information to a user.

Thus, there is a need for a system that allows wireless connectivity between an analyte meter to a ubiquitous device executing analysis software such as a smart mobile device. There is a need for a system that allows accessing and downloading reliable patient data and identifying trends to reduce time spent advising patients. There is a need for a system that allows a user ease of access and ability to interact with health-related applications, allowing for a more integrated and natural fit to a user's lifestyle.

SUMMARY

A system for convenient analysis and management of health reading data is disclosed. A testing device or meter is operative to test a fluid from a user. The testing device or meter communicates data to a mobile user device such as a smart phone via a wireless link to pair the testing device with the mobile user device. The mobile user device runs a data analysis and management application, which may be loaded on the mobile device from a network cloud server. The data analysis and management application allows a display of testing data from the testing device, as well as other readings taken by the testing device or other testing devices paired with the mobile device. The application on the mobile device may send the data to a cloud server via the network for health care purposes. The application may provide alerts for a user to perform testing using the testing device based on criteria such as times, locations or meals. The application may analyze the data and determine patterns of behavior for the user. The application may also set warnings when readings fall outside normal parameters.

The application may monitor and display different configurations of the testing device and allow a user to control certain functions of the testing device. The application allows a user to enter information such as notes, pictures, food descriptions, or medication to be associated with readings. The mobile device130may show different formats of data depending on the orientation of the device.

Still other aspects, features, and advantages of the present invention are readily apparent from the following detailed description, by illustrating a number of exemplary embodiments and implementations, including the best mode contemplated for carrying out the present invention. The present invention is also capable of other and different embodiments, and its several details can be modified in various respects, all without departing from the spirit and scope of the present invention. Accordingly, the drawings and descriptions are to be regarded as illustrative in nature, and not as restrictive. The invention is to cover all modifications, equivalents, and alternatives falling within the spirit and scope of the invention.

DESCRIPTION OF ILLUSTRATED EMBODIMENTS

FIG. 1shows a system100for collecting testing data for different users for health conditions such as diabetes. The system100includes a meter testing device110which is in wireless communication with a mobile device130. In this example, the testing device110allows testing of analytes as will be explained below. The testing device110is paired with a mobile device130via a wireless link. Once the pairing is established, the testing data from the testing device110are passed to the mobile device130, which runs software that performs detailed analysis of the data, allows management of the data, and provides other relevant information in a format that may be readily understood by a user of the mobile device130. The software thus performs data management relating to test results for the user of the mobile device130.

In this example, a fluid sample (e.g., blood or interstitial fluid) may be obtained via a test sensor112that is configured to be inserted into the testing device110. The testing device110may also communicate with a control meter114. The control meter is configured to control an insulin pump116. A user may use an insulin pen118in conjunction with the insulin pump116and the control meter114. A continuous glucose monitor (CGM) sensor119communicates with the control meter114to transmit glucose data. Other meters or testing devices120, besides the testing device110, may also analyze fluid samples from the test sensor112and interface with an interface device122to communicate test data to the mobile device130.

The mobile device130performs data analysis on data obtained from the testing device110, as will be explained below. The mobile device130allows communication with a wide area network such as the Internet140. The system100includes a server150that is coupled to a database160. The server150maintains patient data in the database160. Other users, such as health care providers, may have access to patient data in the database160via a network-connected device such as a personal computer170. There are multiple users who may access the server150via mobile devices such as the mobile device130.

For example, the server150may be part of a centralized health care system that provides further processing or storage of data collected by the mobile device130. The centralized health care system may provide a web-based or a client-server based front end to data-management software running on the mobile device130. Additionally or alternatively, the data may be shared with health care providers (HCPs). Accordingly, to transfer data from the mobile device130to the server150, the mobile device130may connect directly via an interface, for example, to a wireless network or a Wi-Fi hotspot to the network140. Data encryption and authentication procedures may be employed to ensure data security. The mobile device130detects the presence of a wireless network or a Wi-Fi hotspot and automatically transfers data to the server150through a background process. Alternatively, the mobile device130may alert the user that access to the server150is available, and the user can initiate data transfer if desired.

The server150may be used for a variety of heath care functions. For example, the data may be shared with a health care professional for more effective visits. The data may be used for health monitoring of a user or remote patient care. The data may be used for life style programs. As will be explained below, the mobile device130may include other applications such as activity or fitness monitor applications that may interface with the user data. The data may be used for motivational support tools from persons with diabetes. Other health care providers may receive selected data via other devices such as a server180, a laptop182, a personal computer184, a tablet186, or any other computing device that allows access to data from the database160for other health care services such as monitoring, marketing and provision of services and products.

Referring toFIG. 2A, a top view of the testing meter or testing device110and a perspective view of the test sensor112is illustrated. The test sensor112is configured to receive a fluid sample which is analyzed using the testing device110. Analytes that may be analyzed include glucose, lipid profiles (e.g., cholesterol, triglycerides, LDL and HDL), microalbumin, hemoglobin A1C, fructose, lactate, or bilirubin. The analytes may be in, for example, a whole blood sample, a blood serum sample, a blood plasma sample, other body fluids like ISF (interstitial fluid) and urine, and non-body fluids.

The test sensor112includes a fluid-receiving area. The fluid-receiving area contains a reagent that reacts with a fluid sample to indicate the analyte concentration of the fluid sample. For example, the fluid-receiving area may receive a fluid sample, such as a blood sample. The fluid-receiving area may also receive a liquid-control solution. The liquid-control solution contains a control marker (also referred to as an internal reference) and is used to check that the testing device110and test sensor112are functioning correctly. The control marker generates a distinctive current profile, which is detected using a detection algorithm run by the testing device110. By having a distinctive current profile, the testing device110can automatically distinguish a control test from an analyte-fluid test (e.g., a glucose blood sample).

Some commercially available test sensors that may be used include those that are available commercially from Bayer HealthCare LLC (Whippany, N.J.). These test sensors include, but are not limited to, those used in the Ascensia® CONTOUR® blood glucose monitoring system, the CONTOUR® LINK blood glucose monitoring system, CONTOUR® NEXT USB blood glucose monitoring system, the Ascensia® BREEZE® and BREEZE®2 blood glucose monitoring system. Other test sensors, in addition to the ones listed above, may be incorporated into the methods and systems of the present disclosure.

The test sensor may be an electrochemical test sensor such as the sensor112. The electrochemical test sensor112typically includes a plurality of electrodes and a fluid-receiving area that contains an enzyme. The fluid-receiving area includes a reagent for converting an analyte of interest (e.g., glucose) in a fluid sample (e.g., blood) into a chemical species that is electrochemically measurable, in terms of the electrical current it produces, by the components of the electrode pattern. The reagent typically contains an enzyme such as, for example, glucose oxidase, which reacts with the analyte and with an electron acceptor such as a ferricyanide salt to produce an electrochemically measurable species that can be detected by the electrodes. It is contemplated that other enzymes may be used to react with glucose such as glucose dehydrogenase. In general, the enzyme is selected to react with the desired analyte or analytes to be tested so as to assist in determining an analyte concentration of a fluid sample. If the concentration of another analyte is to be determined, an appropriate enzyme is selected to react with the analyte.

The reagent also typically includes a mediator that assists in transferring electrons between the analyte and the electrodes. The reagent may include binders that hold the enzyme and mediator together, other inert ingredients, surfactants, polymers (e.g., cellulose polymers) buffers or combinations thereof.

The testing device110ofFIG. 2Aincludes a user interface220, which includes a display222and a user-input device224. The display222typically displays information regarding the test results, the testing procedure and/or information in response to signals input by the user, including text and images. The display222may be a graphic liquid crystal display (LCD), an organic light-emitting diode (OLED), segment LCD, or the like. The user-input device224allows the user to interact with the testing device110and may include push buttons, soft keys, a scroll wheel, touch-screen elements, or any combination thereof. In this example, the user input device224includes a circular control226to navigate around the display222and a push button228to activate selected functions on the display222.

The display222may be a high-resolution, rich viewing display, which may present both static and moving text and images to the user. However, other types of displays, including, for example, lower resolution, monochromatic LCD displays, may be employed. In general, a range of display types, from a low-cost basic display to a fully functional display, may be employed. The display222may be of any suitable size. In some cases, the display222may cover one entire side of the testing device110. Moreover, the display222may include a touchscreen. In addition, the user interface220may provide advanced graphical user display and audio capabilities available directly on the testing device110or via a communications interface with the testing device110.

The testing device110includes a test sensor port or opening230for receiving the sensor112. An illumination panel232is disposed around the test strip port230to assist in guiding the sensor112to be inserted in the test strip port230. A charging port234allows the testing device110to be charged. In this example, the charging port234also allows test data to be downloaded on a computer connection such as a USB port. The testing device110may have a power source such as a rechargeable battery, which may be recharged via the connection with a power supply. For example, power may be transferred via a USB connection between a power source and the testing device110.

A wireless interface236allows transmission of test data wirelessly from the testing device110. The wireless transmission protocol may be Bluetooth, but other protocols may be used. The illumination panel232may emit different colored light to assist the user and communicate information to the user. For example, the illumination panel232may emit white light to assist the user to mate the testing sensor112to the testing device110. The illumination panel232may emit blue light to indicate that there is Bluetooth pairing with a mobile device such as the mobile device130inFIG. 1. The illumination panel232may emit a green color to indicate the reading is within normal parameters. The illumination panel232may emit a red color to indicate that the reading is below normal parameters indicating a hypoglycemic condition. The illumination panel232may emit an orange color to indicate the reading is above normal parameters indicating a hyperglycemic condition. It is contemplated that other additional colors may be used to indicate operation or readings to be communicated to the user.

As described previously, the testing device110employs at least one controller that typically executes programmed instructions, as well as the user interface220, which includes the display222to present information to the user, and input device224, such as pushbuttons, soft keys, a scroll wheel, touch screen elements, or any combination thereof, to enable interaction with the user.

As shown inFIG. 2B, the testing device110includes a reaction-detection system250for measuring the analyte concentration for the sample collected by the test sensor112. As described above, the reaction-detection system250may include contacts for the electrodes to detect the electrochemical reaction for an electrochemical test sensor112when inserted in the test sensor port230. Alternatively, the reaction-detection system250may include an optical detector to detect the chromatic or reflectance results of a reaction for an optical test sensor. To calculate the actual analyte concentration from the electrochemical or optically-measured reaction measured by the reaction-detection system and to generally control the procedure for testing the sample, the testing device110employs at least one controller252, which typically executes programmed instructions according to a measurement algorithm. Data processed by the controller252may be stored in a memory element254.

The controller252is coupled to a display driver256that drives the display222inFIG. 2A. The controller252is coupled to a wireless transceiver258. In this example, the wireless transceiver258is a Bluetooth transceiver for pairing with a mobile device such as the mobile device130inFIG. 1. The testing device110also includes a power source260, which in this example is rechargeable battery, which may be charged via the charging port234. The controller252also controls the color emitted by the illumination panel232via a panel control262. The controller252also activates an audio output264that may be a beeping sound to indicate a successful or unsuccessful test, but other sounds may be used.

FIG. 2Cillustrates the display222in more detail. The display222includes a date and time270, and a data reading272. The data reading272is the measured blood glucose concentration. As will be explained below, marker icons indicate the conditions of the testing, which in this example may display different icons for pre-meal, post-meal and no meal. Of course other icons may be used. The display222may display a target range for different conditions such as before meal and after meal that may be adjusted using the application on the mobile device130as will be explained below. The input device224may be used to select a condition and corresponding target range. The target range may be selected by selecting a target icon274.

In operation, the testing device110may be activated by either inserting a test sensor such as the test sensor112in the test sensor port232or holding the button228. A testing icon276indicates that the test sensor112has been inserted. The user then inserts a drop of blood in the test sensor112. The testing device110will make an audio indication if there is not enough blood in the test sensor112. After a reading, the user may mark the reading by selecting one of the marker icons278or280. In this example, there is a pre-meal marker278and a post-meal marker280. A no-mark icon282may be selected if the user does not wish to mark the reading. As explained above, the data reading272shows the blood glucose concentration of the tested sample. Additional indicators in terms of a check mark and arrows appear in the reading272to indicate whether the reading is within the target range, above the target range, or below the target range. As explained above, the illuminated panel232will also change colors depending on the value of the reading in comparison with the target range. The display222may also display “HI” or “LO” to indicate exceptionally high or low blood glucose readings, possibly with an appropriate audio signal to warn the user of the condition. The controller252may activate the audio output264to warn the user of the unusual condition.

A logbook icon284allows a user to display an entry of a predetermined number of past readings taken by the test sensor112. In this example, 800 readings are stored in the logbook by the testing device110, but more or less readings may be stored in the logbook. The reading value, time, and date will be displayed for each entry. The circular control226may be used to scroll up and down entries when the logbook icon284is selected. A settings icon286allows a user to change settings on the display222. The display222includes a battery low indicator288indicating a low battery and a Bluetooth symbol290indicating Bluetooth communication. A sound icon292allows a user to turn the audio on and off. The display222may display an error code indicating the testing device110is not functioning properly. A light panel icon294allows the user to activate and deactivate the illuminated panel232.

FIG. 3shows a block diagram of the mobile device130that communicates with the testing device110inFIG. 1and runs the application described below for analyzing and managing analyte test data. In this example, the mobile device130may be virtually any preferably mobile computing device that is configured to send and receive information over a wireless communication medium such as Bluetooth. The mobile device130may be web-enabled and may run browser software for the presentation of web pages to the user. Such mobile user devices may include portable devices such as cellular telephones, smart-phones, display pagers, radio frequency (RF) devices, infrared (IR) devices, global positioning devices (GPS), Personal Digital Assistants (PDAs), handheld computers, wearable computers, tablet computers, integrated devices combining one or more of the preceding devices, and the like. Other Bluetooth-capable devices such as a lap top computer, a desk top computer, a work station or other computer may also be used to analyze data from and communicate with the testing device110. The mobile devices may include multiprocessor systems, microprocessor-based, or programmable consumer electronics, and the like. As such, user devices running the application described below may range widely in terms of capabilities and features.

As exampled below, the web-enabled user devices may include a browser application enabled to receive and to send wireless application protocol messages (WAP), and/or wired application messages, and the like. In one example, the browser application is enabled to employ HyperText Markup Language (HTML), Dynamic HTML, Handheld Device Markup Language (HDML), Wireless Markup Language (WML), WMLScript, JavaScript, EXtensible HTML (xHTML), Compact HTML (CHTML), and the like, to display and/or send digital information.

The user devices may also include at least one client application that is configured to receive control data and/or content from another computing device via a network transmission. The client application may include a capability to provide and receive textual content, graphical content, video content, audio content, and the like. Moreover, the user devices may be further configured to communicate and/or receive a message, such as through a Short Message Service (SMS), direct messaging (e.g., Twitter), e-mail, Multimedia Message Service (MMS), instant messaging (IM), internet relay chat (IRC), mIRC, Jabber, Enhanced Messaging Service (EMS), text messaging, Smart Messaging, Over the Air (OTA) messaging, or the like, between or with another computing device, and the like.

The network140inFIG. 1is configured to allow communications between one computing device with another computing device. The network140may be enabled to employ any form of computer readable media for communicating information from one electronic device to another. On an interconnected set of LANs, including those based on differing architectures and protocols, a router and/or gateway device acts as a link between LANs, enabling messages to be sent between computing devices. Also, communication links within LANs typically include twisted wire pair or coaxial cable, while communication links between networks may utilize analog telephone lines; full or fractional dedicated digital lines including T1, T2, T3, and T4; Integrated Services Digital Networks (ISDNs); Digital Subscriber Lines (DSLs); wireless links including satellite links; or other communication links known to those of ordinary skill in the art. Furthermore, remote computers and other related electronic devices can be remotely connected to either LANs or WANs via a modem and temporary telephone link.

The network140may further include any of a variety of wireless sub-networks that may further overlay stand-alone ad-hoc networks, and the like, to provide an infrastructure-oriented connection. Such sub-networks may include mesh networks, Wireless LAN (WLAN) networks, cellular networks, and the like. The network140may also include an autonomous system of terminals, gateways, routers, and the like connected by wireless radio links or wireless transceivers. These connectors may be configured to move freely and randomly and organize themselves arbitrarily, such that the topology of the network108may change rapidly and arbitrarily.

The network140may further employ a plurality of access technologies including 2nd (2G), 2.5, 3rd (3G), 4th (4G) generation radio access for cellular systems; WLAN; Wireless Router (WR) mesh; and the like. Access technologies such as 2G, 3G, 4G, and future access networks may enable wide area coverage for mobile devices, with various degrees of mobility. For example, the network140may enable a radio connection through a radio network access such as Global System for Mobile communication (GSM), General Packet Radio Services (GPRS), Enhanced Data GSM Environment (EDGE), Wideband Code Division Multiple Access (WCDMA), CDMA1100, and the like. The network140may also be constructed for use with various other wired and wireless communication protocols, including TCP/IP, UDP, SIP, SMS, RTP, WAP, CDMA, TDMA, EDGE, UMTS, GPRS, GSM, UWB, WiMax, IEEE 802.11x, and the like. In essence, the network140may include virtually any wired and/or wireless communication mechanisms by which information may travel between one computing device and another computing device, network, and the like.

FIG. 3is a block diagram of the components of a mobile device such as the mobile device130inFIG. 1. The mobile device130includes an application processor310, a power source312, a display314, a baseband processor316, and a CODEC318. In this example, the display314is an LCD touch screen that allows the user to control the applications run by the application processor310via touch inputs as well as view graphics generated by the application processor310. The display314is controlled by a touch screen controller320. The application processor310may be coupled to various devices such as a camera322and other interfaces such as a communication port, etc.

The baseband processor316receives signals from a network transmitter receiver330allowing communications with the network140inFIG. 1, a geo-referencing receiver332that allows the reception of positioning data to determine the location of the mobile device130, and a Bluetooth receiver334that allows communication with Bluetooth-enabled devices such as the testing device110. The baseband processor316processes in the signals and is coupled to the CODEC318, which converts the signals for use by the application processor310. The CODEC318also decodes audio signals received by a microphone340and encodes data signals for output by a speaker342for functions such as a telephone application run by the applications processor310. It is contemplated that other audio devices such as a headset may be coupled through the CODEC318.

The processors310,316may be conveniently implemented using one or more general purpose computer systems, microprocessors, digital signal processors, micro-controllers, application specific integrated circuits (ASIC), programmable logic devices (PLD), field programmable logic devices (FPLD), field programmable gate arrays (FPGA), and the like, programmed according to the teachings as described and illustrated herein, as will be appreciated by those skilled in the computer, software, and networking arts.

The operating system software and other applications are stored on read only memory (ROM)350, random access memory (RAM)352and a memory storage device354for access by the applications processor310. In this example, the memory storage device354is flash memory, but other memory devices may be used. The applications stored on the memory storage device354include the emotional score data collection and broadcast application, which creates interface graphics on the display and interfaces with a browsing application. It is contemplated that other forms of applications may incorporate the principles explained below. In this example, the analysis application may be preloaded on the mobile device130, or may be offered as an application that may be downloaded to the mobile device130from a network-connected device such as the server150via the network140.

The memory storage device354includes a machine-readable medium on which is stored one or more sets of instructions (e.g., software) embodying any one or more of the methodologies or functions described herein. The instructions may also reside, completely or at least partially, within the memory storage device354, the ROM350, the RAM352, and/or within the processors310or316during execution thereof by the mobile device130. The instructions may further be transmitted or received over a network, such as the network140inFIG. 1via the network transmitter receiver330. While the machine-readable medium is shown in this example to be a single medium, the term “machine-readable medium” should be taken to include a single medium or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) that store the one or more sets of instructions. The term “machine-readable medium” can also be taken to include any medium that is capable of storing, encoding, or carrying a set of instructions for execution by the machine and that cause the machine to perform any one or more of the methodologies of the various embodiments, or that is capable of storing, encoding, or carrying data structures utilized by or associated with such a set of instructions. The term “machine-readable medium” can accordingly be taken to include, but not be limited to, solid-state memories, optical media, and magnetic media.

A variety of different types of memory storage devices, such as a random access memory (RAM) or a read only memory (ROM) in the system or a floppy disk, hard disk, CD ROM, DVD ROM, flash, or other computer readable medium that is read from and/or written to by a magnetic, optical, or other reading and/or writing system that is coupled to the processor, may be used for the memory or memories in the user device130.

The data-management software running on the mobile device130may be a collection of programs or computer code that receives and processes measured data and/or other input. The data-management software processes and/or displays this input in a manner that is desired or selected by the user or other individuals. This information may be used by a user, home care provider (HCP), a physician, and/or other individuals. As discussed previously, the measured data may include information from the testing of an analyte including the concentration of glucose and/or other analytes in a person's blood or other fluid. The software can provide the advanced displays and data processing that may be required by a user who tests multiple times a day (e.g., from about six to about ten times a day). For example, the software may include a product similar to WINGLUCOFACTS® Diabetes Management Software available from Bayer HealthCare LLC (Whippany, N.J.). As such, the software may provide a complete tool kit that receives and stores test results from a blood glucose-measurement system, receives and stores other testing information, such as test times and meal markers, tracks test results in an electronic logbook, calculates averages and provides other statistical analysis, summarizes and provides feedback on the test results, provides a customizable graphical user interface, displays user-friendly charts and graphs of the test results, tracks test results against user-specific target ranges, provides predictive analysis, and/or sends data to healthcare providers via fax, email, or the like.

The system100is not limited to receiving and managing information from the testing of an analyte, such as blood glucose. Indeed, the system100may receive data from other systems or devices that measure and/or record health data and do not require analyte testing, such as body-temperature measurements, blood-pressure measurements, heart rate measurements, blood-oxygen content measurements, breathing measurements for chronic obstructive pulmonary disease (COPD) analysis, weight measurements for analyzing Lasix use, or the like.

In addition, the software may employ data storage, such as an embedded database, for receiving and storing test results. The system100addresses issues related to the security of data, such as personal medical information, by ensuring: (1) essentially all data is stored and processed on the mobile device130, which remains in the user's possession; and (2) no readable data is permanently transferred from the data storage to the server150, which other individuals may access. Thus, a user may use a public computer to interface with the system100and no data remains on the public computer for others to view. Although the system100may temporarily transfer data to RAM or other similar storage on network devices such as the computer170, a cleanup or termination procedure in the system100ensures that any such transferred data is removed from the computer170.

Data security may also be enhanced by employing the data storage (e.g., an embedded database) that can only be accessed or decrypted by the data-management software. Furthermore, the software may also include programs or components, such as user-authentication routines, that protect data integrity and security. When the data-management software launches, it may immediately prompt the user for a user ID and password, personal identification number (PIN), and/or other authentication information. The user is only allowed access to data on the mobile device130if the response to the security prompt corresponds with authentication information stored with the data-management system100. A user-authentication routine may also be employed to permit data to be transferred from the mobile device130to the server150.

Additionally or alternatively, the transceivers258and334inFIGS. 2B and 3respectively also may enable the testing device110and the mobile device130to communicate via a radio-frequency (RF) link (e.g., a short-range RF telemetry), such as Bluetooth® wireless technologies, Zigbee, Z-Sense™ technology, FitSense, BodyLAN™ system, and other RF technologies. RF technologies such as Bluetooth® enable external devices to communicate wirelessly with, for example, laptop personal computers and mobile phones. Other wireless, or non-physical, communication technologies, such as infrared (IR) links, also may be used.

In addition to storing data, such as test results from a blood glucose-measurement system and other health data processed by the data-management software, the mobile device130may be employed to incorporate the function of a portable medical records device, due to its portability and compatibility. As such, the mobile device130may be used to facilitate the sharing of important information with emergency medical technicians (EMT's), doctors, other health care providers, or the like.

In a particular embodiment, the mobile device130may provide important information during emergency situations. If the user is unconscious or otherwise unable to communicate with a care giver, the care giver may connect the mobile device130with a computing device and once the data-management software is launched, important information may appear on a splash screen or initial screen. This type of functionality is possible, because the mobile device130is highly compatible with a variety of computing devices, and the care giver does not have to pre-install software components on such devices to launch the software.

In some cases, data-management system software or applications may be distributed to the health care community, so that data on the mobile device130may be accessed, if authorized, with the data-management system software installed on the health care provider's processing device such as the computer170. For security purposes, data may be encrypted so that it may only be read with a decryption key on the health provider processing device.

In general, the types of data that can be stored and shared with other individuals, such as health care providers, include, but are not limited to: name and address information; data tracked for a disease state (logbook information, daily tracking for chronic illnesses and measurable markers, measurements collected over the last 12 hours, etc.); comorbidity data; last dose of insulin or other medication taken; primary doctor's name and contact information; information on past visits to a doctor; a living will; information on a health care proxy; insurance information; allergy information; and other user-provided information. Alternatively or additionally, information can be provided on a sticker or other label affixed to the mobile device130.

To preserve the user's privacy, information shared through the mobile device130is strictly controlled by the user. As a further technique for controlling shared data, the data-management software may provide multiple levels of access so that certain types of data are only accessible to certain individuals/organizations. For example, an EMT may only be able to access information such as doctor's information and data generally available on a medical bracelet. In other words, the software provides very basic functionality, e.g., displaying a single splash screen, to present less sensitive personal information to those without higher authority. Meanwhile, a doctor may be able to access more sensitive health-related information. Furthermore, greater access may be provided to relatives or close care givers, e.g., parents of a child with diabetes.

As described previously, the mobile device130may include a variety of interfaces to connect and communicate with a variety of devices. The mobile device130may employ its communication capabilities to connect remotely, e.g., over a network, with external systems to provide the user with a wider range of functionalities and features. In some embodiments, these external systems may provide a host function that manages the communication between the mobile device130and these external systems. These external systems may execute aspects of the data-management software or other software components stored on the mobile device130to enable the communication between the mobile device130and the external systems. Alternatively, these external systems may store the necessary software components locally.

Accordingly, the mobile device130may access the Internet or a cellular network, to transmit data remotely to other individuals, e.g., health care providers. As such, a user does not have to connect the mobile device130directly with the other individual's processing devices to share data. The health data stored on a mobile device130is therefore easily shared with other individuals, including health care specialists who may be located in distant or remote locations. This feature may be particularly advantageous for users unable to a health care provider's facilities due to health problems, distance, cost, etc. Moreover, this feature enhances the health care provider's ability to monitor a user's health data with greater frequency and immediacy.

In addition, the mobile device130may connect to the network140to receive field upgrades to the data and/or software stored on the server150. For example, the mobile device130may conveniently receive an updated/patched version, or even a completely new version, of the data-management software by connecting to a remote download server. As a further example, the mobile device130may receive new or updated parameters for the execution of software or applications on the mobile device130. In some embodiments, new programs or features for the system100may be received, e.g., purchased, from a remote download server. Optional features that may customize or personalize the graphical user interface for the data-management application may be available through a system accessible through the Internet. To maintain the integrity of the data and software on the mobile device130, data or software downloaded via field upgrade may be validated before being employed in the mobile device130. For example, checksum routines may be employed to confirm that data or software has been successfully downloaded in its entirety. The mobile device130may include a processor that can locally execute software components to manage aspects of the field upgrade. For example, the processor on mobile device130may preserve data integrity on the mobile device130according to a data update file (DUF) or other component that ensures that the software has been successfully downloaded. For additional data security, the DUF be employed with data encryption/decryption.

The mobile device130may employ a USB interface to connect to a variety of devices. In conventional systems, standard USB is designed to provide connectivity between a processing device and peripheral devices, where the processing device acts as a host and the USB-enabled peripheral devices act as slaves. In general, with standard USB, only the USB host can initiate data transfers to the connected USB peripheral device, and the USB peripheral device can only respond to instructions given by the host. Thus, a USB-enabled peripheral device is not able to connect with other USB-enabled peripheral devices over a peer-to-peer communication channel.

FIG. 4shows a block diagram of a management and analysis application400executed by the mobile device130inFIG. 1. As will be explained below, the management and analysis application400receives data relating to tests on fluids performed by the testing device110inFIG. 1and provides management and analysis functions for a user. The management and analysis application400includes an application framework402and an operating system layer404. The operating system layer404includes plug-ins406for different operating systems for different mobile devices such as Android, Windows, iOS and OSX.

The application framework402includes different APIs such as a user interface and JSON Parser API410, a cloud services API412, a database API414, a communication API416, a BCP API418, and a blood glucose profile API420. The application framework402includes middleware408that strings together the other functional modules and provides basic services to the application400. While many of these services are platform-specific, they are small enough that they can be abstracted with simple methods.

The user interface API402includes a language support module422, a language module424, a style sheet selector426, a user interface module428and a platform abstraction layer430. The user interface428is written in HTML5 and encompasses dynamic HTML, JavaScript, and CSS style sheets. This dynamic HTML is manipulated by JavaScript within the pages as well as calls into and from the C/C++ middleware. The pages are packaged inside the application bundle. The platform abstraction layer430is a very thin piece of platform-specific shim code needed to instantiate and manage the mobile device's native browser engine, bind it to the application's main window, load the home page HTML from the app bundle, and handle the shuttling of code between the JavaScript and C/C++ worlds. In iOS/OSX, the browser engine is WebKit, in Android, the browser engine is Blink and in Windows, the browser engine is Internet Explorer.

The style sheet selector426manages the HTML's look and feel (e.g. to make the appearance more like native on a given platform), and potentially manage the selection of language-centric resources (e.g., specific language-translated text strings, styles, colors, left-to-right versus right-to-left, etc.). The platform abstraction layer430makes a decision about which specific CSS style sheets should be used by the HTML. The language support module422allows multi-language support. CSS style sheets are maintained for each supported language as described above, in order to allow language-specific formatting and layout, with text defined by a string ID. The language module424is an XML table of string IDs with each string translated into each supported language nested inside.

The middleware408includes a callback manager432, a system helper434, a logging module436, a motion services module438, a settings manager440, an information, motivation, and behavior (IMB) manager442, an application security module444, a data integrity manager446, a user management service448, a feature selector module450and a purchase service module452. The call back manager432is required by smart device operating systems, which operate by means of a callback mechanism. The application is not expected to run in the background or poll for the occurrence of certain events. Processing power and multitasking are limited on smart devices. Therefore, the host operating system provides a callback mechanism wherein an event trigger will call a callback function the application has provided to notify it of the event's occurrence. The callback manager432is the intended target of all these system callbacks and it calls the appropriate code elsewhere in the system when it receives them.

The system helper434notifies the application of system events and other information about the host operating system. For example, in iOS, this concept is known as a “delegate.” The system helper434acts as the clearing house for these system notifications and services. Examples include posting system notifications, responding to time change events, etc.

The logging services module436provides centralized, unified access throughout the application to log functionality, such as displaying trace messages, general debugging information, and storing log files and reports.

The motion services module438handles sensors such as an accelerometer and a gyroscope in the mobile device130. One intended purpose of these services is to handle a tap-to-pair bonding of the testing device110with mobile device130, which requires knowledge of the device's accelerometer to detect a bump/tap, combined with analysis of the signal strength of the testing device110trying to pair to it.

The settings manager440manages the user's configuration settings, primarily for the application, but for aspects of configuration of the testing device110and cloud configuration as well. In this example, the settings manager440writes setting data to database474, but it could also store in an XML, file, a .plist, a text file, etc.

The IMB manager442detects patterns in the user's data, and guides the user to recognize these patterns and alter his behavior to improve them, with the goal of helping the user manage his diabetes. The IMB manager442also detects information, motivation, and behavior pattern at appropriate times, and determine which information, motivation, and behavior patterns should be brought to the user's attention if many are detected. It is responsible for the long-term management of the user's experience.

The application security manager444acts as a bulkhead against hacking and tampering of the application. There are many potential vulnerabilities that may be mitigated or detected. Some of the identified vulnerabilities the application security manager444detects and mitigates include a jailbroken/rooted host device, a debugger attached, modified code, runtime code injection and swizzling of host OS routines.

The data integrity manager446ensures that the database474is encrypted, secure, and has not been tampered with. This includes normal data integrity (to make sure the database474has not been corrupted through normal accidental means, such as powering off the device, killing the application, battery loss, etc.) as well as tampering mitigation such as external editing or other compromise of the database474. Example procedures include robust checksum calculation and monitoring, state checks, or database compacting.

The user management service448manages user identification and account management such as creating new users, remembering existing users, checking if passwords are correct, and allowing the user to manage his account. It makes use of cloud services manager490described below.

The feature selector module450validates the unlocking of features and manages their status with the rest of the application. For example, the application could be marketed as a “freemium” product, where the user receives basic functionality for free, but may optionally pay for premium features through the use of an in-application purchase described below. For example, the IMB and Bolus calculation may be locked out by a free installation but can be unlocked as premium features with an upgrade.

The in application purchase module452handles the invocation and management of the platform's native application store purchasing. The application purchase module452manages the instantiation of the native facilities and processes their results.

The communications API416includes a communication plug-in manager460and communication plug-ins462, which in this example handle communications for the Bluetooth protocol for different operating systems. The communications manager460handles all forms of data communication with the application with the exception of cloud services support. As explained above, the example method of device communication is Bluetooth 4.0 (Bluetooth Low Energy, or BLE). It is contemplated that other methods of device communication may be used. Different plug-ins462may be accessed for different operating systems.

In this example, the plug-ins462include an iOS Bluetooth plug-in, an Android Bluetooth plug-in, an OSX Bluetooth plug-in and a Windows Bluetooth plug-in, but other plug-ins for other operating systems may be used. For example, the iOS Bluetooth plug-in wraps the functionality of iOS's CoreBluetooth stack into a neat, abstracted package behind the generic plug-in interface. The details of CoreBluetooth are not discussed here, but the high level functionality of the plug-in is to perform the following functions: initialize CoreBluetooth, check that BLE radio is turned on in control panel, scan for devices, present devices to the middleware as they are detected, connect to a device when the middleware asks, discover services and characteristics attached to a connected device, subscribe to characteristics and notify the middleware when an event happens, write to a characteristic when the middleware requests, disconnect from a device and handle unexpected disconnections.

Another example is the Android Bluetooth plug-in where the Android Bluetooth stack performs the same functionality outlined above for iOS, but the two stacks are completely different. The Android BLE stack, which was introduced in Android 4.3, is not discussed here. The Android plug-in wraps the functionality of the Android BLE stack behind the same interface used for the iOS BLE plugin.

The BCP API418includes a link security module464that provides additional security above and beyond what the BLE (Bluetooth) specification already provides. The link security module464may encrypt additional data over proprietary parts of the Bluetooth interface of the application so that only specific test devices or applications may decrypt/decode such data. Methods include shared secrets as a key for a hash algorithm, or the exchange of private keys. Another potential use of the link security module464is to provide access control, such that only authorized exchanges can access certain proprietary features.

The blood glucose profile420includes a blood glucose result parser466. Regardless of what host operating system is doing the work, blood glucose results come as the result of notifications on a certain characteristic of the testing device110inFIG. 1. These notifications are packed and need to be decoded into human readable results. The blood glucose result parser466therefore may be shared between every platform; however, it is tightly coupled to Bluetooth so it does not belong elsewhere in the middleware. It can be a single piece of C/C++ code replicated in each plug-in.

The database API414includes a database manager470to handle the persistent local storage of data in the application, a sync manager480, and a pattern detection module482. In this example, the database manager470interfaces with an SQL plug-in472that interfaces with a database474. The database474stores relevant data and settings required by the application400. The database manager470interfaces with SQL plug-in472, which wraps the functionality of the SQLite database into a generic plug-in interface. It is contemplated other types of databases may be used including a non-SQL database, an XML file, a prefs file, etc.

The sync manager480handles cloud synchronization of local database content up to the internet140inFIG. 1and synchronizing the data returned from the internet140. Ideally the sync manager480should be controlled by the cloud services manager490. In this example, the sync manager480is very tightly coupled with SQLite, so it is located in the database API414.

The pattern detection module482detects patterns in the user's data. For this reason, it is very tightly coupled with the database474instead of residing elsewhere in the middleware. The pattern detection module482looks for a set of patterns in the user's blood glucose readings and passes the results to the IMB module442in the middleware408. As will be explained, pattern detection can be triggered on demand (e.g. after receiving a reading, determine whether it triggers a pattern) or in batch/offline/background mode.

The cloud services API412includes a cloud services manager490and a network link security module492. The cloud services manager490acts as a centralized clearing house for all network-related services including any web technologies in general such as TCP/IP, UDP, sockets, HTTPS, SSL, etc. In this example, the cloud services manager490acts as a central hub for all cloud, internet, and third party connectivity. The cloud services manager490may provide WiFi/3G network detection, blood glucose reading synchronization, user account sync, settings, management, meter registration, online services, purchasing infrastructure and on line portals.

FIG. 5Aillustrates an introductory screen display500generated on a computing device such as the mobile device130inFIG. 1by the data analysis and management application400inFIG. 4. The user may access the application with normal security measures for operating the mobile device130or alternatively with heightened security procedures as described above. The screen display500may also be generated by applications on other devices that communicate with the server150. The introductory screen display500includes a pairing button502, a take a tour button504and an account button506. The pairing button502allows the user to access a screen to pair a testing device with the mobile device130. In this example, multiple testing devices may be paired with the portable device if the user maintains an account on the server150inFIG. 1. In this example, if the user does not have an account, the user can only pair one meter with the mobile device130. Other types of testing or metering devices such as health monitors, step trackers, personal fitness monitors, etc., may be paired with the mobile device130.

The take a tour button504allows a user to be presented with an interactive training of data display and analysis functions on the mobile device130and guides the user through set up of a testing device paired with the mobile device130such as the testing device110inFIG. 2Avia the application on the portable device130. The take a tour button504may activate different sounds, display graphics or colors in the process of training a user in the functions of the application or the operation of the testing device110. The account button506, when selected, allows a user to access data related to the user stored on the database160inFIG. 1. The access includes secure identification of the user to access medical data. The account button506allows a user to create an account on the server150. The account button also allows a user to register a meter or testing device with the account associated with the user maintained by the server150inFIG. 1. The user account managed by the server150as will be explained allows registration of meters and association of meters with the user as well as storage of data relating to the user.

FIG. 5Bshows a pull down menu510that allows a user to access the functions of the analysis and management program on the portable device130. The pull down menu510is accessed in this embodiment from any screen by the user swiping a finger across the display of the mobile device130. The pull down menu510includes a “My Data” selection512, a patterns selection514, a reminders selection516, a profile selection518, a settings selection520and a help selection522. The “My Data” selection512will display data related to a current reading and additional information such as past readings as will be explained below. The patterns selection514will allow a user to detect any patterns in activity based on past reading data. In this example, the patterns selection includes a warning icon524that may indicate a pattern that that has been detected but which has not been read by the user.

The reminders selection516allows a user to display and control reminders that may be activated for different events. The profile selection518allows a user to display their medical profile that is used for testing. In this example, the profile is set for the user, although a primary health care provider or the user may change the profile to update information on the user's current medical condition. A setting selection520allows a user to set settings in relation to testing devices and their account on the server150inFIG. 1. A help selection522opens various help windows to assist the user in operating the application on the mobile device130.

FIG. 5Cshows a setting screen530that is accessed by selecting the settings option520in the pull down menu510inFIG. 5B. The setting screen530includes a meters field532, a cloud account information field534, a bolus calculator field536, a day dividers field538and “An Other” settings field540. Each of the fields432,534,536,538and540may be selected to expand and display additional selections to configure various functions in the application.

FIG. 5Dshows the setting selection screen530where the meters field532and the cloud account information field534has been expanded. The meters field532now includes a listing of meters542that are in or have been in communication with the mobile device130. The process of communication is pairing the mobile device130with a testing device such as the testing device110inFIG. 1. Each of the listings542includes the name of the meter and the last time the meter communicated with the mobile device130to transmit test data. The meters field532also includes an add meter button544which, when selected, allows a user to pair a new testing device or meter with the mobile device130. In this example, the application on the mobile device130may pair up to four meters if the user has an account with the central sever150. If more than four meters are attempted to be paired, the meter with the longest interval from communication with the mobile device130is dropped.

The pairing procedure is initiated by selecting the add meter button544. The mobile device130will display instructions to the user to pair a new testing device or meter. In this example, the testing device110is placed in proximity to the mobile device130and turned on. The push button228is depressed for a period of time until the illumination panel232turns blue indicating that a Bluetooth communication has been established. The user may then select information relating to meter such as the serial number to identify the meter with the mobile device130. After required information is entered, the display on the mobile device130will then indicate a successful pairing and the new meter will be added to the meter field532. In the case of a meter or testing device that has previously been paired, the display on the mobile device130will indicate a successful pairing has occurred. If the pairing is unsuccessful, the mobile device130will display information informing the user that the pairing was unsuccessful and display information for solutions to the problem. Any paired testing device may be unpaired by a user making an appropriate selection.

Once the mobile device130is paired with a meter or testing device such as the testing device110, the mobile device130may display information obtained by the testing device in the same or greater detail. For example, the mobile device130may display information shown on the display222inFIG. 2C. The mobile device130may be used to configure different functions of the testing device110such as activating the illumination panel232, activating the audio, test notification or setting target ranges. The mobile device130may also show errors in testing device operation and include information on how to correct the error.

The cloud account field534includes information and selection that allow a user to access their account on the database160via the server150inFIG. 1. The cloud account field534includes a sign on information field546that has information relating to the user and the last sign in on the account on the server160. The user may select the sign on information field546to manage the account. An email summary information field548displays when results are emailed to the user and allows a user to set the frequency results are emailed. The results may be emailed in different formats or documents such as in pdf format. A “Share My Data” option550allows a user to share data related to the account to a third party such as a health care professional. Selecting the share “My Data Option”550will pop up a window with specific entry fields for the user to enter information relating to the third party to share the data. The account allows a user to backup and restore data to the application from the database160or other cloud storage.

FIG. 5Eshows the settings selection screen530where the bolus calculator field536has been expanded. A user may configure the Bolus calculator function by selecting between a calculator type field552which allows configuration of the calculator type, a carb to insulin ratio field554and an insulin sensitivity field556.

FIG. 5Fshows the settings selection screen530where the day dividers field538has been expanded. The day dividers field538includes a listing of time divisions560, which show the times of the day assigned to different divisions. For example, the configuration inFIG. 5Fhas five day dividers. Each of the listings560includes a description of the division562such as breakfast or lunch and a time range564associated with the division. A user may change the settings of the day dividers through pop-up windows that allow adjustment of times for each division.

FIG. 5Gshows the settings selection screen530where the other settings field540has been expanded. The other settings field540includes a language selection field570that allows a user to choose the language of the application and a customer service field572that allows a user to contact customer service.

FIG. 5Hshows a meter information screen580that is displayed when any of the meters in the meter listing542inFIG. 5Aare selected. The meter information screen580includes a graphic of the meter or testing device582, a last sync time584and a name field586. The user may configure the meter or testing device by selecting a time and date sync toggle switch588, a sound toggle switch590, a meal marking switch592and a target indicator light toggle switch594. The meter or testing device may be unpaired by selecting an unpair button596.

The graphic of the meter or testing device582includes the serial number of the meter of the testing device for identification purposes. The name field586may be selected by the user to enter the name of meter or testing device to distinguish it from other testing devices paired with mobile device130. The last sync time584will display the date and time the last time data from the testing device was synchronized with data on the mobile device130.

FIG. 6Ashows a personal data screen600that is displayed when the “My Data” selection512is selected from the menu510inFIG. 5B. In this example, the personal data screen600is the default screen displayed by the application. The personal data screen600includes a timeline area602and a reading display area604. The reading display area604includes a series of date windows606that represent readings for a particular day. In this example, the readings are arranged in chronological order, although the readings may be displayed in any order. In this example, a user may scroll down to show the most recent readings near the bottom of the screen600. The date window606includes a series of marker icons608that may be selected for a particular day to include different occurrences with a particular reading. For example, the marker icons608may include a photo icon indicating an associated picture, a notes icon indicating an associated note, an exercise icon indicating the reading occurred after exercise, a meal icon indicating the reading occurred after a meal, or an insulin icon that indicates a dosage of medication.

The date windows606include listings610for each reading taken by the user and the resulting measured blood glucose data. The listing610includes the time the reading was taken, the reading value and a log icon which in this example may be pre-meal, post meal or no meal. The reading value may be framed in a green color indicating the reading value is within an associated target range, red indicating the reading was below the target range or orange indicating the reading was above the target range. It is contemplated that other colors, patterns or visual indicators may be used to indicate the reading value relative to the target range.

The timeline area602includes a graph612that plots the readings over a period of time (e.g., three days in this example). A longer or shorter time period for plotting the readings may be used. The graph612includes circles614that represent the time of day readings occurred based on measurements taken from the test device110and communicated to the mobile device130. The circles614may be colored according to the readings in relation to the target range. An outline of the dots is displayed for the day that is at the top of the screen in the date window606. In this example, the four readings in the listings610for Sunday are displayed as outlines in the graph612. A plot line616shows the different values of the circles614relative to a blood glucose scale. In this example a different shape such as a diamond may be plotted for manual entries by a user of readings in situations where the data is not automatically received by the mobile device130.

FIG. 6Bshows an averaging data display screen620that may be displayed on the mobile device130. The display screen620is displayed by the user collapsing the listings610inFIG. 6Ainto a smaller current reading area624inFIG. 6B. The display screen620includes a timeline area622that is identical to the timeline area602of the data listing screen600inFIG. 6A. The display screen620also has a current reading area624and a weekly reading area626. The current reading area624includes a series of icons628that indicate markers the user has associated with the reading. The current reading area624also includes the reading in a field630that is in a color signifying whether the reading is within the targeted range or above or below the targeted range. The reading field630also includes an icon indicating a pre-meal or post-meal reading.

The weekly reading area626includes an information bar632. The information bar632categorizes readings from the week in three different color areas indicating how many readings were within range (green middle), above the range (orange left) and below the range (red right). The length of each color area corresponds with the number of readings falling in the ranges represented by the area in the information bar632. The information bar632also indicates percentages of readings in each of the three areas as well as the number of readings in each area. The weekly reading area626also includes a number of readings field634, an average reading value field636and a variation field638that all provide summary data on the readings during the period the averages are computed.

In this example, the screen600inFIG. 6Aor the screen620inFIG. 6Bis displayed when the user orients the mobile device130in a portrait direction. If the user turns the mobile device130to display in landscape, the display is changed to a detailed data screen640shown inFIG. 6C. The detailed data screen640includes an expanded graph642. In this example, the vertical axis of the graph642represents the value of blood glucose while the horizontal axis is a time scale. The expanded graph642in this example shows one day of readings, although longer or shorter time periods may be displayed. The expanded graph642includes plot points644that are in a circular shape. Each of the plot points644represents a reading and shows the value of the reading with in the circular shape. As with the previous graph inFIG. 6A, the circular shape of the plot points644may be colored to indicate the reading is within range or above or below range. As with the previous graph inFIG. 6A, a different shape such as a diamond may be used to represent a manual entry by the user. A plot line646connects the plot points644.

The graph642also includes different icons indicating other entries in the associated user log book. For example, a series of note icons648indicates that a user entered notes when a reading was recorded. A larger note icon652indicated the entry of a note that was not associated with a reading. The note icon652appears on the plot line646at the time the note was entered. A camera icon650indicates a picture was taken with the camera322on the device130. The readings of another day may be displayed by a slider control654, which may be moved to select other dates. Alternatively, the user may swipe the screen right or left and move the graph to display days before or after the day displayed. The data from a default day displayed is the current day, but another default time period may be used. An insulation bar656indicates the number of units of insulin taken as well as the times.

A date range selector660allows a user to filter the data on the graph642by a selected number of days. InFIG. 6C, the user has selected data from 30 days as shown in the selector660, but other selections such as 3, 7, 14 or 90 days may be selected. A meal marker selector662will display a drop down menu that allows a user to select between different meal markers. Thus, when all is selected in the meal marker selector662ofFIG. 6C, all data is shown. If a pre-meal marker is selected for the meal marker selector662, data only for before meal readings is displayed or if an after meal marker is selected, data only for after meals is displayed. The appropriate associated icon is shown in the meal marker selector662to indicate which marker filter is currently being used.

The display data may be changed via a day/average switch button664. In this example, day has been selected and thus the display inFIG. 6Cshows daily readings. By toggling the button664to select average, the average data display670inFIG. 6Dis displayed. The display670shows plots over a period of time on a graph672. A range of dates674for the data displayed on the graph672is shown near the top of the display670. The graph672includes time of day, and various data points are plotted depending on the time of day they were taken during the period of time. Certain data points676falling within the target range and are indicated by a green color. Certain data points678exceeding the target range and are indicated by an orange color. Certain data points680falling under the target range and are indicated by a red color.

Detailed information for each reading may be accessed by selecting or touching a particular reading.FIG. 6Eshows a detailed information screen684that may be displayed by selecting one of the plot points644in the display640inFIG. 6Cor the readings in the display600inFIG. 6Aor the display620inFIG. 6B. The selection may be made by tapping the area of the display or by another selection input on the mobile device130. The detailed information screen684shows the date and time of the reading at the top of the screen and includes a reading field686showing reading selected. The reading field686may be colored coded to indicate whether the reading was within the target range or above or below the target range. An insulin area688shows whether insulin was taken and what amount was taken. A meal description area690displays information about the meal. A photo area692shows any associated pictures with the reading. A notes area694displays any notes entered by the user associated with the reading. The detailed information screen684may be closed by selecting a cancel icon696.

FIG. 7Aillustrates a manual entry screen700for adding a manual entry by the user of the mobile device130. The manual entry screen700may be accessed from the list view of any screen shown by the application. The screen interface700includes an “Add Reading” button702that allows a user to manually enter a blood glucose value. The user may also add different entries through selecting a camera icon704for adding a picture, a notes icon706for adding notes, an activity icon708for adding the occurrence of an activity, a food icon710for entering food data, and a med icon712for entering medication data. Each of the icons704,706,708,710and712, if selected, opens additional screens to allow a user to load the corresponding entry.

The camera icon704opens a series of screens that allow a user to add a picture taken from the camera of the mobile device130or stored in any storage device accessible by the mobile device130. The notes icon706opens a key board that allows a user to enter a note. The activity icon708opens screens to enter or select a description of the activity, the duration of the activity, and the intensity of the activity. The food icon710opens screens to allow a user to enter or select a description of the food, and nutritional information such as the calories of the food per serving. The med icon712opens screens to allow a user to enter a description of the medication and other information such as the dosage of the medication.

FIG. 7Bshows a pop up screen720for entering data relating to a manual reading entry. The user may enter the concentration amount in a concentration reading field722via a displayed numerical key pad724. The user may select the time via a time selection field726and the date via a date selection field728. Once the user completes the entry of the concentration value, date and time, the user can select a done button730and the application will return to the manual entry screen700.

If the “Add Reading” button702is selected and data is entered via the pop up screen720, an additional meal marker icon is displayed on the manual entry screen700to classify the reading. If the meal marker icon is selected, a meal marker entry screen750inFIG. 7Cis displayed. The user can select between a fasting selection752, a before meal selection754and an after meal selection756. The user may also select between different meal buttons758to assign the reading to a particular meal. Once the marker is selected and the meal is selected, the user may exit the screen via a continue button760. Once the manual entry is completed, it will show up as another entry in the data screens shown inFIGS. 6A-6D.

As explained above, the application will detect patterns based on the gathered data and inform the user of the pattern and suggest corrective action if necessary. Information on patterns may be displayed by selecting the patterns field514on the pull down menu screen510inFIG. 5B. Information on patterns may also appear when they are detected in the form of a pop up window.

Detected patterns may be of the active, additional, or archived categories. The patterns may further also have one of a dismissed status, an improved status or a timed out status. After opening a pattern, if a user dismisses the pattern, the pattern has a dismissed status. For each pattern, a set of criteria is assigned to improve. When a pattern meets the criteria, the pattern has an improved status and can be moved to the archived category. Each pattern has a predetermined time in which a time out status will be assigned. If nothing occurs, the pattern times out after the predetermined time and is moved to the archive category.

Patterns in the active category are determined by the priority level and group consideration. Active patterns include data meeting the pattern currently. A user may select patterns to move to active status. As will be explained below, a user will be informed of active patterns and read information on the pattern.

Patterns in the additional category are patterns that are not collecting data and are determined by priority level, group and date of detection. An active pattern may be altered to the additional category if the user improves the data that led to the pattern. The user is offered the option of obtaining information relating to the additional pattern or to dismiss the pattern. Any recognized pattern that has been dismissed or improved is moved to the archive category and stored.

Patterns may be indicative of actions that could be improved or those that could be beneficial practices. For example, patterns indicative of the need for improvement may include high or low readings after a specific meal, high or low readings before a specific meal, lack of consistent testing frequency, lack of consistent testing a set times of the day, low frequency of testing, high or low readings at a particular time of the day, approaching critical high or low readings consistently, and high or low days of week. Patterns that are beneficial may include a best time of day for balanced blood sugar or consistent testing.

FIG. 8Ais a pattern notification screen800that occurs to warn a user of patterns based on readings analyzed by the application on the mobile device130. When a pattern is detected, an icon appears on the display of the mobile device130regardless of whether the application is currently active. The pattern notification screen800may be displayed by a user selecting the icon. The pattern notification screen800includes a graphic802indicating whether the pattern is beneficial or problematic. In this example, an arrow trending up or down indicates that the pattern is increasing. The pattern notification screen800also includes information relating to the detected pattern. In this example, a pattern has been detected that the user's blood glucose level has been unusually high for Saturday evenings. In contrast, a beneficial pattern may display a smiley face or other similar graphic. The pattern notification screen800includes a view more button806that allows a user to obtain more information about the discovered pattern. A not now button804allows a user to ignore the detected pattern.

If the user selects the not now button804, they will be returned to the pulldown menu510inFIG. 5B. The pattern selection514in the pull down menu510inFIG. 5Bmay have an icon indicating that one or more patterns have been unread by the user. Selecting the pattern selection514in the menu510will result in a pattern management screen820to be displayed as shown inFIG. 8B. The pattern management screen820includes an active tab822showing active category patterns, an additional category tab824showing additional patterns and an archive tab826showing archived category patterns. The tabs822,824and826may be expanded as shown inFIG. 8Bto show all patterns under each category. As shown inFIG. 8B, the active tab822shows an indicator of the number of patterns that are unread by the user. Each of the tabs822,824and826lists all patterns under that category. Listed patterns will include a description of the pattern, the time the pattern was detected and whether the pattern was improved or dismissed.

A user may select the view more button806inFIG. 8Aor any of the pattern listings830inFIG. 8Bthat will access a pattern detail screen that shows the data supporting the analyzed pattern. The content of the pattern detail screen is geared toward describing the pattern and recommending corrective action. Pattern detail screens may therefore be tailored to the particular pattern. One example of a pattern detail screen850is shown inFIG. 8C. The pattern detail screen850includes a description852of the detected pattern which includes information about the pattern and potential factors that caused the pattern. A graph854is displayed that shows the readings that led to the pattern. A related readings tab856allows a user to display additional information about the readings that support the pattern. Such a display will include the date and time of the readings and the reading values themselves. A notes tab858allows a user to enter notes relating to the pattern. A related reminders tab860allows a user to set reminders of actions to potentially address the causes of the pattern. A dismiss pattern button862allows a user to dismiss the pattern. Other types of pattern detail screens may document improvements that address the pattern, reminders that the pattern has not been addressed, selecting the level of feedback on a particular pattern and information on follow up actions.

FIG. 9Ais a reminder screen900that is displayed when a user selects the reminders option516in the pull down menu510inFIG. 5B. The reminder screen900includes a recurring reminders selection902, a countdown reminder selection904and a smart reminder selection906. Selecting any of the selections902,904and906creates a reminder for the user.

The recurring reminder selection902creates a series of reminders based on a recurring reminder screen910shown inFIG. 9B. The recurring reminder screen910includes a “Take My Medication” selection912, a log selection914, a test my blood sugar selection916or an other selection918.

If the user selects the test my blood sugar selection916, an additional screen appears to allow a user to select between a specific time, after a pre-meal reading or based on location. Selecting a specific time allows the user to set a time and day to remind the user. Selecting after a pre-meal reading gives the user the option to set a time to remind the user to test their blood sugar if they haven't tested after a pre-meal reading. The selection of a time will start a countdown timer to the reminder. Selecting a reminder based on location allows a user to select a location for triggering the reminder.

If a user selects the “My Medication” selection912, an additional screen is presented that allows a user to specify the medication and dosage. Another screen allows a user to select triggering the reminder for a specific time, based on blood sugar level or based on location. Other selection factors for reminders may be used. If the user selects the log selection914, another selection screen is displayed to allow the user to select an item such as a photo, note, activity or food for entry into the log. Another screen allows a user to select the reminder for a specific time, based on blood sugar level or based on location.

If the user selects the other selection918, an entry screen940shown inFIG. 9Cappears to allow a user to create their own reminder event. The entry screen940includes a custom reminder text field942that allows a user to enter a description from a keyboard944of the reminder. A listing of previous reminders946is also displayed allowing a user to select a previously entered reminder description. After entry of the description, another screen allows a user to select triggering the reminder for a specific time, based on blood sugar level or based on location.

FIG. 9Dshows an entry screen950that is displayed if the countdown reminder selection904is selected inFIG. 9A. The entry screen950allows a user to set a time by selecting between time options952. Once selected, the timer begins to countdown to the reminder time.

When the smart reminder selection906is selected inFIG. 9A, additional screens are displayed that include events such as visiting a health care professional that assist in managing the health of the user. The events are pre-set test reminders that may be used by the user to assist in managing health such as doctor visits, stressful events, and motivational messages. Each of these may be selected and additional information may be attached to the reminder. For example, the user may authorize sending medical data from the mobile device130or the data in a user account stored in the database150inFIG. 1to a health care professional in advance of a visit as a part of that reminder.

FIG. 10Ais a profile management screen1000that is displayed when the profile selection518is selected in the pull down menu510inFIG. 5B. The profile management screen1000includes a target ranges selection1002, an appointments selection1004, a health care team selection1006, a diabetes profile selection1008, and an HbA1c selection1010. The appointments selection1004allows a user to configure information regarding appointments with health care professionals such as the date, time and location of such appointments. The user may also configure the mobile device130to send a report of relevant health data to the health care professional at a certain time before the appointment. The health care team selection1006allows a user to enter information relating to health care professionals such as contact information. The HbA1c selection1010allows a user to add new HbA1c values.

Selecting the target ranges selection1002will display a range selection screen1030shown inFIG. 10B. The range selection screen1030includes a critical high field1032, an after meal overall high field1034, a before meal/fasting high field1036, a low field1038and a critical low field1040. The user may adjust the values for any of these fields which in turn determine various patterns and warnings as well as the color of readings that are displayed. In some cases, the user may agree that only a dedicated health care professional can adjust the target range values.

FIG. 10Cis a diabetes profile screen1050that is displayed when the diabetes profile selection1008is selected inFIG. 10A. The diabetes profile screen1050includes a date of birth field1052, a gender field1054, a diabetes type field1056and an insulin information field1058. The fields1052,1054,1056and1058allow a user to adjust their profile for diagnosis and planning.

FIG. 11Ais an example warning screen1100that is displayed when a condition is detected based on test data from the test sensor110that requires warning to the user. For example, the warning screen1100may pop up when a reading is above or below the target range by over a predetermined value indicating either a critically high or low reading. In the example shown inFIG. 11A, the concentration reading is critically low. The warning screen1100includes a reading field1102that shows the critically low reading. A warning message1104gives the user a description of the warning and a recommendation as to cure the low reading. In this example, the background color is red indicating that a critical low reading condition has occurred. Other colors such as orange may be used for a critically high measurement. A start timer button1106allows a user to set a timer to take another measurement to determine if the recommendation is followed. A call button1108activates the phone on the mobile device130and calls an emergency contact to assist the user.

When the start timer button1106is activated, the warning screen shifts to a timer countdown display screen1110as shown inFIG. 11B. The countdown display screen retains the reading1102and warning information1104from the warning screen1100inFIG. 11A. The countdown screen1110includes a countdown time1112that shows the time to the next measurement. A cancel timer button1114allows a user to cancel the countdown.

When the counter reaches the time for a measurement, the display shows an alert screen1140shown inFIG. 11C. The alert screen1140includes an informational message and icon1142that tells the user to conduct a test. An OK button1144allows the user to acknowledge the alert. A call button1108activates the phone on the mobile device130and calls an emergency contact to assist the user. If the second test reading is within acceptable parameters, the application returns to normal operation.

If the second test reading remains in the critical range, the application will display a critical warning screen1160as shown inFIG. 11D. The critical warning screen1160includes an information area1162that contains the new reading and a warning that the reading is still in the critical range. The screen1160includes a call911button1164that automatically calls emergency services. The screen1160also includes a call button1166activates the phone on the mobile device130and calls an emergency contact to assist the user. Finally, the screen1160includes a retest button1168that indicates that the user will retest using the testing device110.

While the invention is susceptible to various modifications and alternative forms, specific embodiments and methods thereof have been shown by way of example in the drawings and are described in detail herein. It should be understood, however, that it is not intended to limit the invention to the particular forms or methods disclosed, but, to the contrary, the intention is to cover all modifications, equivalents and alternatives falling within the spirit and scope of the invention.