Patent Description:
<CIT> discloses an automated orthotic device with a treatment regimen and a method for using an automated orthotic device with a treatment regimen to provide a plurality of prescribed tension settings. The orthotic device may comprise a body brace, a controller, a data storage means, and a communication means to address the problem of patients being required to visit the physician's office every time an adjustment must be made in the prescribed tension setting in their automated orthotic device. In one embodiment, a plurality of prescribed tension settings in the automated orthotic device are sorted so that as the patient's condition improves, the next prescribed tension setting in the treatment regimen may be applied. In another embodiment, the physician is allowed to edit or supplement a patient's treatment regimen remotely by connecting to the automated orthotic device over a network.

<CIT> discloses posture information measuring apparatuses which are respectively arranged in right and left shoes to be put on by the person to be measured, including: acceleration sensors for measuring acceleration to be added to mounting parts; magnetic direction sensors for measuring the magnetic directions of the mounting parts; and radio communication parts. The posture information measuring apparatus includes: a comparing function part for comparing the measurement data of the acceleration sensor and the magnetic direction sensor respectively with the measurement data of the acceleration sensor and the magnetic direction sensor which are received by the radio communication part from the posture information measuring apparatus, and outputting a notification instruction when a deviation between the measurement data of the both sensors is a prescribed threshold or more or a deviation between the measurement data of the both sensors is a prescribed threshold or more; and a notifying part for performing a notification action to the person to be measured when the notification instruction is inputted.

<CIT> discloses a kind of human body attitude monitoring device, the device includes: first detection unit and/or second detection unit, processing unit, and the prompt unit being electrically connected with processing unit, wherein, first detection unit, the ontology including fitting neck, and the multiple condenser type strain transducers being arranged on the ontology of fitting neck ; Second detection unit, the ontology including fitting shoulder, and the multiple resistance strains being arranged on the ontology of fitting shoulder ; Second dependent variable of processing unit, the first dependent variable instruction information and/or the output of multiple resistance strains for being exported according to multiple condenser type strain transducers indicates information, generates posture prompt information ; Prompt unit, for carrying out posture prompt according to posture prompt information. It is prompted as a result, according to posture, user can carry out activity or rest appropriate, to avoid cervical vertebra and/or shoulder fatigue, maintain health.

<CIT> discloses a kind of Wearable sitting posture detection device, sitting posture detecting method and system, the detection means includes detection means body, and some strain transducers for detecting neck attitude and the microprocessor for receiving the detection data of strain transducer are provided with the detection means body; Some strain transducers are connected with the microprocessor. The strain transducer that the present invention is arranged on detection means body, by the strain transducer Real-time Collection human body sitting posture, and is occurring proposing to remind in time when sitting posture is bad, realizes the effect of sitting posture detection and correction.

<CIT> discloses a posture monitoring device for measuring and correcting a posture of a user by utilizing a resistance element which is elastic and has resistance to be changed according to a mechanical deformation, and a posture monitoring method and system using the same. According to one embodiment of the present invention, the posture monitoring device is configured to monitor a posture by measuring the degree of stretching of a first part and a second part of an abdominal part divided by spine, and comprises: a first elastic resistance element and a second elastic resistance element configured to be attached onto skins of the first part and the second part or to be inserted into the skins, disposed to measure the degree of stretching of skins of the first part and the second part along a longitudinal direction of the spine, made of a conductive material, and having elasticity; a power supply device for supplying a current or a voltage to the first elastic resistance element and the second elastic resistance element through electrodes formed on both ends of each of the first elastic resistance element and the second elastic resistance element; and a communications module for transmitting data output from the first elastic resistance element and the second elastic resistance element to a controller so as to calculate information on mechanical deformations that have occurred to the first elastic resistance element and the second elastic resistance element and information on the curvature of a body on the first part and the second part.

In order for the back brace to significantly improve the position of the spine, guidelines say the brace has to be worn a certain number of hours per day based on the patient's spinal curvature (commonly up to or exceeding eighteen hours a day). Patients must adhere to these guidelines to reap the full benefits of the back brace.

In order to achieve this, the present invention discloses a computer-implemented method according to appended claim <NUM>.

Advantageous embodiments are the subject of the dependent claims.

The details of one or more example implementations are set forth in the accompanying drawings and the description below. Other possible example features and/or possible example advantages will become apparent from the description, the drawings, and the claims. Some implementations may not have those possible example features and/or possible example advantages, and such possible example features and/or possible example advantages may not necessarily be required of some implementations.

Like reference symbols in the various drawings may indicate like elements.

In some implementations, the present disclosure may be embodied as a method, system, or computer program product. Accordingly, in some implementations, the present disclosure may take the form of an entirely hardware implementation, an entirely software implementation (including firmware, resident software, micro-code, etc.) or an implementation combining software and hardware aspects that may all generally be referred to herein as a"circuit,""module" or"system. " Furthermore, in some implementations, the present disclosure may take the form of a computer program product on a computer-usable storage medium having computer-usable program code embodied in the medium.

In some implementations, any suitable computer usable or computer readable medium (or media) may be utilized. The computer-usable, or computer-readable, storage medium (including a storage device associated with a computing device or client electronic device) may be, for example, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer-readable medium may include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a digital versatile disk (DVD), a static random access memory (SRAM), a memory stick, a floppy disk, a mechanically encoded device such as punch-cards or raised structures in a groove having instructions recorded thereon, a media such as those supporting the internet or an intranet, or a magnetic storage device. Note that the computer-usable or computer-readable medium could even be a suitable medium upon which the program is stored, scanned, compiled, interpreted, or otherwise processed in a suitable manner, if necessary, and then stored in a computer memory. In the context of the present disclosure, a computer-usable or computer-readable, storage medium may be any tangible medium that can contain or store a program for use by or in connection with the instruction execution system, apparatus, or device.

