[go: up one dir, main page]

WO2026025001A1 - System and methods for detecting, analyzing, and presenting metabolic events - Google Patents

System and methods for detecting, analyzing, and presenting metabolic events

Info

Publication number
WO2026025001A1
WO2026025001A1 PCT/US2025/039196 US2025039196W WO2026025001A1 WO 2026025001 A1 WO2026025001 A1 WO 2026025001A1 US 2025039196 W US2025039196 W US 2025039196W WO 2026025001 A1 WO2026025001 A1 WO 2026025001A1
Authority
WO
WIPO (PCT)
Prior art keywords
analyte
computer system
user
metabolic
analyte concentration
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
PCT/US2025/039196
Other languages
French (fr)
Inventor
Lauren H. JEPSON
Harry Shaw STROTHERS
Stephen PATEK
Leah Ziegler
Joseph Scales LAWSON
Thibault Pierre Gautier
Jee Hye Park
Barbara Weronika SEKUDEWICZ
Benjamin Horton MUNSON
Enrique CAMPOS NÁÑEZ
Meagan COLLINS
Matthew Steven GERBER
Siddharth Menon
Patricio Hernan COLMEGNA
Nicholas A. FRATI
Kerry Roller JOHNSON
Stacey Lynne FISCHER
Grace Zheng
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dexcom Inc
Original Assignee
Dexcom Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dexcom Inc filed Critical Dexcom Inc
Publication of WO2026025001A1 publication Critical patent/WO2026025001A1/en
Pending legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/145Measuring characteristics of blood in vivo, e.g. gas concentration or pH-value ; Measuring characteristics of body fluids or tissues, e.g. interstitial fluid or cerebral tissue
    • A61B5/14532Measuring characteristics of blood in vivo, e.g. gas concentration or pH-value ; Measuring characteristics of body fluids or tissues, e.g. interstitial fluid or cerebral tissue for measuring glucose, e.g. by tissue impedance measurement
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/72Signal processing specially adapted for physiological signals or for diagnostic purposes
    • A61B5/7271Specific aspects of physiological measurement analysis
    • A61B5/7275Determining trends in physiological measurement data; Predicting development of a medical condition based on physiological measurements, e.g. determining a risk factor
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H40/00ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
    • G16H40/60ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices
    • G16H40/63ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices for local operation
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/20ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for computer-aided diagnosis, e.g. based on medical expert systems

Landscapes

  • Health & Medical Sciences (AREA)
  • Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Public Health (AREA)
  • Medical Informatics (AREA)
  • General Health & Medical Sciences (AREA)
  • Pathology (AREA)
  • Physics & Mathematics (AREA)
  • Surgery (AREA)
  • Biophysics (AREA)
  • Veterinary Medicine (AREA)
  • Animal Behavior & Ethology (AREA)
  • Molecular Biology (AREA)
  • Heart & Thoracic Surgery (AREA)
  • Primary Health Care (AREA)
  • Epidemiology (AREA)
  • Signal Processing (AREA)
  • General Business, Economics & Management (AREA)
  • Artificial Intelligence (AREA)
  • Psychiatry (AREA)
  • Business, Economics & Management (AREA)
  • Physiology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Emergency Medicine (AREA)
  • Optics & Photonics (AREA)
  • Investigating Or Analysing Biological Materials (AREA)

Abstract

The present disclosure relates to an analyte monitoring system that implements multiple features to improve or augment metabolic event detection, analysis, and presentation. For example, the analyte monitoring system may implement personalized thresholds and detect patterns of significant metabolic events. The analyte monitoring system may also determine spike impact and link events to actions or behaviors. Additionally, the analyte monitoring system may implement a user interface for presenting information about metabolic events.

Description