In some implementations, a computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. In some implementations, such a propagated signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. In some implementations, the computer readable program code may be transmitted using any appropriate medium, including but not limited to the internet, wireline, optical fiber cable, RF, etc. In some implementations, a computer readable signal medium may be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.

In some implementations, computer program code for carrying out operations of the present disclosure may be assembler instructions, instruction-set-architecture (ISA) instructions, machine instructions, machine dependent instructions, microcode, firmware instructions, state-setting data, or either source code or object code written in any combination of one or more programming languages, including an object oriented programming language such as Java®, Smalltalk, C++ or the like. Java® and all Java- based trademarks and logos are trademarks or registered trademarks of Oracle and/or its affiliates. However, the computer program code for carrying out operations of the present disclosure may also be written in conventional procedural programming languages, such as the "C" programming language, PASCAL, or similar programming languages, as well as in scripting languages such as Javascript, PERL, or Python. In the latter scenario, the remote computer may be connected to the user's computer through a local area network (LAN), a wide area network (WAN), a body area network BAN), a personal area network (PAN), a metropolitan area network (MAN), etc., or the connection may be made to an external computer (for example, through the internet using an Internet Service Provider). In some implementations, electronic circuitry including, for example, programmable logic circuitry, an application specific integrated circuit (ASIC), field-programmable gate arrays (FPGAs) or other hardware accelerators, micro-controller units (MCUs), or programmable logic arrays (PLAs) may execute the computer readable program instructions/code by utilizing state information of the computer readable program instructions to personalize the electronic circuitry, in order to perform aspects of the present disclosure.

In some implementations, the flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of apparatus (systems), methods and computer program products according to various implementations of the present disclosure. Each block in the flowchart and/or block diagrams, and combinations of blocks in the flowchart and/or block diagrams, may represent a module, segment, or portion of code, which comprises one or more executable computer program instructions for implementing the specified logical function(s)/act(s). These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the computer program instructions, which may execute via the processor of the computer or other programmable data processing apparatus, create the ability to implement one or more of the functions/acts specified in the flowchart and/or block diagram block or blocks or combinations thereof. It should be noted that, in some implementations, the functions noted in the block(s) may occur out of the order noted in the figures (or combined or omitted).

In some implementations, these computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function/act specified in the flowchart and/or block diagram block or blocks or combinations thereof.

In some implementations, the computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed (not necessarily in a particular order) on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions/acts (not necessarily in a particular order) specified in the flowchart and/or block diagram block or blocks or combinations thereof.

Referring now to the example implementation of <FIG>, there is shown tracking process <NUM> that may reside on and may be executed by a computer (e.g., computer <NUM>), which may be connected to a network (e.g., network <NUM>) (e.g., the internet or a local area network). Examples of computer <NUM> (and/or one or more of the client electronic devices noted below) may include, but are not limited to, a storage system (e.g., a Network Attached Storage (NAS) system, a Storage Area Network (SAN)), a personal computer(s), a laptop computer(s), mobile computing device(s), a server computer, a series of server computers, a mainframe computer(s), or a computing cloud(s). A SAN may include one or more of the client electronic devices, including a RAID device and a NAS system. In some implementations, each of the aforementioned may be generally described as a computing device. In certain implementations, a computing device may be a physical or virtual device. In many implementations, a computing device may be any device capable of performing operations, such as a dedicated processor, a portion of a processor, a virtual processor, a portion of a virtual processor, portion of a virtual device, or a virtual device. In some implementations, a processor may be a physical processor or a virtual processor. In some implementations, a virtual processor may correspond to one or more parts of one or more physical processors. In some implementations, the instructions/logic may be distributed and executed across one or more processors, virtual or physical, to execute the instructions/logic. Computer <NUM> may execute an operating system, for example, but not limited to, Microsoft® Windows®; Mac® OS X®; Red Hat® Linux®, Windows® Mobile, Chrome OS, Blackberry OS, Fire OS, or a custom operating system. (Microsoft and Windows are registered trademarks of Microsoft Corporation in the United States, other countries or both; Mac and OS X are registered trademarks of Apple Inc. in the United States, other countries or both; Red Hat is a registered trademark of Red Hat Corporation in the United States, other countries or both; and Linux is a registered trademark of Linus Torvalds in the United States, other countries or both).

In some implementations, as will be discussed below in greater detail, a tracking process, such as tracking process <NUM> of <FIG>, may determine that a user wears a wearable device during one or more time periods. A total amount of time that the user is wearing the wearable device during the one or more time periods may be tracked. The total amount of time that the user wears the wearable device during the one or more time periods may be transmitted to a computing device for display on a user interface.

In some implementations, as will also be discussed below in greater detail, a tracking process, such as tracking process <NUM> of <FIG>, may receive, by a computing device, a total amount of time that a user wears a wearable device during one or more time periods. The total amount of time that the user wears the wearable device during the one or more time periods may be compared to a threshold amount of time for the one or more time periods. A remaining amount of time for the user to wear the wearable device during the one or more time periods may be displayed on a user interface based upon, at least in part, comparing the total amount of time that the user wears the wearable device during the one or more time periods to the threshold amount of time.

In some implementations, the instruction sets and subroutines of tracking process <NUM>, which may be stored on storage device, such as storage device <NUM>, coupled to computer <NUM>, may be executed by one or more processors and one or more memory architectures included within computer <NUM>. In some implementations, storage device <NUM> may include but is not limited to: a hard disk drive; all forms of flash memory storage devices; a tape drive; an optical drive; a RAID array (or other array); a random access memory (RAM); a read-only memory (ROM); or combination thereof. In some implementations, storage device <NUM> may be organized as an extent, an extent pool, a RAID extent (e.g., an example 4D+1P R5, where the RAID extent may include, e.g., five storage device extents that may be allocated from, e.g., five different storage devices), a mapped RAID (e.g., a collection of RAID extents), or combination thereof.

In some implementations, network <NUM> may be connected to one or more secondary networks (e.g., network <NUM>), examples of which may include but are not limited to: a local area network; a wide area network or other telecommunications network facility; or an intranet, for example. The phrase "telecommunications network facility," as used herein, may refer to a facility configured to transmit, and/or receive transmissions to/from one or more mobile client electronic devices (e.g., cellphones, etc.) as well as many others.

In some implementations, computer <NUM> may include a data store <NUM>, such as a database (e.g., relational database, object-oriented database, triplestore database, etc.) and may be located within any suitable memory location, such as storage device <NUM> coupled to computer <NUM>. In some implementations, data, metadata, information, etc. described throughout the present disclosure may be stored in the data store. In some implementations, computer <NUM> may utilize any known database management system such as, but not limited to, DB2, in order to provide multi-user access to one or more databases, such as the above noted relational database. In some implementations, the data store may also be a custom database, such as, for example, a flat file database or an XML database. In some implementations, any other form(s) of a data storage structure and/or organization may also be used. In some implementations, tracking process <NUM> may be a component of the data store, a standalone application that interfaces with the above noted data store and/or an applet / application that is accessed via client applications <NUM>, <NUM>, <NUM>, <NUM>. In some implementations, the above noted data store may be, in whole or in part, distributed in a cloud computing topology. In this way, computer <NUM> and storage device <NUM> may refer to multiple devices, which may also be distributed throughout the network.

In some implementations, computer <NUM> may execute a brace application (e.g., brace application <NUM>), examples of which may include, but are not limited to, e.g., a time tracking application, a calendar application, a sensor recording application, or other application that allows for the tracking and maintaining of information related to a user wearing a back brace (or other medical brace). An example of brace application <NUM> may be the application provided by BraceTrack, LLC of Fort Lauderdale, FL. However, it will be appreciated that any application and user interface capable of performing the present disclosure may also be used without departing from the scope of the present disclosure. As such, the application provided by BraceTrack should be taken as example only and not to otherwise limit the scope of the present disclosure.

In some implementations, tracking process <NUM> and/or brace application <NUM> may be accessed via one or more of client applications <NUM>, <NUM>, <NUM>, <NUM>. In some implementations, tracking process <NUM> may be a standalone application, or may be an applet / application / script / extension that may interact with and/or be executed within brace application <NUM>, a component of brace application <NUM>, and/or one or more of client applications <NUM>, <NUM>, <NUM>, <NUM>. In some implementations, brace application <NUM> may be a standalone application, or may be an applet / application / script / extension that may interact with and/or be executed within tracking process <NUM>, a component of tracking process <NUM>, and/or one or more of client applications <NUM>, <NUM>, <NUM>, <NUM>. In some implementations, one or more of client applications <NUM>, <NUM>, <NUM>, <NUM> may be a standalone application, or may be an applet / application / script / extension that may interact with and/or be executed within and/or be a component of tracking process <NUM> and/or brace application <NUM>. Examples of client applications <NUM>, <NUM>, <NUM>, <NUM> may include, but are not limited to, e.g., a time tracking application, a calendar application, a sensor recording application, or other application that allows for the tracking and maintaining of information related to a user wearing a back brace (or other medical brace), a brace application, a standard and/or mobile web browser, an email application (e.g., an email client application), a textual and/or a graphical user interface, a customized web browser, a plugin, an Application Programming Interface (API), or a custom application. The instruction sets and subroutines of client applications <NUM>, <NUM>, <NUM>, <NUM>, which may be stored on storage devices <NUM>, <NUM>, <NUM>, <NUM>, 30a, 32a, 34a, 36a, coupled to client electronic devices <NUM>, <NUM>, <NUM>, <NUM> and/or brace <NUM>, <NUM>, <NUM>, <NUM>, may be executed by one or more processors and one or more memory architectures incorporated into client electronic devices <NUM>, <NUM>, <NUM>, <NUM> and/or brace <NUM>, <NUM>, <NUM>, <NUM>.