SYSTEM AND METHODS FOR DETECTING, ANALYZING, AND PRESENTING METABOLIC EVENTS
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims priority to and benefit of U.S. Provisional Application No. 63/675,809, filed July 26, 2024 and U.S. Provisional Application No. 63/690,196, filed September 3, 2024, which are hereby expressly incorporated by reference herein in their entireties as if fully set forth below and for all applicable purposes.
BACKGROUND
[0002] Diabetes mellitus is a metabolic condition relating to the production or use of insulin by the body. Insulin is a hormone that allows the body to use glucose for energy, or store glucose as fat.
[0003] When a person eats a meal that contains carbohydrates, the digestive system absorbs nutrients, ultimately depositing glucose in the person's blood. Blood glucose can be used for energy or stored as fat. The body normally maintains blood glucose levels in a range that provides sufficient energy to support bodily functions and avoids problems that can arise when glucose levels are too high, or too low. Regulation of blood glucose levels depends on the production and use of insulin, which regulates the movement of blood glucose into cells.
[0004] When the body does not produce enough insulin, or when the body is unable to effectively use insulin that is present, blood sugar levels can elevate beyond normal ranges. The state of having a higher than normal blood sugar level is called “hyperglycemia.” Chronic hyperglycemia can lead to a number of health problems, such as cardiovascular disease, cataract and other eye problems, nerve damage (neuropathy), skin ulcers, and kidney damage. Hyperglycemia can also lead to acute problems, such as diabetic ketoacidosis — a state in which the body becomes excessively acidic due to the production of excess ketones, or body acids. The state of having lower than normal blood glucose levels is called “hypoglycemia.” Severe hypoglycemia can lead to damage of the heart muscle, neurocognitive dysfunction, and in certain cases, acute crises that can result in seizures or even death.
[0005] A patient living with diabetes can receive insulin to manage blood glucose levels. Insulin can be received, for example, through a manual injection with a needle. Wearable insulin pumps are also available. Diet and exercise also affect blood glucose levels. [0006] Diabetes conditions are sometimes referred to as “Type 1” and “Type 2”. A Type 1 diabetes patient is typically able to use insulin when it is present, but the body is unable to produce sufficient amounts of insulin, because of a problem with the insulin-producing beta cells of the pancreas. A Type 2 diabetes patient may produce some insulin, but the patient has become “insulin resistant” due to a reduced sensitivity to insulin. The result is that even though insulin is present in the body, the insulin is not sufficiently used by the patient's body to effectively regulate blood sugar levels.
[0007] Patients with diabetes can benefit from real-time diabetes management guidance, as determined based on a physiological state of the patient, in order to stay within a target glucose range and avoid physical complications. In certain cases, the physiological state of the patient is determined using monitoring systems that measure glucose levels, which inform the identification and/or prediction of adverse glycemic events, such as hyperglycemia and hypoglycemia, and the type of guidance provided to the patient.
[0008] For example, such monitoring systems may utilize a continuous glucose monitor (CGM) to measure a patient’s glucose levels over time. The measured glucose levels may then be processed by the monitoring system to identify and/or predict adverse glycemic events, and/or to provide guidance to the patient for treatment and or actions to abate or prevent the occurrence of such adverse glycemic events. For example, trends, statistics, or other metrics may be derived from the glucose levels and used to identify and/or predict adverse glycemic events. Or, in certain cases, the glucose levels themselves may be used to identify and/or predict adverse glycemic events.
[0009] Even with the systems described above, however, the management of diabetes presents many challenges for patients, clinicians, and caregivers, as a confluence of various factors can impact a patient's glucose levels, thus affecting the accuracy of glycemic event prediction and the guidance provided by diagnostics systems.
BRIEF DESCRIPTION OF THE DRAWINGS
[0010] So that the manner in which the above recited features of the present disclosure can be understood in detail, a more particular description of the disclosure, briefly summarized above, may be had by reference to embodiments, some of which are illustrated in the appended drawings. It is to be noted, however, that the appended drawings illustrate only exemplary embodiments and are therefore not to be considered limiting of its scope, may admit to other equally effective embodiments.
[0011] Figure 1A is a diagram conceptually illustrating an example continuous analyte monitoring system including example continuous analyte sensors with sensor electronics and example display devices, in accordance with certain aspects of the present disclosure.
[0012] Figure IB illustrates an example analyte sensor system of the continuous analyte monitoring system of Figure 1A, in accordance with certain aspects of the present disclosure.
[0013] Figures 2A through 2D illustrate example operations for determining personalized thresholds, in accordance with certain aspects of the present disclosure.
[0014] Figure 2E is a flowchart of an example method for determining personalized thresholds, in accordance with certain aspects of the present disclosure.
[0015] Figures 3A through 3C illustrate example operations for detecting patterns of metabolic events, in accordance with certain aspects of the present disclosure.
[0016] Figure 3D is a flowchart of an example method for detecting patterns of metabolic events, in accordance with certain aspects of the present disclosure.
[0017] Figures 4A and 4B illustrate example operations for linking metabolic events and logged actions, in accordance with certain aspects of the present disclosure.
[0018] Figure 4C is a flowchart of an example method for linking metabolic events and logged actions, in accordance with certain aspects of the present disclosure.
[0019] Figures 5 A and 5B illustrate example operations for presenting detected metabolic events, in accordance with certain aspects of the present disclosure.
[0020] Figures 5C through 51 illustrate example graphical interfaces for presenting detected metabolic events, in accordance with certain aspects of the present disclosure.
[0021] Figure 5J is a flowchart of an example method for presenting detected metabolic events, in accordance with certain aspects of the present disclosure.
[0022] Figures 6A through 6E illustrate example operations for spike detection and categorization, in accordance with certain aspects of the present disclosure.
[0023] Figure 6F is a flowchart of an example method for spike detection and categorization, in accordance with certain aspects of the present disclosure. [0024] Figure 7 illustrates an example computer system, in accordance with certain aspects of the disclosure.
[0025] To facilitate understanding, identical reference numerals have been used, where possible, to designate identical elements that are common to the figures. It is contemplated that elements and features of one embodiment may be beneficially incorporated in other embodiments without further recitation.
DETAILED DESCRIPTION
[0026] In a continuous analyte monitoring system, a transcutaneous continuous analyte sensor that is inserted into the interstitial fluid is used to monitor a user’s analyte levels (e.g., glucose levels), thereby, providing analyte concentration measurements reflective of the physiological state of the user. An analyte may be understood as any substance of interest that is to be measured or is being measured. Examples of such analytes include glucose, ketones, lactate, insulin, electrolytes, creatinine, as well as a number of other biomarkers including proteins, metabolites, and nucleic acids. The sensor electrodes of the transcutaneous continuous analyte sensor may interact with the desired analyte (e.g., through aptamers (singlestranded DNA or RNA molecules that bind to a specific analyte)). An analyte of particular interest may be referred to as a target analyte. For example, in a transcutaneous continuous glucose sensor, the target analyte may be glucose.
[0027] The concentration of the target analyte in the user may cause the continuous analyte sensor to generate an electric signal (e.g., an electric current or voltage). The continuous analyte sensor converts the electric signal into a signal that includes a time series of data points, with each data point indicating a concentration of the target analyte in the user at a particular time. The time series of data points may be presented on a display device of the continuous analyte monitoring system such that the user can visualize the target analyte concentration in the user over time.
[0028] When an analyte concentration (e.g., glucose concentration) changes rapidly or beyond normal levels (e.g., spikes), the continuous analyte monitoring system may determine that a metabolic event is occurring. The continuous analyte monitoring system alerts the user about the metabolic event so that action may be taken to address or remediate the event. The continuous analyte monitoring system may use thresholds to determine when a metabolic event is occurring. For example, when the analyte concentration exceeds a threshold, the continuous analyte monitoring system may determine that a metabolic event is occurring. In existing continuous analyte monitoring systems, these thresholds are predetermined using population data and programmed into the continuous analyte monitoring systems. As a result, the thresholds may be applicable for a segment of the population, but for many users (e.g., users who are considered outliers relative to the general population), the thresholds lead to incorrect detections or missed detections of metabolic events. Due to the technical problems described above, existing analyte monitoring systems may detect metabolic events when none are occurring (false positives) and may fail to detect some metabolic events (false negatives), wasting time and computing resources (e.g., at least compute, display, and battery resources) and/or jeopardizing the health of users.
[0029] Additionally, when a metabolic event is identified, it may be challenging to determine a cause of the event. Existing analyte monitoring systems may not determine or inform the user about the cause of the metabolic event, leaving the user to guess or determine the cause. If the user does not know the cause of the event or if the user attributes an incorrect cause to the event, then the user may not take the appropriate remedial action to prevent the event from reoccurring in the future. For example, if a user believes that consuming a particular type of food is causing a metabolic event when it is actually the stress the user experiences from driving that is causing the event, then the user may not take the appropriate action (e.g., stop consuming the food rather than driving on less congested roads) and the significant metabolic event may continue to occur, endangering the user. Due to the technical problems described above, existing analyte monitoring systems may not determine the causes of metabolic events correctly.
[0030] The present disclosure provides technical solutions that solve the technical problems described above. For example, the present disclosure describes a continuous analyte monitoring system that implements multiple features that address some of these challenges. First, the system analyzes a user’s historical data (e.g., historical analyte concentration measurements) to determine how the user’s analyte concentration measurements change over time. The system may determine from this data a threshold rate of change for the analyte concentration measurements that delineates whether the user is experiencing a significant metabolic event or not. As the system measures the analyte concentration for the user, the system may determine the rate of change in the measurements and compare this rate of change to the threshold. If the rate of change exceeds the threshold, then the system may determine that a significant metabolic event is occurring. In this manner, the system establishes a personalized algorithm for determining when the user is experiencing a significant metabolic event. This feature will be discussed in more detail with respect to Figures 2A through 2E.
[0031] Second, the system analyzes the user’s historical data to determine time periods (e.g., times of the day) when significant metabolic events tend to occur in the user. For example, the system may analyze the significant metabolic events that occurred to determine the events that are similar to each other and whether these similar events occurred in the same time window over a number of days. If so, the system identifies these events and the time window for the user, which may remind the user of what behavior caused these events. In this manner, the system may help the user take appropriate remedial action to address the events. This feature will be discussed in more detail with respect to Figures 3A through 3D.
[0032] Third, the user’s historical data may identify metabolic events and may include manually logged behaviors (e.g., logs indicating when and what food a user ate, when a user exercised, when a user took medication, the location of the user, etc.). The system analyzes the historical data to determine whether a manually logged behavior caused a significant metabolic event. For example, the system may implement a time-based correlation in which the system correlates manually logged behaviors with significant metabolic events that occurred shortly after the behaviors. The system may also consider characteristics of the event (e.g., spike amplitude, duration, etc.) to determine whether a behavior caused the event. The system may notify the user of the correlation so the user can take appropriate remedial action to address the event. The system may also allow the user to edit the logged behavior to provide a more accurate explanation for the correlated event. This feature will be discussed in more detail with respect to Figures 4A through 4C.
[0033] Fourth, the system analyzes a user’s historical data to determine thresholds for determining when metabolic events are occurring. For example, the system may determine that spikes in analyte concentrations with amplitudes within 20% of the highest spike amplitude within the first 45 minutes of onset indicate metabolic events. The system implements multiple user interface enhancements to report the metabolic events. For example, the system may provide a system notification that alerts the user of an event (e.g., on the lock screen of a display device). As another example, in the analyte monitoring application, the system implements an Events tab that shows a message for the event. As another example, in the application, the system shows, on a main screen, an event card that presents information about the event. If a user selects the notification, the message, or the event card, the application presents detailed information about the event to the user. This feature will be discussed in more detail with respect to Figures 5A through 5J.
[0034] Fifth, the system analyzes spikes in analyte concentration measurements to determine when the spikes are clinically or metabolically significant. For example, the system may detect that a spike is occurring and begin calculating an incremental area under the curve (iAUC) for the analyte concentration measurements. The system then categorizes the spike based on the iAUC value for the spike. The system may alert the user about the spike depending on the category for the spike. In some embodiments, the system implements one or more techniques to reduce the amount of time it takes to detect the spike. For example, the system may determine a health category for the user and use parameters for that health category to detect if a spike is occurring. As another example, the system may determine confidence levels at various times when analyzing the analyte concentration measurements. The system may detect the spike when the confidence level is sufficiently high. These features will be discussed in more detail with respect to Figures 6A through 6F.
[0035] In certain embodiments, the continuous analyte monitoring system provides several technical advantages. For example, the system determines personalized thresholds for a user that reduce the number of false positive and/or false negative detections of metabolic events in the user. As a result, the system reduces the number of alerts communicated for metabolic events, particularly for false positives, which reduces processor resources consumed. The system also has improved accuracy relative to existing continuous analyte monitoring systems when determining the causes of metabolic events, which improves user health.
[0036] As used herein, the term “continuous” analyte monitoring refers to monitoring one or more analytes in a fully continuous or semi-continuous, periodic manner, which results in a data stream of analyte values over time. A data stream of analyte values over time is what allows for meaningful data and insight to be derived using the algorithms described herein. In other words, single point-in-time measurements collected as a result of a patient visiting their health care professional every few months results in sporadic data points (e.g., that are, at best, months apart in timing) that cannot form the basis of meaningful data or insight to be derived.
[0037] Further, the data stream of analyte values collected over time, with the continuous analyte monitoring system presented herein, include real-time analyte values, which allows for deriving meaningful data and insight in real-time using the systems and algorithms described herein. Real time analyte values herein refer to analyte values that become available and actionable within seconds or minutes of being produced as a result of at least one sensor electronics module of the continuous analyte monitoring system (1) converting sensor analog electrical signals (e.g., electric current or voltage) generated by the continuous analyte sensor(s) into sensor count values, (2) calibrating the count values to generate analyte concentration values using calibration techniques described herein to account for the sensitivity of the continuous analyte sensor(s), and (3) transmitting measured analyte concentration data, including analyte concentration values, to a display device via wireless connection.
[0038] For example, the continuous analyte monitoring system may sample the analog electrical signals at a particular sampling period (or rate), such as every 1 second (1 Hz), 5 seconds, 10 seconds, 30 seconds, 1 minute, 3 minutes, 5 minutes, etc., and transmit the measured analyte concentration data to a display device at a particular transmission period (or rate), which may be the same as (or longer than) the sampling period, such as every 1 minute (0.016 Hz), 5 minutes, 10 minutes, etc.
[0039] Because of the real-time nature of the data generated by the continuous analyte monitoring system, it is humanly impossible to continuously process a real-time data stream of analyte values over time to derive meaningful data and insight using the algorithms and systems described herein. In other words, deriving meaningful data and insight from a stream of realtime data that is continuously generated, processed, calibrated, and analyzed, using the algorithms and systems described herein, is not a task that can be mentally performed. For example, executing the algorithms described herein in real-time and on a continuous basis, which would involve using a stream of real-time data that is continuously generated by a continuous analyte monitoring system and/or significantly large amount of data is not a task that can be mentally performed, especially in real-time.
Continuous Analyte Monitoring System
[0040] FIG. 1A illustrates an example of a continuous analyte monitoring system 100, in accordance with certain embodiments of the disclosure. The continuous analyte monitoring system 100 may be utilized for generating and presenting information related to user health, for example, using various user interfaces associated with the system 100. Each user of the system 100, such as a user 102, may interact with a mobile health application, such as a mobile health application (“application”) 106 (e.g., a diabetes intervention application that provides therapy management guidance), and/or a health monitoring device, such as an analyte sensor system 104 (e.g., a glucose monitoring system). The user 102, in certain embodiments, may be the patient or, in some cases, the patient’s caregiver. In the embodiments described herein, the user 102 is assumed to be the patient for simplicity only, but is not so limited. As shown, the system 100 may include an analyte sensor system 104, a display device 107 that executes the application 106, a user database 110, and a computer system 112.
[0041] The analyte sensor system 104 generates time-series data, such as analyte measurements (e.g., sensor data), for the user 102 (e.g., on a continuous basis) and transmits the analyte measurements to the display device 107 for use by the application 106. The analyte sensor system 104 may transmit the analyte measurements to the display device 107 through a wireless connection (e.g., Bluetooth connection). The display device 107 may be a smart phone or any other type of computing device capable of executing the application 106, such as a laptop computer, a smartwatch, and/or a tablet.
[0042] In certain examples, the analyte sensor system 104 is assumed to be a glucose monitoring system, but the analyte sensor system 104 may operate to monitor one or more additional or alternative analytes. As discussed, the term “analyte” as used herein is a broad term, and is to be given its ordinary and customary meaning to a person of ordinary skill in the art (and is not to be limited to a special or customized meaning), and refers without limitation to a substance or chemical constituent in the body or a biological sample (e.g., bodily fluids, including, blood, serum, plasma, interstitial fluid, cerebral spinal fluid, lymph fluid, ocular fluid, saliva, oral fluid, urine, excretions, or exudates).
[0043] Analytes can include naturally occurring substances, artificial substances, metabolites, and/or reaction products. In some embodiments, the analyte measured and used by the devices and methods described herein may include albumin, alkaline phosphatase, alanine transaminase, aspartate aminotransferase, bilirubin, blood urea nitrogen, calcium, CO2, chloride, creatinine, glucose, gamma-glutamyl transpeptidase, hematocrit, lactate, lactate dehydrogenase, magnesium, oxygen, pH, phosphorus, potassium, ketones, sodium, total protein, uric acid, metabolic markers, and/or drugs.
[0044] Other analytes are contemplated as well, including but not limited to acetaminophen, dopamine, ephedrine, terbutaline, ascorbate, uric acid, oxygen, d-amino acid oxidase, plasma amine oxidase, xanthine oxidase, NADPH oxidase, alcohol oxidase, alcohol dehydrogenase, pyruvate dehydrogenase, diols, Ros, NO, bilirubin, cholesterol, triglycerides, gentisic acid, ibuprophen, L-Dopa, methyl dopa, salicylates, tetracycline, tolazamide, tolbutamide, acarboxyprothrombin; acylcarnitine; adenine phosphoribosyl transferase; adenosine deaminase; albumin; alpha-fetoprotein; amino acid profiles (arginine (Krebs cycle), histidine/urocanic acid, homocysteine, phenylalanine/tyrosine, tryptophan); andrenostenedione; antipyrine; arabinitol enantiomers; arginase; benzoylecgonine (cocaine); biotinidase; biopterin; c-reactive protein; carnitine; carnosinase; CD4; ceruloplasmin; chenodeoxycholic acid; chloroquine; cholesterol; cholinesterase; conjugated 1-P hydroxycholic acid; cortisol; creatine kinase; creatine kinase MM isoenzyme; cyclosporin A; d- penicillamine; de-ethylchloroquine; dehydroepiandrosterone sulfate; DNA (acetylator polymorphism, alcohol dehydrogenase, alpha 1 -antitrypsin, cystic fibrosis, Duchenne/Becker muscular dystrophy, glucose-6-phosphate dehydrogenase, hemoglobin A, hemoglobin S, hemoglobin C, hemoglobin D, hemoglobin E, hemoglobin F, D-Punjab, beta-thalassemia, hepatitis B virus, HCMV, HIV-1, HTLV-1, Leber hereditary optic neuropathy, MCAD, RNA, PKU, Plasmodium vivax, sexual differentiation, 21 -deoxycortisol); desbutylhalofantrine; dihydropteridine reductase; diptheria/tetanus antitoxin; erythrocyte arginase; erythrocyte protoporphyrin; esterase D; fatty acids/acylglycines; free P-human chorionic gonadotropin; free erythrocyte porphyrin; free thyroxine (FT4); free tri-iodothyronine (FT3); fumarylacetoacetase; galactose/gal-1 -phosphate; galactose- 1 -phosphate uridyltransferase; gentamicin; glucose-6-phosphate dehydrogenase; glutathione; glutathione perioxidase; glycocholic acid; glycosylated hemoglobin; halofantrine; hemoglobin variants; hexosaminidase A; human erythrocyte carbonic anhydrase I; 17-alpha-hydroxyprogesterone; hypoxanthine phosphoribosyl transferase; immunoreactive trypsin; lactate; lead; lipoproteins ((a), B/A-l, P); lysozyme; mefloquine; netilmicin; phenobarbitone; phenyloin; phytanic/pristanic acid; progesterone; prolactin; prolidase; purine nucleoside phosphorylase; quinine; reverse tri-iodothyronine (rT3); selenium; serum pancreatic lipase; sissomicin; somatomedin C; specific antibodies (adenovirus, anti-nuclear antibody, anti-zeta antibody, arbovirus, Aujeszky's disease virus, dengue virus, Dracunculus medinensis, Echinococcus granulosus, Entamoeba histolytica, enterovirus, Giardia duodenalisa, Helicobacter pylori, hepatitis B virus, herpes virus, HIV-1, IgE (atopic disease), influenza virus, Leishmania donovani, leptospira, measles/mumps/rubella, Mycobacterium leprae, Mycoplasma pneumoniae, Myoglobin, Onchocerca volvulus, parainfluenza virus, Plasmodium falciparum, poliovirus, Pseudomonas aeruginosa, respiratory syncytial virus, rickettsia (scrub typhus), Schistosoma mansoni, Toxoplasma gondii, Trepenoma pallidium, Trypanosoma cruzi/rangeli, vesicular stomatis virus, Wuchereria bancrofti, yellow fever virus); specific antigens (hepatitis B virus, HIV-1); succinylacetone; sulfadoxine; theophylline; thyrotropin (TSH); thyroxine (T4); thyroxine-binding globulin; trace elements; transferrin; UDP-galactose-4-epimerase; urea; uroporphyrinogen I synthase; vitamin A; white blood cells; and zinc protoporphyrin. Salts, sugar, protein, fat, vitamins, and hormones naturally occurring in blood or interstitial fluids can also constitute analytes in certain embodiments.
[0045] The analyte can be naturally present in the biological fluid, for example, a metabolic product, a hormone, an antigen, an antibody, and the like. Alternatively, the analyte can be introduced into the body, for example, a contrast agent for imaging, a radioisotope, a chemical agent, a fluorocarbon-based synthetic blood, or a drug or pharmaceutical composition, including but not limited to insulin; ethanol; cannabis (marijuana, tetrahydrocannabinol, hashish); inhalants (nitrous oxide, amyl nitrite, butyl nitrite, chlorohydrocarbons, hydrocarbons); cocaine (crack cocaine); stimulants (amphetamines, methamphetamines, Ritalin, Cylert, Preludin, Didrex, PreState, Voranil, Sandrex, Plegine); depressants (barbituates, methaqualone, tranquilizers such as Valium, Librium, Miltown, Serax, Equanil, Tranxene); hallucinogens (phencyclidine, lysergic acid, mescaline, peyote, psilocybin); narcotics (heroin, codeine, morphine, opium, meperidine, Percocet, Percodan, Tussionex, Fentanyl, Darvon, Tai win, Lomotil); designer drugs (analogs of fentanyl, meperidine, amphetamines, methamphetamines, and phencyclidine, for example, Ecstasy); anabolic steroids; and nicotine. The metabolic products of drugs and pharmaceutical compositions are also contemplated analytes. Analytes such as neurochemicals and other chemicals generated within the body can also be analyzed, such as ascorbic acid, uric acid, dopamine, noradrenaline, 3 -methoxy tyramine (3MT), 3,4-dihydroxyphenylacetic acid (DOPAC), homovanillic acid (HVA), 5 -hydroxy tryptamine (5HT), histamine, Advanced Glycation End Products (AGEs) and 5-hydroxyindoleacetic acid (FHIAA).
[0046] The application 106 may be a mobile health application that receives and analyzes time-series data, including analyte measurements, from the analyte sensor system 104 and/or other devices. The application 106 may transmit analyte measurements received from the analyte sensor system 104 to the user database 110 (and/or the computer system 112), and the user database 110 (and/or the computer system 112) may store the analyte measurements in a user profile 118 of the user 102 for processing and analysis, for example, by the computer system 112, based on contextual data supplied by the user 102. In some embodiments, the application 106 may store the analyte measurements in the user profile 118 of user 102 locally for processing and analysis, for example, by the computer system 112, based on contextual data supplied by the user 102.
[0047] The application 106 may provide and present various interfaces for receiving, from the user 102, contextual data of the type discussed previously. In an example, the application 106 provides a user interface that allows the user 102 to log actions that the user 102 performed. In another example, the application 106 provides a user interface that allows the user 102 to link actions to detected metabolic events. The application 106 may also provide a user interface that presents information about detected metabolic events (e.g., the measured analyte concentrations during the events).
[0048] The application 106 may take as input information relating to the user 102 and store the information in a user profile 118 for the user 102 in the user database 110. For example, the application 106 may obtain and record the analyte concentration measurements 120 for the user 102, the metabolic events 122 detected in the user 102, and/or the actions 124 logged by the user 102 in the user profile 118. The application 106 and/or the computer system 112 may treat the information in the user profile 118 as historical data about the user 102. This historical data may provide insights about the user 102, such as the actions 124 that cause certain metabolic events 122 in the user 102 and the analyte concentrations or changes in the analyte concentrations that indicate that metabolic events 122 are occurring in the user 102.
[0049] The application 106 collects inputs through user input and/or other sources, including the analyte sensor system 104, other applications running on the display device 107, and/or one or more other sensors and devices. These sensors and devices may include one or more of, but are not limited to, an insulin pump, other types of analyte sensors, sensors or devices provided by the display device 107 (e.g., accelerometer, camera, global positioning system (GPS), heart rate monitor, etc.), other user accessories (e.g., a smartwatch), or any other sensors or devices that provide relevant information about the user 102. In certain embodiments, the user profile 118 also stores application configuration information indicating the current configuration of the application 106, including features and settings.
[0050] The user database 110 may be a storage server that operates in a public or private cloud. The user database 110 may be implemented as any type of data store, such as relational databases, non-relational databases, key-value data stores, file systems including hierarchical file systems, and the like. In some implementations, the user database 110 is distributed. For example, the user database 110 may include persistent storage devices, which are distributed. Furthermore, the user database 110 may be replicated so that the storage devices are geographically dispersed.
[0051] The user database 110 may include other user profiles 118 for other users. Similar to the operations performed with respect to the user 102, the operations performed with respect to these other users may utilize an analyte monitoring system, such as analyte sensor system 104, and also interact with the same application 106, copies of which execute on the respective display devices of the other users. For such users, the user profiles 118 are similarly created and stored in the user database 110.
[0052] Further, in certain embodiments, the database 110 may store data for other users or people. For example, the database 110 may include information (e.g., profile(s)) related to one or more users or hosts known to be metabolically unfit. Data stored in the database 110 may be referred to herein as population data, which could include hundreds or thousands of data points for each one of thousands or millions of people in the population. In other words, data stored in the database 110 and used in certain embodiments described herein could include gigabytes, terabytes, petabytes, exabytes, etc. of data.
[0053] The computer system 112 may implement several of the features described herein. For example, the computer system 112 may determine personalized thresholds for the user 102. As another example, the computer system 112 may determines patterns of metabolic events in the user 102 and correlate logged actions to detected metabolic events. The computer system 112 may include any number of servers that communicate with the display device 107 and/or the user database 110 to implement these features.
[0054] FIG. IB illustrates an example analyte sensor system 104 including an example continuous analyte sensor(s) with sensor electronics, in accordance with certain aspects of the present disclosure. The analyte sensor system 104 may continuously monitor one or more analytes of a user.
[0055] As shown in FIG. IB, the analyte sensor system 104 includes a sensor electronics module 138 and one or more continuous analyte sensor(s) 140 (individually referred to herein as the continuous analyte sensor 140 or analyte sensor 140 and collectively referred to herein as the continuous analyte sensors 140 or analyte sensor 140). The sensor electronics module 138 may be in wireless communication (e.g., directly or indirectly) with one or more display devices 107a, 107b, 107c, and 107d. [0056] The continuous analyte sensor 140 may include a sensor for detecting and/or measuring analyte(s). The continuous analyte sensor 140 may be a multi-analyte sensor that continuously measures two or more analytes (e.g., ketone, glucose) or a single analyte sensor that continuously measures a single analyte as a non-invasive device, a subcutaneous device, a transcutaneous device, a transdermal device, and/or an intravascular device.
[0057] The continuous analyte sensor 140 may continuously measure analyte levels of the user 102 using one or more measurement techniques, such as enzymatic, chemical, physical, electrochemical, spectrophotometric, polarimetric, calorimetric, iontophoretic, radiometric, immunochemical, and the like. In certain aspects, the continuous analyte sensor 140 provides a data stream indicative of the concentration of one or more analytes in the user 102. The data stream may include raw data signals, which may be converted into a calibrated and/or filtered data stream used to provide estimated analyte value(s) to the user 102.
[0058] The continuous analyte sensor 140 may be a multi-analyte sensor that continuously measures multiple analytes in the body of the user 102. For example, the continuous multianalyte sensor 140 may be a single sensor that measures glucose, ketones, and/or other blood analytes in the body.
[0059] One or more multi-analyte sensors may be used in combination with one or more single analyte sensors. As an illustrative example, a multi-analyte sensor may continuously measure ketone and glucose and may, in some cases, be used in combination with one or more other analyte sensors that measure only, for example, hydration levels or protein levels. Information from each of the multi-analyte sensor(s) and single analyte sensor(s) may be combined to provide one or more types of analyte measurement data.
[0060] The sensor electronics module 138 includes electronic circuitry for measuring and processing the continuous analyte sensor data, including prospective algorithms associated with processing and calibration of the sensor data. The sensor electronics module 138 can be physically connected to the continuous analyte sensor(s) 140 and can be integral with (non- releasably attached to) or releasably attachable to the continuous analyte sensor(s) 140. The sensor electronics module 138 may include hardware, firmware, and/or software that enables measurement of levels of analyte(s) via a continuous analyte sensor(s) 140. For example, the sensor electronics module 138 can include a potentiostat, a power source for providing power to the sensor, other components useful for signal processing and data storage, and a telemetry module for transmitting data from the sensor electronics module to one or more display devices. Electronics can be affixed to a printed circuit board (PCB), or the like, and can take a variety of forms. For example, the electronics can take the form of an integrated circuit (IC), such as an Application-Specific Integrated Circuit (ASIC), a microcontroller, and/or a processor.
[0061] Each of the display devices 107a, 107b, 107c, or 107d may include a display such as a touchscreen display 109a, 109b, 109c, and 109d for displaying sensor data to the user 102 and/or receiving inputs from the user 102. For example, a graphical user interface may be presented to the user 102 for such purposes. In some embodiments, the display devices 107a, 107b, 107c, and 107d may include other types of user interfaces such as a voice user interface instead of, or in addition to, a touchscreen display for communicating sensor data to the user 102 of the display device and/or receiving user inputs. The display devices 107a, 107b, 107c, and 107d may be examples of the display device 107 illustrated in FIG. 1A used to display sensor data to the user 102 and/or receive input from the user 102.
[0062] In some embodiments, a display device 107 may display or otherwise communicate the sensor data as the sensor data is communicated from the sensor electronics module 138 (e.g., in a data package that is transmitted to respective display devices), without any additional prospective processing for calibration and real-time display of the sensor data.
[0063] The display devices 107 may include a custom display device specially designed for displaying certain types of displayable sensor data associated with analyte data received from sensor electronics module 138, contextual data, a condensed timeline, and/or video feedback. In certain embodiments, the display devices 107 may provide alerts/alarms based on the displayable sensor data. The display device 107b is an example of such a custom device. In some embodiments, one of the display devices is a smartphone, such as the display device 107c, which represents a mobile phone using a commercially available operating system (OS) to display a graphical representation of the continuous sensor data (e.g., including current and historic data). Other display devices can include other hand-held devices, such as the display device 107d, which represents a tablet, and the display device 107a, which represents a smartwatch. Display device 107d and display device 107a may similarly display graphical representations of the continuous sensor data (e.g., including current and historic data).
[0064] Because different display devices provide different user interfaces, content of the data packages (e.g., amount, format, and/or type of data to be displayed, alarms, and the like) can be customized (e.g., programmed differently by the manufacture and/or by an end user) for each particular display device. Accordingly, in certain embodiments, different display devices can be in direct wireless communication with the sensor electronics module (e.g., such as an on-skin sensor electronics module 138 that is physically connected to the continuous analyte sensor(s) 140) during a sensor session to allow different types and/or levels of display and/or functionality associated with the displayable sensor data.
[0065] A wireless access point (WAP) may be used to couple one or more of the analyte sensor system 104 and the display devices 107 to one another. For example, the WAP may provide Wi-Fi and/or cellular connectivity among these devices. Near Field Communication (NFC) and/or Bluetooth may also be used.
[0066] In certain embodiments, the continuous analyte sensor(s) 140 may include a percutaneous wire that has a proximal portion coupled to the sensor electronics module 138 and a distal portion with several electrodes, such as a measurement electrode and a reference electrode. The measurement (or working) electrode may be coated, covered, treated, embedded, etc., with one or more chemical molecules that react with a particular analyte, and the reference electrode may provide a reference electrical voltage. The measurement electrode may generate an analog electrical signal, which is conveyed along a conductor that extends from the measurement electrode to the proximal portion of the percutaneous wire that is coupled to the sensor electronics module 138. After the continuous analyte monitoring system 104 has been applied to epidermis of a user, the continuous analyte sensor(s) 140 penetrates the epidermis, and the distal portion extends into the dermis and/or subcutaneous tissue under epidermis. Other configurations of the continuous analyte sensor(s) 140 may also be used, such as a multi-analyte sensor that includes multiple measurement electrodes, each generating an analog electrical signal that represents the concentration levels of a particular analyte.
[0067] Generally, a single-analyte sensor generates an analog electrical signal that is proportional to the concentration level of a particular analyte. Similarly, each multi-analyte sensor generates multiple analog electrical signals, and each analog electrical signal is proportional to the concentration level of a particular analyte. As an illustrative example, the continuous analyte sensor 140 may include a single-analyte sensor that measures lactate concentration levels, and another single- analyte sensor that measures glucose concentration levels. As another illustrative example, the continuous analyte sensor(s) 140 may include a single-analyte sensor that measures lactate concentration levels, and one or more multi-analyte sensors that measure glucose concentration levels, ketone concentration levels, creatinine concentration levels, etc. As yet another illustrative example, the continuous analyte sensor(s) 140 may include a multi-analyte sensor that measures lactate concentration levels, glucose concentration levels, ketone concentration levels, creatinine concentration levels, etc. Accordingly, the continuous analyte sensor(s) 140 generates at least one analog electrical signal that is proportional to the concentration level of a particular analyte, and the sensor electronics module 138 converts the analog electrical signal into an analyte sensor count values, calibrates the analyte sensor count values based on the sensitivity profile of the continuous analyte sensor(s) 140 to generate measured analyte concentration levels, and transmits the measured analyte concentration level data, including the measured analyte concentration levels, to a display device 107 via a wireless connection. For example, the sensor electronics module 138 may sample the analog electrical signal at a particular sampling period (or rate), such as every 1 second (1 Hz), 5 seconds, 10 seconds, 30 seconds, 1 minute, 3 minutes, 5 minutes, etc., and transmit the measured analyte concentration data to the display device 107 at a particular transmission period (or rate), which may be the same as (or longer than) the sampling period, such as every 1 minute (0.016 Hz), 5 minutes, 10 minutes, 30 minutes, at the conclusion of the wear period, etc. Depending on the sampling and transmission periods, the measured analyte concentration data transmitted to the display device 107 may include at least one measured analyte concentration level having an associated time tag, sequence number, etc.
[0068] The continuous analyte sensor(s) 140 may incorporate a thermocouple within, or alongside, the percutaneous wire to provide an analog temperature signal to the sensor electronics module 138, which may be used to correct the analog electrical signal or the measured analyte data for temperature. The thermocouple may be incorporated into the sensor electronics module 138 above the adhesive pad, or, alternatively, the thermocouple may contact the epidermis through openings in the adhesive pad.
[0069] In certain embodiments, the sensor electronics module 138 includes a processor 141, storage element or memory 142, wireless transmitter/receiver (transceiver) 143, one or more antennas coupled to wireless transceiver 143, analog electrical signal processing circuitry, analog to-digital (A/D) signal processing circuitry, digital signal processing circuitry, a power source for continuous analyte sensor(s) 140 (such as a potentiostat), etc.
[0070] The processor 141 may be a general-purpose or application- specific microprocessor, an application- specific integrated circuit (ASIC), a field programmable gate array (FPGA), etc., that executes instructions to perform control, computation, input/output, etc. functions for the sensor electronics module 138. The processor 141 may include a single integrated circuit, such as a micro processing device, or multiple integrated circuit devices and/or circuit boards working in cooperation to accomplish the appropriate functionality. In certain embodiments, the processor 141, the memory 142, the wireless transceiver 143, the A/D signal processing circuitry, and the digital signal processing circuitry may be combined into a system-on-chip (SoC).
[0071] Generally, the processor 141 may sample the analog electrical signal using the A/D signal processing circuitry at regular intervals (such as the sampling period) to generate analyte sensor count values based on the analog electrical signals produced by the continuous analyte sensor(s) 140, calibrate the analyte sensor count values based on the sensitivity profile of the continuous analyte sensor(s) 140 to generate measured analyte concentration levels, generate measured analyte data from the measured analyte concentration levels, and generate sensor data packages that include the measured analyte concentration level data. The processor 141 may store the measured analyte concentration level data in the memory 142, and generate the sensor data packages at regular intervals (such as the transmission period) for transmission by wireless transceiver 143 to a display device 107. The processor 141 may also add additional data to the sensor data packages, such as supplemental sensor information that includes a sensor identifier, a sensor status, temperatures that correspond to the measured analyte data, etc. The sensor data packages are then wirelessly transmitted over a wireless connection to the display device 107. In certain embodiments, the wireless connection is a Bluetooth or Bluetooth Low Energy (BLE) connection. In such embodiments, the sensor data packages are transmitted in the form of Bluetooth or BLE data packets to the display device
[0072] The memory 142 may include volatile and nonvolatile medium. For example, the memory 142 may include combinations of random access memory (RAM), dynamic RAM (DRAM), static RAM (SRAM), read only memory (ROM), flash memory, cache memory, and/or any other type of non-transitory computer-readable medium. The memory 142 may store one or more analyte sensor system applications, modules, instruction sets, etc. for execution by the processor 141, such as instructions to generate measured analyte data from the analyte sensor count values, etc.
[0073] The memory 142 may also store certain sensor operating parameters 144, such as a calibration slope (or calibration sensitivity) 145, a calibration baseline 146, etc. In particular, the calibration sensitivity 145, calibration baseline 146, and other information related to the sensitivity profile for the sensor electronics module 138 may be programmed into the sensor electronics module 138 during the manufacturing process, and then used to convert the analyte sensor electrical signals into measured analyte concentration levels.
Personalized Thresholds
[0074] Figures 2A through 2D illustrate example operations for determining personalized thresholds, in accordance with certain aspects of the present disclosure. A computer system (e.g., the computer system 112 shown in Figure 1 A) performs these operations. Generally, the computer system analyzes historic user data (e.g., historic analyte concentration measurements) to determine personalized thresholds for a user. These thresholds may then be used to determine when metabolic events are occurring in the user.
[0075] Figure 2A shows an example operation 200 performed by the computer system. By performing the operation 200, the computer system determines rates of change of analyte concentrations in a user. The computer system begins by receiving analyte concentration measurements 202 for the user. The analyte concentration measurements 202 may be stored in a user profile (e.g., the user profile 118 shown in Figure 1A) for the user in a database (e.g., the user database 110 shown in Figure 1 A). The analyte concentration measurements 202 may be previously measured by an analyte sensor system (e.g., the analyte sensor system 104 shown in Figures 1A and IB) worn by the user. The analyte sensor system then stores the analyte concentration measurements 202 in the database. The analyte concentration measurements 202 may include measurements from any period of time (e.g., the previous 14 days).
[0076] In some embodiments, the computer system first checks the analyte concentration measurements 202 against certain thresholds before determining the threshold rate of change 210. These thresholds may indicate threshold amounts of data to be available in the analyte concentration measurements 202 from different periods of time. For example, the computer system may check the analyte concentration measurements 202 against a data availability threshold 204 that specifies a minimum number of measurements from the past few hours. For example, if the data availability threshold 204 is five measurements over the past two hours, then the computer system may determine whether the analyte concentration measurements 202 includes at least five measurements from the past two hours. If the analyte concentration measurements 202 include fewer measurements, then the computer system may stop the operation 200 to wait for more analyte concentration measurements to be taken. Otherwise, the computer system continues with the operation 200. [0077] As another example, the computer system may check the analyte concentration measurements 202 against an historic data availability threshold 206 that specifies a threshold amount or percentage of measurements from the past fourteen days. For example, if the analyte sensor system is set to make 288 measurements per day and the analyte concentration measurements 202 span fourteen days, then the analyte concentration measurements 202 may include a maximum of 4,032 measurements. If the historic data availability threshold 206 is 75%, then the computer system may determine whether the analyte concentration measurements 202 includes at least 3,024 measurements, which is 75% of 4,032 measurements. If the analyte concentration measurements 202 include fewer measurements, then the computer system may stop the operation 200 to wait for more analyte concentration measurements to be taken. Otherwise, the computer system continues with the operation 200.
[0078] The computer system analyzes the analyte concentration measurements 202 to determine rates of change 208 in the analyte concentration measurements 202. For example, the computer system may determine the rates of change 208 by ordering the analyte concentration measurements 202 in time and then calculating the differences between successive analyte concentration measurements 202. The computer system then divides these differences by the period of time between the successive analyte concentration measurements 202 to determine the rates of change 208. In effect, the rates of change 208 may be the first derivatives of the analyte concentration measurements 202 or the slope of the line or curve between successive analyte concentration measurements 202.
[0079] The computer system then determines a threshold rate of change 210 using the rates of change 208. For example, the computer system may determine the threshold rate of change 210 as a percentile of the rates of change 208. The computer system orders the rates of change 208 by magnitude (e.g., from lowest to highest). The computer system then determines which rate of change 208 of the rates of change 208 is a particular percentile of the rates of change 208. For example, if the computer system determines that the threshold rate of change 210 should be the 84th percentile of the rates of change 208, then the computer system determines the rate of change 208 that is greater than 84% of the rates of change 208. The computer system then sets this determined rate of change 208 as the threshold rate of change 210.
[0080] Figure 2B shows an example operation 220 performed by the computer system to continue from the operation 200. The computer system begins by receiving analyte concentration measurements 222 from the analyte sensor system. The analyte concentration measurements 222 may be current or active measurements provided by the analyte sensor system. Thus, the analyte concentration measurements 222 reflect a current metabolic or physical state of the user. The computer system analyzes the analyte concentration measurements 222 to determine rates of change 224 for the analyte concentration measurements 222. For example, the computer system calculates the differences between successive analyte concentration measurements 222. The computer system then divides these differences by the period of time between the successive analyte concentration measurements 222 to determine the rates of change 224. In effect, the rates of change 224 may be the first derivatives of the analyte concentration measurements 222 or the slope of the line or curve between successive analyte concentration measurements 222.
[0081] The computer system then compares the rates of change 224 against the threshold rate of change 210. If the rates of change 224 exceed the threshold rate of change 210, then the computer system determines that a metabolic event 226 is occurring in the user. The computer system may then report the metabolic event 226. For example, the computer system may generate and communicate an alert or message to a display device (e.g., the display device 107 shown in Figure 1A) to let the user know that the metabolic event 226 is occurring or has occurred. As another example, the computer system may log the metabolic event 226 in the user profile stored in the database for historical tracking. In some embodiments, the computer system does not determine that the metabolic event 226 is occurring until the threshold rate of change 210 is exceeded for multiple analyte concentration measurements. For example, the computer system may not determine that the metabolic event 226 is occurring until the threshold rate of change 210 has been exceeded for four consecutive analyte concentration measurements 222.
[0082] In this manner, the computer system establishes a personalized threshold for the user. The computer system may use the threshold to determine whether metabolic events are occurring in the user based on the analyte concentration measurements for the user. By using the personalized threshold instead of a threshold for the general population, the computer system may experience fewer detections of false metabolic events (e.g., false positives), conserving time and computing resources. Additionally, the computer system may experience fewer missed detections of metabolic events (e.g., false negatives), improving user health.
[0083] Figure 2C shows an example operation 240 performed by the computer system to filter the metabolic event 226. Generally, after the computer system has determined that the metabolic event 226 is occurring, the computer system may perform additional checks to verify that the metabolic event 226 is not an artifact (e.g., that the metabolic event 226 determination is not erroneous) before reporting the metabolic event 226. If the computer system determines that the metabolic event 226 is an artifact, then the computer system may refrain from reporting the metabolic event 226 to the user and the database, effectively ignoring or discarding the detection of the metabolic event 226.
[0084] For example, the computer system may compare the rates of change 224 that indicated the metabolic event 226 is occurring (e.g., the rates of change 224 that exceeded the threshold rate of change 210 shown in Figure 2B) against an artifact threshold 242A. If these rates of change 224 exceed the artifact threshold 242A, then the computer system may determine that the metabolic event 226 is an artifact and refrain from reporting the metabolic event 226. For example, the artifact threshold 242A may indicate a threshold rate of change (e.g., 7.5) lasting more than a number of measurements or samples (e.g., two measurements or samples) in a period of time from onset of the metabolic event 226 (e.g., first thirty minutes from onset). Rates of change 224 that exceed these values are unlikely to be real and are more likely to be artifacts or anomalies. In the example, if the rates of change 224 that indicated the metabolic event 226 exceed 7.5 for more than two measurements in the first thirty minutes from onset of the metabolic event 226, then the computer system determines that the metabolic event 226 is an artifact.
[0085] As another example, the computer system determines rates of change for the rates of change 224, which are also referred to as second order rates of change 244. For example, the computer system calculates the differences between successive rates of change 224 that indicated the metabolic event 226. The computer system then divides these differences by the period of time between the successive rates of change 224 to determine the second order rates of change 244. In effect, the second order rates of change 224 may be the second derivatives of the analyte concentration measurements 222 or the slope of the line or curve between successive rates of change 224.
[0086] The computer system then compares the second order rates of change 244 to an artifact threshold 242B. If the second order rates of change 244 do not meet the artifact threshold 242B, then the computer system may determine that the metabolic event 226 is an artifact and refrain from reporting the metabolic event 226. For example, the artifact threshold 242B may indicate a threshold value (e.g., -0.25) lasting more than a number of measurements or samples (e.g., two measurements or samples) in a period of time from onset of the metabolic event 226 (e.g., within 20 to 45 minutes from onset). Second order rates of change 244 that meet the artifact threshold 242B may indicate that the analyte concentration measurements are unlikely to increase to a significantly high value. In the example, if the second order rates of change 244 fall below the threshold value of the artifact threshold 242B for the indicated number of measurements or samples within the indicated period of time from onset, then the computer system determines that the metabolic event 226 is an artifact.
[0087] Figure 2D illustrates an example operation 260 performed by the computer system to filter the metabolic event 226. The computer system may compare other metrics against additional artifact thresholds to determine whether the metabolic event 226 is an artifact.
[0088] As an example, the computer system may compare the analyte concentration measurements 222 that indicated the metabolic event 226 against an artifact threshold 242C. If the analyte concentration measurements 222 do not meet the artifact threshold 242C, then the computer system may determine that the metabolic event 226 is an artifact and refrain from reporting the metabolic event 226. For example, the artifact threshold 242C may indicate an analyte concentration value (e.g., 10 mg/dL) from baseline (e.g., the analyte concentration value at the onset of the metabolic event 226) in a period of time from onset of the metabolic event 226 (e.g., within 20 to 45 minutes from onset). Analyte concentration measurements 222 that do not meet the artifact threshold 242C may indicate that the metabolic event 226 is small or short-lived and not likely to be clinically significant. If the analyte concentration measurements 222 fall below the artifact threshold 242C within the indicated period of time from onset, then the computer system determines that the metabolic event 226 is an artifact.
[0089] As another example, the computer system may compare the analyte concentration measurements 222 that indicated the metabolic event 226 against an artifact threshold 242D. If the analyte concentration measurements 222 do not meet the artifact threshold 242D, then the computer system may determine that the metabolic event 226 is an artifact and refrain from reporting the metabolic event 226. For example, the artifact threshold 242D may indicate an analyte concentration value (e.g., 60 mg/dL) at onset of the metabolic event 226. Analyte concentration measurements 222 that fall below the artifact threshold 242D may indicate a hypoglycemic event for which high rates of change are typically seen following the event due to the user eating to treat the hypoglycemic event. If the analyte concentration measurements 222 exceed the artifact threshold 242D at onset of the metabolic event 226, then the computer system determines that the metabolic event 226 is an artifact.
[0090] As another example, the artifact threshold 242D may indicate an analyte concentration value at a time (e.g., two hours) after onset of the metabolic event 226. Analyte concentration measurements 222 that do not meet the artifact threshold 242D may indicate that the metabolic event is an artifact. The threshold value and the time after onset may be set individually for each user. If the analyte concentration measurements 222 fall below the artifact threshold 242D after two hours from onset of the metabolic event 226, then the computer system determines that the metabolic event 226 is an artifact.
[0091] As another example, the computer system may determine a difference 262 in the analyte concentration measurements 222 indicating the metabolic event 226. The difference 262 may be the difference between a maximum value of the analyte concentration measurements 222 and a minimum value of the analyte concentration measurements 222 (e.g., a base-to-peak value). The computer system may compare the difference 262 that indicated the metabolic event 226 against an artifact threshold 242E. If the difference 262 does not meet the artifact threshold 242E, then the computer system may determine that the metabolic event 226 is an artifact and refrain from reporting the metabolic event 226. For example, the artifact threshold 242E may indicate a minimum base-to-peak value. If the difference 262 does not that exceed the artifact threshold 242E, then the metabolic event 226 may be insignificant or not meaningful, and the computer system may determine that the metabolic event 226 is an artifact.
[0092] As another example, the computer system may determine an amount 264 of time between the metabolic event 226 and a previous metabolic event. The computer system then compares the amount 264 of time against an artifact threshold 242F. If the amount 264 of time does not exceed the artifact threshold 242F, then the computer system may determine that the metabolic event 226 is an artifact. In this manner, the computer system ensures that a minimum amount of time passes between detections of metabolic events, which may ensure that complex multi-detections (e.g., events resulting from eating multiple food items in a span of time) are not reported as multiple events. In essence, the computer system assumes that metabolic events have a minimum length of time, which corresponds to human behavior and psychology.
[0093] The computer system may use or apply any artifact threshold to any aspect of the metabolic events (e.g., analyte concentration measurements, rates of change of the analyte concentration measurements, duration of the metabolic events, location of the user, etc.). When the aspects of the metabolic events exceed or fall below these thresholds, the computer system may determine that the metabolic events are artifacts.
[0094] By filtering the metabolic event 226, the computer system may reduce the number of detections of false metabolic events (e.g., false positives), conserving time and computing resources relative to existing analyte monitoring systems.
[0095] Figure 2E is a flowchart of an example method 280 for determining personalized thresholds, in accordance with certain aspects of the present disclosure. In particular embodiments, a computer system (e.g., the computer system 112 shown in Figure 1A) performs the method 280. By performing the method 280, the computer system determines and uses personalized thresholds to detect metabolic events.
[0096] In block 282, the computer system determines a threshold rate of change for a user from historic analyte concentration measurements for the user. For example, the computer system may determines rates of change of the historic analyte concentration measurements. The computer system may determine differences between successive historic analyte concentration measurements and divide those differences by the amount of time between the successive analyte concentration measurements to produce the rates of change. The computer system then determines a rate of change that is a certain percentile (e.g., the 84th percentile) of the rates of change, and sets the threshold rate of change as that determined rate of change. In this manner, the threshold rate of change is determined using information about the user.
[0097] In block 284, the computer system receives analyte concentration measurements for the user. An analyte sensor system (e.g., the analyte sensor system 104 shown in Figures 1A and IB) may measure the analyte concentration in the user and provide the analyte concentration measurements to the computer system. In block 286, the computer system determines a rate of change of the analyte concentration measurements. For example, the computer system may determine differences between successive analyte concentration measurements from the analyte sensor system and divide those differences by the amount of time between the successive analyte concentration measurements to produce the rate of change.
[0098] In block 288, the computer system determines whether the rate of change exceeds the threshold rate of change. If the rate of change does not exceed the threshold rate of change, then the computer system returns to block 284 to receive additional analyte concentration measurements from the analyte sensor system. If the rate of change exceeds the threshold rate of change, then the computer system proceeds to block 290 to determine that a metabolic event is occurring. The computer system may then report the metabolic event to the user. In some embodiments, the computer reports the metabolic event to the user after performing additional filtering (e.g., the filtering described with respect to Figures 2C and 2D).
[0099] In certain instances, the computer system does not determine that the metabolic event is occurring until the rate of change exceeds the threshold rate of change for multiple, consecutive analyte concentration measurements (e.g., four consecutive measurements). In this manner, the computer system reduces the chances of detections of false metabolic events (e.g., false positives).
[0100] The user may provide settings that affect whether the computer system notifies the user of a detected metabolic event. For example, the user may set the period of time the computer system must wait before notifying of another event. As another example, the user may set a threshold for the number of times each day that the computer system notifies the user about detected metabolic events.
[0101] The computer system may notify the user of detected metabolic events within certain timeframes depending on user settings. For example, the computer system may notify the user of the event within thirty to sixty minutes or one to three hours of onset or of a cause of the event occurring. As another example, the computer system may provide a daily report of the most significant metabolic events that occurred that day. The user may add notes or annotate these events for tracking purposes.
Patterns of Significant Metabolic Events
[0102] Figures 3A through 3C illustrate example operations for detecting patterns of metabolic events, in accordance with certain aspects of the present disclosure. A computer system (e.g., the computer system 112 shown in Figure 1A) performs these operations. Generally, the computer system analyzes historic user data (e.g., historic metabolic events) to determine time periods (e.g., times of the day) when metabolic events tend to occur in the user. The computer system may identify these events and time periods to the user, which may remind the user of what actions or behaviors caused these events. In this manner, the computer system may help the user take appropriate remedial action to address the events. [0103] Figure 3A shows an example operation 300 performed by the computer system to determine similar metabolic events. The computer system receives a log 302 from a database (e.g., from the database 110 shown in Figure 1A). The log 302 may be from a user profile (e.g., the user profile 118) stored in the database. As seen in Figure 3A, the log 302 indicates metabolic events 304 that previously occurred for a user. The computer system may have detected each of the metabolic events 304 based on analyte concentration measurements for the user. In the example of Figure 3A, the log 302 indicates the metabolic events 304A and 304B.
[0104] The log 302 may also indicate other information about the metabolic events 304. For example, the log 302 may indicate the analyte concentration measurements 306 that occurred for each metabolic event 304 and timestamps 308 for the analyte concentration measurements 306. The metabolic event 304A indicates the analyte concentration measurements 306A and the timestamps 308A. The metabolic event 304B indicates the analyte concentration measurements 306B and the timestamps 308B.
[0105] The computer system uses the information in the log 302 to determine characteristics 310 of each metabolic event 304. For example, the computer system may use the analyte concentration measurements 306 to determine a spike amplitude or peak amplitude of the analyte concentration measurements 306 for each metabolic event 304. As another example, the computer system may determine rates of change of the analyte concentration measurements 306 for each metabolic event 304. The computer system may also determine durations of each metabolic event 304, a location of the user during each metabolic event 304, and/or labels or notes applied by the user to the metabolic events 304. In the example of Figure 3A, the computer system determines characteristics 310A for the metabolic event 304A and the characteristics 310B for the metabolic event 304B.
[0106] The computer system may also determines causes 312 for each metabolic event 304 using the characteristics 310. For example, the computer system may determine from the characteristics 310 that a metabolic event 304 was caused by food intake. As another example, the computer system may determine from the characteristics 310 that a metabolic event 304 was caused by stress. In the example of Figure 3A, the computer system determines a cause 312A for the metabolic event 304A and a cause 312B for the metabolic event 304B. The cause 312 may function as an additional characteristic 310 for each metabolic event 304. 1 [0107] The computer system then categorizes the metabolic events 304 in the log 302. For example, the computer system may assign each metabolic event 304 into a category 314 according to the characteristics 310 and/or cause 312 of the metabolic event 304. As a result, the computer system may assign metabolic events 304 with similar characteristics 310 or causes 312 to the same category 314. In the example of Figure 3A, the computer system assigns the metabolic event 304A to a category 314A and the metabolic event 304B to a category 314B. The computer system then assigns the metabolic events 304 that are assigned to the same category 314 to a set 316 of metabolic events. In this manner, the computer system determines the set 316 of metabolic events from the log 302 that are similar to each other (e.g., share similar characteristics 310 and/or have similar causes 312). As an example, the set 316 of metabolic events may include metabolic events 304 with similar spike or peak amplitudes of analyte concentration measurements, similar durations, similar locations for the user, and/or similar labels or notes.
[0108] Figure 3B shows an example operation 320 performed by the computer system to analyze the metabolic events 304 in the set of metabolic events (e.g., the set 316 of metabolic events shown in Figure 3A) to determine a likelihood that the metabolic events 304 occurred during the same time window or the same period of time on multiple days, which may establish a pattern.
[0109] In the example of Figure 3B, the computer system has assigned the metabolic events 304A and 304B into the set of metabolic events, thus indicating that the metabolic events 304A and 304B are similar to each other. The computer system may determine, for each metabolic event 304 in the set, a function 322 that indicates a time window when that metabolic event 304 likely occurred. For example, the function 322 may be a probability distribution that expresses likelihoods that a metabolic event 304 occurred at different times. The computer system may determine the function 322 by analyzing the analyte concentration measurements for each metabolic event 304. The functions 322 for the metabolic events 304 may have the highest likelihood around a time when the analyte concentration measurements for the metabolic events 304 are near maximum values. The likelihood may decrease moving away in time from the maximum values. The probability distribution across time indicates, for each metabolic event 304, a likelihood 324 of occurrence across time. In the example of Figure 3B, the computer system determines a likelihood 324A of occurrence for the metabolic event 304A and a likelihood 324B of occurrence for the metabolic event 304B. [0110] The computer system may analyze the metabolic events 304 in the set of metabolic events to determine functions indicating any other characteristic or attribute of the metabolic events. For example, the computer system may analyze the analyte concentration measurements and causes for the metabolic events 304 to determine functions 326 indicating clinical significance 328 for the metabolic events 304. The function 326 may produce values indicating clinical significance 328 at different times. For different characteristics or causes, the clinical significance may increase or decrease at different times during the metabolic events 304. The function 326 may express how the clinical significance 328 changes over time for a particular metabolic event 304. In the example of Figure 3B, the computer system determines the function 326A and the clinical significance 328A for the metabolic event 304A and the function 326B and the clinical significance 328B for the metabolic event 304B.
[0111] The computer system then aggregates the functions 322 and 326 for the metabolic events 304 in the set. For example, the computer system may aggregate the functions 322 (e.g., by calculating the maximum, sum, mean, weighted mean, etc. of the functions 322) into the aggregate function 330. The aggregate function 330 may express aggregate likelihoods 332 that the metabolic events 304 in the set occurred during different time windows. Each time window may have a different probability in the distribution, and the probability may indicate the likelihood that the metabolic events 304 in the set occurred during that time window. As another example, the computer system may aggregate the functions 326 into the aggregate function 334. The aggregate function 334 may express an aggregate clinical significance 336 for the metabolic events 304 in the set during different time windows.
[0112] Figure 3C shows an example operation 340 performed by the computer system to determine a time window when the metabolic events in the set occurred. The computer system compares the aggregate likelihoods 332 against a likelihood threshold 342. When the computer system determines an aggregate likelihood 332 that exceeds the likelihood threshold 342, the computer system determines the time window for that aggregate likelihood 332 as the time window 346 when the metabolic events in the set likely occurred. The time window 346 may be a contiguous period of time during the day (but across multiple days) when the metabolic events in the set occurred. The width of the time window 346 that the computer system determines using the operation 340 may be adjusted or set by the user. The aggregate likelihood 332 in that time window 346 exceeding the likelihood threshold 342 may indicate that the likelihood of the metabolic events in the set occurring during that time window 346 across different days is sufficiently high for the computer system to determine that there is a pattern of occurrence for these metabolic events.
[0113] The computer system may then report the time window 346 to the user (e.g., using an alert or message) to indicate to the user that similar metabolic events tend to occur during the time window 346 across different days, which establishes a pattern of metabolic events in the user. Seeing the pattern may remind the user of what actions or behavior caused the metabolic events. For example, the computer system may determine that several similar metabolic events occurred during a time window 346 from 8AM to 9AM over multiple days. The computer system may report this pattern to the user, which may remind the user that these metabolic events were caused by an exercise routine of the user. The user may then link these metabolic events to the exercise routine, which may help the computer system determine how to address or remediate these metabolic events in the future.
[0114] In some embodiments, the computer system also considers other factors when determining the time window 346. For example, the computer system may compare the aggregate clinical significance 336 against a clinical significance threshold 344. The computer system may then determine the time window 346 based on the times when the aggregate clinical significance 336 exceeds the clinical significance threshold 344. As a result, the time window 346 may be a period of time when the aggregate likelihood 332 exceeds the likelihood threshold 342 and when the aggregate clinical significance 336 exceeds the clinical significance threshold 344.
[0115] Figure 3D is a flowchart of an example method 360 for detecting patterns of metabolic events, in accordance with certain aspects of the present disclosure. A computer system (e.g., the computer system 112 of Figure 1 A) performs the method 360. By performing the method 360, the computer system determines a time window of the day when similar metabolic events likely occurred, establishing a pattern of metabolic events.
[0116] In block 362, the computer system receives a log of metabolic events. The computer system may retrieve the log from a user profile in a database. The log may indicate the metabolic events that were previously detected in a user. The log may also include other information about the metabolic events. For example, the log may indicate the analyte concentration measurements for the user during the metabolic events. As another example, the log may include timestamps for the metabolic events. [0117] In block 364, the computer system uses the information in the log to determine characteristics for the metabolic events in the log. For example, the computer system may determine spike or peak amplitudes of the analyte concentration measurements of the metabolic events, rates of change of the analyte concentration measurements of the metabolic events, durations of the metabolic events, and/or locations of the user during the metabolic events. Using this information, the computer system may also determine causes for the metabolic events. The computer system may then categorize the metabolic events based on the causes (or any other factors).
[0118] In block 366, the computer system determines a set of metabolic events that are similar to each other. For example, the computer system may determine the metabolic events in the log that share the similar characteristics, causes, and/or categories. The computer system then assigns the metabolic events that share the most similar characteristics, causes, and/or categories to the set of metabolic events.
[0119] In block 368, the computer system determines the time window when the metabolic events in the set likely occurred. The computer system may analyze the metabolic functions in the set to determine functions that indicate the likelihoods that the metabolic events occurred during certain times of the day. The computer system may aggregate these functions to determine aggregate likelihoods that the metabolic events in the set occurred during these times of the day. The computer system then compares the aggregate likelihoods against a likelihood threshold to determine a time of the day when the aggregate likelihood exceeded the likelihood threshold. The computer system may set the time window as that time of the day. In this manner, the computer system determines a time of the day when similar metabolic events tend to occur, establishing a pattern of metabolic events in the user. The computer system may then report the time window and/or the pattern to the user, which may help the user remember actions or behaviors that caused the metabolic events. The computer system and the user may then take appropriate remedial action to address these metabolic events.
Event Correlation
[0120] Figures 4A and 4B illustrate example operations for linking metabolic events and logged actions, in accordance with certain aspects of the present disclosure. A computer system (e.g., the computer system 112 shown in Figure 1 A) performs these operations. Generally, the computer system analyzes historic user data (e.g., historic metabolic events and logged user actions) to determine what actions or behaviors caused the metabolic events. The computer system may identify these actions or behaviors to the user. In this manner, the computer system may automatically link actions or behaviors to metabolic events, which helps the user take appropriate remedial action to address the events.
[0121] Figure 4A shows an operation 400 performed by the computer system to determine a cause of a metabolic event. The computer system begins by receiving analyte concentration measurements 402 from an analyte sensor system (e.g., the analyte sensor system 104 shown in Figure 1A). The analyte concentration measurements 402 may be current or active measurements provided by the analyte sensor system. Thus, the analyte concentration measurements 402 reflect a current metabolic or physical state of a user. The computer system analyzes the analyte concentration measurements 402 to determine whether a metabolic event is occurring in the user. For example, the computer system may compare the analyte concentration measurements 402 against various thresholds (e.g., thresholds on the analyte concentration values, thresholds on the rates of change of the analyte concentration values, etc.) to determine whether the metabolic event 404 is occurring.
[0122] If the computer system determines that the metabolic event 404 is occurring, then the computer system analyzes the metabolic event to determine characteristics 406 of the metabolic event 404. For example, the computer system may determine a spike or peak amplitude of the analyte concentration measurements 402 indicating the metabolic event 404 is occurring, rates of change of the analyte concentration measurements 402, a duration of the metabolic event 404, a physical location of the user during the metabolic event 404, heartrate or other physiological indicators of the user, etc. From these characteristics 406, the computer system may determine a cause 408 for the metabolic event 404. For example, the computer system may compare the characteristics 406 with the characteristics of previous metabolic events of the user (e.g., which may be stored in a user profile such as the user profile 118 shown in Figure 1A) to determine previous metabolic events with similar characteristics to the characteristics 406. The user profile may specify the causes of the previous metabolic events, and the computer system may determine that the cause 408 is the same as the cause of the most similar previous metabolic events.
[0123] The determined cause 408 may indicate a category or type of behavior that caused the metabolic event 404, but the cause 408 may not indicate a specific action performed by the user. For example, the category may indicate that the metabolic event 404 was caused by “eating,” “exercise,” or “stress.” The category 408, however, may not indicate a specific meal or food that the user ate, a specific workout or exercise that the user performed, or an action (e.g., driving) that caused the stress.
[0124] Figure 4B shows an operation 420 performed by the computer system to determine an action that caused the metabolic event. The computer system begins by retrieving a log 422 from a database (e.g., the database 110 shown in Figure 1A). The log 422 may be part of a profile for the user (e.g., the user profile 118 shown in Figure 1A). As seen in Figure 4B, the log 422 indicates previous actions 424 taken by the user and timestamps 426 indicating the times of those actions 424. These actions 424 may have been logged by the user to indicate that the user performed these actions 424 at particular times indicated by the timestamps 426. In the example of Figure 4B, the log 422 indicates the user performed the action 424A at a time indicated by the timestamp 426 A, the action 424B at a time indicated by the timestamp 426B, and the action 424C at a time indicated by the timestamp 426C.
[0125] The computer system may determine an action 424 in the log 422 that caused the metabolic event 404. For example, the computer system may determine a spike 428 of the metabolic event 404. The spike 428 may reflect an increase in analyte concentration values during the metabolic event 404. Based on the timing and duration of the spike 428, the computer system may determine a time 430 of the metabolic event 404. The time 430 may indicate when the metabolic event 404 began and ended, which may also reveal a duration of the metabolic event 404.
[0126] The computer system compares the time 430 to the timestamps 426 in the log 422. The computer system may determine a difference 432 between the time 430 and each timestamp 426 in the log 422. The difference 432 may indicate an amount time that passed between when an action 424 corresponding to the timestamp 426 was taken and when the metabolic event 404 occurred. The computer system compares the difference 432 to a threshold 434 to eliminate actions 424 that occurred too far in time from the metabolic event 404. The computer system may then compare the remaining actions 424 with the cause 408 to determine the actions 424 that align with the cause 408 or that are consistent with or match the cause 408. For example, if the cause 408 is “eating,” then the computer system may determine an action 424 from the log 422 that indicates the meal or food that the user ate. As another example, if the cause 408 is “exercising,” then the computer system may determine an action 424 from the log 422 that indicates the workout or type of exercise routine performed. The computer system may then identify the determined action 424 as the cause of the metabolic event 404. The computer system may link the determined action 424 to the metabolic event 404 and report the determined action 424 as the cause of the metabolic event 404. The user may then understand how to better avoid or remediate the metabolic event 404 in the future.
[0127] In some embodiments, the user may edit the logged action 424 to after the computer system determines that the action 424 is the cause 408 of the metabolic event 404. For example, the user may edit the logged action 424 to provide additional details about the action 424. In this manner, the user may provide more information and clarity to the cause 408 of the metabolic event 404.
[0128] Figure 4C is a flowchart of an example method 440 for linking metabolic events and logged actions, in accordance with certain aspects of the present disclosure. In certain embodiments, a computer system (e.g., the computer system 112 shown in Figure 1A) performs the method 440. By performing the method 440, the computer system determines an action performed by a user that caused a metabolic event.
[0129] In block 442, the computer system determines that a metabolic event occurred. The computer system may receive analyte concentration measurements from an analyte sensor system. The computer system analyzes the analyte concentration measurements to determine when the metabolic event is occurring. For example, the computer system may compare the analyte concentration measurements to various thresholds (e.g., thresholds for the analyte concentration values, thresholds for the rate of change of the analyte concentration values, etc.). When one or more of these thresholds are met, the computer system may determine that the metabolic event is occurring.
[0130] In block 444, the computer system receives indications of actions performed by a user. For example, the computer system may retrieve a user profile from a database that includes a log of actions performed by the user. The actions may also be accompanied by timestamps in the log that indicate when the actions were performed.
[0131] In block 446, the computer system determines that an action in the log caused the metabolic event. For example, the computer system may determine characteristics of the metabolic event (e.g., analyte concentration values, rates of change of analyte concentration values, duration, location of the user during the metabolic event, etc.). Using these characteristics, the computer system then determines a cause for the metabolic event. The cause may be a general category or type of behavior (e.g., eating, exercising, stress, etc.) that caused the metabolic event. The computer system then determines from the timestamps in the log, an action that was performed shortly before the metabolic event (e.g., thirty minutes before). The computer system then determines whether the action aligns with the determined cause for the metabolic event or falls into the category of behavior indicated by the cause. If so, the computer system may determine that that action was the cause of the metabolic event. The computer system then links the action to the metabolic event and reports the action as the cause for the metabolic event. The user may then know to avoid that action in the future to avoid repeating the metabolic event.
[0132] As an example, if the computer system determines that the cause for a metabolic event is eating, then the computer system may analyze the actions in the log to determine if any actions aligned with eating shortly before the metabolic event. If the computer system determines that an action indicates that pizza was eaten thirty minutes before the metabolic event, then the computer system may link the action of eating pizza to the metabolic event, indicating that eating pizza caused the metabolic event.
[0133] In this manner, the computer system automatically determines actions that caused metabolic events. As a result, the user need not manually link actions to metabolic events, which may be a tedious process. Additionally, the computer system reduces the likelihood that the user identifies an incorrect cause for a metabolic event or links the incorrect action to the metabolic event. The user need not identify or track correlations between events and logged behaviors and actions. As a result, the system may help the user take appropriate remedial action to address the events.
Event User Interface
[0134] Figures 5 A and 5B illustrate example operations for presenting detected metabolic events, in accordance with certain aspects of the present disclosure. A computer system and a display device (e.g., the computer system 112 and the display device 107 shown in Figure 1 A) perform these operations. Generally, the computer system analyzes analyte concentration measurements to determine when a metabolic event is occurring. The computer system may report the metabolic event to the display device. The display device may then present notifications and messages about the metabolic event using different screens of a user interface. In this manner, the computer system and the display device report detected metabolic events to a user. [0135] Figure 5A shows an operation 500 performed by the computer system to determine thresholds for metabolic events. The computer system begins by retrieving analyte concentration measurements 502 from a database (e.g., the database 110 shown in Figure 1A). The analyte concentration measurements 502 may be historic analyte concentration measurements of a user. The analyte concentration measurements 502 may have been measured by an analyte sensor system (e.g., the analyte sensor system 104 shown in Figure 1A) and stored in the database.
[0136] The computer system analyzes the analyte concentration measurements 502 to determine a threshold 504 for determining metabolic events. The computer system may determine the threshold 504 as a percentile of the analyte concentration measurements 502. For example, the computer system may determine the threshold 504 as the analyte concentration level that is a percentage (e.g., 20%) of the highest analyte concentration value in the analyte concentration measurements 502 within a certain time (e.g., 45 minutes) of onset of metabolic events. The computer system may then use this threshold 504 to determine when metabolic events are occurring.
[0137] Figure 5B shows an example operation 520 performed by the computer system to determine when a metabolic event is occurring. The computer system begins by receiving analyte concentration measurements 522 from an analyte sensor system (e.g., the analyte sensor system 104 shown in Figure 1 A). The analyte concentration measurements 522 may be current or active measurements provided by the analyte sensor system. Thus, the analyte concentration measurements 522 reflect a current metabolic or physical state of a user. The computer system analyzes the analyte concentration measurements 522 to determine whether a metabolic event is occurring in the user. For example, the computer system may compare the analyte concentration measurements 522 against the threshold 504 to determine that the metabolic event 524 is occurring.
[0138] When the computer system determines that the metabolic event 524 is occurring, the computer system generates various notifications or messages to report the metabolic event 524. For example, the computer system may generate a system notification 526, a message 528, and/or a message 530 to report the metabolic event 524. The computer system may transmit the system notification 526, the message 528, and/or the message 530 to a display device (e.g., the display device 107 shown in Figure 1A) to report the metabolic event 524 to the user. The display device may then present the system notification 526, the message 528, and/or the message 530 using different screens of a user interface. In some embodiments, the system notification 526, the message 528, and/or the message 530 are encapsulated in a single message communicated by the computer system to the display device.
[0139] Figures 5C through 51 illustrate example graphical interfaces for presenting detected metabolic events, in accordance with certain aspects of the present disclosure. The display device may present these interfaces to the user to report various aspects of the metabolic state of the user. Each of these figures may show a different screen that presents information to the user. The screens may be presented on the same display of the display device, but at different times.
[0140] Figure 5C shows a screen 542 on the display 154 of the display device. Generally, the screen 542 may be a lock screen that the display device presents when the display device is locked. As seen in Figure 5C, the screen 542 shows the system notification 526. The system notification 526 includes a message 544 to report the detected metabolic event and an indication 546 of a time when the metabolic event was detected. In the example of Figure 5C, the system notification 526 indicates that the metabolic event is a glucose spike and that the glucose spike was detected or began at 9:13 AM. Using the screen 542, the display device presents information about detected metabolic events to the user even when the display device is locked. In some embodiments, the user may configure the display device to play a particular sound when the display device receives and/or displays the system notification 526 on the screen 542 to provide an audible alert for the user.
[0141] Figure 5D shows a screen 548 on the display 154 of the display device. Generally, the screen 548 may be a screen (e.g., an Events screen) shown in an application running on the display device. As seen in Figure 5D, the application presents a row 552 of icons along a bottom portion of the screen 548. The row 552 includes an Events icon 550 that, when selected by a user (e.g., by tapping on the Events icon 550), causes the screen 548 to be presented.
[0142] The screen 548 presents the message 528 to report the detected metabolic event. As seen in Figure 5D, the message 528 indicates that the metabolic event (e.g., a glucose spike) was detected and the time when the metabolic event began or was detected. The screen 548 also presents messages reporting other, previously detected events. In the example of Figure 5D, the screen 548 shows a message 554 indicating a logged activity (e.g., exercise). The message 554 indicates that the activity began at 3:45 PM the day before and that the activity lasted thirty minutes. The screen 548 also shows a message 556 indicating a note that the user generated or added. The message 556 also indicates the content of the note and a time the note was generated or added.
[0143] The screen further includes a button 558 that, when selected by the user (e.g., by tapping on the button 558), allows the user to generate or add additional events, activities, or notes. The display device may then present additional messages in the screen 548 to indicate these additional events, activities, or notes. In some embodiments, the user may use the screen 548 to link or correlate activities or notes to indicated events.
[0144] In some embodiments, the screen 548 provides a button or link that the user may select to delete an event. When deleted, the event and its corresponding messages no longer appear on the screen 548.
[0145] Figure 5E shows a screen 560 on the display 154 of the display device. Generally, the screen 560 may be a screen (e.g., an Insights screen) shown in the application running on the display device. As seen in Figure 5E, the application presents the row 552 of icons along the bottom portion of the screen 560. The row 552 includes an Insights icon 562 that, when selected by a user (e.g., by tapping on the Insights icon 562), causes the screen 560 to be presented.
[0146] The screen 560 presents the message 530 to report the detected metabolic event. As seen in Figure 5E, the message 530 indicates that the metabolic event (e.g., a glucose spike) was detected and the time when the metabolic event began or was detected. The screen 560 also presents information about the analyte concentration levels of the user. For example, the screen 560 includes a graph 564 that shows the most recent analyte concentration measurements for the user. In the example of Figure 5E, the graph 564 shows the past three hours of analyte concentration measurements. As additional analyte concentration measurements are received, the graph 564 updates to show the new analyte concentration measurements. Additionally, the screen 560 includes a section 566 that reports the most recent analyte concentration measurement for the user. In the example of Figure 5E, the most recent analyte concentration measurement is 121 mg/dL. Moreover, the section 566 shows that the analyte concentration levels in the user are steady.
[0147] In some embodiments, the screen 560 provides a button or link that the user may select to delete an event. When deleted, the event and its corresponding graph and messages no longer appear on the screen 560. [0148] Figure 5F shows a screen 568 on the display 154 of the display device. Generally, the screen 568 may be a screen (e.g., a Spikes screen) shown in the application running on the display device. The display device may present the screen 568 when the user selects the system notification 526 shown in Figure 5C, the message 528 shown in Figure 5D, and/or the message 530 shown in Figure 5E (e.g., by tapping on the system notification 526, the message 528, and/or the message 530).
[0149] The screen 568 includes a graph 570 that shows the analyte concentration measurements that resulted in the detection of the metabolic event. In the example of Figure 5F, the graph 570 shows that the analyte concentration levels in the user increased around 9:13 AM, resulting in a spike shape. The increase in analyte concentration levels resulted in the detection of the metabolic event.
[0150] The screen 568 also presents different ways for the user to provide input or feedback. For example, the screen 568 includes a textbox 572 in which the user may add a note about the metabolic event. For example, the user may input a message indicating an action that the user performed (e.g., eating) prior to or around the time of the metabolic event. By providing this information, the user may indicate a cause for the metabolic event. The screen 568 also includes a link 574 that, when selected, allows the user to provide feedback about why the detected spike or metabolic event was unhelpful.
[0151] The screen 568 also includes a button 576 that, when selected by the user (e.g., by tapping on the button 576), causes the display device to present advice for remediating or addressing the detected metabolic event. In the example of Figure 5F, the graph 570 is presented in a top portion of the screen 568. The textbox 572 is presented beneath the graph 570 and above the link 574 and the button 576. The button 576 is presented above the link 574.
[0152] Figure 5G shows a screen 578 on the display 154 of the display device. Generally, the screen 578 may be a screen (e.g., an Advice screen) shown in the application running on the display device. The display device may present the screen 578 when the user selects the button 576 shown in Figure 5F. As seen in Figure 5G, the screen 578 presents a message 580 that provides advice or tips for addressing the detected metabolic event.
[0153] Figure 5H shows a screen 582 on the display 154 of the display device. Generally, the screen 582 may be a screen (e.g., a Feedback screen) shown in the application running on the display device. The display device may present the screen 582 when the user selects the link 574 shown in Figure 5F. As seen in Figure 5H, the screen 582 presents a textbox 584 in which the user may provide feedback about the detected metabolic event. For example, the user may input a reason why the detected metabolic event was not helpful to the user.
[0154] Figure 51 shows a screen 586 on the display 154 of the display device. Generally, the screen 586 may be a screen (e.g., an Introductory screen) shown in the application running on the display device. The display device may present the screen 586 when the user selects a system notification 526 shown in Figure 5C, a message 528 shown in Figure 5D, and/or a message 530 shown in Figure 5E to navigate to the screen 568 shown in Figure 5F for the first time. As seen in Figure 51, the screen 586 provides an introductory message that explains spikes and metabolic events.
[0155] In some embodiments, the display device provides other screens to display additional information and settings related to detected metabolic events. For example, the display device may provide a Help screen that provides a link or button that navigates to the screen 586. As another example, the display device provides a Settings screen that presents various settings for the user to adjust. These settings may allow the user to turn off the system notifications and/or limit the number of metabolic events about which the display device notifies the user over a period of time (e.g., in a day). These settings may also allow the user to specify times of the day when metabolic events should be reported regardless of other limits.
[0156] Figure 5J is a flowchart of an example method 590 for presenting detected metabolic events, in accordance with certain aspects of the present disclosure. In some embodiments, a computer system (e.g., the computer system 112 shown in Figure 1A) and a display device (e.g., the display device 107 shown in Figure 1A) perform the steps of the method 590. By performing the method 590, the computer system and the display device detect metabolic events and report the metabolic events to a user through a graphical interface.
[0157] In block 591, the computer system determines a threshold analyte concentration for indicating a metabolic event. For example, the computer system may analyze historical analyte concentration measurements for the user to determine the threshold. The computer system may determine the threshold as the analyte concentration level that is a percentage (e.g., 20%) of the highest analyte concentration value in the historical analyte concentration measurements within a certain time (e.g., 45 minutes) of onset of metabolic events. The computer system may then use this threshold to determine when metabolic events are occurring. [0158] In block 592, the computer system receives analyte concentration measurements from an analyte sensor system. The analyte concentration measurements may be current or active measurements provided by the analyte sensor system. Thus, the analyte concentration measurements reflect a current metabolic or physical state of a user. The computer system analyzes the analyte concentration measurements to determine whether a metabolic event is occurring in the user. In block 593, the computer system compares the analyte concentration measurements against the threshold to determine whether a metabolic event is occurring. If the analyte concentration measurements do not exceed the threshold analyte concentration, then the computer system determines that no metabolic is occurring and returns to block 592.
[0159] If the analyte concentration measurements exceed the threshold, then the computer system detects that a metabolic event is occurring. In block 594, the computer system generates a system notification reporting the metabolic event and communicates the system notification to the display device. The display device then presents the system notification (e.g., on a lock screen). In block 595, the computer system generates a message reporting the metabolic event and communicates the message to the display device. The display device then presents the message (e.g., on an Events screen). In block 596, the computer system generates a message reporting the metabolic event and communicates the message to the display device. The display device then presents the message (e.g., on an Insights screen). In some embodiments, the blocks computer system performs the blocks 594, 595, and 596 simultaneously by communicating a single message that encapsulates these system notifications and messages.
Spike Impact
[0160] Figures 6A through 6E illustrate example operations for detecting spikes in analyte concentration measurements and determining spike impact. A computer system (e.g., the computer system 112 shown in Figure 1 A) performs these operations. Generally, the computer system analyzes analyte concentration measurements to detect when a spike is occurring. The computer system may then calculate an incremental area under the curve (iAUC) for the spike and use the iAUC value to categorize the spike. In this manner, the computer system may determine when a spike is clinically or metabolically significant and should be reported to a user. In some embodiments, the computer system also uses parameters for a determined health category of a user and/or determined confidence levels to detect spikes. In this manner, the computer reduces the amount of time and data needed to detect spikes, reducing use of computing resources (e.g., to receive, process, and store data). [0161] Figure 6A shows an example operation 600 performed by the computer system to categorize spikes. The computer system begins by receiving analyte concentration measurements 602 from an analyte sensor system (e.g., the analyte sensor system 104 shown in Figure 1A). The analyte concentration measurements 602 may be current or active measurements provided by the analyte sensor system. Thus, the analyte concentration measurements 602 reflect a current metabolic or physical state of the user. The analyte concentration measurements 602 include a time series of data points 604 indicating analyte concentration levels in the user measured at different times. These data points 604 form a curve 606 when plotted or graphed against time. As time progresses, the analyte sensor system continues to measure analyte concentration levels in the user, and the computer system receives more data points 604 for the analyte concentration measurements 602.
[0162] The computer system analyzes the data points 604 to detect when a spike 608 in the analyte concentration measurements 602 occurs. For example, the computer system may detect when the analyte concentration measurements 602 have sufficiently increased over a certain duration of time to qualify as a spike 608. When the spike 608 is detected, the computer system analyzes the spike 608 to determine whether the spike is clinically or metabolically significant. The computer system may calculate an iAUC 610 for the curve 606 for a certain amount of time (e.g., two hours) after detection of the spike 608. The computer system may treat the analyte concentration level when the spike 608 was detected as a floor or baseline value when determining the iAUC 610. As the computer system receives more data points 604 after detecting the spike 608, the computer system calculates differences between the analyte concentration levels indicated by those data points 604 and the floor or baseline value. The computer system then uses this difference to calculate the next area under the curve to add to the iAUC 610. In effect, the computer system calculates the area under the curve 606 between the analyte concentration level at detection of the spike 608 and the analyte concentration level as the spike 608 progresses.
[0163] The computer system compares the iAUC 610 to one or more thresholds 612 to categorize the spike 608. The computer system may determine the thresholds 612 in various ways. For example, the computer system may analyze the historic or previous spikes of the user (e.g., using data from a user profile, such as the user profile 118 shown in Figure 1A) to determine the thresholds 612. The computer system may determine the iAUCs for the historic or previous spikes that are at specific percentiles of these iAUCs (e.g., 33rd percentile and 66th percentile). The computer system may then set these iAUCs as the thresholds 612. In this manner, the computer system sets the thresholds 612 based on the analyte concentration levels of previous spikes of the user.
[0164] As another example, the computer system may determine the thresholds from population data. The computer system may determine iAUCs for previous spikes in the population. The computer system may then determine the thresholds 612 as the iAUCs for the previous spikes in the population that are at specific percentiles of these iAUCs (e.g., 33rd percentile and 66th percentile). In this manner, the computer system sets the thresholds 612 based on the spikes in the population data.
[0165] The computer system assigns the spike 608 to a category 614 by comparing the iAUC 610 to the thresholds 612. For example, if the thresholds 612 are set as the 33rd and 66th percentiles of iAUCs, then the computer system may assign the spike 608 to a LOW category if the iAUC 610 is below the 33rd percentile threshold 612. The computer system may assign the spike 608 to a MEDIUM category if the iAUC 610 exceeds the 33rd percentile threshold 612 but not the 66th percentile threshold 612. The computer system may assign the spike 608 to a HIGH category if the iAUC 610 exceeds the 66th percentile threshold 612.
[0166] The computer system may determine whether to report the spike 608 to the user depending on the category 614. For example, the computer system may report MEDIUM or HIGH category spikes to the user or only HIGH category spikes to the user. If the computer system determines that the spike 608 should be reported, the computer system generates and communicates a message 616 to report the spike 608. The computer system may communicate the message 616 to a display device (e.g., the display device 107 shown in Figure 1A). The message 616 may include information about the spike 608. For example, the message 616 may indicate the analyte concentration levels for the spike 608, when the spike 608 was detected, the duration of the spike 608, etc. As another example, the message 616 may indicate the category 615 of the spike 608 and provide indications of how the spike 608 compares against previous spikes of the user or of the population. The message 616 may also identify trends in the spikes (e.g., indicate that more spikes of the user are being assigned to higher or lower categories 614).
[0167] Figure 6B shows an example curve 606 of analyte concentration measurements 602 plotted against time. As seen in Figure 6B, the curve 606 includes a time series of data points 604, specifically the data points 604A, 604B, 604C, 604D, 604E, 604F, 604G, 604H, 6041, 604J, and 604K, in that order. The computer system analyzes the data points 604 as they are received to detect whether a spike occurs. When the computer system receives and analyzes the data points 604A, 604B, 604C, and 604D, the computer system determines that no spike is occurring. When the computer system receives and analyzes the data point 604E, the computer system determines that a spike 608 is occurring. Thus, the computer system determines that the spike 608 is starting at time ti. The computer system also determines the analyte concentration level 618 for the data point 604E as the floor or baseline level.
[0168] The computer system then begins calculating the iAUC 610 for a period of time (e.g., two hours) after the spike 608 begins at time ti. In the example of Figure 6B, the computer system calculates the iAUC 610 from the time ti to the time t2. The data points 604F, 604G, 604H, 6041, and 604J are received between the times ti and t2. The computer system calculates an area 620 under the curve 606 for each of the data points 604F, 604G, 604H, 6041, and 604J as the data points 604F, 604G, 604H, 6041, and 604J are received in time. Each area 620 is calculated using the difference between the analyte concentration level indicated by the data point 604F, 604G, 604H, 6041, or 604 J and the analyte concentration level 618.
[0169] The computer system calculates an area 620A under the curve 606 after the data point 604E is received. The computer system calculates an area 620B under the curve 606 for the data point 604F. The computer system calculates an area 620C under the curve 606 for the data point 604G. The computer system calculates an area 620D under the curve 606 for the data point 604H. The computer system calculates an area 620E under the curve 606 for the data point 6041. The computer system calculates an area 620F under the curve 606 for the data point 604J. The computer system may calculate these areas 620 as the corresponding data points 604 are received. The computer system may then add the calculated area 620 to the iAUC 610. After the time period (e.g., from time ti to time t2) had elapsed, the computer system compares the iAUC 610 to one or more thresholds to categorize the spike 608.
[0170] In some embodiments, the computer system determines and/or uses parameters to reduce the amount of time and data points it takes to determine that a spike is occurring. Generally, there is a tradeoff between detecting spikes earlier with fewer data points and detecting spikes correctly and accurately. For example, the computer system may detect a spike with maximum accuracy if all the data points for the spike were available, but then the computer system would be slow at detecting the spike because the computer system would need to wait for the data points. On the other hand, the computer system may detect a spike quickly if the computer system uses only a few data points, but then the computer system would potentially detect many false positives or false negatives, hurting accuracy. Furthermore, spikes may have different shapes, appearances, or durations depending on the health status of a user. For example, spikes for healthy users appear very differently relative to spikes for users with diabetes, which makes it more difficult to accurately detect a spike with fewer data points.
[0171] Figure 6C shows an example operation 622 performed by the computer system to generate parameters for various health categories that are used for spike detection. Generally, the computer system uses an optimization process to determine the parameters. The optimization process may use a cost function to balance the tradeoff between accuracy and time needed to detect a spike. The computer system begins by retrieving population data 624 from a database (e.g., the database 110 shown in Figure 1A). The population data 624 may include information about spikes that occurred in the population. Additionally, the population data 624 may include health information for each spike. The health information may indicate whether a user in the population has a certain disease or not that impacts the spike. For example, the health information may indicate whether a user is healthy, pre-diabetic, or has type II diabetes. The health status of the user may affect the amplitude, duration, slope, shape, etc. of the spike. As a result, the computer system may use the health information to segment or categorize the population data 624 into category data 626. In the example of Figure 6C, the population data 624 includes the category data 626 A and the category data 626B. As an example, the category data 626 A may be data for healthy users, the category data 626B may be data for pre-diabetic users, and so on.
[0172] The computer system uses an optimization process 628 to analyze the category data 626 to produce category parameters 630 for each category. For example, the optimization process 628 may analyze the category data 626 for a category to determine how many data points for a spike may be needed to confidently determine that a spike is occurring for that category. As another example, the optimization process 628 may determine how many data points showing a certain amount of increase in analyte concentration levels may be needed to confidently determine that a spike is occurring for that category. In this manner, the computer system may reduce the amount of time or number of data points that it takes to detect a spike while reducing the effect on accuracy by determining and using parameters honed for certain health categories. In the example of Figure 6C, the computer system determines category parameters 630A for the category data 626A and the category parameters 630B for the category data 626B.
[0173] Figure 6D shows an operation 632 performed by the computer system to detect a spike 608. The computer system begins by receiving a health category 634 of a user. The user may have provided the health category 634 (e.g. using the display device 107 shown in Figure 1A), or the computer system may have retrieved the health category 634 from a database (e.g., the database 110 shown in Figure 1A). The health category 634 may indicate a health status of the user (e.g., whether the user is healthy, pre-diabetic, diabetic, etc.). The computer system retrieves the category parameters 630 for the health category 634.
[0174] The computer system receives the analyte concentration measurements 602 for the user from the analyte sensor system. The computer system analyzes the analyte concentration measurements 602 using the category parameters 630 to determine that the spike 608 is occurring. In some embodiments, because the computer system uses the category parameters 630, the computer system determines that the spike 608 is occurring using fewer data points in the analyte concentration measurements 602. As a result, the computer system detects that the spike 608 is occurring in less time and using fewer data points than other systems.
[0175] Figure 6E illustrates an example operation 636 performed by the computer system to detect a spike 608. Generally, in the operation 636, the computer system determines and uses confidence levels as data points are received to determine whether the spike 608 is occurring. The computer system begins by receiving the analyte concentration measurements 602 from the analyte sensor system. The analyte concentration measurements 602 include the time series of data points 604. As the analyte sensor system measures analyte concentration levels over time, the analyte sensor system produces and communicates more data points 604 to the computer system.
[0176] The computer system analyzes the data points 604 at various times to determine confidence levels 638. The confidence level 638 at a point in time indicates how confident the computer system is that the computer system has detected the spike 608 with the amount of information available in the data points 604 at that time. Generally, as more data points 604 are collected, the more information the computer system has and the higher the confidence level 638. When the confidence level 638 exceeds a threshold, the computer system may determine that the spike 608 is occurring. [0177] As an example operation, the computer system may determine a confidence level 638 A at a first time as data points 604 are being received. The computer system may determine that the confidence level 638A is not high enough to determine that the spike 608 is occurring. After some time has passed and more data points 604 are received, the computer system determines a confidence level 638B. The computer system may determine that the confidence level 638B is high enough and determines that the spike 608 is occurring.
[0178] In some embodiments, the computer system implements a detector that calculates the confidence level 638. The detector may analyze the properties of the received analyte concentration measurements 602 (e.g., amplitude, slope, number of data points, etc.) to determine the confidence level 638. As more data points 604 are received, the detector updates the confidence level 638. When the confidence level 638 exceeds a threshold, the computer system determines that a spike is occurring. For example, if the received data points 604 do not show a significant increase in analyte concentration levels, the confidence level 638 may remain low, indicating that no spike is occurring. As the received data points 604 begin showing an increase in analyte concentration levels, the confidence level 638 may also increase. If the increase in analyte concentration levels is significant, sudden, and/or dramatic, then the confidence level 638 may increase by a larger amount. As the received data points 604 show even further increase, the confidence level 638 continues to increase. When the confidence level 638 exceeds a threshold, the computer system determines that a spike is occurring. In this manner, the computer system implements the detector that allows the computer system to detect the spike in less time and using fewer data points than other systems.
[0179] Figure 6F is a flowchart of an example method 640 for determining spike impact. In certain embodiments, a computer system (e.g., the computer system 112 shown in Figure 1 A) performs the method 640. By performing the method 640, the computer system determines a significance of a spike and categorizes the spike accordingly.
[0180] In block 642, the computer system determines a spike in analyte concentration measurements. The analyte concentration measurements may be received from an analyte sensor system and may include a time series of data points. The computer system may determine and use parameters for a health category provided by a user to determine whether the spike is occurring. Additionally or alternatively, the computer system may implement a detector that determines confidence levels over time as more analyte concentration measurements are received. When the confidence level is sufficiently high, the computer system determines that the spike is occurring. In this manner, the computer determines that the spike is occurring in less time and with fewer data points than other systems.
[0181] In block 644, the computer calculates an area under the curve for the analyte concentration measurements. The computer system may measure this area for a certain period of time (e.g., two hours) from the time the spike began or was detected. This area may be the area under the curve down to the analyte concentration level when the spike began or was detected. As a result, the area is based on the differences between the analyte concentration measurements within the period of time from when the spike began or was detected and the analyte concentration level when the spike began or was detected. As the computer system receives data points during the period of time, the computer system calculates the area under the curve for those data points and adds those areas to the total area under the curve.
[0182] In block 646, the computer system assigns the spike to a category based on the total area under the curve. The computer system may assign the spike to the category based on thresholds determined using information about historical spikes in the user or information about historical spikes in the general population. The thresholds may be iAUC values that are percentiles of the iAUC values for these historical spikes. Each threshold may corresponding to a different category (e.g., a LOW category, a MEDIUM category, and a HIGH category).
[0183] In block 648, the computer system generates and communicates a message to report the spike if the spike is assigned to a particular category (e.g., a MEDIUM category or a HIGH category). The computer system may communicate the message to a display device of the user. In this manner, the computer system alerts the user about clinically significant or metabolically significant spikes.
[0184] Figures 6G through 60 indicate exemplary user interface components of Figures 6A through 6F. Figure 6G illustrates an exemplary spike insights card that, when selected, presents a user with available spike insights. Figure 6H illustrates a page that is presented to users the first time they access spike insights.
Spike Insight Landing
[0185] Figure 61 illustrates a landing page for presenting a summary of spikes for a predetermined time period, as well as an indication of the magnitude of each spike and a summary of the largest spikes within the time period. Graph Tap
[0186] Figures 6J and 6L illustrate the Graph Tap feature - upon selecting an individual spike within the summary, a new card is presented that provides additional details regarding the spike (including logged metadata, time data, spike magnitude, etc.)
Spike Insight Detail
[0187] Upon selecting a button for a spike (or the detail link for a spike), Figures 6K- 1 and 6K-2 illustrate an interface for presenting additional information/metadata regarding that specific spike.
Graph Filter
[0188] Figures 6M and 6N illustrate different interfaces for filtering the way in which spikes are displayed (e.g., the magnitude of the spikes) in view of a user’s spike history (Figure 6M) or health status (Figure 6N).
[0189] Selecting the “see all spikes” option in any of Figures 61, 6J, 6L, 6M, and 6N results in the display of all spikes, as shown in Figure 60. In various embodiments, spikes in the list may be restricted to the top three, and when “show all” is selected, the list may expand. Spikes may be ordered from largest to smallest based on the algorithm ranking. Each spike may include a sparkline graph thumbnail that corresponds to the visible area shown in the Spike Insights Detail screen. Tapping any spike card opens the Spike Insights detail screen for that spike.
[0190] Figure 7 is a block diagram depicting a computer system 700, which may be the computer system 112 shown in Figure 1A. Although depicted as a single physical device, in embodiments, the computer system 700 may be implemented using virtual device(s), and/or across a number of devices, such as in a cloud environment and/or via separate modules of portable or cloud devices. As illustrated, the computer system 700 includes a processor 705, a memory 710, a storage 715, a network interface 725, and one or more VO interfaces 720. In the illustrated embodiment, the processor 705 retrieves and executes programming instructions stored in the memory 710, as well as stores and retrieves application data residing in the storage 715. The processor 705 is generally representative of a single CPU and/or GPU, multiple CPUs and/or GPUs, a single CPU and/or GPU having multiple processing cores, and the like.
[0191] The processor 705 is any electronic circuitry, including, but not limited to one or a combination of microprocessors, microcontrollers, application specific integrated circuits (ASIC), application specific instruction set processor (ASIP), and/or state machines, that communicatively couples to the memory 710 and controls the operation of the computer system 700. The processor 705 may be 8-bit, 16-bit, 32-bit, 64-bit or of any other suitable architecture. The processor 705 may include an arithmetic logic unit (ALU) for performing arithmetic and logic operations, processor registers that supply operands to the ALU and store the results of ALU operations, and a control unit that fetches instructions from memory and executes them by directing the coordinated operations of the ALU, registers and other components. The processor 705 may include other hardware that operates software to control and process information. The processor 705 executes software stored on the memory 710 to perform any of the functions described herein. The processor 705 controls the operation and administration of the computer system 700 by processing information (e.g., information received from the memory 710). The processor 705 is not limited to a single processing device and may encompass multiple processing devices contained in the same device or computer or distributed across multiple devices or computers. The processor 705 is considered to perform a set of functions or actions if the multiple processing devices collectively perform the set of functions or actions, even if different processing devices perform different functions or actions in the set.
[0192] The memory 710 is generally included to be representative of a random access memory (RAM). The storage 715 may be any combination of disk drives, flash-based storage devices, and the like, and may include fixed and/or removable storage devices, such as fixed disk drives, removable memory cards, caches, optical storage, network attached storage (NAS), or storage area networks (SAN). The memory 710 may store, either permanently or temporarily, data, operational software, or other information for the processor 705. The memory 710 may include any one or a combination of volatile or non-volatile local or remote devices suitable for storing information. For example, the memory 710 may include random access memory (RAM), read only memory (ROM), magnetic storage devices, optical storage devices, or any other suitable information storage device or a combination of these devices. The software represents any suitable set of instructions, logic, or code embodied in a computer- readable storage medium. For example, the software may be embodied in the memory 710, a disk, a CD, or a flash drive. In particular embodiments, the software may include an application executable by the processor 705 to perform one or more of the functions described herein. The memory 710 is not limited to a single memory and may encompass multiple memories contained in the same device or computer or distributed across multiple devices or computers. The memory 710 is considered to store a set of data, operational software, or information if the multiple memories collectively store the set of data, operational software, or information, even if different memories store different portions of the data, operational software, or information in the set.
[0193] In some embodiments, the I/O devices 735 (such as keyboards, monitors, etc.) can be connected via the I/O interface(s) 720. Further, via the network interface 725, the computer system 700 can be communicatively coupled with one or more other devices and components (e.g., the user database 110). In certain embodiments, the computer system 700 is communicatively coupled with other devices via a network, which may include the Internet, local network(s), and the like. The network may include wired connections, wireless connections, or a combination of wired and wireless connections. As illustrated, the processor 705, memory 710, storage 715, network interface(s) 725, and the VO interface(s) 720 are communicatively coupled by one or more interconnects 730. In certain embodiments, the computer system 700 is representative of the display device associated with the user. In certain embodiments, as discussed above, the display device can include the user’s laptop, computer, smartphone, and the like. In another embodiment, the computer system 700 is a server executing in a cloud environment.
[0194] According to an embodiment, an analyte monitoring system includes an analyte sensor system, a memory, and a processor communicatively coupled to the memory. The analyte sensor includes an analyte sensor that generates a sensor current and sensor electronics that generate analyte concentration measurements based on the sensor current. The processor determines, based on historic analyte concentration measurements of the user, a threshold rate of change for the concentration of the analyte in the user, determines, based on the analyte concentration measurements from the analyte sensor system, a rate of change of the concentration of the analyte in the user, and determines, based on the rate of change exceeding the threshold rate of change, that a metabolic event is occurring in the user.
[0195] The analyte concentration measurements may include a number of measurements, and determining the rate of change may be in response to determining that the number of measurements exceeds a data availability threshold.
[0196] The historic analyte concentration measurements may include a number of historic measurements, and determining the threshold rate of change may be in response to determining that a percentage of the number of historic measurements exceeds an historic data availability threshold. [0197] Determining the threshold rate of change may include determining a plurality of rates of change of the historic analyte concentration measurements and setting the threshold rate of change based on a percentile of the plurality of rates of change.
[0198] The processor may determine, based on the analyte concentration measurements, a plurality of rates of change of the concentration of the analyte in the user, and determining that the metabolic event is occurring may be based on the plurality of rates of change exceeding the threshold rate of change.
[0199] The processor may discard the metabolic event in response to determining that the rate of change exceeds an artifact threshold.
[0200] The processor may determine a second rate of change of the rate of change of the concentration of the analyte in the user and discard the metabolic event in response to determining that the second rate of change falls below an artifact threshold.
[0201] The processor may discard the metabolic event in response to determining that the analyte concentration measurements fall below an artifact threshold.
[0202] The processor may discard the metabolic event in response to determining that the analyte concentration measurements exceed an artifact threshold.
[0203] The processor may discard the metabolic event in response to determining that an increase in the analyte concentration measurements falls below an artifact threshold.
[0204] The processor may discard the metabolic event in response to determining that an amount of time between the metabolic event and a previous metabolic event falls below an artifact threshold.
[0205] According to another embodiment, an analyte monitoring system includes an analyte sensor system, a memory, and a processor communicatively coupled to the memory. The analyte sensor system includes an analyte sensor that generates a sensor current and sensor electronics that generate analyte concentration measurements based on the sensor current. The processor receives a plurality of metabolic events that occurred in a user, determines a set of metabolic events from the plurality of metabolic events based on similarities between the metabolic events of the set, and in response to determining that each metabolic event of the set of metabolic events occurred in a same time window across multiple days, identifies the set of metabolic events and the time window to the user. [0206] The similarities may include at least one of (i) amplitudes of analyte concentration spikes during the metabolic events of the set, (ii) durations of the metabolic events of the set or the analyte concentration spikes, or (iii) a rate of change of analyte concentrations during the metabolic events of the set.
[0207] The similarities may include at least one of (i) a location of the user during each of the metabolic events of the set or (ii) labels applied by the user to the metabolic events of the set.
[0208] The processor may predict causes for the plurality of metabolic events and to assign categories to the plurality of metabolic events based on the causes, and the metabolic events of the set may be assigned to a same category.
[0209] Determining that each metabolic event of the set occurred in the same time window may include determining, for each metabolic event in the set, a first function indicating likelihoods that that metabolic event occurred at different times, aggregating the first functions for the metabolic events in the set to produce a first aggregate function indicating aggregate likelihoods that the metabolic events in the set occurred at different times, and determining a time when an aggregate likelihood indicated by the first aggregate function exceeds a likelihood threshold. Aggregating the first functions may include determining at least one of a maximum of the first functions, a sum of the first functions, a mean of the first functions, or a weighted mean of the first functions. The processor may determine, for each metabolic event in the set, a second function indicating a clinical significance of that metabolic event, aggregate the second functions for the metabolic events to produce a second aggregate function indicating aggregate clinical significance at different times, and determine a time when the aggregate clinical significance indicated by the second aggregate function exceeds a clinical significance threshold.
[0210] According to an embodiment, an analyte monitoring system includes an analyte sensor system, a memory, and a processor communicatively coupled to the memory. The analyte sensor system includes an analyte sensor that generates a sensor current and sensor electronics that generate analyte concentration measurements based on the sensor current. The processor determines, based on the analyte concentration measurements, that a metabolic event occurred in the user, receives indications of a plurality of actions performed by the user, and determines, based on a time when the metabolic event occurred and a time when an action of the plurality of actions was performed by the user, that the action caused the metabolic event. [0211] The processor may determine a characteristic of the metabolic event and determine, based on the characteristic, a cause of the metabolic event. Determining that the action caused the metabolic event may be based on determining that the action aligns with the cause. The characteristic may include at least one of (i) an amplitude of an analyte concentration spike during the metabolic event or (ii) a duration of the analyte concentration spike. The characteristic may include a location of the user during the metabolic event.
[0212] Determining that the metabolic event occurred may include determining, based on the analyte concentration measurements, an analyte concentration spike, and determining that the action caused the metabolic event may include determining that the action caused the analyte concentration spike.
[0213] Determining that the action caused the event may include determining a difference between the time when the metabolic event occurred and the time when the action was performed.
[0214] According to another embodiment, an analyte monitoring system includes an analyte sensor system, a memory, and a processor communicatively coupled to the memory. The analyte sensor system includes an analyte sensor that generates a sensor current and sensor electronics that generate analyte concentration measurements based on the sensor current. The processor determines, based on historic analyte concentration measurements of the user, a threshold analyte concentration indicating a metabolic event and in response to determining, based on the analyte concentration measurements, that an analyte concentration of the user exceeds the threshold: presents a system notification on a display device of the user indicating that the analyte concentration exceeds the threshold, presents, on a first screen of an application of the display device, a first message indicating that the analyte concentration exceeds the threshold, and presents, on a second screen of the application, a second message indicating that the analyte concentration exceeds the threshold.
[0215] Determining the threshold analyte concentration may be based on a percentile of the historic analyte concentration measurements.
[0216] The system notification may indicate a time when the analyte concentration was measured.
[0217] The first screen may show an indication of a previous metabolic event of the user. The first screen may show a cause of the previous metabolic event. [0218] The second screen may show a graph indicating the analyte concentration measurements of the user.
[0219] The processor may receive a message, from the user, indicating a cause of the metabolic event.
[0220] The processor may present, on a third screen of the display device, a recommendation for addressing the metabolic event.
[0221] According to another embodiment, an analyte monitoring system includes an analyte sensor system, a memory, and a processor communicatively coupled to the memory. The analyte sensor system includes an analyte sensor that generates a sensor current and sensor electronics that generate analyte concentration measurements for a user based on the sensor current. The analyte concentration measurements include a time series of data points forming a curve. The processor, in response to determining that a spike is occurring at a first time in the time series of data points, calculates an area under the curve from the first time to a second time in the time series of data points, assigns the spike to a category based on the area under the curve, and generates a message indicating the category.
[0222] Calculating the area under the curve may include calculating a difference between a data point of the time series at the second time and a data point of the time series at the first time and adding the difference to the area under the curve.
[0223] Assigning the spike to the category may include determining the category based on historic analyte concentration measurements for the user.
[0224] Assigning the spike to the category may include determining the category based on population data.
[0225] Determining that the spike is occurring may include determining a health category for the user, retrieving parameters for the health category, and analyzing the analyte concentration measurements using the parameters for the health category to determine that the spike is occurring.
[0226] Determining that the spike is occurring may include determining, at the first time and based on the time series of data points, a first confidence level that the spike is occurring and determining, based on the first confidence level, that the spike is occurring. Determining that the spike is occurring may include determining, at a third time prior to the first time and based on the time series of data points, a second confidence level that the spike is occurring and determining, at the third time and based on the second confidence level, that the spike is not occurring. Determining, at the first time, that the spike is occurring may be based on the second confidence level.
[0227] The methods disclosed herein include one or more steps or actions for achieving the methods. The method steps and/or actions may be interchanged with one another without departing from the scope of the claims. In other words, unless a specific order of steps or actions is specified, the order and/or use of specific steps and/or actions may be modified without departing from the scope of the claims.
[0228] As used herein, a phrase referring to “at least one of’ a list of items refers to any combination of those items, including single members. As an example, “at least one of: a, b, or c” is intended to cover a, b, c, a-b, a-c, b-c, and a-b-c, as well as any combination with multiples of the same element (e.g., a-a, a-a-a, a-a-b, a-a-c, a-b-b, a c c, b-b, b-b-b, b-b-c, c-c, and c-c-c or any other ordering of a, b, and c).
[0229] The term “continuous,” as used herein, is a broad term, and is used in its ordinary sense, and can mean continuous, semi-continuous, continual, periodic, intermittent, regular, etc.
[0230] The terms “continuous analyte sensor,” “continuous multi-analyte sensor,” “continuous glucose sensor,” and “continuous lactate sensor,” as used herein, are broad terms, and are used in their ordinary sense, and refer without limitation to a device that continuously measures a concentration of an analyte or calibrates the device (e.g., by continuously adjusting or determining the sensor’s sensitivity and background), for example, at time intervals ranging from fractions of a second up to, e.g., 1, 2, or 5 minutes, or longer.
[0231] The terms “sensitivity” or “sensor sensitivity,” as used herein, are broad terms, and are used in their ordinary sense, and refer without limitation to an amount of signal produced by a certain concentration of a measured analyte, or a measured species (e.g., H2O2) associated with a measured analyte (e.g., glucose or lactate). For example, a sensor may have a sensitivity of from about 1 to about 300 picoAmps of current for every 1 mg/dL of glucose analyte.
[0232] The term “sensor data,” as used herein, is a broad term, and is used in its ordinary sense, and refers without limitation to any data associated with a sensor, such as a continuous analyte or continuous multi-analyte sensor. Sensor data includes a raw data stream, or simply data stream, of analog or digital signal directly related to a measured analyte from an analyte sensor (or other signal received from another sensor), as well as calibrated or filtered raw data. The terms “sensor data point” and “data point” refer generally to a digital representation of sensor data at a particular time. The terms broadly encompass a plurality of time spaced data points from a sensor, such as a continuous analyte sensor, which includes individual measurements taken at time intervals ranging from fractions of a second up to, e.g., 1, 2, or 5 minutes or longer. In another example, the sensor data includes an integrated digital value representative of one or more data points averaged over a time period. Sensor data may include calibrated data, smoothed data, filtered data, transformed data, or any other data associated with a sensor.
[0233] The term “sensor electronics,” as used herein, is a broad term, and is used in its ordinary sense, and refers without limitation to components, e.g., hardware or software, of a device configured to process sensor data.
[0234] Although certain embodiments herein are described with reference to management of diabetes, diabetes management is only an example of one application for which the present systems and methods may be utilized. The systems and methods described herein can also be used for managing one or more other diseases or conditions, which may or may not include diabetes. For example, the systems and methods described herein can be utilized for managing kidney disease, liver disease, and other types of diseases or conditions.
[0235] The previous description is provided to enable any person skilled in the art to practice the various aspects described herein. Various modifications to these aspects will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other aspects. Thus, the claims are not intended to be limited to the aspects shown herein, but is to be accorded the full scope consistent with the language of the claims, wherein reference to an element in the singular is not intended to mean “one and only one” unless specifically so stated, but rather “one or more.” Unless specifically stated otherwise, the term “some” refers to one or more. All structural and functional equivalents to the elements of the various aspects described throughout this disclosure that are known or later come to be known to those of ordinary skill in the art are expressly incorporated herein by reference and are intended to be encompassed by the claims. Moreover, nothing disclosed herein is intended to be dedicated to the public regardless of whether such disclosure is explicitly recited in the claims. No claim element is to be construed under the provisions of 35 U.S.C. § 112(f) unless the element is expressly recited using the phrase “means for” or, in the case of a method claim, the element is recited using the phrase “step for.”
[0236] While various examples have been described above, it should be understood that they have been presented by way of example only, and not by way of limitation. Likewise, the various diagrams may depict an example architectural or other configuration for the disclosure, which is done to aid in understanding the features and functionality that can be included in the disclosure. The disclosure is not restricted to the illustrated example architectures or configurations, but can be implemented using a variety of alternative architectures and configurations. Additionally, although the disclosure is described above in terms of various example examples and aspects, it should be understood that the various features and functionality described in one or more of the individual examples are not limited in their applicability to the particular example with which they are described. They instead can be applied, alone or in some combination, to one or more of the other examples of the disclosure, whether or not such examples are described, and whether or not such features are presented as being a part of a described example. Thus the breadth and scope of the present disclosure should not be limited by any of the above-described example examples.
[0237] All references cited herein are incorporated herein by reference in their entirety. To the extent publications and patents or patent applications incorporated by reference contradict the disclosure contained in the specification, the specification is intended to supersede and/or take precedence over any such contradictory material.
[0238] Unless otherwise defined, all terms (including technical and scientific terms) are to be given their ordinary and customary meaning to a person of ordinary skill in the art, and are not to be limited to a special or customized meaning unless expressly so defined herein.
[0239] Terms and phrases used in this application, and variations thereof, especially in the appended claims, unless otherwise expressly stated, should be construed as open ended as opposed to limiting. As examples of the foregoing, the term ‘including’ should be read to mean ‘including, without limitation,’ ‘including but not limited to,’ or the like; the term ‘comprising’ as used herein is synonymous with ‘including,’ ‘containing,’ or ‘characterized by,’ and is inclusive or open-ended and does not exclude additional, unrecited elements or method steps; the term ‘having’ should be interpreted as ‘having at least;’ the term ‘includes’ should be interpreted as ‘includes but is not limited to;’ the term ‘example’ is used to provide example instances of the item in discussion, not an exhaustive or limiting list thereof; adjectives such as ‘known’, ‘normal’, ‘standard’, and terms of similar meaning should not be construed as limiting the item described to a given time period or to an item available as of a given time, but instead should be read to encompass known, normal, or standard technologies that may be available or known now or at any time in the future; and use of terms like ‘preferably,’ ‘preferred,’ ‘desired,’ or ‘desirable,’ and words of similar meaning should not be understood as implying that certain features are critical, essential, or even important to the structure or function of the embodiments, but instead as merely intended to highlight alternative or additional features that may or may not be utilized in a particular example of the embodiments. Likewise, a group of items linked with the conjunction ‘and’ should not be read as requiring that each and every one of those items be present in the grouping, but rather should be read as ‘and/or’ unless expressly stated otherwise. Similarly, a group of items linked with the conjunction ‘or’ should not be read as requiring mutual exclusivity among that group, but rather should be read as ‘and/or’ unless expressly stated otherwise.
[0240] The term “comprising as used herein is synonymous with “including,” “containing,” or “characterized by” and is inclusive or open-ended and does not exclude additional, unrecited elements or method steps.
[0241] All numbers expressing quantities of ingredients, reaction conditions, and so forth used in the specification are to be understood as being modified in all instances by the term ‘about.’ Accordingly, unless indicated to the contrary, the numerical parameters set forth herein are approximations that may vary depending upon the desired properties sought to be obtained. At the very least, and not as an attempt to limit the application of the doctrine of equivalents to the scope of any claims in any application claiming priority to the present application, each numerical parameter should be construed in light of the number of significant digits and ordinary rounding approaches.
[0242] Furthermore, although the foregoing has been described in some detail by way of illustrations and examples for purposes of clarity and understanding, it is apparent to those skilled in the art that certain changes and modifications may be practiced. Therefore, the description and examples should not be construed as limiting the scope of the disclosure to the specific examples and examples described herein, but rather to also cover all modification and alternatives coming with the true scope and spirit of the disclosure.

Claims

CLAIMS What is claimed is:
1. An analyte monitoring system comprising: an analyte sensor system comprising: an analyte sensor configured to generate a sensor current; and sensor electronics configured to generate analyte concentration measurements based on the sensor current; a memory; and a processor communicatively coupled to the memory, the processor configured to: determine, based on historic analyte concentration measurements of a user, a threshold rate of change for the concentration of the analyte in the user; determine, based on the analyte concentration measurements from the analyte sensor system, a rate of change of the concentration of the analyte in the user; and determine, based on the rate of change exceeding the threshold rate of change, that a metabolic event is occurring in the user.
2. The analyte monitoring system of Claim 1, wherein the analyte concentration measurements comprise a number of measurements, and wherein determining the rate of change is in response to determining that the number of measurements exceeds a data availability threshold.
3. The analyte monitoring system of Claim 1, wherein the historic analyte concentration measurements comprises a number of historic measurements, and wherein determining the threshold rate of change is in response to determining that a percentage of the number of historic measurements exceeds an historic data availability threshold.
4. The analyte monitoring system of Claim 1, wherein determining the threshold rate of change comprises: determining a plurality of rates of change of the historic analyte concentration measurements; and setting the threshold rate of change based on a percentile of the plurality of rates of change.
5. The analyte monitoring system of Claim 1, wherein the processor is further configured to determine, based on the analyte concentration measurements, a plurality of rates of change of the concentration of the analyte in the user, and wherein determining that the metabolic event is occurring is based on the plurality of rates of change exceeding the threshold rate of change.
6. The analyte monitoring system of Claim 1, wherein the processor is further configured to discard the metabolic event in response to determining that the rate of change exceeds an artifact threshold.
7. The analyte monitoring system of Claim 1, wherein the processor is further configured to: determine a second rate of change of the rate of change of the concentration of the analyte in the user; and discard the metabolic event in response to determining that the second rate of change falls below an artifact threshold.
8. The analyte monitoring system of Claim 1, wherein the processor is further configured to discard the metabolic event in response to determining that the analyte concentration measurements fall below an artifact threshold.
9. The analyte monitoring system of Claim 1, wherein the processor is further configured to discard the metabolic event in response to determining that the analyte concentration measurements exceed an artifact threshold.
10. The analyte monitoring system of Claim 1, wherein the processor is further configured to discard the metabolic event in response to determining that an increase in the analyte concentration measurements falls below an artifact threshold.
11. The analyte monitoring system of Claim 1, wherein the processor is further configured to discard the metabolic event in response to determining that an amount of time between the metabolic event and a previous metabolic event falls below an artifact threshold.
12. A method comprising: generating, by an analyte sensor, a sensor current; and generating, by sensor electronics, analyte concentration measurements based on the sensor current; determining, based on historic analyte concentration measurements of a user, a threshold rate of change for the concentration of the analyte in the user; determining, based on the analyte concentration measurements, a rate of change of the concentration of the analyte in the user; and determining, based on the rate of change exceeding the threshold rate of change, that a metabolic event is occurring in the user.
13. The method of Claim 12, wherein the analyte concentration measurements comprise a number of measurements, and wherein determining the rate of change is in response to determining that the number of measurements exceeds a data availability threshold.
14. The method of Claim 12, wherein the historic analyte concentration measurements comprises a number of historic measurements, and wherein determining the threshold rate of change is in response to determining that a percentage of the number of historic measurements exceeds an historic data availability threshold.
15. The method of Claim 12, wherein determining the threshold rate of change comprises: determining a plurality of rates of change of the historic analyte concentration measurements; and setting the threshold rate of change based on a percentile of the plurality of rates of change.
16. An analyte monitoring system comprising: an analyte sensor system comprising: an analyte sensor configured to generate a sensor current; and sensor electronics configured to generate analyte concentration measurements based on the sensor current; a memory; and a processor communicatively coupled to the memory, the processor configured to: detect, based on the analyte concentration measurements, an analyte concentration spike; determine an incremental area under a curve for the analyte concentration spike; assign the analyte concentration spike to a category based on the incremental area under the curve; and report the analyte concentration spike based on the category.
PCT/US2025/039196 2024-07-26 2025-07-25 System and methods for detecting, analyzing, and presenting metabolic events Pending WO2026025001A1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US202463675809P 2024-07-26 2024-07-26
US63/675,809 2024-07-26
US202463690196P 2024-09-03 2024-09-03
US63/690,196 2024-09-03

Publications (1)

Publication Number Publication Date
WO2026025001A1 true WO2026025001A1 (en) 2026-01-29

Family

ID=96989456

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2025/039196 Pending WO2026025001A1 (en) 2024-07-26 2025-07-25 System and methods for detecting, analyzing, and presenting metabolic events

Country Status (1)

Country Link
WO (1) WO2026025001A1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040236187A1 (en) * 2003-05-19 2004-11-25 Ge Medical Systems Information Technologies, Inc. Method and apparatus for controlling an alarm while monitoring
US20110193704A1 (en) * 2009-08-31 2011-08-11 Abbott Diabetes Care Inc. Displays for a medical device
WO2014116701A2 (en) * 2013-01-22 2014-07-31 Park Nicollet Institute Evaluation and display of glucose data
US20180289298A1 (en) * 2003-12-09 2018-10-11 Dexcom, Inc. Signal processing for continuous analyte sensor
US20190246962A1 (en) * 2018-02-13 2019-08-15 PercuSense, Inc. Multi-analyte continuous glucose monitoring

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040236187A1 (en) * 2003-05-19 2004-11-25 Ge Medical Systems Information Technologies, Inc. Method and apparatus for controlling an alarm while monitoring
US20180289298A1 (en) * 2003-12-09 2018-10-11 Dexcom, Inc. Signal processing for continuous analyte sensor
US20110193704A1 (en) * 2009-08-31 2011-08-11 Abbott Diabetes Care Inc. Displays for a medical device
WO2014116701A2 (en) * 2013-01-22 2014-07-31 Park Nicollet Institute Evaluation and display of glucose data
US20190246962A1 (en) * 2018-02-13 2019-08-15 PercuSense, Inc. Multi-analyte continuous glucose monitoring

Similar Documents

Publication Publication Date Title
US12144578B2 (en) Continuous analyte monitor data recording device operable in a blinded mode
US20230263479A1 (en) Sensing systems and methods for providing diabetes decision support using continuously monitored analyte data
US20240194341A1 (en) Determining user-specific hyperparameters for decision support models
WO2026025001A1 (en) System and methods for detecting, analyzing, and presenting metabolic events
US20240420820A1 (en) Integrating health data from multiple wearable devices
US20250212044A1 (en) Device-to-device mitigation of disrupted communication with analyte sensors
US20260020780A1 (en) Rapid detection of hypoglycemia incidence using continuous glucose monitoring
US20250204869A1 (en) Alert optimization in multi-receiver environments
US20250169769A1 (en) Compression event detection for continuous glucose monitors
US20250204862A1 (en) Dynamically handling substance interference with analyte sensor systems
US20260020781A1 (en) System and methods for completing and smoothing analyte sensor system signals
US20250191743A1 (en) Mitigation of compression event failure for continuous glucose monitors
US20240197260A1 (en) Noise reduction in analyte data
US20240212801A1 (en) Dynamic presentation of cross-feature correlation insights for continuous analyte data
US20240172999A1 (en) Determining decision support outputs using user-specific analyte level criteria
US20240335168A1 (en) System and methods for personalized non-enzyme signal compensation
WO2026019913A1 (en) Improving an accuracy of glucose predictions for patients by facilitating submission of contextual data