In some implementations, one or more of storage devices <NUM>, <NUM>, <NUM>, <NUM>, 30a, 32a, 34a, 36a, may include but are not limited to: hard disk drives; flash drives, tape drives; optical drives; RAID arrays; random access memories (RAM); and read-only memories (ROM). Examples of client electronic devices <NUM>, <NUM>, <NUM>, <NUM> (and/or computer <NUM>) may include, but are not limited to, a personal computer (e.g., client electronic device <NUM>), a laptop computer (e.g., client electronic device <NUM>), a smart/data-enabled, cellular phone (e.g., client electronic device <NUM>), a notebook computer (e.g., client electronic device <NUM>), a tablet, a server, a television, a smart television, a smart speaker, an Internet of Things (IoT) device, a media (e.g., audio/video, photo, etc.) capturing and/or output device, an audio input and/or recording device (e.g., a handheld microphone, a lapel microphone, an embedded microphone (such as those embedded within eyeglasses, smart phones, tablet computers and/or watches, etc.), a brace (e.g., back brace), and a dedicated network device. Additionally / alternatively, one or more of client electronic devices <NUM>, <NUM>, <NUM>, <NUM> may include (or may be a separate) monitoring device/sensor (e.g., also referred to herein as brace <NUM>, <NUM>, <NUM>, <NUM>). Client electronic devices <NUM>, <NUM>, <NUM>, <NUM> may each execute an operating system, examples of which may include but are not limited to, Android™, Apple® iOS®, Mac® OS X®; Red Hat® Linux®, Windows® Mobile, Chrome OS, Blackberry OS, Fire OS, or a custom operating system.

In some implementations, one or more of client applications <NUM>, <NUM>, <NUM>, <NUM> may be configured to effectuate some or all of the functionality of tracking process <NUM> (and vice versa). Accordingly, in some implementations, tracking process <NUM> may be a purely server-side application, a purely client-side application, or a hybrid server-side / client-side application that is cooperatively executed by one or more of client applications <NUM>, <NUM>, <NUM>, <NUM> and/or tracking process <NUM>.

In some implementations, one or more of client applications <NUM>, <NUM>, <NUM>, <NUM> may be configured to effectuate some or all of the functionality of brace application <NUM> (and vice versa). Accordingly, in some implementations, brace application <NUM> may be a purely server-side application, a purely client-side application, or a hybrid server-side / client-side application that is cooperatively executed by one or more of client applications <NUM>, <NUM>, <NUM>, <NUM> and/or brace application <NUM>. As one or more of client applications <NUM>, <NUM>, <NUM>, <NUM>, tracking process <NUM>, and brace application <NUM>, taken singly or in any combination, may effectuate some or all of the same functionality, any description of effectuating such functionality via one or more of client applications <NUM>, <NUM>, <NUM>, <NUM>, tracking process <NUM>, brace application <NUM>, or combination thereof, and any described interaction(s) between one or more of client applications <NUM>, <NUM>, <NUM>, <NUM>, tracking process <NUM>, brace application <NUM>, or combination thereof to effectuate such functionality, should be taken as an example only and not to limit the scope of the disclosure.

In some implementations, one or more of users <NUM>, <NUM>, <NUM>, <NUM> and/or one or more of brace <NUM>, <NUM>, <NUM>, <NUM> may access computer <NUM> and tracking process <NUM> (e.g., using one or more of client electronic devices <NUM>, <NUM>, <NUM>, <NUM>) directly through network <NUM> or through secondary network <NUM>. Further, computer <NUM> may be connected to network <NUM> through secondary network <NUM>, as illustrated with phantom link line <NUM>. Tracking process <NUM> may include one or more user interfaces, such as browsers and textual or graphical user interfaces, through which users <NUM>, <NUM>, <NUM>, <NUM> may access tracking process <NUM> and/or brace <NUM>, <NUM>, <NUM>, <NUM>.

In some implementations, one or more of the various client electronic devices and/or one or more of brace <NUM>, <NUM>, <NUM>, <NUM> may be directly or indirectly coupled to network <NUM> (or network <NUM>). For example, personal computer <NUM> and brace <NUM> are shown directly coupled to network <NUM> via a hardwired network connection. Further, notebook computer <NUM> and brace <NUM> are shown directly coupled to network <NUM> via a hardwired network connection. Laptop computer <NUM> and brace <NUM> are shown wirelessly coupled to network <NUM> via wireless communication channels 56a and 56b respectively established between laptop computer <NUM> and wireless access point (i.e., WAP) <NUM> and between brace <NUM> and WAP <NUM>, which is shown directly coupled to network <NUM>. WAP <NUM> may be, for example, an IEEE <NUM>. 11a, <NUM>. 11b, <NUM>. llg, Wi-Fi®, RFID, and/or Bluetooth™ (including Bluetooth™ Low Energy) device that is capable of establishing wireless communication channel 56a between laptop computer <NUM> and WAP <NUM> and wireless communication channel 56b between brace <NUM> and WAP <NUM>. Additionally / alternatively, a brace (e.g., brace <NUM>) may be directly (and/or wirelessly) coupled to a client electronic device (e.g., client electronic device <NUM>) as illustrated with phantom link line <NUM>. Thus, information may be communicated from a brace (e.g., brace <NUM>) to a client electronic device (e.g., client electronic device <NUM>), where the information may be communicated, e.g., to computer <NUM> via, e.g., a network (e.g., network <NUM>). Smart phone <NUM> and brace <NUM> are shown wirelessly coupled to network <NUM> via wireless communication channels 60a and 60b respectively established between smart phone <NUM> and cellular network / bridge <NUM> and brace <NUM> and cellular network / bridge <NUM>, which is shown by example directly coupled to network <NUM>.

In some implementations, some or all of the IEEE <NUM> lx specifications may use Ethernet protocol and carrier sense multiple access with collision avoidance (i.e., CSMA/CA) for path sharing. The various <NUM> lx specifications may use phase-shift keying (i.e., PSK) modulation or complementary code keying (i.e., CCK) modulation, for example. Bluetooth™ (including Bluetooth™ Low Energy) is a telecommunications industry specification that allows, e.g., mobile phones, computers, smart phones, and other electronic devices (e.g., brace <NUM>, <NUM>, <NUM>, <NUM>) to be interconnected using a short-range wireless connection. Other forms of interconnection (e.g., Near Field Communication (NFC)) may also be used.

In some implementations, various I/O requests (e.g., I/O request <NUM>) may be sent from, e.g., client applications <NUM>, <NUM>, <NUM>, <NUM> and/or brace <NUM>, <NUM>, <NUM>, <NUM> to, e.g., computer <NUM> (and vice versa). Examples of I/O request <NUM> may include but are not limited to, data write requests (e.g., a request that content be written to computer <NUM>) and data read requests (e.g., a request that content be read from computer <NUM>). Other examples of I/O request <NUM> may include sensor data transmitted between the brace and computer <NUM>, or other type of data indicating that a user is wearing the brace.

Referring also to the example implementation of <FIG>, there is shown a diagrammatic view of client electronic device <NUM>. While client electronic device <NUM> is shown in this figure, this is for example purposes only and is not intended to be a limitation of this disclosure, as other configurations are possible. Additionally, any computing device capable of executing, in whole or in part, tracking process <NUM> may be substituted for client electronic device <NUM> (in whole or in part) within <FIG>, examples of which may include but are not limited to computer <NUM> and/or one or more of client electronic devices <NUM>, <NUM>, <NUM>, <NUM> and/or one or more of brace <NUM>, <NUM>, <NUM>, <NUM>.

In some implementations, client electronic device <NUM> may include a processor (e.g., microprocessor <NUM>) configured to, e.g., process data and execute the above-noted code / instruction sets and subroutines. Microprocessor <NUM> may be coupled via a storage adaptor to the above-noted storage device(s) (e.g., storage device <NUM>). An EO controller (e.g., I/O controller <NUM>) may be configured to couple microprocessor <NUM> with various devices (e.g., via wired or wireless connection), such as keyboard <NUM>, pointing/selecting device (e.g., touchpad, touchscreen, mouse <NUM>, etc.), custom device (e.g., device <NUM> such as a sensor), USB ports, and printer ports. A display adaptor (e.g., display adaptor <NUM>) may be configured to couple display <NUM> (e.g., touchscreen monitor(s), plasma, CRT, or LCD monitor(s), etc.) with microprocessor <NUM>, while network controller/adaptor <NUM> (e.g., an Ethernet adaptor) may be configured to couple microprocessor <NUM> to the above-noted network <NUM> (e.g., the Internet or a local area network).

Generally, after a patient is diagnosed with a back problem (e.g., idiopathic scoliosis), a doctor or other health processional may prescribe a back brace. In order for it to significantly improve the position of the spine, guidelines say the brace has to be worn a certain number of hours per day based on the patient's spinal curvature (commonly up to or exceeding eighteen hours a day). Patients must adhere to these guidelines to reap the full benefits of the back brace. It is generally difficult to keep track of the hours that the patient wears the brace. Therefore, as will be discussed below, to help patients and doctors easily, accurately, efficiently, and verifiably track the time and "banked time" the brace is worn, the present disclosure may include a sensor that may be separate from a back brace, or included in the back brace, that may track how long a user is wearing the brace. As will also be discussed below, the present disclosure may include an application that may maintain an accurate log of how long the user is wearing the brace (e.g., either by manual entry by the user or automatically by receiving data from the brace sensor) which may be displayed to the user.

As will be discussed below, tracking process <NUM> may at least help, e.g., improve existing technological processes, necessarily rooted in computer technology in order to overcome an example and non-limiting problem specifically arising in the realm of patient adherence to wearing a brace, and being integrated into the practical application of monitoring and tracking such an adherence automatically and/or manually. It will be appreciated that the computer processes described throughout are integrated into one or more practical applications, and when taken at least as a whole are not considered to be well-understood, routine, and conventional functions.

As discussed above and referring also at least to the example implementations of <FIG>, tracking process <NUM> may determine <NUM> that a user wears a wearable device during one or more time periods. Tracking process <NUM> may track <NUM> a total amount of time that the user is wearing the wearable device during the one or more time periods. Tracking process <NUM> may transmit <NUM> the total amount of time that the user wears the wearable device during the one or more time periods to a computing device for display on a user interface.

As noted above, after a patient is diagnosed with a back problem (e.g., idiopathic scoliosis), a doctor or other health processional may prescribe a back brace to be worn by the patient. In order for it to significantly improve the position of the spine, guidelines say the brace has to be worn a certain number of hours per day based on the patient's spinal curvature (commonly at least eighteen hours a day but other times/guidelines may be used). Patients must typically adhere to these guidelines to reap the full benefits of the back brace, which may be onerous to track.

As such, in some implementations, tracking process <NUM> may determine <NUM> that a user wears a wearable device during one or more time periods. For instance, and referring at least to the example implementation of <FIG>, an example wearable device (e.g., back brace <NUM>) is shown. As used herein, the terms wearable device, back brace, and brace may be used interchangeably. As shown in <FIG> and discussed further below, back brace <NUM> may include at least one sensor (e.g., sensor <NUM>), a power source <NUM> (e.g., battery or direct AC connection), a transceiver <NUM> (e.g., Bluetooth Low Energy (BLE) System on Chip (SOC) transceiver), and memory <NUM>.

For example, in some implementations, a sensor connected to the wearable device (e.g., back brace <NUM>) may determine <NUM> that the user wears (or is wearing) the wearable device during one or more time periods. For instance, as shown in <FIG>, at least one sensor (e.g., sensor <NUM>) may be attached to or embedded within back brace <NUM>. For example, in a common back brace, sensor <NUM> may be located in the front of back brace <NUM> (e.g., approximating the position of the user's belly button) and may be of a thickness typical of back brace <NUM> or any other thickness capable of operating effectively. In some implementations, sensor <NUM> may include at least one of a capacitive sensor, a proximity sensor, a pressure sensor, a temperature sensor, and a motion sensor. For example, when sensor <NUM> is a pressure sensor, the pressure sensor may be positioned anywhere on the inside of back brace <NUM> so as to be pressed (or sense sufficient pressure) when back brace <NUM> is worn. In the example, when wearing back brace <NUM>, the user would inherently apply sufficient pressure or"press" upon the sensor with the user's body to provide an indication signal to make a determination <NUM> that back brace <NUM> is being worn. As another example, when sensor <NUM> is a temperature sensor, the temperature sensor may be positioned anywhere on the inside of back brace <NUM> so as to detect temperature when back brace <NUM> is worn. In the example, when wearing back brace <NUM>, the user would cover sensor <NUM>, thereby changing the current temperature detected by sensor <NUM>. In some implementations, sensor <NUM> may be based on a dual channel capacitive proximity sensor (e.g., detects the presence or absence of virtually any object, such as the user wearing brace <NUM>, regardless of material by utilizing the electrical property of capacitance and the change of capacitance based on a change in the electrical field around the active face of the sensor), as well as a proximity sensor (e.g., detecting the presence or absence of an object, such as the user wearing brace <NUM>, using electromagnetic fields, light, and sound) which may be used to detect the wear state of the brace for a long period of time, or combination conductance proximity sensor. Temperature sensing may be used to account for drift in capacitance due to temperature changes. A non-limiting example of such a sensor is the AZD107 or IQS620/IQS620A sensor offered by Azoteq of Austin Texas. In some implementations, when temperature is detected within a certain range (e.g., between <NUM> and <NUM> degrees) this would provide an indication signal to make a determination <NUM> that back brace <NUM> is being worn. As yet another example, when sensor <NUM> is a motion/movement sensor (e.g., accelerometer, gyroscope, GPS, etc.), this sensor may be positioned anywhere on the inside and/or outside of back brace <NUM> so as to detect movement when back brace <NUM> is worn. In the example, when wearing back brace <NUM>, the user may move around, causing sensor <NUM> to detect this movement to provide an indication signal to make a determination <NUM> that back brace <NUM> is being worn.

In some implementations, to help increase accuracy, any combination and any number of the above-noted sensors may be used. For instance, only one sensor (e.g., temperature) determining that back brace <NUM> is being worn may not be sufficient to make a final determination that back brace <NUM> is being worn (e.g., if it is already warm in the room or the brace is in the sunlight), whereas two or more sensors (e.g., temperature and pressure) essentially simultaneously determining that back brace <NUM> is being worn may be sufficient to make a final determination that back brace <NUM> is being worn. As another example, only one pressure sensor determining that back brace <NUM> is being worn may not be sufficient to make a final determination that back brace <NUM> is being worn (e.g., if something is accidentally resting on top of the pressure sensor), whereas two or more pressure sensors determining that back brace <NUM> is being worn may be sufficient to make a final determination that back brace <NUM> is being worn.

In some implementations, tracking process <NUM> may track <NUM> (e.g., monitor) a total amount of time that the user is wearing the wearable device during the one or more time periods. For instance, in some implementations, the on/off state of any of the above sensors may be captured over, e.g., I2C with a Bluetooth Low Energy (BLE) System on Chip (SOC) (e.g., via transceiver <NUM>) or Wi-Fi, etc. The BLE SOC may contain a radio to connect with a computing device (e.g., mobile phone/tablet, etc. and/or a microprocessor) to process the data stream from the sensor. The module may also contain memory <NUM> (e.g., flash memory) to temporarily store sensor readings along with a timestamp. Sensor data may be temporarily stored in the module for situations where the receiving mobile device is either not within transmission proximity of the sensor or is turned off. The BLE module may advertise its presence continuously or periodically. The computing device may pick up those advertising signals and connect to sensor <NUM> using, e.g., Bluetooth Low Energy. Once a connection is established, the computing device may request on/off events along with the timestamp from sensor <NUM>.

In some implementations, using the above-noted sensor(s) <NUM> to determine whether or not the user is wearing back brace <NUM>, tracking process <NUM> may (e.g., using the above-noted timestamp or otherwise) track <NUM> (e.g., monitor) how long the user is wearing back brace <NUM> for a particular time period (e.g., one day, one week, one month, etc.). For example, assume that sensor <NUM> is used to determine that the user is wearing back brace <NUM> for <NUM> hours on Monday (e.g., <NUM> hours from <NUM> am to <NUM> pm and then <NUM> hours from <NUM> pm to <NUM> pm). In the example, tracking process <NUM> may track <NUM> that the user has worn back brace <NUM> for <NUM> hours on Monday. As another example, assume that sensor <NUM> is used to determine that the user is wearing back brace <NUM> for <NUM> hours on Monday, and <NUM> hours on Tuesday of the same week. In the example, tracking process <NUM> may track <NUM> that the user has worn back brace <NUM> for <NUM> hours on Monday and <NUM> hours on Tuesday of the same week.

In some implementations, tracking process <NUM> may transmit <NUM> the total amount of time that the user wears the wearable device during the one or more time periods to a computing device for display on a user interface. For example, as will be discussed in greater detail below, the total amount of time where the user was determined to have worn back brace <NUM> (e.g., <NUM> hours on Monday and/or <NUM> hours on Tuesday) may be transmitted <NUM> to a computing device (e.g., client electronic device <NUM> via client application <NUM> and/or to computer <NUM> which may then be transmitted to client electronic device <NUM>) to log and display this amount of time for the user (or medical professional) on a user interface (e.g., user interface <NUM>). In some implementations, the data may be transmitted <NUM> wirelessly (as discussed above) and/or the data may be transmitted <NUM> via a wired connection (as discussed above). While client electronic device <NUM> may be a mobile device (e.g., smart phone), in some implementations, the client electronic device may be a wired device that is wired directly to sensor <NUM>. For instance, as shown in <FIG>, client electronic device <NUM> is shown connected to back brace <NUM> via wired connection <NUM>. Client electronic device <NUM> may include a user interface capable of displaying the above-noted amount of time back brace <NUM> is worn or time remaining to be worn, or any other relevant information, such as those discussed below with <FIG>.

In some implementations, the total amount of time that the user wears the wearable device during the one or more time periods may be transmitted <NUM> automatically. For example, as will be discussed further below, the total amount of time that the user wears back brace <NUM> may be transmitted in real-time (e.g., in example intervals of <NUM>-<NUM> seconds or minutes) as the user is wearing back brace <NUM>. In some implementations, the total amount of time that the user wears back brace <NUM> may be transmitted after sensor <NUM> determines that the user is no longer wearing back brace <NUM>, which may help save resources (e.g., battery life, processing resources, storage space, bandwidth, etc.) of back brace <NUM> and/or client electronic device <NUM>. In some implementations, the total amount of time may be verified by the user prior to transmitting and/or after transmitting.

In some implementations, the total amount of time that the user wears the wearable device during the one or more time periods may be transmitted <NUM> manually. For example, as will be discussed further below, the total amount of time that the user wears back brace <NUM> may be transmitted manually. For instance, the user may manually upload and/or enter the hours/minutes into client electronic device <NUM> via a user interface of client application <NUM>. In some implementations, manual entry need not require use of sensor <NUM>, and client electronic device <NUM> may include a timer that the user may be manually started and stopped by the user to determine how long back brace <NUM> has been worn. In some implementations, manual entry may still use sensor <NUM>, where client electronic device <NUM> may include a timer that may start and stop depending on the use of the sensor to determine whether back brace <NUM> is being worn, which may be verified by the user and then added manually (or added automatically without verification).

Additionally, as also discussed above and referring also at least to the example implementations of <FIG>, tracking process <NUM> may receive <NUM>, by a computing device, a total amount of time that a user wears a wearable device during one or more time periods. Tracking process <NUM> may compare <NUM> the total amount of time that the user wears the wearable device during the one or more time periods to a threshold amount of time for the one or more time periods. Tracking process <NUM> may display <NUM> on a user interface a remaining amount of time for the user to wear the wearable device during the one or more time periods based upon, at least in part, comparing the total amount of time that the user wears the wearable device during the one or more time periods to the threshold amount of time.

In some implementations, tracking process <NUM> may receive <NUM>, by a computing device, a total amount of time that a user wears a wearable device during one or more time periods. For instance, one or more implementations of the above-described back brace <NUM> may be used to transmit the above-noted total amount of time that the user wears back brace <NUM>, which may be received <NUM> by tracking process <NUM> (e.g., via sensor <NUM> connected to the wearable device, wherein the sensor may include at least one of a pressure sensor, a temperature sensor, and a motion sensor). As described above, the total amount of time where the user was determined to have worn back brace <NUM> (e.g., <NUM> hours on Monday and/or <NUM> hours on Tuesday) may be transmitted <NUM> to and received <NUM> by a computing device (e.g., client electronic device <NUM> via client application <NUM> and/or to computer <NUM> which may then be transmitted to and received <NUM> by client electronic device <NUM>) to log and display for the user (or medical professional) on a user interface this amount of time (discussed below).

As also noted above, the total amount of time that the user wears the wearable device during the one or more time periods may be received <NUM> automatically, and in some implementations the total amount of time that the user wears the wearable device during the one or more time periods may be received <NUM> manually. For instance, and referring at least to the example implementation of <FIG>, an example user interface <NUM> (e.g., of tracking process <NUM> via client application <NUM> of client electronic device <NUM>) is shown. In the example, an"Add Time" icon <NUM> may be selected by the user using any known technique (e.g., touch screen). By selecting this example icon <NUM>, the user may manually upload and/or enter the hours/minutes into client electronic device <NUM> via user interface <NUM> of client application <NUM>. In some implementations, manual entry need not require use of sensor <NUM>, and client electronic device <NUM> may include a timer that the user may manually start (e.g., via icon <NUM>) and stop (e.g., via icon <NUM>) to determine how long back brace <NUM> has been worn (e.g., for the current day). In some implementations, manual entry may still use sensor <NUM>, where client electronic device <NUM> may include a timer that may start and stop depending on the use of the sensor to determine whether back brace <NUM> is being worn, which may be verified by the user and then added manually (or added automatically without verification).

Tracking process <NUM> compares <NUM> the total amount of time that the user wears the wearable device during the one or more time periods to a threshold amount of time for the one or more time periods, and tracking process <NUM> displays <NUM> on a user interface a remaining amount of time for the user to wear the wearable device during the one or more time periods based upon, at least in part, comparing the total amount of time that the user wears the wearable device during the one or more time periods to the threshold amount of time. For instance, assume for example purposes only that the user is required to wear back brace <NUM> for <NUM> hours (as shown in <FIG>). In the example, further assume that the user, for the current day, has worn back brace <NUM> for <NUM> hours and <NUM> minute (as also shown in <FIG>). Tracking process <NUM> compares <NUM> that total amount of time (<NUM> hours and <NUM> minute) to the required (threshold) amount of time for that same day (<NUM> hours). As a result, tracking process <NUM> displays <NUM> (e.g., via user interface <NUM>) the remaining amount of time that the user should wear back brace <NUM> (e.g., <NUM> hours and <NUM> minutes) to meet the above-noted guidelines. In some implementations, the threshold amount of time may be changed in the user's profile (e.g., via profile icon <NUM>), which may include other options as well (e.g., entering the user's name, device pairing options or other connectivity options, etc.).

Displaying <NUM> on the user interface the remaining amount of time for the user to wear the wearable device during the one or more time periods includes displaying <NUM> a surplus amount of time above the threshold amount of time that the user wears the wearable device during the one or more time periods. For instance, and referring to the example implementation of <FIG>, an example user interface (e.g., user interface <NUM> of tracking process <NUM> via client application <NUM> of client electronic device <NUM>) is shown. In the example, tracking process <NUM> displays <NUM> a surplus amount of time that is above the threshold amount of time that the user is required to wear back brace <NUM>. For instance, and continuing with the above example, assume for example purposes only that the threshold amount of time for a particular period (e.g., a single day) is <NUM> hours, and further assume that tracking process <NUM> has only received data indicating that the user has worn back brace <NUM> for <NUM> hours and <NUM> minute for that same day. In the example, there would be <NUM> surplus or"banked" hours (as shown in <FIG>), as the user has not even worn back brace <NUM> long enough to meet the threshold of <NUM> hours, let alone worn back brace <NUM> longer than the threshold of <NUM> hours. However, now assume that tracking process <NUM> has received data indicating that the user has worn back brace <NUM> for <NUM> hours and <NUM> minute for that same day. In the example, there would be <NUM> hour and <NUM> minute surplus or"banked" hours shown in <FIG>, as the user has worn back brace <NUM> for <NUM> hour and <NUM> minute longer than the threshold of <NUM> hours. In some implementations, selecting the example"history" icon <NUM> may display the surplus amount of time, as well as other historical usage data (e.g., history for any given date in the user's brace tracking history). In some implementations, user interface <NUM> may enable the user to export the user's history of brace time worn and banked for, e.g., the trailing week, month, and year along with daypart trends (e.g., via a PDF (or other format) email, text, etc.) Daypart trends may include, e.g., the typical hours the brace is being worn so the user may visualize patterns by time of day.

It will be appreciated that while the surplus hours is displayed for a particular day, other time periods may also be used when displaying <NUM> the surplus. For example, now assume that tracking process <NUM> has received data indicating that the user has worn back brace <NUM> for <NUM> hours and <NUM> minute for the week. In the example, there would be <NUM> hour and <NUM> minute surplus or"banked" hours, as the user has worn back brace <NUM> for <NUM> hour and <NUM> minute longer than the threshold of <NUM> hours for the week (i.e., <NUM> hours a day x <NUM> days = <NUM> hours). Other time periods that may be used include months, years, etc., which may be viewed in user interface <NUM> by selecting the appropriate icon (e.g., Trailing week icon <NUM>, Trailing month icon <NUM>, Trailing year icon <NUM>, Trends icon <NUM>, etc., which may be viewed in any form, such as the graph <NUM>, and which may also show the deficit amount of time needed to wear back brace <NUM> to meet the threshold). As such, the use of a single day as the time period should be taken as example only and not to otherwise limit the scope of the present disclosure.

Referring to the example implementation of <FIG>, an example user interface (e.g., user interface <NUM> of tracking process <NUM> via client application <NUM> of client electronic device <NUM>) is shown. In the example, information pertaining to the total amount of time the user has worn back brace <NUM> is displayed by tacking process <NUM> and viewed by the user in calendar form (e.g., by selecting the example" calendar" icon <NUM>). For instance, the user may select the current day (e.g., <NUM> June <NUM>), which may display the current information for that day (e.g., <NUM> hours and <NUM> minute having worn back brace <NUM>), how many surplus hours have been banked for that day, as well as how many surplus hours have been applied (as will be discussed further below). In some implementations, tracking process <NUM> may display all available data up to the selected day (e.g., <NUM> June <NUM> - <NUM> June <NUM>), and in other implementations, the user may manually select which days (or months, years, etc.) to include when displaying the available data.

In some implementations, displaying <NUM> on the user interface the remaining amount of time for the user to wear the wearable device during the one or more time periods may include applying <NUM> the surplus amount of time above the threshold amount of time to the remaining amount of time for the user to wear the wearable device during the one or more time periods. For instance, assume that tracking process <NUM> has received data indicating that the user has worn back brace <NUM> for <NUM> hours and <NUM> minute for a particular day (e.g., <NUM> June <NUM>). In the example, there would be <NUM> hour and <NUM> minute surplus or"banked" hours shown in <FIG>, as the user has worn back brace <NUM> for <NUM> hour and <NUM> minute longer than the threshold of <NUM> hours. Now assume that tracking process <NUM> had also received data indicating that the user has worn back brace <NUM> for <NUM> hours and <NUM> minute for the prior day (e.g., <NUM> June <NUM>), leaving a <NUM> minute deficiency for that prior day. In the example, tracking process <NUM> may apply <NUM> the surplus (or "banked") time of <NUM> minutes from <NUM> June <NUM> to the <NUM> minute deficiency of <NUM> June <NUM>, resulting in the user meeting the <NUM> hour quota each day for two days.

In the example, the total amount of banked time that has been applied may be displayed on any of the example user interfaces described above. In some implementations, the total amount of banked time that has been applied may be applied automatically by tracking process <NUM> and/or may be applied manually by tracking process <NUM> receiving an input from the user (e.g., via example" Apply Banked Time" icon <NUM>) to specifically apply any portion of banked time to any particular day, week, month, etc..

While the description below describes a wearable device as a back brace, it will be appreciated that the wearable device may include other types of wearable devices without departing from the scope of the present disclosure. For example, while in some implementations, the wearable device may be a back brace, in some implementations, the wearable device may include at least one of a knee brace (e.g., for MCL/ACL injuries and for preventive knee braces used commonly in football and contact sports), an ankle brace, a sling (e.g., hamstring or shoulder sling), a removable cast, a posture device, a post-surgical stabilization device, or any other type of wearable device. As such, the use of a back brace should be taken as example only and not to otherwise limit the scope of the present disclosure.

It will be appreciated that tracking process <NUM>, as shown in <FIG> and <FIG> and also discussed throughout, may be used separately or combined in any combination (e.g., as a brace to collect data, as an application to culminate and display the data, as a brace to collect data that then transmits the data to the application to culminate and display the data, or a single apparatus capable of collecting and culminating data for display, etc.). As such, the use of a separate device (e.g., brace with sensor) and a separate application should be taken as example only and not to otherwise limit the scope of the present disclosure.

Claim 1:
A computer-implemented method comprising:
receiving (<NUM>), by a computing device, a total amount of time that a user wears a wearable device (<NUM>) during a plurality of time periods, wherein the wearable device (<NUM>) includes at least one of a back brace, a knee brace, an ankle brace, a sling, a removable cast, a posture device, and a post-surgical stabilization device;
characterized by
comparing (<NUM>) the total amount of time that the user wore the wearable device (<NUM>) for each of the plurality of time periods to a threshold amount of time for each of the plurality of time periods;
displaying (<NUM>) on a user interface a remaining amount of time for the user to wear the wearable device (<NUM>) for a present time period based upon, at least in part, comparing the total amount of time that the user wore the wearable device (<NUM>) during the present time period to the threshold amount of time for the present time period,
alternatively displaying (<NUM>) a surplus amount of time above the threshold amount of time for each time period of a historical subset of the plurality of time periods that the user wore the wearable device (<NUM>),
applying (<NUM>) at least a portion of the surplus amount of time above the threshold amount of time for each of the plurality of time periods to a past time period of the plurality of time periods that the user wore the wearable device (<NUM>) below the threshold amount of time, and
displaying a total amount of surplus time as well as surplus time that has been applied.