System and method for transmitting data and ordering asynchronous data

A computer-implemented system includes an electromechanical device configured to be manipulated by a patient while performing an exercise session, and a processor in communication with the electromechanical device. The processor is configured to receive data, generate a map packet, and transmit the map packet. The processor is configured to use the data to generate continuity packets, where each of the continuity packets includes a contiguous portion of the data, and transmit the continuity packets. The processor is configured to use the map packet and the continuity packets to cause an output file to be generated.

Skip to: Description  ·  Claims  ·  References Cited  · Patent History  ·  Patent History
Description
CROSS-REFERENCES TO RELATED APPLICATIONS

This application is continuation of U.S. patent application Ser. No. 17/149,457, filed Jan. 14, 2021, titled “System and Method for Transmitting Data and Ordering Asynchronous Data”, which is a continuation-in-part of U.S. patent application Ser. No. 17/021,895, filed Sep. 15, 2020, titled “Telemedicine for Orthopedic Treatment,” which claims priority to and the benefit of U.S. Provisional Patent Application Ser. No. 62/910,232, filed Oct. 3, 2019, titled “Telemedicine for Orthopedic Treatment,” the entire disclosures of which are hereby incorporated by reference for all purposes. As a continuation of U.S. patent application Ser. No. 17/149,457, this application also claims priority to and the benefit of U.S. Provisional Patent application Ser. No. 63/028,399, filed May 21, 2020, titled “System and Method for Transmitting Data and Ordering Asynchronous Data,” the entire disclosures of which are hereby incorporated by reference for all purposes.

TECHNICAL FIELD

This disclosure relates generally to systems and methods of transmitting and processing data.

BACKGROUND

Medical devices may include one or more sensors that detect events and generate data pertaining to the events. The data from the sensors may flow in a data stream from the device to a network and, optionally, back to the device. This process can generate exceedingly large amounts of data, requiring substantial memory to use and to store the data. The data may be input into an electronic medical record (EMR) system. EMRs can include information related to the health of a patient, and such information may be contained in or called an “electronic health record.” The EMR can use and store electronic health records of patients (e.g., a collection of patient and population health information in a digital format). The health information may be used by a variety of entities, such as health care providers (e.g., physicians, physical therapists, nurses, etc.); insurance companies; billing companies; hospitals; laboratory service providers; psychological service providers (e.g., psychiatrists, psychologists, counselors, social workers); or any other suitable entity. These entities may use the health information to enable the determination of optimal treatments for their patients, to provide or deliver those treatments; and to accurately bill for the associated healthcare services provided to the patients. However, the substantial amount of memory that may be required to use and to store the data generated by the medical devices may result in higher healthcare costs. Further, bulk transmission of data from the medical devices to remote servers may impact network performance by causing higher peak network loads. In addition, waiting for data collection to complete before processing data may prevent health care providers from acting on error information or detecting problems with medical devices as quickly as possible. The use of telemedicine may increase the number of medical devices used by patients in their homes. For example, healthcare professionals may lease the medical devices to patients to use for rehabilitating from an injury or a surgery. A reduction in memory needed for medical devices to properly function may reduce the cost of the medical device and the fees for leasing the medical devices, resulting in reduced healthcare expenses. Further, as bulk transmission of large data files from medical devices may result in higher peak network loads, it may be desirable to reduce the size of individual files being transmitted. Further, transmitting data closer to the time it is generated may enable easier access to error information and faster responses to medical devices on which problems have been detected.

SUMMARY

In general, the present disclosure provides systems and methods for transmitting data and ordering asynchronous data.

In one aspect, a computer-implemented system includes an electromechanical device configured to be manipulated by a patient while performing an exercise session, and a processor in communication with the electromechanical device. The processor is configured to receive data, generate a map packet, and transmit the map packet. The processor is configured to use the data to generate continuity packets, where each of the continuity packets includes a contiguous portion of the data, and transmit the continuity packets. The processor is configured to use the map packet and the continuity packets to cause an output file to be generated.

In one aspect, a system for transmitting data is disclosed. The system includes an information-generating device and a processor in communication with the information-generating device. The processor is configured to receive data; to generate a map packet; to transmit the map packet; using the data, to generate continuity packets, wherein each of the continuity packets comprises a contiguous portion of the data; to transmit the continuity packets; and using the map packet and the continuity packets, to cause an output file to be generated.

In another aspect, a method for operating an information-generating device is disclosed. The method includes receiving data; generating a map packet; transmitting the map packet; using the data to generate continuity packets, wherein each of the continuity packets comprises a contiguous portion of the data; transmitting the continuity packets; and using the map packet and the continuity packets to cause an output file to be generated.

In yet another aspect, a tangible, non-transitory computer-readable storage medium is disclosed. The tangible, non-transitory computer-readable storage medium stores instructions that, when executed, cause a processor to receive data from an information-generating device; to generate a map packet; to transmit the map packet; using the data, to generate continuity packets, wherein each of the continuity packets comprises a contiguous portion of the data; to transmit the continuity packets; and using the map packet and the continuity packets, to cause an output file to be generated.

In yet another aspect, a system for ordering of asynchronously transmitted data is disclosed. The system includes a processor configured to receive, from an information-generating device, a map packet and continuity packets in an initial order. Responsive to receiving the map packet and at least two of the continuity packets, the processor is configured to use the map packet to generate an output file by ordering the continuity packets from the initial order into an output order.

In yet another aspect, a method for operating a computing device is disclosed. The method includes receiving, from an information-generating device, a map packet and continuity packets in an initial order, and, responsive to receiving the map packet and at least two of the continuity packets, using the map packet to generate an output file by ordering the continuity packets from the initial order into an output order.

In yet another aspect, a tangible, non-transitory computer-readable storage medium is disclosed. The tangible, non-transitory computer-readable storage medium stores instructions that, when executed, cause a processor to receive, from an information-generating device, a map packet and continuity packets in an initial order. Responsive to receiving the map packet and at least two of the continuity packets, the instructions cause the processor to use the map packet to generate an output file by ordering the continuity packets from the initial order into an output order.

In yet another aspect, a system for transmission and ordering of asynchronous data is disclosed. The system comprises an information-generating device comprising a device-side processor. The device-side processor is configured to receive data; generate a map packet; transmit the map packet; use the data to generate continuity packets, wherein each of the continuity packets comprises a contiguous portion of the data; and transmit the continuity packets. The system further comprises a remote computing device comprising a remote processor. The remote processor is configured to receive, from the information-generating device, the map packet; to receive, from the information-generating device, the continuity packets in an initial order; and responsive to receiving at least two of the continuity packets and the map packet, to use the map packet to generate an output file by ordering the continuity packets from the initial order into an output order.

Other technical features may be readily apparent to one skilled in the art from the following figures, descriptions, and claims.

Before undertaking the DETAILED DESCRIPTION below, it may be advantageous to set forth definitions of certain words and phrases used throughout this patent document. The term “couple” and its derivatives refer to any direct or indirect communication between two or more elements, independent of whether those elements are in physical contact with one another. The terms “transmit,” “receive,” and “communicate,” as well as derivatives thereof, encompass both direct and indirect communication. The terms “transmit,” “receive,” and “communicate,” as well as derivatives thereof, encompass both communication with remote systems and communication within a system, including reading and writing to different portions of a memory device. The terms “include” and “comprise,” as well as derivatives thereof, mean inclusion without limitation. The term “or” is inclusive, meaning and/or. The phrase “associated with,” as well as derivatives thereof, means to include, be included within, interconnect with, contain, be contained within, connect to or with, couple to or with, be communicable with, cooperate with, interleave, juxtapose, be proximate to, be bound to or with, have, have a property of, have a relationship to or with, or the like. The term “controller” means any device, system or part thereof that controls at least one operation. Such a controller may be implemented in hardware or a combination of hardware and software and/or firmware. The functionality associated with any particular controller may be centralized or distributed, whether locally or remotely. The phrase “at least one of,” when used with a list of items, means that different combinations of one or more of the listed items may be used, and only one item in the list may be needed. For example, “at least one of: A, B, and C” includes any of the following combinations: A, B, C, A and B, A and C, B and C, and A and B and C.

Moreover, various functions described below can be implemented or supported by one or more computer programs, each of which is formed from computer readable program code and embodied in a computer readable storage medium. The terms “application” and “program” refer to one or more computer programs, software components, sets of instructions, procedures, functions, objects, classes, instances, related data, or a portion thereof adapted for implementation in a suitable computer readable program code. The phrase “computer readable program code” includes any type of computer code, including source code, object code, and executable code. The phrase “computer readable storage medium” includes any type of medium capable of being accessed by a computer, such as read only memory (ROM), random access memory (RAM), a hard disk drive, a flash drive, a compact disc (CD), a digital video disc (DVD), solid state drive (SSD), or any other type of memory. A “non-transitory” computer readable storage medium excludes wired, wireless, optical, or other communication links that transport transitory electrical or other signals. A non-transitory computer-readable storage medium includes media where data can be permanently stored and media where data can be stored and later overwritten, such as a rewritable optical disc or an erasable memory device.

Definitions for other certain words and phrases are provided throughout this patent document. Those of ordinary skill in the art should understand that in many if not most instances, such definitions apply to prior as well as future uses of such defined words and phrases.

BRIEF DESCRIPTION OF THE DRAWINGS

For a more complete understanding of this disclosure and its advantages, reference is now made to the following description, taken in conjunction with the accompanying drawings. It is emphasized that, according to common practice, the various features of the drawings are not to-scale. On the contrary, the dimensions of the various features are arbitrarily expanded or reduced for clarity.

FIG. 1 illustrates a component diagram of an illustrative system for transmitting and ordering asynchronous data according to certain aspects of this disclosure.

FIG. 2 illustrates an example information-generating device according to certain aspects of this disclosure.

FIGS. 3A and 3B illustrate a method for transmitting data and ordering asynchronous data according to certain aspects of this disclosure.

FIG. 4 illustrate a method for transmitting data according to certain aspects of this disclosure.

FIGS. 5A and 5B illustrate a method for ordering asynchronous data according to certain aspects of this disclosure.

DETAILED DESCRIPTION

FIGS. 1-5, discussed below, and the various embodiments used to describe the principles of this disclosure are by way of illustration only and should not be construed in any way to limit the scope of the disclosure.

FIG. 1 illustrates a component diagram of an illustrative system 100 for transmitting and ordering asynchronous data in accordance with aspects of this disclosure. The system 100 may include an information-generating device 102. The information-generating device 102 may be a medical device. The medical device may be a testing device, a diagnostic device, a therapeutic device, or any other suitable medical device. “Medical device” as used in this context may refer to hardware, software, or a mechanical or other device that may assist in a medical service, regardless of whether it is FDA (or other governmental regulatory body of any given country) approved, required to be FDA (or other governmental regulatory body of any given country) approved or available commercially or to consumers without such approval. Non-limiting examples of the medical devices include an insulin pump, a thermometer, an MRI machine, a CT-scan machine, a glucose meter, an apheresis machine, and a physical therapy machine (e.g., an orthopedic rehabilitation device, such as a physical therapy cycle). Non-limiting examples of places where the medical device may be located include a healthcare clinic, a physical rehabilitation center, and a user's home to allow for telemedicine treatment, rehabilitation, and/or testing. FIG. 2 illustrates an example of the information-generating device 102 in which the information-generating device 102 is a physical therapy cycle 200.

The information-generating device 102 may include an electromechanical device 104, such as pedals 202 of the physical therapy cycle 200, a goniometer configured to attach to a joint and measure joint angles, or any other suitable electromechanical device. The electromechanical device 104 may be configured to be manipulated by a patient while performing an exercise session. The electromechanical device 104 may be configured to transmit information, such as pedal position information. A non-limiting example of positioning information includes information relating to the location of the electromechanical device 104 (e.g., the pedals 202).

The information-generating device 102 may include a sensor 106. The sensor 106 can be used for obtaining information, such as fingerprint information, retina information, voice information, height information, weight information, vital sign information (e.g., blood pressure, heart rate, etc.), response information to physical stimuli (e.g., change in heart rate while running on a treadmill), performance information (rate of speed of rotation of the pedals 202 of the physical therapy cycle 200), or any other suitable information. The sensor 106 may be a temperature sensor (such as a thermometer or thermocouple), a strain gauge, a proximity sensor, an accelerometer, an inclinometer, an infrared sensor, a pressure sensor, a light sensor, a smoke sensor, a chemical sensor, any other suitable sensor, a fingerprint scanner, a sound sensor, a microphone, or any combination thereof. The sensor 106 may be located on an interior or exterior of the device. For example, the sensor 106 may be a pedal position sensor located on the pedals 202 of the physical therapy cycle 200.

The information-generating device 102 may include a camera 108, such as a still image camera, a video camera, an infrared camera, an X-ray camera, any other suitable camera, or any combination thereof. The information-generating device 102 may include an imaging device 110, such as an MRI imaging device, an X-ray imaging device, a thermal imaging device, any other suitable imaging device, or any combination thereof. The information-generating device 102 may include a device-side processor 112. The device-side processor 112 can include, for example, computers, intellectual property (IP) cores, application-specific integrated circuits (ASICs), programmable logic arrays, optical processors, programmable logic controllers, microcode, microcontrollers, servers, microprocessors, digital signal processors, any other suitable circuit, or any combination thereof. The device-side processor may be in communication with the electromechanical device 104, the sensor 106, the camera 108, the imaging device 110, any other suitable device, or any combination thereof.

The information-generating device 102 may include a device-side memory 114 in communication with the device-side processor 112. The device-side memory 114 can include any type of memory capable of being accessed by a computer, such as read only memory (ROM), random access memory (RAM), a hard disk drive, a flash drive, a compact disc (CD), a digital video disc (DVD), solid state drive (SSD), or any other suitable type of memory. The device-side memory 114 may store instructions that cause the device-side processor 112 to perform a series of actions or processes.

The information-generating device 102 may include a device-side input 116 in communication with the device-side processor 112. Examples of the device-side input 116 include a keyboard, a keypad, a mouse, a microphone supported by speech-to-text software, or any other suitable input device. The device-side input 116 may be used by a medical system operator to input information, such as user-identifying information, observational notes, or any other suitable information. An operator is to be understood throughout this disclosure to include people, bots, robots, hardware, and/or computer software, such as programs or artificial intelligence, and any combination thereof.

The information-generating device 102 may include a device-side output 118 in communication with the device-side processor 112. The device-side output 118 may be used to provide information to the operator or a user (or patient) of the information-generating device 102. For the purposes of this disclosure, user and patient are used interchangeably. Examples of the device-side output 118 may include a display screen, a speaker, an alarm system, or any other suitable output device, including haptic, tactile, olfactory, or gustatory ones. In some embodiments, such as where the information-generating device 102 includes a touchscreen, the device-side input 116 and the device-side output 118 may be the same device.

For communicating with remote computers and servers, the information-generating device 102 may include a device-side network adapter 120 in communication with the device-side processor 112. The device-side network adapter 120 may include wired or wireless network adapter devices (e.g., a wireless modem or Bluetooth) or a wired network port.

The information-generating device 102 may be coupled to or be in communication with a remote computing device 122. The remote computing device 122 may include a remote processor 124. The remote processor 124 can include, for example, computers, intellectual property (IP) cores, application-specific integrated circuits (ASICs), programmable logic arrays, optical processors, programmable logic controllers, microcode, microcontrollers, servers, microprocessors, digital signal processors, any other suitable circuit, or any combination thereof

The remote computing device 122 may include a remote memory 126 in communication with the remote processor 124. The remote memory 126 can include any type of memory capable of being accessed by a computer, such as read only memory (ROM), random access memory (RAM), a hard disk drive, a flash drive, a compact disc (CD), a digital video disc (DVD), solid state drive (SSD), or any other suitable type of memory. The remote memory 126 may store instructions that cause the remote processor 124 to perform a series of actions or processes.

The remote computing device 122 may include a remote input 128 in communication with the remote processor 124. Examples of the remote input 128 include a keyboard, a keypad, a mouse, a microphone supported by speech-to-text software, or any other suitable input device. The remote input 128 may be used by a medical system operator to input information, such as user-identifying information, observational notes, or any other suitable information. An operator is to be understood throughout this disclosure to include people, bots, robots, hardware, and/or computer software, such as programs or artificial intelligence, and any combination thereof.

The remote computing device 122 may include a remote output 130 in communication with the remote processor 124. The remote output 130 may be used to provide information to the operator or a user (or patient) of the remote computing device 122. For the purposes of this disclosure, user and patient are used interchangeably. Examples of the remote output 130 may include a display screen, a speaker, an alarm system, or any other suitable output device, including haptic, tactile, olfactory, or gustatory ones. In some embodiments, such as where the remote computing device 122 includes a touchscreen, the remote input 128 and the remote output 130 may be the same device.

For communicating with the information-generating device 102, as well as remote computers and servers, the remote computing device 122 may include a remote network adapter 132 in communication with the remote processor 124. The remote network adapter 122 may include wired or wireless network adapter devices (e.g., a wireless modem or Bluetooth) or a wired network port.

Both the device-side network adapter 120 and the remote network adapter 132 may be in communication with a network 134. Transmissions between the information-generating device 102 and the remote computing device 122 may pass through the network 134. The network 134 may be a public network (e.g., connected to the Internet via wired (Ethernet) or wireless (Wi-Fi)), a private network (e.g., a local area network (LAN) or wide area network (WAN)), a combination thereof, or any other suitable network.

Any time information is transmitted or communicated, the information may be in EDI file format or any other suitable file format. In any of the processes or steps of the method, file format conversions may take place. By utilizing Internet of Things (IoT) devices or gateways, data streams, ETL bucketing, EDI mastering, or any other suitable technique, data can be mapped, converted, translated, or transformed into a carrier-preferred state. As a result of the volume of data being transmitted, the data security requirements, and the data consistency requirements, an enterprise grade architecture may be utilized for reliable data transfer.

FIG. 1 is not intended to be limiting: the system 100, the information-generating device 102, and the remote computing device 122 may include more or fewer components than those illustrated in FIG. 1.

FIGS. 3A and 3B illustrate a computer-implemented method 300 for transmitting data and ordering asynchronous data. The method 300 may be performed by the system 100 using the information-generating device 102 and the remote computing device 122. The method 300 may be implemented on a pair of processors, such as the device-side processor 112 and the remote processor 124, which are together configured to perform the steps of the method 300. The method 300 may include operations implemented in instructions stored on one or more memory devices, such as the device-side memory 114 and the remote memory 126, and be executed by one or more processors, such as the device-side processor 112 and the remote processor 124. The steps of the method 300 may be stored in one or more non-transient computer-readable storage media.

At step 302, the method 300 includes, at the information-generating device 102, receiving data. For example, the device-side processor 112 can receive data from the electromechanical device 104, the sensor 106, the camera, 108, the imaging device 110, the device-side input 116, or any other suitable device. As a more specific example, the device-side processor 112 may receive an Mill image from an Mill imaging device (i.e., the imaging device 110). The data may be received as a stream of data. The stream of data may be a continuous stream of data. The device-side processor 112 may initially receive the data as a digital signal, an analog signal, or any other suitable signal. The device-side processor 112 may convert data from an analog signal to a digital signal.

At step 304, the method 300 includes, at the information-generating device, generating a map packet. The map packet contains data mapping information that indicates a means, a method, an approach or another mechanism for receiving the continuity packets. In some embodiments, the map packet includes end-of-file information that function as information against which data from later-received continuity packets can be compared for determining whether data transmission for a given file has ended. For example, the map packet may contain data mapping information indicating that the continuity packets will have a header following the format of “AA######AA”, and an end-of-file continuity packet will have an end-of-file header following the format of “AA######ZZ”. In this example, “######” indicates a numerical value starting at “000000” and going to a possible maximum of “999999” and “ZZ” functions as an end tag to indicate that the tagged continuity packet is the final continuity packet of the given file.

At step 306, the method 300 includes, at the information-generating device, transmitting the map packet. For example, the device-side processor 112 may direct the device-side network adapter 120 to transmit the map packet to the remote network adapter 132 of the remote computing device 122.

At step 308, the method 300 includes, at the information-generating device, generating the continuity packets. Each of the continuity packets is a data packet that includes a contiguous portion of the data. The continuity packets may be generated using the data. For example, the device-side processor 112 may take a contiguous portion of the data and place that contiguous portion into one of the continuity packets. One or more of the continuity packets may include header information that the processor can use to order the continuity packets. For example, a first continuity packet may include a first header including first header information of “AA000000AA”, and a second continuity packet may include a second header including second header information of “AA000001AA”. A contiguous portion of the data mapping information of the map packet may correspond to a contiguous portion of the header information. For example, the header information may include a contiguous portion of data, including the string “AA”. The string “AA” corresponds with a portion of the mapping information of the map packet, thereby indicating that header information of relevant continuity packets will contain the string “AA”. The header information may also include information pertaining to the portion of data contained in the continuity packet. The information-generating device generates the continuity packets in an initial order; however, a remote computing device 122 may not receive the continuity packets in the initial order (e.g., a first continuity packet may be generated first and a second continuity packet may be generated second, but the second packet may be received before the first packet is received). Thus, the header information may include information that the remote computing device 122 can use to order (e.g., reassemble) the continuity packets, such as the initial order that the continuity packets were generated. The header information of an end-of-file continuity packet can include an end tag corresponding to a contiguous portion of the end-of-file information. For example, an end-of-file continuity packet may include end-of-file header information of “AA000002ZZ”, where “ZZ” functions as the end tag. The generation of the continuity packets may occur all at once or be spread out over time as more data is received, so the end-of file header information is used to indicate an end of the data stream.

At step 310, the method 300 includes, at the information-generating device, transmitting the continuity packets. For example, the device-side processor 112 may direct the device-side network adapter 120 to transmit the continuity packets to the remote network adapter 132 of the remote computing device 122. This transmission may occur after all continuity packets have been generated, as the continuity packets are being generated, or any combination thereof. In cases where the generation of the continuity packets is spread out over time as more data is received, the generation and the transmission of the continuity packets allow for a reduced memory requirement and reduced peak network loads relative to first waiting for all of the data to be received. For instance, if, before generating the continuity packets, the information-generating device waits until all of the data is received (e.g., from the sensors), the device-side memory 114 may have to store the entirety of the data (i.e., which may require a substantial amount of memory to store an extremely large file), rather than temporarily storing a portion of the data while the device-side processor 112 generates and transmits each continuity packet. Similarly, if, before transmitting the continuity packets, the information-generating device waits until all of the data has been received and all of the continuity packets have been generated, the network loads required for the transmission may be higher because a larger amount of data is being transmitted at once (e.g., all of the continuity packets are being transmitted in a short time period).

At step 312, the method 300 includes, at the remote computing device (e.g., the remote computing device 122), receiving the map packet. The map packet may be received from the information-generating device 102. For example, the remote computing device 122 may receive the map packet by way of the remote network adapter 132.

At step 314, the method 300 includes, at the remote computing device, receiving continuity packets in an initial order. The continuity packets may be received from the information-generating device 102. For example, continuity packets may be received by the remote computing device 122 by way of the remote network adapter 132 in an initial order wherein the second continuity packet is received first, the first continuity packet is received second, and the end-of-file continuity packet is received third.

At step 316, the method 300 includes, at the remote computing device, generating an output file. Responsive to receiving at least two of the continuity packets and the map packet, the map packet may be used to generate an output file. The output file may be generated by ordering the continuity packets from the initial order into an output order. For example, given the initial order described above in step 314, the remote processor 124 may order the continuity packets, or contiguous portions of the continuity packets corresponding to contiguous portions of the data, into an output order. The output order may be as follows: 1) the first continuity packet, 2) the second continuity packet, and 3) the end-of-file continuity packet. In some embodiments, as the remote processor receives the continuity packets, the remote processor may contemporaneously generate the output file. For example, the remote computing device 124 may receive the second continuity packet first and the first continuity packet second, but not yet have received the end-of-file continuity packet, in which case the remote processor 124 may order the continuity packets into an output order having the first continuity packet first and the second continuity packet second. In some embodiments, while the output file is being generated, the continuity packets are configured to be readable by external processes. Examples of such external processes include maintenance processes configured to check for device maintenance status or error messages. Such external processes may be able to read and/or respond to maintenance requests or errors prior to ordering, such that an error message contained in the continuity packets can be read prior to completing the generation of the output file. For example, if a patient is undergoing a CT scan performed by a CT scanner, a processor may monitor and read the data in real-time or near real-time to detect an error message. In this example, if the CT scanner generates a continuity packet containing an error message indicating a fault with the CT scanner (e.g., the data obtained by the CT scanner will be unusable), then, at the direction of such an external monitoring process, the remote processor 124 may read the error message prior to ordering and generating the output file and stop the CT scanner during the CT scan. Stopping the CT scan prior to its completion would limit the patient's unnecessary exposure to X-rays, as any exposure after the error may not result in usable data.

At step 318, the method 300 may include, at the remote computing device, using the end tag to generate an end-of-file indicator. For example, a flag may be used or a variable may be set as an end-of-file indicator when the end-of-file continuity packet containing the end tag “ZZ” is received (i.e., the remote processor may change a variable “end-of-file-reached” from “false” to “true”).

At step 320, the method 300 may include using the header information, the map packet, and the end-of-file indicator to determine whether any continuity packets remain to be received. For example, if the first continuity packet containing the first header information of “AA000000AA” and the end-of-file continuity packet containing the end-of-file header information “AA000002ZZ” (and thus the end tag “ZZ”) have been received, the remote processor 124 may determine that the second continuity packet has not been received. If any continuity packets remain to be received, the method 300 proceeds to step 322. If all continuity packets have been received, the method 300 proceeds to step 330.

At step 322, if any continuity packets remain to be received, the method 300 may include determining a non-zero wait time period. For example, if the second continuity packet has not been received, the remote processor 124 may determine a wait time period. The wait time period may be between two seconds and ten seconds, or any other suitable period of time.

At step 324, the method 300 may include, at the remote computing device, determining if any continuity packets were received within the wait time period. For example, if the second continuity packet, which had not been previously received, is received within the wait time period, the remote computing device may determine that a continuity packet was received within the wait time period, subsequent to which the method 300 proceeds to step 326. However, if the second continuity packet is not received within the wait time period, the remote processor 124 may determine that the continuity packet was not received within the wait time period, subsequent to which the method 300 proceeds to step 328.

At step 326, responsive to receiving another continuity packet within the non-zero wait time period, the method 300 may include the remote computing device continuing to generate the output file. For example, if the determination is that the second continuity packet that had not been previously received is received within the wait time period, then the remote processor 124 may continue generating the output file. The method 300 may return to step 320.

At step 328, responsive to determining the non-zero wait time period and not receiving another continuity packet within the non-zero wait time period, the method 300 may include the remote computing device transmitting an error signal. For example, if the determination is that the second continuity packet that had not been previously received was not received within the wait time period, the remote processor 124 may direct the remote network adapter 132 to transmit an error message and/or the remote output 130 to present the error message (e.g., “Error: Incomplete Data”).

At step 330, responsive to determining that every continuity packet has been received, the method 300 includes transmitting the output file. For example, if the first continuity packet, the second continuity packet, and the end-of-file continuity packet have been received and ordered (e.g., into an output file), the remote processor 124 may direct the remote network adapter 132 to transmit the output file via the network 134.

FIG. 4 illustrates a computer-implemented method 400 for transmitting data. Using the information-generating device 102, the method 400 may be performed by the system 100. The method 400 may be implemented on a processor, such as the device-side processor 112 configured to perform the steps of the method 400. The method 400 may include operations implemented in instructions stored on a memory device, such as the device-side memory 114 executed by a processor, such as the device-side processor 112. The steps of the method 300 may be stored on a non-transient computer-readable storage medium.

At step 402, the method 400 includes, at the information-generating device (e.g., the information-generating device 102), receiving data. For example, the device-side processor 112 can receive data from the electromechanical device 104, the sensor 106, the camera 108, the imaging device 110, the device-side input 116, or any other suitable device. As a more specific example, the device-side processor 112 may receive an MM image from an Mill imaging device (i.e., the imaging device 110). The data may be received as a stream of data. The stream of data may be a continuous stream of data. The device-side processor 112 may initially receive the data as a digital signal, an analog signal, or any other suitable signal. The device-side processor 112 may convert data from an analog signal to a digital signal.

At step 404, the method 400 includes, at the information-generating device, generating a map packet. The map packet contains data mapping information that indicates a means, a method, an approach, or another mechanism for receiving the continuity packets. In some embodiments, the map packet includes end-of-file information that function as information against which data from later-received continuity packets can be compared for determining whether data transmission for a given file has ended. For example, the map packet may contain data mapping information indicating that the continuity packets will have a header following the format of “AA######AA”, and an end-of-file continuity packet will have an end-of-file header following the format of “AA######ZZ”. In this example, “######” indicates a numerical value starting at “000000” and going to a possible maximum of “999999” and “ZZ” functions as an end tag to indicate that the tagged continuity packet is the final continuity packet of the given file.

At step 406, the method 400 includes, at the information-generating device, transmitting the map packet. For example, the device-side processor 112 may direct the device-side network adapter 120 to transmit the map packet to the remote network adapter 132 of the remote computing device 122.

At step 408, the method 400 includes, at the information-generating device, generating the continuity packets. Each of the continuity packets is a data packet that includes a contiguous portion of the data. The continuity packets may be generated using the data. For example, the device-side processor 112 may take a contiguous portion of the data and place that contiguous portion into one of the continuity packets. One or more of the continuity packets may include header information that the processor can use to order the continuity packets. For example, a first continuity packet may include a first header including first header information of “AA000000AA”, and a second continuity packet may include a second header including second header information of “AA000001AA”. A contiguous portion of the data mapping information of the map packet may correspond to a contiguous portion of the header information. For example, the header information may include a contiguous portion of data including the string “AA”. The string “AA” corresponds to a portion of the mapping information of the map packet, indicating that header information of relevant continuity packets will contain the string “AA”. The header information may also include information pertaining to the portion of data contained in the continuity packet. The information-generating device generates the continuity packets in an initial order; however, a remote computing device 122 may not receive the continuity packets in the initial order (e.g., a first continuity packet may be generated first and a second continuity packet may be generated second, but the second packet may be received before the first packet has been received). Thus, the header information may include information that the remote computing device 122 can use to order (e.g., reassemble) the continuity packets, such as the initial order that the continuity packets were generated. The header information of an end-of-file continuity packet can include an end tag corresponding to a contiguous portion of the end-of-file information. For example, an end-of-file continuity packet may include end-of-file header information of “AA000002ZZ”, where “ZZ” functions as the end tag. The generation of the continuity packets may occur all at once or be spread out over time as more data is received, so the end-of file header information may be used to indicate an end of the data stream.

At step 410, the method 400 includes, at the information-generating device, transmitting the continuity packets. For example, the device-side processor 112 may direct the device-side network adapter 120 to transmit the continuity packets to the remote network adapter 132 of the remote computing device 122. This transmission may occur after all continuity packets have been generated, as the continuity packets are being generated, or any combination thereof. In cases where the generation of the continuity packets is spread out over time as more data is received, the generation and the transmission of the continuity packets allow for a reduced memory requirement and reduced peak network loads relative to waiting for all of the data to be received. For instance, if, before generating the continuity packets, the information-generating device waits until all of the data is received (e.g., from the sensors), the device-side memory 114 may have to store the entirety of the data (i.e., which may require a substantial amount of memory to store an exceedingly large file), rather than temporarily storing a portion of the data while the device-side processor 112 generates and transmits each continuity packet. Similarly, if, before transmitting the continuity packets, the information-generating device waits until all of the data has been received and all of the continuity packets have been generated, the network loads required for the transmission may be higher because a larger amount of data is being transmitted at once (e.g., all of the continuity packets are being transmitted in a short time period). The method 400 may proceed to step 412 or step 416.

At step 412, the method 400 may include causing the remote computing device (e.g., the remote computing device 122) to receive the map packet. The map packet may be received from the information-generating device 102. For example, the remote computing device 122 may receive the map packet by way of the remote network adapter 132.

At step 414, the method 400 may include causing the remote computing device to receive continuity packets in an initial order. The continuity packets may be received from the information-generating device 102. For example, continuity packets may be received by the remote computing device 122 by way of the remote network adapter 132 in an initial order where the second continuity packet is received first, the first continuity packet is received second, and the end-of-file continuity packet is received third.

At step 416, the method 400 includes, at the remote computing device, generating an output file. Responsive to receiving at least two of the continuity packets and the map packet, the map packet may be used to generate an output file. The output file may be generated by ordering the continuity packets from the initial order into an output order. For example, given the initial order described above in step 414, the remote processor 124 may order the continuity packets, or contiguous portions of the continuity packets corresponding to contiguous portions of the data, into an output order. The output order may be as follows: 1) the first continuity packet, 2) the second continuity packet, and 3) the end-of-file continuity packet. In some embodiments, as the remote processor receives the continuity packets, the remote processor may contemporaneously generate the output file. For example, the remote computing device 124 may receive the second continuity packet first and the first continuity packet second, but not yet have received the end-of-file continuity packet, after which the remote processor 124 may order the continuity packets into an output order having the first continuity packet first and the second continuity packet second. In some embodiments, while the output file is being generated, the continuity packets are configured to be readable by external processes. Examples of such external processes include maintenance processes configured to check for device maintenance status or error messages. Such external process may be able to read and/or respond to maintenance requests or errors prior to ordering, such that an error message contained in the continuity packets can be read prior to completing the generation of the output file. For example, if a patient is undergoing a CT scan performed by a CT scanner, a processor may monitor and read the data in real-time or near real-time to detect an error message. In this example, if the CT scanner generates a continuity packet containing an error message indicating a fault with the CT scanner (e.g., the data obtained by the CT scanner will be unusable), then, at the direction of such an external monitoring process, the remote processor 124 may read the error message prior to ordering and generating the output file and stop the CT scanner during the CT scan. Stopping the CT scan prior to its completion would limit the patient's unnecessary exposure to X-rays, as any exposure after the error may not result in usable data.

FIGS. 5A and 5B illustrate a computer-implemented method 500 for ordering asynchronous data. The method 500 may be performed by the system 100 using the remote computing device 122. The method 500 may be implemented on a processor, such as the remote processor 124, configured to perform the steps of the method 500. The method 500 may include operations implemented in instructions stored on a memory devices, such as the remote memory 126, and executed on a processor, such as the remote processor 124. The steps of the method 500 may be stored in one or more non-transient computer-readable storage media.

At step 502, the method 500 includes, at the remote computing device (e.g., the remote computing device 122), receiving the map packet. The map packet may be received from the information-generating device 102. For example, the remote computing device 122 may receive the map packet by way of the remote network adapter 132. The map packet contains data mapping information that functions as an indicator of how continuity packets will be received. In some embodiments, the map packet includes end-of-file information that function as information against which data from later-received continuity packets can be compared for determining whether data transmission for a given file has ended. For example, the map packet may contain data mapping information indicating that the continuity packets will have a header following the format of “AA######AA”, and an end-of-file continuity packet will have an end-of-file header following the format of “AA######ZZ”. In this case, “######” indicates a numerical value starting at “000000” and going to a possible maximum of “999999” and “ZZ” functions as an end tag to indicate that the tagged continuity packet is the final continuity packet of the given file.

At step 504, the method 500 includes, at the remote computing device, receiving continuity packets in an initial order. The continuity packets may be received from the information-generating device 102. For example, continuity packets may be received by the remote computing device 122 by way of the remote network adapter 132 in an initial order where the second continuity packet is received first, the first continuity packet is received second, and the end-of-file continuity packet is received third. Each of the continuity packets is a data packet that includes a contiguous portion of the data. The continuity packets may be generated using the data. For example, the device-side processor 112 may take a contiguous portion of the data and place that contiguous portion into one of the continuity packets. One or more of the continuity packets may include header information that the processor can use to order the continuity packets. For example, a first continuity packet may include a first header including first header information of “AA000000AA”, and a second continuity packet may include a second header including second header information of “AA000001AA”. A contiguous portion of the data mapping information of the map packet may correspond to a contiguous portion of the header information. For example, the header information may include a contiguous portion of data including the string “AA”. The string “AA” corresponds to a portion of the mapping information of the map packet, indicating that header information of relevant continuity packets will contain the string “AA.” The header information may also include information pertaining to the portion of data contained in the continuity packet. The information-generating device generates the continuity packets in an initial order; however, a remote computing device 122 may not receive the continuity packets in the initial order (e.g., a first continuity packet may be generated first and a second continuity packet may be generated second, but the second packet may be received before the first packet is received). Thus, the header information may include information that the remote computing device 122 can use to order (e.g., reassemble) the continuity packets, such as in the initial order that the continuity packets were generated. The header information of an end-of-file continuity packet can include an end tag corresponding to a contiguous portion of the end-of-file information. For example, an end-of-file continuity packet may include end-of-file header information of “AA000002ZZ”, where “ZZ” functions as the end tag.

At step 506, the method 500 includes, at the remote computing device, generating an output file. Responsive to receiving at least two of the continuity packets and the map packet, the map packet may be used to generate an output file. The output file may be generated by ordering the continuity packets from the initial order into an output order. For example, given the initial order described above in step 504, the remote processor 124 may order the continuity packets, or contiguous portions of the continuity packets corresponding to contiguous portions of the data, into an output order. The output order may be as follows: 1) the first continuity packet, 2) the second continuity packet, and 3) the end-of-file continuity packet. In some embodiments, as the remote processor receives the continuity packets, the remote processor may contemporaneously generate the output file. For example, the remote computing device 124 may receive the second continuity packet first and the first continuity packet second, but not yet have received the end-of-file continuity packet; and after that, the remote processor 124 may order the continuity packets into an output order having the first continuity packet first and the second continuity packet second. In some embodiments, while the output file is being generated, the continuity packets are configured to be readable by external processes. Examples of such external processes include maintenance processes configured to check for device maintenance status or error messages. Such external process may be able to read and/or respond to maintenance requests or errors prior to ordering, such that an error message contained in the continuity packets can be read prior to completing the generation of the output file. For example, if a patient is undergoing a CT scan performed by a CT scanner, a processor may monitor and read the data in real-time or near real-time to detect an error message. In this example, if the CT scanner generates a continuity packet containing an error message indicating a fault with the CT scanner (e.g., the data obtained by the CT scanner will be unusable), then, at the direction of such an external monitoring process, the remote processor 124 may read the error message prior to ordering and generating the output file and stop the CT scanner during the CT scan. Stopping the CT scan prior to its completion would limit the patient's unnecessary exposure to X-rays, as any exposure after the error may not result in usable data.

At step 508, the method 500 may include, at the remote computing device, using the end tag to generate an end-of-file indicator. For example, a flag may be used or a variable may be set as an end-of-file indicator when the end-of-file continuity packet containing the end tag “ZZ” is received (i.e., the remote processor may change a variable “end-of-file-reached” from “false” to “true”).

At step 510, the method 500 may include using the header information, the map packet, and the end-of-file indicator to determine whether any continuity packets remain to be received. For example, if the first continuity packet containing the first header information of “AA000000AA” and the end-of-file continuity packet containing the end-of-file header information “AA000002ZZ” (and thus the end tag “ZZ”) have been received, the remote processor 124 may determine that the second continuity packet has not been received. If any continuity packets remain to be received, the method 500 proceeds to step 512. If all continuity packets have been received, the method 300 proceeds to step 520.

At step 512, if any continuity packets remain to be received, the method 500 may include determining a non-zero wait time period. For example, if the second continuity packet has not been received, the remote processor 124 may determine a wait time period. The wait time period may be between two seconds and ten seconds, or any other suitable period of time.

At step 514, the method 500 may include, at the remote computing device, determining if any continuity packets were received within the wait time period. For example, if the second continuity packet, which had not been previously received, is received within the wait time period, the remote computing device may determine that a continuity packet was received within the wait time period, subsequent to which the method 500 proceeds to step 516. However, if the second continuity packet is not received within the wait time period, the remote processor 124 may determine that the continuity packet was not received within the wait time period, subsequent to which the method 500 proceeds to step 518.

At step 516, responsive to receiving another continuity packet within the non-zero wait time period, the method 500 may include the remote computing device continuing to generate the output file. For example, if the determination is that the second continuity packet that had not been previously received is received within the wait time period, then the remote processor 124 may continue generating the output file. The method 500 may then return to step 520.

At step 518, responsive to determining the non-zero wait time period and not receiving another continuity packet within the non-zero wait time period, the method 500 may include the remote computing device transmitting an error signal. For example, if the determination is that the second continuity packet that had not been previously received was not received within the wait time period, the remote processor 124 may direct the remote network adapter 132 to transmit an error message and/or the remote output 130 to present the error message (e.g., “Error: Incomplete Data”).

At step 520, responsive to determining that every continuity packet has been received, the method 500 includes transmitting the output file. For example, if the first continuity packet, the second continuity packet, and the end-of-file continuity packet have been received and ordered (e.g., into an output file), the remote processor 124 may direct the remote network adapter 132 to transmit the output file via the network 134.

FIGS. 3A, 3B, 4, 5A, and 5B are not intended to be limiting: the methods 300, 400, and 500 can include more or fewer steps and/or processes than those illustrated in FIGS. 3A, 3B, 4, 5A and 5B. Further, the order of the steps of the methods 300, 400, and 500 is not intended to be limiting; the steps can be arranged in any suitable order.

The term “computer-readable storage medium” should be taken to include a single medium or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) that store the one or more sets of instructions. The term “computer-readable storage medium” shall also be taken to include any medium capable of storing, encoding or carrying a set of instructions for execution by the machine and causing the machine to perform any one or more of the methodologies of the present disclosure. The term “computer-readable storage medium” shall accordingly be taken to include, but not be limited to, solid-state memories, optical media, and magnetic media.

Any of the systems and methods described in this disclosure may be used in connection with rehabilitation. Unless expressly stated otherwise, is to be understood that rehabilitation includes prehabilitation (also referred to as “pre-habilitation” or “prehab”). Prehabilitation may be used as a preventative procedure or as a pre-surgical or pre-treatment procedure. Prehabilitation may include any action performed by or on a patient (or directed to be performed by or on a patient, including, without limitation, remotely or distally through telemedicine) to, without limitation, prevent or reduce a likelihood of injury (e.g., prior to the occurrence of the injury); improve recovery time subsequent to surgery; improve strength subsequent to surgery; or any of the foregoing with respect to any non-surgical clinical treatment plan to be undertaken for the purpose of ameliorating or mitigating injury, dysfunction, or other negative consequence of surgical or non-surgical treatment on any external or internal part of a patient's body. For example, a mastectomy may require prehabilitation to strengthen muscles or muscle groups affected directly or indirectly by the mastectomy. As a further non-limiting example, the removal of an intestinal tumor, the repair of a hernia, open-heart surgery or other procedures performed on internal organs or structures, whether to repair those organs or structures, to excise them or parts of them, to treat them, etc., can require cutting through and harming numerous muscles and muscle groups in or about, without limitation, the abdomen, the ribs and/or the thoracic cavity. Prehabilitation can improve a patient's speed of recovery, measure of quality of life, level of pain, etc. in all the foregoing procedures. In one embodiment of prehabilitation, a pre-surgical procedure or a pre-non-surgical-treatment may include one or more sets of exercises for a patient to perform prior to such procedure or treatment. The patient may prepare an area of his or her body for the surgical procedure by performing the one or more sets of exercises, thereby strengthening muscle groups, improving existing and/or establishing new muscle memory, enhancing mobility, improving blood flow, and/or the like.

In some embodiments, the systems and methods described herein may use artificial intelligence and/or machine learning to generate a prehabilitation treatment plan for a user. Additionally, or alternatively, the systems and methods described herein may use artificial intelligence and/or machine learning to recommend an optimal exercise machine configuration for a user. For example, a data model may be trained on historical data such that the data model may be provided with input data relating to the user and may generate output data indicative of a recommended exercise machine configuration for a specific user. Additionally, or alternatively, the systems and methods described herein may use machine learning and/or artificial intelligence to generate other types of recommendations relating to prehabilitation, such as recommended reading material to educate the patient, a recommended health professional specialist to contact, and/or the like.

Consistent with the above disclosure, the examples of systems and method enumerated in the following clauses are specifically contemplated and are intended as a non-limiting set of examples.

Clause 1. A system for transmitting data comprising:

    • an information-generating device;
    • a processor in communication with the information-generating device, wherein the processor is configured to:
      • receive data;
      • generate a map packet;
      • transmit the map packet;
      • using the data, generate continuity packets, wherein each of the continuity packets comprises a contiguous portion of the data;
      • transmit the continuity packets; and
      • using the map packet and the continuity packets, cause an output file to be generated.

Clause 2. The system of any clause herein, wherein the processor is further configured to:

    • cause a remote processor to receive the map packet;
    • cause the remote processor to receive the continuity packets; and
    • wherein, responsive to the remote processor receiving the map packet and at least two of the continuity packets, the remote processor generates the output file.

Clause 3. The system of any clause herein, wherein, as the continuity packets are received, the remote processor generates the output file in real-time or near real time.

Clause 4. The system of any clause herein, wherein the remote processor receives the continuity packets in an initial order; and

    • wherein, using the map packet, the processor is configured to cause the remote processor to generate the output file by ordering the continuity packets from the initial order into an output order.

Clause 5. The system of any clause herein, wherein one or more of the continuity packets comprise header information; and

    • wherein a contiguous portion of the map packet corresponds to a contiguous portion of the header information.

Clause 6. The system of any clause herein, wherein each of the continuity packets comprises header information.

Clause 7. The system of any clause herein, wherein the map packet comprises end-of-file information;

    • wherein one or more of the continuity packets comprise header information; and
    • wherein header information of an end-of-file continuity packet comprises an end tag corresponding to a contiguous portion of the end-of-file information.

Clause 8. The system of any clause herein, wherein the information-generating device comprises a medical device.

Clause 9. The system of any clause herein, wherein the medical device is an orthopedic rehabilitation device.

Clause 10. The system of any clause herein, further comprising a memory device operatively coupled to the processor, wherein the memory device stores instructions, and wherein the processor is configured to execute the instructions.

Clause 11. A method for operating an information-generating device, comprising:

    • receiving data;
    • generating a map packet;
    • transmitting the map packet;
    • using the data to generate continuity packets, wherein each of the continuity packets comprises a contiguous portion of the data;
    • transmitting the continuity packets; and
    • using the map packet and the continuity packets to cause an output file to be generated.

Clause 12. The method of any clause herein, further comprising:

    • causing a remote processor to receive the map packet;
    • causing the remote processor to receive the continuity packets; and
    • wherein, responsive to the remote processor receiving the map packet and at least two of the continuity packets, the remote processor generates the output file.

Clause 13. The method of any clause herein, wherein, as the continuity packets are received, the remote processor generates the output file in real-time or near real time.

Clause 14. The method of any clause herein, wherein the remote processor receives the continuity packets in an initial order; and

    • wherein, using the map packet, the method further comprises causing the remote processor to generate the output file by ordering the continuity packets from the initial order into an output order.

Clause 15. The method of any clause herein, wherein one or more of the continuity packets comprise header information; and

    • wherein a contiguous portion of the map packet corresponds to a contiguous portion of the header information.

Clause 16. The method of any clause herein, wherein each of the continuity packets comprises header information.

Clause 17. The method of any clause herein, wherein the map packet comprises end-of-file information;

    • wherein one or more of the continuity packets comprise header information; and
    • wherein header information of an end-of-file continuity packet comprises an end tag corresponding to a contiguous portion of the end-of-file information.

Clause 18. The method of any clause herein, wherein the information-generating device comprises a medical device.

Clause 19. The method of any clause herein, wherein the medical device is an orthopedic rehabilitation device.

Clause 20. A tangible, non-transitory computer-readable storage medium storing instructions that, when executed, cause a processor to:

    • receive data from an information-generating device;
    • generate a map packet;
    • transmit the map packet;
    • using the data, generate continuity packets, wherein each of the continuity packets comprises a contiguous portion of the data;
    • transmit the continuity packets; and
    • using the map packet and the continuity packets, cause an output file to be generated.

Clause 21. The tangible, non-transitory computer-readable storage medium of any clause herein, wherein the instructions further cause the processor to:

    • cause a remote processor to receive the map packet;
    • cause the remote processor to receive the continuity packets; and
    • responsive to the remote processor receiving the map packet and at least two of the continuity packets, cause the remote processor to generate the output file.

Clause 22. The tangible, non-transitory computer-readable storage medium of any clause herein, wherein, as the continuity packets are received, the remote processor generates the output file.

Clause 23. The tangible, non-transitory computer-readable storage medium of any clause herein, wherein the remote processor receives the continuity packets in an initial order; and

    • wherein, using the map packet, the instructions further cause the processor to cause the remote processor to generate the output file by ordering the continuity packets from the initial order into an output order.

Clause 24. The tangible, non-transitory computer-readable storage medium of any clause herein, wherein one or more of the continuity packets comprise header information; and

    • wherein a contiguous portion of the map packet corresponds to a contiguous portion of the header information.

Clause 25. The tangible, non-transitory computer-readable storage medium of any clause herein, wherein each of the continuity packets comprises header information.

Clause 26. The tangible, non-transitory computer-readable storage medium of any clause herein wherein the map packet comprises end-of-file information;

    • wherein one or more of the continuity packets comprise header information; and
    • wherein header information of an end-of-file continuity packet comprises an end tag corresponding to a contiguous portion of the end-of-file information.

Clause 27. The tangible, non-transitory computer-readable storage medium of any clause herein, wherein the information-generating device comprises a medical device.

Clause 28. The tangible, non-transitory computer-readable storage medium of any preceding clause, wherein the medical device is an orthopedic rehabilitation device.

Clause 29. A system for ordering of asynchronously transmitted data, comprising:

    • a processor configured to:
      • receive, from an information-generating device, a map packet;
      • receive, from the information-generating device, continuity packets in an initial order; and
      • responsive to receiving the map packet and at least two of the continuity packets, use the map packet to generate an output file by ordering the continuity packets from the initial order into an output order.

Clause 30. The system of any clause herein, wherein, as the continuity packets are received, the processor is configured to generate the output file in real-time or near real time.

Clause 31. The system of any clause herein, wherein, while the output file is being generated, the continuity packets are configured to be readable by external processes.

Clause 32. The system of any clause herein, wherein one or more of the continuity packets comprise header information; and

    • wherein a contiguous portion of the map packet corresponds to a contiguous portion of the header information.

Clause 33. The system of any clause herein, wherein each of the continuity packets comprises header information.

Clause 34. The system of any clause herein, wherein the map packet comprises end-of-file information;

    • wherein one or more of the continuity packets comprise header information; and
    • wherein header information of an end-of-file continuity packet comprises an end tag corresponding to a contiguous portion of the end-of-file information.

Clause 35. The system of any clause herein, wherein, using the end tag, the processor is further configured to generate an end-of-file indication.

Clause 36. The system of any clause herein, wherein the processor is further configured to:

    • use the header information, the map packet, and the end-of-file indication, to determine whether any continuity packet remains to be received;
    • responsive to any continuity packets remaining to be received, determine a non-zero wait time period;
    • responsive to receiving another continuity packet within the non-zero wait time period, continue to generate the output file; and
    • responsive to receiving no further continuity packets within the non-zero wait time period, transmit an error signal.

Clause 37. The system of any clause herein, wherein the processor is further configured to:

    • use the header information, the map packet, and the end-of-file indication to determine whether every continuity packet has been received; and
    • if every continuity packet has been received, transmit the output file.

Clause 38. The system of any clause herein, wherein the information-generating device comprises a medical device.

Clause 39. The system of any clause herein, wherein the medical device is an orthopedic rehabilitation device.

Clause 40. The system of any clause herein, further comprising a memory device operatively coupled to the processor, wherein the memory device stores instructions, and wherein the processor is configured to execute the instructions.

Clause 41. A method for operating a computing device, comprising:

    • receiving, from an information-generating device, a map packet;
    • receiving, from the information-generating device, continuity packets in an initial order; and
    • responsive to receiving the map packet and at least two of the continuity packets, using the map packet to generate an output file by ordering the continuity packets from the initial order into an output order.

Clause 42. The method of any clause herein, wherein, as the continuity packets are received, the output file is generated in real-time or near real-time.

Clause 43. The method of any clause herein, wherein, while the output file is being generated, the continuity packets are configured to be readable by external processes.

Clause 44. The method of any clause herein, wherein one or more of the continuity packets comprise header information; and

    • wherein a contiguous portion of the map packet corresponds to a contiguous portion of the header information.

Clause 45. The method of any clause herein, wherein each of the continuity packets comprises header information.

Clause 46. The method of any clause herein, wherein the map packet comprises end-of-file information;

    • wherein one or more of the continuity packets comprise header information; and
    • wherein header information of an end-of-file continuity packet comprises an end tag corresponding to a contiguous portion of the end-of-file information.

Clause 47. The method of any clause herein, further comprising using the end tag to generate an end-of-file indication.

Clause 48. The method of any clause herein, further comprising:

    • using the header information, the map packet, and the end-of-file indication to determine whether every continuity packet has been received;
    • responsive to any continuity packets remaining to be received, determining a non-zero wait time period;
    • responsive to receiving another continuity packet within the non-zero wait time period, continuing to generate the output file; and
    • responsive to receiving no further continuity packets within the non-zero wait time period, transmitting an error signal.

Clause 49. The method of any clause herein, further comprising:

    • using the header information, the map packet, and the end-of-file indication to determine whether every continuity packet has been received; and
    • if every continuity packet has been received, transmitting the output file.

Clause 50. The method of any clause herein, wherein the information-generating device comprises a medical device.

Clause 51. The method of any clause herein, wherein the medical device is an orthopedic rehabilitation device.

Clause 52. A tangible, non-transitory computer-readable storage medium storing instructions that, when executed, cause a processor to:

    • receive, from an information-generating device, a map packet;
    • receive, from the information-generating device, continuity packets in an initial order; and
    • responsive to receiving the map packet and at least two of the continuity packets, using the map packet to generate an output file by ordering the continuity packets from the initial order into an output order.

Clause 53. The tangible, non-transitory computer-readable storage medium of any clause herein, wherein, as the continuity packets are received, the processor contemporaneously generates the output file.

Clause 54. The tangible, non-transitory computer-readable storage medium of any clause herein, wherein the continuity packets are configured to be readable by external processes while the output file is being generated.

Clause 55. The tangible, non-transitory computer-readable storage medium of any clause herein, wherein one or more of the continuity packets comprise header information; and

    • wherein a contiguous portion of the map packet corresponds to a contiguous portion of the header information.

Clause 56. The tangible, non-transitory computer-readable storage medium of any clause herein, wherein each of the continuity packets comprises header information.

Clause 57. The tangible, non-transitory computer-readable storage medium of any clause herein, wherein the map packet comprises end-of-file information;

    • wherein one or more of the continuity packets comprise header information; and
    • wherein header information of an end-of-file continuity packet comprises an end tag corresponding to a contiguous portion of the end-of-file information.

Clause 58. The tangible, non-transitory computer-readable storage medium of any preceding clause, wherein the instructions further cause the processor to use the end tag to generate an end-of-file indication.

Clause 59. The tangible, non-transitory computer-readable storage medium of any clause herein, wherein the instructions further cause the processor to:

    • use the header information, the map packet, and the end-of-file indication, to determine whether any continuity packet remains to be received;
    • responsive to any continuity packet remaining to be received, determine a non-zero wait time period;
    • responsive to receiving another continuity packet within the non-zero wait time period, continue generating the output file; and
    • responsive to receiving no further continuity packets within the non-zero wait time period, transmit an error signal.

Clause 60. The tangible, non-transitory computer-readable storage medium of any clause herein, wherein the instructions further cause the processor to:

    • use the header information, the map packet, and the end-of-file indication to determine whether every continuity packet has been received; and
    • responsive to determining that every continuity packet has been received, transmit the output file.

Clause 61. The tangible, non-transitory computer-readable storage medium of any clause herein, wherein the information-generating device comprises a medical device.

Clause 62. The tangible, non-transitory computer-readable storage medium of any preceding clause, wherein the medical device is an orthopedic rehabilitation device.

Clause 63. A system for transmitting data and ordering asynchronous data, comprising:

    • an information-generating device comprising a device-side processor configured to:
      • receive data;
      • generate a map packet;
      • transmit the map packet;
      • use the data to generate continuity packets, wherein each of the continuity packets comprises a contiguous portion of the data;
      • transmit the continuity packets; and
    • a remote computing device comprising a remote processor configured to:
      • receive, from the information-generating device, the map packet;
      • receive, from the information-generating device, the continuity packets in an initial order; and
      • responsive to receiving at least two of the continuity packets and the map packet, use the map packet to generate an output file by ordering the continuity packets from the initial order into an output order.

Clause 64. The system of any clause herein, wherein, as the remote processor receives the continuity packets, the remote processor contemporaneously generates the output file.

Clause 65. The system of any clause herein, wherein, while the output file is being generated, the continuity packets are configured to be readable by external processes.

Clause 66. The system of any clause herein, wherein one or more of the continuity packets comprise header information; and

    • wherein a contiguous portion of the map packet corresponds to a contiguous portion of the header information.

Clause 67. The system of any clause herein, wherein each of the continuity packets comprises header information.

Clause 68. The system of any clause herein, wherein the map packet comprises end-of-file information;

    • wherein one or more of the continuity packets comprise header information; and
    • wherein header information of an end-of-file continuity packet comprises an end tag corresponding to a contiguous portion of the end-of-file information.

Clause 69. The system of any clause herein, wherein the remote processor is further configured to, using the end tag, generate an end-of-file indication.

Clause 70. The system of any clause herein, wherein the remote processor is further configured to:

    • use the header information, the map packet, and the end-of-file indication to determine whether any continuity packets remain to be received;
    • if any continuity packets remain to be received, determine a non-zero wait time period;
    • responsive to determining the non-zero wait time period and receiving another continuity packet within the non-zero wait time period, continue generating the output file; and
    • responsive to determining the non-zero wait time period and not receiving another continuity packet within the non-zero wait time period, transmit an error signal.

Clause 71. The system of any clause herein, wherein the remote processor is further configured to:

    • use the header information, the map packet, and the end-of-file indication to determine whether every continuity packet has been received; and
    • responsive to determining that every continuity packet has been received, transmit the output file.

Clause 72. The system of any clause herein, wherein the information-generating device comprises a medical device.

Clause 73. The system of any clause herein, wherein the medical device is an orthopedic rehabilitation device.

Clause 74. The system of any clause herein, further comprising a device-side memory device operatively coupled to the device-side processor, wherein the device-side memory device stores device-side instructions, and wherein the device-side processor is configured to execute the device-side instructions.

Clause 75. The system of any clause herein, further comprising a remote memory device operatively coupled to the remote processor, wherein the remote memory device stores remote instructions, and wherein the remote processor is configured to execute the remote instructions.

Clause 76. A computer-implemented system, comprising:

    • an electromechanical device configured to be manipulated by a patient while performing an exercise session;
    • a processor in communication with the electromechanical device, wherein the processor is configured to:
    • receive data;
    • generate a map packet;
    • transmit the map packet;
    • using the data, generate continuity packets, wherein each of the continuity packets comprises a contiguous portion of the data;
    • transmit the continuity packets; and
    • using the map packet and the continuity packets, cause an output file to be generated.

Clause 77. The computer-implemented system of any clause herein, wherein the processor is further configured to:

    • cause a remote processor to receive the map packet;
    • cause the remote processor to receive the continuity packets; and
    • wherein, responsive to the remote processor receiving the map packet and at least two of the continuity packets, the remote processor generates the output file.

Clause 78. The computer-implemented system of any clause herein, wherein, as the continuity packets are received, the remote processor generates the output file in real-time or near real time.

No part of the description in this application should be read as implying that any particular element, step, or function is an essential element that must be included in the claim scope. The scope of patented subject matter is defined only by the claims. Moreover, none of the claims is intended to invoke 35 U.S.C. § 112(f) unless the exact words “means for” are followed by a participle.

The foregoing description, for purposes of explanation, use specific nomenclature to provide a thorough understanding of the described embodiments. However, it should be apparent to one skilled in the art that the specific details are not required to practice the described embodiments. Thus, the foregoing descriptions of specific embodiments are presented for purposes of illustration and description. They are not intended to be exhaustive or to limit the described embodiments to the precise forms disclosed. It should be apparent to one of ordinary skill in the art that many modifications and variations are possible in view of the above teachings.

The above discussion is meant to be illustrative of the principles and various embodiments of the present invention. Once the above disclosure is fully appreciated, numerous variations and modifications will become apparent to those skilled in the art. It is intended that the following claims be interpreted to embrace all such variations and modifications.

Claims

1. A method for operating a remote processor, comprising:

receiving a map packet;
receiving at least two continuity packets, wherein each comprises a contiguous portion of data, wherein: another processor generates the map packet and uses data received by an electromechanical device to generate the at least two continuity packets, and the remote processor receives the at least two continuity packets in an initial order; and generating, using the map packet, an output file in real-time or near real-time, wherein: the remote processor generates the output file by ordering the at least two continuity packets from the initial order into an output order, wherein the output order is one of the same order as the initial order or a reordering of the initial order.

2. The method of claim 1, wherein one or more of the at least two continuity packets comprise header information.

3. The method of claim 2, wherein a contiguous portion of the map packet corresponds to a contiguous portion of the header information.

4. The method of claim 1, wherein each of the at least two continuity packets comprises header information.

5. The method of claim 1, wherein the map packet comprises end-of-file information.

6. The method of claim 1, wherein header information of an end-of-file continuity packet comprises an end tag corresponding to a contiguous portion of end-of-file information in the map packet.

7. The method of claim 1, wherein the electromechanical device comprises a rehabilitation device.

8. A system comprising:

a memory device storing instructions; and
a remote processor communicatively coupled to the memory device, wherein the remote processor executes the instructions to: receive a map packet; receive at least two continuity packets, wherein each comprises a contiguous portion of data, wherein: another processor generates the map packet and uses data received by an electromechanical device to generate the at least two continuity packets, and the remote processor receives the at least two continuity packets in an initial order; and generate, using the map packet, an output file in real-time or near real-time, wherein: the remote processor generates the output file by ordering the at least two continuity packets from the initial order into an output order, wherein the output order is one of the same order as the initial order or a reordering of the initial order.

9. The system of claim 8, wherein one or more of the at least two continuity packets comprise header information.

10. The system of claim 9, wherein a contiguous portion of the map packet corresponds to a contiguous portion of the header information.

11. The system of claim 8, wherein each of the at least two continuity packets comprises header information.

12. The system of claim 9, wherein the map packet comprises end-of-file information.

13. The system of claim 8, wherein header information of an end-of-file continuity packet comprises an end tag corresponding to a contiguous portion of end-of-file information in the map packet.

14. The system of claim 8, wherein the electromechanical device comprises a rehabilitation device.

15. A tangible, non-transitory computer-readable medium storing instructions that, when executed, cause a remote processor to:

receive a map packet;
receive at least two continuity packets, wherein each comprises a contiguous portion of data, wherein: another processor generates the map packet and uses data received by an electromechanical device to generate the at least two continuity packets, and the remote processor receives the at least two continuity packets in an initial order; and generate, using the map packet, an output file in real-time or near real-time, wherein: the remote processor generates the output file by ordering the at least two continuity packets from the initial order into an output order, wherein the output order is one of the same order as the initial order or a reordering of the initial order.

16. The computer-readable medium of claim 15, wherein one or more of the at least two continuity packets comprise header information.

17. The computer-readable medium of claim 16, wherein a contiguous portion of the map packet corresponds to a contiguous portion of the header information.

18. The computer-readable medium of claim 15, wherein each of the at least two continuity packets comprises header information.

Referenced Cited
U.S. Patent Documents
823712 June 1906 Uhlmann
4499900 February 19, 1985 Petrofsky et al.
4822032 April 18, 1989 Whitmore et al.
4860763 August 29, 1989 Schminke
4869497 September 26, 1989 Stewart et al.
4932650 June 12, 1990 Bingham et al.
5137501 August 11, 1992 Mertesdorf
5161430 November 10, 1992 Febey
5202794 April 13, 1993 Schnee et al.
5240417 August 31, 1993 Smithson et al.
5247853 September 28, 1993 Dalebout
5256117 October 26, 1993 Potts et al.
D342299 December 14, 1993 Birrell et al.
5282748 February 1, 1994 Little
5284131 February 8, 1994 Gray
5316532 May 31, 1994 Butler
5318487 June 7, 1994 Golen
5324241 June 28, 1994 Artigues et al.
5336147 August 9, 1994 Sweeney, III
5338272 August 16, 1994 Sweeney, III
5356356 October 18, 1994 Hildebrandt
5361649 November 8, 1994 Slocum, Jr.
D359777 June 27, 1995 Hildebrandt
5429140 July 4, 1995 Burdea et al.
5458022 October 17, 1995 Mattfeld et al.
5487713 January 30, 1996 Butler
5566589 October 22, 1996 Buck
5580338 December 3, 1996 Scelta et al.
5676349 October 14, 1997 Wilson
5685804 November 11, 1997 Whan-Tong et al.
5738636 April 14, 1998 Saringer et al.
5860941 January 19, 1999 Saringer et al.
5950813 September 14, 1999 Hoskins et al.
6007459 December 28, 1999 Burgess
D421075 February 22, 2000 Hildebrandt
6053847 April 25, 2000 Stearns et al.
6077201 June 20, 2000 Cheng
6102834 August 15, 2000 Chen
6110130 August 29, 2000 Kramer
6155958 December 5, 2000 Goldberg
6162189 December 19, 2000 Girone et al.
6182029 January 30, 2001 Friedman
D438580 March 6, 2001 Shaw
6253638 July 3, 2001 Bermudez
6267735 July 31, 2001 Blanchard et al.
6273863 August 14, 2001 Avni et al.
D450100 November 6, 2001 Hsu
D450101 November 6, 2001 Hsu
D451972 December 11, 2001 Easley
D452285 December 18, 2001 Easley
D454605 March 19, 2002 Lee
6371891 April 16, 2002 Speas
D459776 July 2, 2002 Lee
6413190 July 2, 2002 Wood et al.
6430436 August 6, 2002 Richter
6436058 August 20, 2002 Krahner et al.
6450923 September 17, 2002 Vatti
6474193 November 5, 2002 Farney
6491649 December 10, 2002 Ombrellaro
6514085 February 4, 2003 Slattery et al.
6535861 March 18, 2003 OConnor et al.
6543309 April 8, 2003 Heim
6589139 July 8, 2003 Butterworth
6601016 July 29, 2003 Brown et al.
6602191 August 5, 2003 Quy
6613000 September 2, 2003 Reinkensmeyer et al.
6626800 September 30, 2003 Casler
6626805 September 30, 2003 Lightbody
6640122 October 28, 2003 Manoli
6640662 November 4, 2003 Baxter
6652425 November 25, 2003 Martin et al.
6820517 November 23, 2004 Farney
6865969 March 15, 2005 Stevens
6890312 May 10, 2005 Priester et al.
6895834 May 24, 2005 Baatz
6902513 June 7, 2005 McClure
7058453 June 6, 2006 Nelson et al.
7063643 June 20, 2006 Arai
7156665 January 2, 2007 OConnor et al.
7156780 January 2, 2007 Fuchs et al.
7169085 January 30, 2007 Killin et al.
7204788 April 17, 2007 Andrews
7209886 April 24, 2007 Kimmel
7226394 June 5, 2007 Johnson
RE39904 October 30, 2007 Lee
7406003 July 29, 2008 Burkhardt et al.
7507188 March 24, 2009 Nurre
7594879 September 29, 2009 Johnson
7628730 December 8, 2009 Watterson et al.
D610635 February 23, 2010 Hildebrandt
7778851 August 17, 2010 Schoenberg et al.
7809601 October 5, 2010 Shaya et al.
7815551 October 19, 2010 Merli
7833135 November 16, 2010 Radow et al.
7837472 November 23, 2010 Elsmore et al.
7955219 June 7, 2011 Birrell et al.
7969315 June 28, 2011 Ross et al.
7988599 August 2, 2011 Ainsworth et al.
8012107 September 6, 2011 Einav et al.
8021270 September 20, 2011 D'Eredita
8038578 October 18, 2011 Olrik et al.
8079937 December 20, 2011 Bedell et al.
8113991 February 14, 2012 Kutliroff
8172724 May 8, 2012 Solomon
8177732 May 15, 2012 Einav et al.
8287434 October 16, 2012 Zavadsky et al.
8298123 October 30, 2012 Hickman
8371990 February 12, 2013 Shea
8419593 April 16, 2013 Ainsworth et al.
8465398 June 18, 2013 Lee et al.
8506458 August 13, 2013 Dugan
8515777 August 20, 2013 Rajasenan
8540515 September 24, 2013 Williams et al.
8540516 September 24, 2013 Williams et al.
8556778 October 15, 2013 Dugan
8607465 December 17, 2013 Edwards
8613689 December 24, 2013 Dyer et al.
8615529 December 24, 2013 Reiner
8672812 March 18, 2014 Dugan
8751264 June 10, 2014 Beraja et al.
8784273 July 22, 2014 Dugan
8818496 August 26, 2014 Dziubinski et al.
8823448 September 2, 2014 Shen
8845493 September 30, 2014 Watterson et al.
8849681 September 30, 2014 Hargrove et al.
8864628 October 21, 2014 Boyette et al.
8893287 November 18, 2014 Gjonej et al.
8911327 December 16, 2014 Boyette
8979711 March 17, 2015 Dugan
9004598 April 14, 2015 Weber
9044630 June 2, 2015 Lampert et al.
9167281 October 20, 2015 Petrov et al.
D744050 November 24, 2015 Colburn
9248071 February 2, 2016 Benda et al.
9272185 March 1, 2016 Dugan
9283434 March 15, 2016 Wu
9295878 March 29, 2016 Corbalis et al.
9311789 April 12, 2016 Gwin
9312907 April 12, 2016 Auchinleck et al.
9367668 June 14, 2016 Flynt et al.
9409054 August 9, 2016 Dugan
9443205 September 13, 2016 Wall
9474935 October 25, 2016 Abbondanza et al.
9480873 November 1, 2016 Chuang
9481428 November 1, 2016 Gros et al.
9514277 December 6, 2016 Hassing et al.
9566472 February 14, 2017 Dugan
9579056 February 28, 2017 Rosenbek et al.
9629558 April 25, 2017 Yuen et al.
9640057 May 2, 2017 Ross
9707147 July 18, 2017 Levital et al.
9713744 July 25, 2017 Suzuki
D794142 August 8, 2017 Zhou
9717947 August 1, 2017 Lin
9737761 August 22, 2017 Govindarajan
9757612 September 12, 2017 Weber
9782621 October 10, 2017 Chiang et al.
9802076 October 31, 2017 Murray et al.
9802081 October 31, 2017 Ridgel et al.
9813239 November 7, 2017 Chee et al.
9827445 November 28, 2017 Marcos et al.
9849337 December 26, 2017 Roman et al.
9868028 January 16, 2018 Shin
9872087 January 16, 2018 DelloStritto et al.
9872637 January 23, 2018 Kording et al.
9914053 March 13, 2018 Dugan
9919198 March 20, 2018 Romeo et al.
9937382 April 10, 2018 Dugan
9939784 April 10, 2018 Berardinelli
9977587 May 22, 2018 Mountain
9993181 June 12, 2018 Ross
9997082 June 12, 2018 Kaleal
10004946 June 26, 2018 Ross
10026052 July 17, 2018 Brown et al.
D826349 August 21, 2018 Oblamski
10055550 August 21, 2018 Goetz
10058473 August 28, 2018 Oshima et al.
10074148 September 11, 2018 Cashman et al.
10089443 October 2, 2018 Miller et al.
10111643 October 30, 2018 Shulhauser et al.
10130311 November 20, 2018 De Sapio et al.
10137328 November 27, 2018 Baudhuin
10143395 December 4, 2018 Chakravarthy et al.
10155134 December 18, 2018 Dugan
10159872 December 25, 2018 Sasaki et al.
10173094 January 8, 2019 Gomberg et al.
10173095 January 8, 2019 Gomberg et al.
10173096 January 8, 2019 Gomberg et al.
10173097 January 8, 2019 Gomberg et al.
10198928 February 5, 2019 Ross et al.
10226663 March 12, 2019 Gomberg et al.
10231664 March 19, 2019 Ganesh
10244990 April 2, 2019 Hu et al.
10258823 April 16, 2019 Cole
10322315 June 18, 2019 Foley et al.
10325070 June 18, 2019 Beale et al.
10327697 June 25, 2019 Stein et al.
10369021 August 6, 2019 Zoss et al.
10380866 August 13, 2019 Ross et al.
10413222 September 17, 2019 Kayyali
10413238 September 17, 2019 Cooper
10424033 September 24, 2019 Romeo
10430552 October 1, 2019 Mihai
D866957 November 19, 2019 Ross et al.
10468131 November 5, 2019 Macoviak et al.
10475323 November 12, 2019 Ross
10475537 November 12, 2019 Purdie et al.
10492977 December 3, 2019 Kapure et al.
10507358 December 17, 2019 Kinnunen et al.
10542914 January 28, 2020 Forth et al.
10546467 January 28, 2020 Luciano, Jr. et al.
10569122 February 25, 2020 Johnson
10572626 February 25, 2020 Balram
10576331 March 3, 2020 Kuo
10581896 March 3, 2020 Nachenberg
10625114 April 21, 2020 Ercanbrack
10646746 May 12, 2020 Gomberg et al.
10660534 May 26, 2020 Lee et al.
10678890 June 9, 2020 Bitran et al.
10685092 June 16, 2020 Paparella et al.
10777200 September 15, 2020 Will et al.
D899605 October 20, 2020 Ross et al.
10792495 October 6, 2020 Izvorski et al.
10814170 October 27, 2020 Wang et al.
10857426 December 8, 2020 Neumann
10867695 December 15, 2020 Neagle
10874905 December 29, 2020 Belson et al.
D907143 January 5, 2021 Ach et al.
10881911 January 5, 2021 Kwon et al.
10918332 February 16, 2021 Belson et al.
10931643 February 23, 2021 Neumann
10987176 April 27, 2021 Poltaretskyi et al.
10991463 April 27, 2021 Kutzko et al.
11000735 May 11, 2021 Orady et al.
11045709 June 29, 2021 Putnam
11065170 July 20, 2021 Yang et al.
11065527 July 20, 2021 Putnam
11069436 July 20, 2021 Mason et al.
11071597 July 27, 2021 Posnack et al.
11075000 July 27, 2021 Mason et al.
D928635 August 24, 2021 Hacking et al.
11087865 August 10, 2021 Mason et al.
11094400 August 17, 2021 Riley et al.
11101028 August 24, 2021 Mason et al.
11107591 August 31, 2021 Mason
11139060 October 5, 2021 Mason et al.
11185735 November 30, 2021 Am et al.
11185738 November 30, 2021 McKirdy et al.
D939096 December 21, 2021 Lee
D939644 December 28, 2021 Ach et al.
D940797 January 11, 2022 Ach et al.
D940891 January 11, 2022 Lee
11229727 January 25, 2022 Tatonetti
11265234 March 1, 2022 Guaneri
11270795 March 8, 2022 Mason et al.
11272879 March 15, 2022 Wiedenhoefer et al.
11278766 March 22, 2022 Lee
11282599 March 22, 2022 Mason et al.
11282604 March 22, 2022 Mason et al.
11282608 March 22, 2022 Mason et al.
11284797 March 29, 2022 Mason et al.
D948639 April 12, 2022 Ach et al.
11295848 April 5, 2022 Mason et al.
11298284 April 12, 2022 Bayerlein
11309085 April 19, 2022 Mason et al.
11317975 May 3, 2022 Mason et al.
11325005 May 10, 2022 Mason et al.
11328807 May 10, 2022 Mason et al.
11337648 May 24, 2022 Mason
11347829 May 31, 2022 Sclar et al.
11348683 May 31, 2022 Guaneri et al.
11376470 July 5, 2022 Weldemariam
11404150 August 2, 2022 Guaneri et al.
11410768 August 9, 2022 Mason et al.
11422841 August 23, 2022 Jeong
11437137 September 6, 2022 Harris
11495355 November 8, 2022 McNutt et al.
11508258 November 22, 2022 Nakashima et al.
11508482 November 22, 2022 Mason et al.
11515021 November 29, 2022 Mason
11515028 November 29, 2022 Mason
11524210 December 13, 2022 Kim et al.
11527326 December 13, 2022 McNair et al.
11532402 December 20, 2022 Farley et al.
11534654 December 27, 2022 Silcock et al.
D976339 January 24, 2023 Li
11541274 January 3, 2023 Hacking
11553969 January 17, 2023 Lang et al.
11621067 April 4, 2023 Nolan
11636944 April 25, 2023 Hanrahan et al.
11654327 May 23, 2023 Phillips et al.
11663673 May 30, 2023 Pyles
11701548 July 18, 2023 Posnack et al.
11957960 April 16, 2024 Bissonnette et al.
12057210 August 6, 2024 Akinola et al.
12205704 January 21, 2025 Hosoi et al.
20010044573 November 22, 2001 Manoli
20020010596 January 24, 2002 Matory
20020072452 June 13, 2002 Torkelson
20020143279 October 3, 2002 Porter et al.
20020160883 October 31, 2002 Dugan
20020183599 December 5, 2002 Castellanos
20030013072 January 16, 2003 Thomas
20030036683 February 20, 2003 Kehr et al.
20030064860 April 3, 2003 Yamashita et al.
20030064863 April 3, 2003 Chen
20030083596 May 1, 2003 Kramer et al.
20030092536 May 15, 2003 Romanelli et al.
20030181832 September 25, 2003 Carnahan et al.
20040072652 April 15, 2004 Alessandri et al.
20040102931 May 27, 2004 Ellis et al.
20040106502 June 3, 2004 Sher
20040147969 July 29, 2004 Mann et al.
20040172093 September 2, 2004 Rummerfield
20040194572 October 7, 2004 Kim
20040197727 October 7, 2004 Sachdeva et al.
20040204959 October 14, 2004 Moreano et al.
20050015118 January 20, 2005 Davis et al.
20050020411 January 27, 2005 Andrews
20050043153 February 24, 2005 Krietzman
20050049122 March 3, 2005 Vallone et al.
20050085346 April 21, 2005 Johnson
20050085353 April 21, 2005 Johnson
20050115561 June 2, 2005 Stahmann
20050143641 June 30, 2005 Tashiro
20050274220 December 15, 2005 Reboullet
20060003871 January 5, 2006 Houghton et al.
20060046905 March 2, 2006 Doody et al.
20060058648 March 16, 2006 Meier
20060064136 March 23, 2006 Wang
20060064329 March 23, 2006 Abolfathi et al.
20060129432 June 15, 2006 Choi et al.
20060199700 September 7, 2006 LaStayo et al.
20060247095 November 2, 2006 Rummerfield
20070042868 February 22, 2007 Fisher et al.
20070118389 May 24, 2007 Shipon
20070137307 June 21, 2007 Gruben et al.
20070173392 July 26, 2007 Stanford
20070184414 August 9, 2007 Perez
20070194939 August 23, 2007 Alvarez et al.
20070219059 September 20, 2007 Schwartz
20070271065 November 22, 2007 Gupta et al.
20070287597 December 13, 2007 Cameron
20080021834 January 24, 2008 Holla et al.
20080077619 March 27, 2008 Gilley et al.
20080082356 April 3, 2008 Friedlander et al.
20080096726 April 24, 2008 Riley et al.
20080153592 June 26, 2008 James-Herbert
20080161166 July 3, 2008 Lo
20080161733 July 3, 2008 Einav et al.
20080183500 July 31, 2008 Banigan
20080281633 November 13, 2008 Burdea et al.
20080300914 December 4, 2008 Karkanias et al.
20090011907 January 8, 2009 Radow et al.
20090058635 March 5, 2009 LaLonde et al.
20090070138 March 12, 2009 Langheier et al.
20090211395 August 27, 2009 Mule
20090270227 October 29, 2009 Ashby et al.
20090287503 November 19, 2009 Angell et al.
20090299766 December 3, 2009 Friedlander et al.
20100048358 February 25, 2010 Tchao et al.
20100076786 March 25, 2010 Dalton et al.
20100121160 May 13, 2010 Stark et al.
20100173747 July 8, 2010 Chen et al.
20100216168 August 26, 2010 Heinzman et al.
20100234184 September 16, 2010 Le Page et al.
20100248899 September 30, 2010 Bedell et al.
20100248905 September 30, 2010 Lu
20100262052 October 14, 2010 Lunau et al.
20100268304 October 21, 2010 Matos
20100298102 November 25, 2010 Bosecker et al.
20100326207 December 30, 2010 Topel
20110010188 January 13, 2011 Yoshikawa et al.
20110047108 February 24, 2011 Chakrabarty et al.
20110119212 May 19, 2011 De Bruin et al.
20110172059 July 14, 2011 Watterson et al.
20110195819 August 11, 2011 Shaw et al.
20110218814 September 8, 2011 Coats
20110275483 November 10, 2011 Dugan
20110281249 November 17, 2011 Gammell et al.
20110306846 December 15, 2011 Osorio
20120041771 February 16, 2012 Cosentino et al.
20120065987 March 15, 2012 Farooq et al.
20120116258 May 10, 2012 Lee
20120130196 May 24, 2012 Jain et al.
20120130197 May 24, 2012 Kugler et al.
20120167709 July 5, 2012 Chen et al.
20120183939 July 19, 2012 Aragones et al.
20120190502 July 26, 2012 Paulus et al.
20120232438 September 13, 2012 Cataldi et al.
20120259648 October 11, 2012 Mallon et al.
20120259649 October 11, 2012 Mallon et al.
20120278759 November 1, 2012 Curl et al.
20120295240 November 22, 2012 Walker et al.
20120296455 November 22, 2012 Ohnemus et al.
20120310667 December 6, 2012 Altman et al.
20130108594 May 2, 2013 Martin-Rendon et al.
20130110545 May 2, 2013 Smallwood
20130123071 May 16, 2013 Rhea
20130123667 May 16, 2013 Komatireddy et al.
20130137550 May 30, 2013 Skinner et al.
20130137552 May 30, 2013 Kemp et al.
20130178334 July 11, 2013 Brammer
20130211281 August 15, 2013 Ross et al.
20130253943 September 26, 2013 Lee et al.
20130274069 October 17, 2013 Watterson et al.
20130296987 November 7, 2013 Rogers et al.
20130318027 November 28, 2013 Almogy et al.
20130332616 December 12, 2013 Landwehr
20130345025 December 26, 2013 van der Merwe
20140006042 January 2, 2014 Keefe et al.
20140011640 January 9, 2014 Dugan
20140031174 January 30, 2014 Huang
20140062900 March 6, 2014 Kaula et al.
20140074179 March 13, 2014 Heldman et al.
20140089836 March 27, 2014 Damani et al.
20140113261 April 24, 2014 Akiba
20140113768 April 24, 2014 Lin et al.
20140155129 June 5, 2014 Dugan
20140163439 June 12, 2014 Uryash et al.
20140172442 June 19, 2014 Broderick
20140172460 June 19, 2014 Kohli
20140172514 June 19, 2014 Schumann et al.
20140188009 July 3, 2014 Lange et al.
20140194250 July 10, 2014 Reich et al.
20140194251 July 10, 2014 Reich et al.
20140207264 July 24, 2014 Quy
20140207486 July 24, 2014 Carty et al.
20140228649 August 14, 2014 Rayner et al.
20140246499 September 4, 2014 Proud et al.
20140256511 September 11, 2014 Smith
20140257837 September 11, 2014 Walker et al.
20140274565 September 18, 2014 Boyette et al.
20140274622 September 18, 2014 Leonhard
20140303540 October 9, 2014 Baym
20140309083 October 16, 2014 Dugan
20140322686 October 30, 2014 Kang
20140347265 November 27, 2014 Aimone et al.
20140371816 December 18, 2014 Matos
20140372133 December 18, 2014 Austrum et al.
20150025816 January 22, 2015 Ross
20150045700 February 12, 2015 Cavanagh et al.
20150051721 February 19, 2015 Cheng
20150065213 March 5, 2015 Dugan
20150073814 March 12, 2015 Linebaugh
20150088544 March 26, 2015 Goldberg
20150094192 April 2, 2015 Skwortsow et al.
20150099458 April 9, 2015 Weisner et al.
20150099952 April 9, 2015 Lain et al.
20150111644 April 23, 2015 Larson
20150112230 April 23, 2015 Iglesias
20150112702 April 23, 2015 Joao et al.
20150130830 May 14, 2015 Nagasaki
20150141200 May 21, 2015 Murray et al.
20150142142 May 21, 2015 Campana Aguilera et al.
20150149217 May 28, 2015 Kaburagi
20150151162 June 4, 2015 Dugan
20150157938 June 11, 2015 Domansky et al.
20150161331 June 11, 2015 Oleynik
20150161876 June 11, 2015 Castillo
20150174446 June 25, 2015 Chiang
20150196805 July 16, 2015 Koduri
20150217056 August 6, 2015 Kadavy et al.
20150251074 September 10, 2015 Ahmed et al.
20150257679 September 17, 2015 Ross
20150265209 September 24, 2015 Zhang
20150290061 October 15, 2015 Stafford et al.
20150339442 November 26, 2015 Oleynik
20150341812 November 26, 2015 Dion et al.
20150351664 December 10, 2015 Ross
20150351665 December 10, 2015 Ross
20150360069 December 17, 2015 Marti et al.
20150379232 December 31, 2015 Mainwaring et al.
20150379430 December 31, 2015 Dirac et al.
20160004820 January 7, 2016 Moore
20160007885 January 14, 2016 Basta et al.
20160015995 January 21, 2016 Leung et al.
20160023081 January 28, 2016 Popa-Simil et al.
20160045170 February 18, 2016 Migita
20160096073 April 7, 2016 Rahman et al.
20160117471 April 28, 2016 Belt et al.
20160132643 May 12, 2016 Radhakrishna et al.
20160140319 May 19, 2016 Stark
20160143593 May 26, 2016 Fu et al.
20160151670 June 2, 2016 Dugan
20160158534 June 9, 2016 Guarraia et al.
20160166833 June 16, 2016 Bum
20160166881 June 16, 2016 Ridgel et al.
20160193306 July 7, 2016 Rabovsky et al.
20160197918 July 7, 2016 Turgeman et al.
20160213924 July 28, 2016 Coleman
20160275259 September 22, 2016 Nolan et al.
20160287166 October 6, 2016 Tran
20160302666 October 20, 2016 Shaya
20160302721 October 20, 2016 Wiedenhoefer et al.
20160317869 November 3, 2016 Dugan
20160322078 November 3, 2016 Bose et al.
20160325140 November 10, 2016 Wu
20160332028 November 17, 2016 Melnik
20160345841 December 1, 2016 Jang et al.
20160354636 December 8, 2016 Jang
20160361025 December 15, 2016 Reicher et al.
20160361597 December 15, 2016 Cole et al.
20160373477 December 22, 2016 Moyle
20170004260 January 5, 2017 Moturu et al.
20170011179 January 12, 2017 Arshad et al.
20170032092 February 2, 2017 Mink et al.
20170033375 February 2, 2017 Ohmori et al.
20170042467 February 16, 2017 Herr et al.
20170046488 February 16, 2017 Pereira
20170065851 March 9, 2017 Deluca et al.
20170080320 March 23, 2017 Smith
20170091422 March 30, 2017 Kumar et al.
20170095670 April 6, 2017 Ghaffari et al.
20170095692 April 6, 2017 Chang et al.
20170095693 April 6, 2017 Chang et al.
20170100637 April 13, 2017 Princen et al.
20170106242 April 20, 2017 Dugan
20170113092 April 27, 2017 Johnson
20170128769 May 11, 2017 Long et al.
20170132947 May 11, 2017 Maeda et al.
20170136296 May 18, 2017 Barrera et al.
20170143261 May 25, 2017 Wiedenhoefer et al.
20170147752 May 25, 2017 Toru
20170147789 May 25, 2017 Wiedenhoefer et al.
20170148297 May 25, 2017 Ross
20170168555 June 15, 2017 Munoz et al.
20170181698 June 29, 2017 Wiedenhoefer et al.
20170190052 July 6, 2017 Jaekel et al.
20170202724 July 20, 2017 De Rossi
20170209766 July 27, 2017 Riley et al.
20170220751 August 3, 2017 Davis
20170228517 August 10, 2017 Saliman et al.
20170235882 August 17, 2017 Orlov et al.
20170235906 August 17, 2017 Dorris et al.
20170243028 August 24, 2017 LaFever et al.
20170258370 September 14, 2017 Plotnik-Peleg et al.
20170262604 September 14, 2017 Francois
20170265800 September 21, 2017 Auchinleck et al.
20170266501 September 21, 2017 Sanders et al.
20170270260 September 21, 2017 Shetty
20170278209 September 28, 2017 Olsen et al.
20170282015 October 5, 2017 Wicks et al.
20170283508 October 5, 2017 Demopulos et al.
20170286621 October 5, 2017 Cox
20170296861 October 19, 2017 Burkinshaw
20170300654 October 19, 2017 Stein et al.
20170304024 October 26, 2017 Nobrega
20170312614 November 2, 2017 Tran et al.
20170323481 November 9, 2017 Tran et al.
20170329917 November 16, 2017 McRaith et al.
20170329933 November 16, 2017 Brust
20170333755 November 23, 2017 Rider
20170337033 November 23, 2017 Duyan et al.
20170337334 November 23, 2017 Stanczak
20170344726 November 30, 2017 Duffy et al.
20170347923 December 7, 2017 Roh
20170360586 December 21, 2017 Dempers et al.
20170368413 December 28, 2017 Shavit
20180017806 January 18, 2018 Wang et al.
20180036591 February 8, 2018 King et al.
20180036593 February 8, 2018 Ridgel et al.
20180052962 February 22, 2018 Van Der Koijk et al.
20180056104 March 1, 2018 Cromie et al.
20180056130 March 1, 2018 Bitran et al.
20180060494 March 1, 2018 Dias et al.
20180071565 March 15, 2018 Gomberg et al.
20180071566 March 15, 2018 Gomberg et al.
20180071569 March 15, 2018 Gomberg et al.
20180071570 March 15, 2018 Gomberg et al.
20180071571 March 15, 2018 Gomberg et al.
20180071572 March 15, 2018 Gomberg et al.
20180075205 March 15, 2018 Moturu et al.
20180078843 March 22, 2018 Tran et al.
20180085615 March 29, 2018 Astolfi et al.
20180096111 April 5, 2018 Wells et al.
20180099178 April 12, 2018 Schaefer et al.
20180102190 April 12, 2018 Hogue et al.
20180113985 April 26, 2018 Gandy et al.
20180116741 May 3, 2018 Garcia Kilroy et al.
20180117417 May 3, 2018 Davis
20180130555 May 10, 2018 Chronis et al.
20180140927 May 24, 2018 Kito
20180146870 May 31, 2018 Shemesh
20180177612 June 28, 2018 Trabish et al.
20180178061 June 28, 2018 O'larte et al.
20180199855 July 19, 2018 Odame et al.
20180200577 July 19, 2018 Dugan
20180220935 August 9, 2018 Tadano et al.
20180228682 August 16, 2018 Bayerlein et al.
20180232492 August 16, 2018 Al-Alul et al.
20180236307 August 23, 2018 Hyde et al.
20180240552 August 23, 2018 Tuyl et al.
20180253991 September 6, 2018 Tang et al.
20180255110 September 6, 2018 Dowlatkhah et al.
20180256079 September 13, 2018 Yang et al.
20180263530 September 20, 2018 Jung
20180263535 September 20, 2018 Cramer
20180263552 September 20, 2018 Graman et al.
20180264312 September 20, 2018 Pompile et al.
20180271432 September 27, 2018 Auchinleck et al.
20180272184 September 27, 2018 Vassilaros et al.
20180280784 October 4, 2018 Romeo et al.
20180296143 October 18, 2018 Anderson et al.
20180296157 October 18, 2018 Bleich et al.
20180318122 November 8, 2018 LeCursi et al.
20180326243 November 15, 2018 Badi et al.
20180330058 November 15, 2018 Bates
20180330810 November 15, 2018 Gamarnik
20180330824 November 15, 2018 Athey et al.
20180290017 October 11, 2018 Fung
20180353812 December 13, 2018 Lannon et al.
20180360340 December 20, 2018 Rehse et al.
20180366225 December 20, 2018 Mansi
20180373844 December 27, 2018 Ferrandez-Escamez et al.
20190009135 January 10, 2019 Wu
20190019163 January 17, 2019 Batey et al.
20190019573 January 17, 2019 Lake et al.
20190019578 January 17, 2019 Vaccaro
20190030415 January 31, 2019 Volpe, Jr.
20190031284 January 31, 2019 Fuchs
20190046794 February 14, 2019 Goodall et al.
20190060708 February 28, 2019 Fung
20190065970 February 28, 2019 Bonutti et al.
20190066832 February 28, 2019 Kang et al.
20190076701 March 14, 2019 Dugan
20190080802 March 14, 2019 Ziobro et al.
20190083846 March 21, 2019 Eder
20190088356 March 21, 2019 Oliver et al.
20190090744 March 28, 2019 Mahfouz
20190096534 March 28, 2019 Joao
20190105551 April 11, 2019 Ray
20190111299 April 18, 2019 Radcliffe et al.
20190115097 April 18, 2019 Macoviak et al.
20190117156 April 25, 2019 Howard et al.
20190118038 April 25, 2019 Tana et al.
20190126099 May 2, 2019 Hoang
20190132948 May 2, 2019 Longinotti-Buitoni et al.
20190134454 May 9, 2019 Mahoney et al.
20190137988 May 9, 2019 Cella et al.
20190143191 May 16, 2019 Ran et al.
20190145774 May 16, 2019 Ellis
20190163876 May 30, 2019 Remme et al.
20190167988 June 6, 2019 Shahriari et al.
20190172587 June 6, 2019 Park et al.
20190175988 June 13, 2019 Volterrani et al.
20190183715 June 20, 2019 Kapure et al.
20190200920 July 4, 2019 Tien et al.
20190209891 July 11, 2019 Fung
20190214119 July 11, 2019 Wachira et al.
20190223797 July 25, 2019 Tran
20190224528 July 25, 2019 Omid-Zohoor et al.
20190228856 July 25, 2019 Leifer
20190232108 August 1, 2019 Kovach et al.
20190240103 August 8, 2019 Hepler et al.
20190240541 August 8, 2019 Denton et al.
20190244540 August 8, 2019 Errante et al.
20190251456 August 15, 2019 Constantin
20190261959 August 29, 2019 Frankel
20190262084 August 29, 2019 Roh
20190269343 September 5, 2019 Ramos Murguialday et al.
20190274523 September 12, 2019 Bates et al.
20190275368 September 12, 2019 Maroldi
20190304584 October 3, 2019 Savolainen
20190307983 October 10, 2019 Goldman
20190314681 October 17, 2019 Yang
20190344123 November 14, 2019 Rubin et al.
20190354632 November 21, 2019 Mital et al.
20190362242 November 28, 2019 Pillai et al.
20190366146 December 5, 2019 Tong et al.
20190385199 December 19, 2019 Bender et al.
20190388728 December 26, 2019 Wang et al.
20190392936 December 26, 2019 Arric et al.
20190392939 December 26, 2019 Basta et al.
20200005928 January 2, 2020 Daniel
20200034707 January 30, 2020 Kivatinos et al.
20200038703 February 6, 2020 Cleary et al.
20200051446 February 13, 2020 Rubinstein et al.
20200066390 February 27, 2020 Svendrys et al.
20200085300 March 19, 2020 Kwatra et al.
20200090802 March 19, 2020 Maron
20200093418 March 26, 2020 Kluger et al.
20200143922 May 7, 2020 Chekroud et al.
20200151595 May 14, 2020 Jayalath et al.
20200151646 May 14, 2020 De La Fuente Sanchez
20200152339 May 14, 2020 Pulitzer et al.
20200160198 May 21, 2020 Reeves et al.
20200170876 June 4, 2020 Kapure et al.
20200176098 June 4, 2020 Lucas et al.
20200197744 June 25, 2020 Schweighofer
20200221975 July 16, 2020 Basta et al.
20200237291 July 30, 2020 Raja
20200237452 July 30, 2020 Wolf et al.
20200267487 August 20, 2020 Siva
20200275886 September 3, 2020 Mason
20200289045 September 17, 2020 Hacking et al.
20200289046 September 17, 2020 Hacking et al.
20200289879 September 17, 2020 Hacking et al.
20200289880 September 17, 2020 Hacking et al.
20200289881 September 17, 2020 Hacking et al.
20200289889 September 17, 2020 Hacking et al.
20200293712 September 17, 2020 Potts et al.
20200303063 September 24, 2020 Sharma et al.
20200312447 October 1, 2020 Bohn et al.
20200334972 October 22, 2020 Gopalakrishnan
20200353314 November 12, 2020 Messinger
20200357299 November 12, 2020 Patel et al.
20200365256 November 19, 2020 Hayashitani et al.
20200395112 December 17, 2020 Ronner
20200398083 December 24, 2020 Al-Alul et al.
20200401224 December 24, 2020 Cotton
20200402662 December 24, 2020 Esmailian et al.
20200410374 December 31, 2020 White
20200410385 December 31, 2020 Otsuki
20200411162 December 31, 2020 Lien et al.
20210005224 January 7, 2021 Rothschild et al.
20210005319 January 7, 2021 Otsuki et al.
20210008413 January 14, 2021 Asikainen et al.
20210015560 January 21, 2021 Boddington et al.
20210027889 January 28, 2021 Neil et al.
20210035674 February 4, 2021 Volosin et al.
20210050086 February 18, 2021 Rose et al.
20210065855 March 4, 2021 Pepin et al.
20210074178 March 11, 2021 Ilan et al.
20210076981 March 18, 2021 Hacking et al.
20210077860 March 18, 2021 Posnack et al.
20210077884 March 18, 2021 De Las Casas Zolezzi et al.
20210082554 March 18, 2021 Kalia et al.
20210093891 April 1, 2021 Sheng
20210098129 April 1, 2021 Neumann
20210101051 April 8, 2021 Posnack et al.
20210113890 April 22, 2021 Posnack et al.
20210125696 April 29, 2021 Liu et al.
20210127974 May 6, 2021 Mason et al.
20210128080 May 6, 2021 Mason et al.
20210128255 May 6, 2021 Mason et al.
20210128978 May 6, 2021 Gilstrom et al.
20210134412 May 6, 2021 Guaneri et al.
20210134425 May 6, 2021 Mason et al.
20210134428 May 6, 2021 Mason et al.
20210134430 May 6, 2021 Mason et al.
20210134432 May 6, 2021 Mason et al.
20210134456 May 6, 2021 Posnack et al.
20210134457 May 6, 2021 Mason et al.
20210134458 May 6, 2021 Mason et al.
20210134463 May 6, 2021 Mason et al.
20210138304 May 13, 2021 Mason et al.
20210142875 May 13, 2021 Mason et al.
20210142893 May 13, 2021 Guaneri et al.
20210142898 May 13, 2021 Mason et al.
20210142903 May 13, 2021 Mason et al.
20210144074 May 13, 2021 Guaneri et al.
20210186419 June 24, 2021 Van Ee et al.
20210187348 June 24, 2021 Phillips et al.
20210202090 July 1, 2021 ODonovan et al.
20210202103 July 1, 2021 Bostic et al.
20210236020 August 5, 2021 Matijevich et al.
20210244998 August 12, 2021 Hacking et al.
20210245003 August 12, 2021 Turner
20210251562 August 19, 2021 Jain
20210272677 September 2, 2021 Barbee
20210338469 November 4, 2021 Dempers
20210343384 November 4, 2021 Purushothaman et al.
20210345879 November 11, 2021 Mason et al.
20210345975 November 11, 2021 Mason et al.
20210350888 November 11, 2021 Guaneri et al.
20210350898 November 11, 2021 Mason et al.
20210350899 November 11, 2021 Mason et al.
20210350901 November 11, 2021 Mason et al.
20210350902 November 11, 2021 Mason et al.
20210350914 November 11, 2021 Guaneri et al.
20210350926 November 11, 2021 Mason et al.
20210361514 November 25, 2021 Choi et al.
20210366587 November 25, 2021 Mason et al.
20210383909 December 9, 2021 Mason et al.
20210391091 December 16, 2021 Mason
20210398668 December 23, 2021 Chock et al.
20210407670 December 30, 2021 Mason et al.
20210407681 December 30, 2021 Mason et al.
20220000556 January 6, 2022 Casey et al.
20220015838 January 20, 2022 Posnack et al.
20220016480 January 20, 2022 Bissonnette et al.
20220016482 January 20, 2022 Bissonnette
20220016485 January 20, 2022 Bissonnette et al.
20220016486 January 20, 2022 Bissonnette
20220020469 January 20, 2022 Tanner
20220044806 February 10, 2022 Sanders et al.
20220047921 February 17, 2022 Bissonnette et al.
20220079690 March 17, 2022 Mason et al.
20220080256 March 17, 2022 Arn et al.
20220080265 March 17, 2022 Watterson
20220105384 April 7, 2022 Hacking et al.
20220105385 April 7, 2022 Hacking et al.
20220105390 April 7, 2022 Yuasa
20220115133 April 14, 2022 Mason et al.
20220118218 April 21, 2022 Bense et al.
20220122724 April 21, 2022 Durlach et al.
20220126169 April 28, 2022 Mason
20220133576 May 5, 2022 Choi et al.
20220148725 May 12, 2022 Mason et al.
20220176039 June 9, 2022 Lintereur et al.
20220181004 June 9, 2022 Zilca et al.
20220193491 June 23, 2022 Mason et al.
20220230729 July 21, 2022 Mason
20220238222 July 28, 2022 Neuberg
20220238223 July 28, 2022 Mason et al.
20220258935 August 18, 2022 Kraft
20220262483 August 18, 2022 Rosenberg et al.
20220262504 August 18, 2022 Bratty et al.
20220266094 August 25, 2022 Mason et al.
20220270738 August 25, 2022 Mason et al.
20220273985 September 1, 2022 Jeong et al.
20220273986 September 1, 2022 Mason
20220288460 September 15, 2022 Mason
20220288461 September 15, 2022 Ashley et al.
20220288462 September 15, 2022 Ashley et al.
20220293257 September 15, 2022 Guaneri et al.
20220300787 September 22, 2022 Wall et al.
20220304881 September 29, 2022 Choi et al.
20220304882 September 29, 2022 Choi
20220305328 September 29, 2022 Choi et al.
20220314072 October 6, 2022 Bissonnette et al.
20220314075 October 6, 2022 Mason et al.
20220323826 October 13, 2022 Khurana
20220327714 October 13, 2022 Cook et al.
20220327807 October 13, 2022 Cook et al.
20220328181 October 13, 2022 Mason et al.
20220330823 October 20, 2022 Janssen
20220331663 October 20, 2022 Mason
20220338761 October 27, 2022 Maddahi et al.
20220339052 October 27, 2022 Kim
20220339501 October 27, 2022 Mason et al.
20220370851 November 24, 2022 Guidarelli et al.
20220384012 December 1, 2022 Mason
20220392591 December 8, 2022 Guaneri et al.
20220395232 December 15, 2022 Locke
20220401783 December 22, 2022 Choi
20220415469 December 29, 2022 Mason
20220415471 December 29, 2022 Mason
20230001268 January 5, 2023 Bissonnette et al.
20230013530 January 19, 2023 Mason
20230014598 January 19, 2023 Mason et al.
20230029639 February 2, 2023 Roy
20230047253 February 16, 2023 Gnanasambandam et al.
20230048040 February 16, 2023 Hacking et al.
20230051751 February 16, 2023 Hacking et al.
20230058605 February 23, 2023 Mason
20230060039 February 23, 2023 Mason
20230072368 March 9, 2023 Mason
20230078793 March 16, 2023 Mason
20230119461 April 20, 2023 Mason
20230190100 June 22, 2023 Stump
20230201656 June 29, 2023 Hacking et al.
20230207097 June 29, 2023 Mason
20230207124 June 29, 2023 Walsh et al.
20230215539 July 6, 2023 Rosenberg et al.
20230215552 July 6, 2023 Khotilovich et al.
20230218950 July 13, 2023 Belson et al.
20230245747 August 3, 2023 Rosenberg et al.
20230245748 August 3, 2023 Rosenberg et al.
20230245750 August 3, 2023 Rosenberg et al.
20230245751 August 3, 2023 Rosenberg et al.
20230253089 August 10, 2023 Rosenberg et al.
20230255555 August 17, 2023 Sundaram et al.
20230263428 August 24, 2023 Hull et al.
20230274813 August 31, 2023 Rosenberg et al.
20230282329 September 7, 2023 Mason et al.
20230364472 November 16, 2023 Posnack
20230368886 November 16, 2023 Rosenberg
20230377710 November 23, 2023 Chen et al.
20230377711 November 23, 2023 Rosenberg
20230377712 November 23, 2023 Rosenberg
20230386639 November 30, 2023 Rosenberg
20230395231 December 7, 2023 Rosenberg
20230395232 December 7, 2023 Rosenberg
20240029856 January 25, 2024 Rosenberg
Foreign Patent Documents
3193419 March 2022 CA
2885238 April 2007 CN
101964151 February 2011 CN
201889024 July 2011 CN
202220794 May 2012 CN
102670381 September 2012 CN
103263336 August 2013 CN
103390357 November 2013 CN
103473631 December 2013 CN
103488880 January 2014 CN
103501328 January 2014 CN
103721343 April 2014 CN
203677851 July 2014 CN
104335211 February 2015 CN
105620643 June 2016 CN
105683977 June 2016 CN
103136447 August 2016 CN
105894088 August 2016 CN
105930668 September 2016 CN
205626871 October 2016 CN
106127646 November 2016 CN
106236502 December 2016 CN
106510985 March 2017 CN
106621195 May 2017 CN
107066819 August 2017 CN
107430641 December 2017 CN
107551475 January 2018 CN
107736982 February 2018 CN
107930021 April 2018 CN
108078737 May 2018 CN
208224811 December 2018 CN
109191954 January 2019 CN
109363887 February 2019 CN
208573971 March 2019 CN
110148472 August 2019 CN
110201358 September 2019 CN
110215188 September 2019 CN
110322957 October 2019 CN
110808092 February 2020 CN
110931103 March 2020 CN
110993057 April 2020 CN
111105859 May 2020 CN
111111110 May 2020 CN
111370088 July 2020 CN
111460305 July 2020 CN
111790111 October 2020 CN
112071393 December 2020 CN
212141371 December 2020 CN
112289425 January 2021 CN
212624809 February 2021 CN
112603295 April 2021 CN
213190965 May 2021 CN
113384850 September 2021 CN
113499572 October 2021 CN
215136488 December 2021 CN
113885361 January 2022 CN
114049961 February 2022 CN
114203274 March 2022 CN
216258145 April 2022 CN
114632302 June 2022 CN
114694824 July 2022 CN
114898832 August 2022 CN
114983760 September 2022 CN
217472652 September 2022 CN
110270062 October 2022 CN
218420859 February 2023 CN
115954081 April 2023 CN
95019 January 1897 DE
7628633 December 1977 DE
8519150 October 1985 DE
3732905 July 1988 DE
19619820 December 1996 DE
29620008 February 1997 DE
19947926 April 2001 DE
102018202497 August 2018 DE
102018211212 January 2019 DE
102019108425 August 2020 DE
199600 October 1986 EP
0383137 August 1990 EP
634319 January 1995 EP
0919259 June 1999 EP
1034817 September 2000 EP
1159989 December 2001 EP
1391179 February 2004 EP
1968028 September 2008 EP
2564904 March 2013 EP
2575064 April 2013 EP
1909730 April 2014 EP
2815242 December 2014 EP
2869805 May 2015 EP
2997951 March 2016 EP
2688472 April 2016 EP
3264303 January 2018 EP
3323473 May 2018 EP
3547322 October 2019 EP
3627514 March 2020 EP
3671700 June 2020 EP
3688537 August 2020 EP
3731733 November 2020 EP
3984508 April 2022 EP
3984509 April 2022 EP
3984510 April 2022 EP
3984511 April 2022 EP
3984512 April 2022 EP
3984513 April 2022 EP
4054699 September 2022 EP
4112033 January 2023 EP
2527541 December 1983 FR
3127393 March 2023 FR
141664 November 1920 GB
2336140 October 1999 GB
2372459 August 2002 GB
2512431 October 2014 GB
2591542 March 2022 GB
201811043670 July 2018 IN
2000005339 January 2000 JP
2003225875 August 2003 JP
2005227928 August 2005 JP
2005227928 August 2005 JP
2009112336 May 2009 JP
2013515995 May 2013 JP
2014104139 June 2014 JP
3193662 October 2014 JP
3198173 June 2015 JP
5804063 November 2015 JP
2018102842 July 2018 JP
2019028647 February 2019 JP
2019134909 August 2019 JP
6573739 September 2019 JP
6659831 March 2020 JP
2020057082 April 2020 JP
6710357 June 2020 JP
6775757 October 2020 JP
2021027917 February 2021 JP
6871379 May 2021 JP
2022521378 April 2022 JP
3238491 July 2022 JP
7198364 December 2022 JP
7202474 January 2023 JP
7231750 March 2023 JP
7231751 March 2023 JP
7231752 March 2023 JP
20020009724 February 2002 KR
200276919 May 2002 KR
20020065253 August 2002 KR
100582596 May 2006 KR
101042258 June 2011 KR
101258250 April 2013 KR
101325581 November 2013 KR
20140128630 November 2014 KR
20150017693 February 2015 KR
20150078191 July 2015 KR
101580071 December 2015 KR
101647620 August 2016 KR
20160093990 August 2016 KR
20170038837 April 2017 KR
20180004928 January 2018 KR
20190029175 March 2019 KR
20190056116 May 2019 KR
101988167 June 2019 KR
101969392 August 2019 KR
102055279 December 2019 KR
102088333 March 2020 KR
20200025290 March 2020 KR
20200029180 March 2020 KR
102097190 April 2020 KR
102116664 May 2020 KR
102116968 May 2020 KR
20200056233 May 2020 KR
102120828 June 2020 KR
102121586 June 2020 KR
102142713 August 2020 KR
102162522 October 2020 KR
20200119665 October 2020 KR
102173553 November 2020 KR
102180079 November 2020 KR
102188766 December 2020 KR
102196793 December 2020 KR
20210006212 January 2021 KR
102224188 March 2021 KR
102224618 March 2021 KR
102246049 April 2021 KR
102246050 April 2021 KR
102246051 April 2021 KR
102246052 April 2021 KR
20210052028 May 2021 KR
102264498 June 2021 KR
102352602 January 2022 KR
102352603 January 2022 KR
102352604 January 2022 KR
20220004639 January 2022 KR
102387577 April 2022 KR
102421437 July 2022 KR
20220102207 July 2022 KR
102427545 August 2022 KR
102467495 November 2022 KR
102467496 November 2022 KR
102469723 November 2022 KR
102471990 November 2022 KR
20220145989 November 2022 KR
20220156134 November 2022 KR
102502744 February 2023 KR
20230019349 February 2023 KR
20230019350 February 2023 KR
20230026556 February 2023 KR
20230026668 February 2023 KR
20230040526 March 2023 KR
20230050506 April 2023 KR
20230056118 April 2023 KR
102528503 May 2023 KR
102531930 May 2023 KR
102532766 May 2023 KR
102539190 June 2023 KR
2014131288 February 2016 RU
2607953 January 2017 RU
M474545 March 2014 TW
I442956 July 2014 TW
M638437 March 2023 TW
1998009687 March 1998 WO
0149235 July 2001 WO
0151083 July 2001 WO
2001050387 July 2001 WO
2001056465 August 2001 WO
02062211 August 2002 WO
02093312 November 2002 WO
2003043494 May 2003 WO
2005018453 March 2005 WO
2006004430 January 2006 WO
2006012694 February 2006 WO
2007102709 September 2007 WO
2008114291 September 2008 WO
2009003170 December 2008 WO
2009008968 January 2009 WO
2011025322 March 2011 WO
2012128801 September 2012 WO
2013002568 January 2013 WO
2023164292 March 2013 WO
2013122839 August 2013 WO
2014011447 January 2014 WO
2014163976 October 2014 WO
2015026744 February 2015 WO
2015065298 May 2015 WO
2015082555 June 2015 WO
2016151364 September 2016 WO
2016154318 September 2016 WO
2017030781 February 2017 WO
2017166074 May 2017 WO
2017091691 June 2017 WO
2017165238 September 2017 WO
2018081795 May 2018 WO
2018171853 September 2018 WO
2019022706 January 2019 WO
2019143940 July 2019 WO
2020075190 April 2020 WO
2020130979 June 2020 WO
2020149815 July 2020 WO
2020229705 November 2020 WO
2020245727 December 2020 WO
2020249855 December 2020 WO
2020252599 December 2020 WO
2020256577 December 2020 WO
2021021447 February 2021 WO
2021022003 February 2021 WO
2021038980 March 2021 WO
2021055427 March 2021 WO
2021061061 April 2021 WO
2021090267 May 2021 WO
2021138620 July 2021 WO
2021216881 October 2021 WO
2021236961 November 2021 WO
2022047006 March 2022 WO
2022092493 May 2022 WO
2022092494 May 2022 WO
2022212883 October 2022 WO
2022212921 October 2022 WO
2022216498 October 2022 WO
2022251420 December 2022 WO
2023008680 February 2023 WO
2023008681 February 2023 WO
2023022319 February 2023 WO
2023022320 February 2023 WO
2023052695 April 2023 WO
2023091496 May 2023 WO
2023215155 November 2023 WO
2023230075 November 2023 WO
2024013267 January 2024 WO
2024107807 May 2024 WO
Other references
  • Alcaraz et al., “Machine Learning as Digital Therapy Assessment for Mobile Gait Rehabilitation,” 2018 IEEE 28th International Workshop on Machine Learning for Signal Processing (MLSP), Aalborg, Denmark, 2018, 6 pages.
  • Androutsou et al., “A Smartphone Application Designed to Engage the Elderly in Home-Based Rehabilitation,” Frontiers in Digital Health, Sep. 2020, vol. 2, Article 15, 13 pages.
  • Silva et al., “SapoFitness: A mobile health application for dietary evaluation,” 2011 IEEE 13th International Conference on U e-Health Networking, Applications and Services, Columbia, MO, USA, 2011, 6 pages.
  • Wang et al., “Interactive wearable systems for upper body rehabilitation: a systematic review,” Journal of NeuroEngineering and Rehabilitation, 2017, 21 pages.
  • Marzolini et al., “Eligibility, Enrollment, and Completion of Exercise-Based Cardiac Rehabilitation Following Stroke Rehabilitation: What Are the Barriers?,” Physical Therapy, vol. 100, No. 1, 2019, 13 pages.
  • Nijjar et al., “Randomized Trial of Mindfulness-Based Stress Reduction in Cardiac Patients Eligible for Cardiac Rehabilitation,” Scientific Reports, 2019, 12 pages.
  • Lara et al., “Human-Robot Sensor Interface for Cardiac Rehabilitation,” IEEE International Conference on Rehabilitation Robotics, Jul. 2017, 8 pages.
  • Ishraque et al., “Artificial Intelligence-Based Rehabilitation Therapy Exercise Recommendation System,” 2018 IEEE MIT Undergraduate Research Technology Conference (URTC), Cambridge, MA, USA, 2018, 5 pages.
  • Zakari et al., “Are There Limitations to Exercise Benefits in Peripheral Arterial Disease?,” Frontiers in Cardiovascular Medicine, Nov. 2018, vol. 5, Article 173, 12 pages.
  • You et al., “Including Blood Vasculature into a Game-Theoretic Model of Cancer Dynamics,” Games 2019, 10, 13, 22 pages.
  • Jeong et al., “Computer-assisted upper extremity training using interactive biking exercise (iBikE) platform,” Sep. 2012, 34th Annual International Conference of the IEEE EMBS, 5 pages.
  • Barrett et al., “Artificial intelligence supported patient self-care in chronic heart failure: a paradigm shift from reactive to predictive, preventive and personalised care,” EPMA Journal (2019), pp. 445-464.
  • Oerkild et al., “Home-based cardiac rehabilitation is an attractive alternative to no cardiac rehabilitation for elderly patients with coronary heart disease: results from a randomised clinical trial,” BMJ Open Accessible Medical Research, Nov. 22, 2012, pp. 1-9.
  • Bravo-Escobar et al., “Effectiveness and safety of a home-based cardiac rehabilitation programme of mixed surveillance in patients with ischemic heart disease at moderate cardiovascular risk: A randomised, controlled clinical trial,” BMC Cardiovascular Disorders, 2017, pp. 1-11, vol. 17:66.
  • Thomas et al., “Home-Based Cardiac Rehabilitation,” Circulation, 2019, pp. e69-e89, vol. 140.
  • Thomas et al., “Home-Based Cardiac Rehabilitation,” Journal of the American College of Cardiology, Nov. 1, 2019, pp. 133-153, vol. 74.
  • Thomas et al., “Home-Based Cardiac Rehabilitation,” HHS Public Access, Oct. 2, 2020, pp. 1-39.
  • Dittus et al., “Exercise-Based Oncology Rehabilitation: Leveraging the Cardiac Rehabilitation Model,” Journal of Cardiopulmonary Rehabilitation and Prevention, 2015, pp. 130-139, vol. 35.
  • Chen et al., “Home-based cardiac rehabilitation improves quality of life, aerobic capacity, and readmission rates in patients with chronic heart failure,” Medicine, 2018, pp. 1-5 vol. 97:4.
  • Lima de Melo Ghisi et al., “A systematic review of patient education in cardiac patients: Do they increase knowledge and promote health behavior change?,” Patient Education and Counseling, 2014, pp. 1-15.
  • Fang et al., “Use of Outpatient Cardiac Rehabilitation Among Heart Attack Survivors—20 States and the District of Columbia, 2013 and Four States, 2015,” Morbidity and Mortality Weekly Report, vol. 66, No. 33, Aug. 25, 2017, pp. 869-873.
  • Beene et al., “AI and Care Delivery: Emerging Opportunities for Artificial Intelligence to Transform How Care Is Delivered,” Nov. 2019, American Hospital Association, pp. 1-12.
  • Chrif et al., “Control design for a lower-limb paediatric therapy device using linear motor technology,” Article, 2017, pp. 119-127, Science Direct, Switzerland.
  • Robben et al., “Delta Features From Ambient Sensor Data are Good Predictors of Change in Functional Health,” Article, 2016, pp. 2168-2194, vol. 21, No. 4, IEEE Journal of Biomedical and Health Informatics.
  • Kantoch et al., “Recognition of Sedentary Behavior by Machine Learning Analysis of Wearable Sensors during Activities of Daily Living for Telemedical Assessment of Cardiovascular Risk,” Article, 2018, 17 pages, Sensors, Poland.
  • Warburton et al., “International Launch of the PAR-⋅Q+ and ePARmed-⋅X+ Validation of the PAR-⋅Q+ and ePARmed⋅⋅X+,” Health & Fitness Journal of Canada, 2011, 9 pages, vol. 4, No. 2.
  • Malloy, Online Article “AI-enabled EKGs find difference between numerical age and biological age significantly affects health, longevity”, Website: https://newsnetwork.mayoclinic.org/discussion/ai-enabled-ekgs-find-difference-between-numerical-age-and-biological-age-significantly-affects-health-longevity/, Mayo Clinic News Network, May 20, 2021, retrieved: Jan. 23, 2023, p. 1-4.
  • Davenport et al., “The Potential for Artificial Intelligence In Healthcare”, 2019, Future Healthcare Journal 2019, vol. 6, No. 2: Year: 2019, pp. 1-5.
  • Ahmed et al., “Artificial Intelligence With Multi-Functional Machine Learning Platform Development for Better Healthcare and Precision Medicine”, 2020, Database (Oxford), 2020:baaa010. doi: 10.1093/database/baaa010 (Year: 2020), pp. 1-35.
  • Ruiz Ivan et al., “Towards a physical rehabilitation system using a telemedicine approach”, Computer Methods in Biomechanics and Biomedical Engineering: Imaging & Visualization, vol. 8, No. 6, Jul. 28, 2020, pp. 671-680, XP055914810.
  • De Canniere Helene et al., “Wearable Monitoring and Interpretable Machine Learning Can Objectively Track Progression in Patients during Cardiac Rehabilitation”, Sensors, vol. 20, No. 12, Jun. 26, 2020, XP055914617, pp. 1-15.
  • Boulanger Pierre et al., “A Low-cost Virtual Reality Bike for Remote Cardiac Rehabilitation”, Dec. 7, 2017, Advances in Biometrics: International Conference, ICB 2007, Seoul, Korea, pp. 155-166.
  • Yin Chieh et al., “A Virtual Reality-Cycling Training System for Lower Limb Balance Improvement”, BioMed Research International, vol. 2016, pp. 1-10.
  • Gerbild et al., “Physical Activity to Improve Erectile Dysfunction: A Systematic Review of Intervention Studies,” Sexual Medicine, 2018, 15 pages.
  • Jeong et al., “Computer-assisted upper extremity training using interactive biking exercise (iBikE) platform,” Sep. 2012, pp. 1-5, 34th Annual International Conference of the IEEE EMBS.
  • International Search Report and Written Opinion for PCT/US2023/014137, dated Jun. 9, 2023, 13 pages.
  • Website for “Esino 2022 Physical Therapy Equipments Arm Fitness Indoor Trainer Leg Spin Cycle Machine Exercise Bike for Elderly,” https://www.made-in-china.com/showroom/esinogroup/product-detailYdZlwGhCMKVR/China-Esino-2022-Physical-Therapy-Equipments-Arm-Fitness-Indoor-Trainer-Leg-Spin-Cycle-Machine-Exercise-Bike-for-Elderly.html, retrieved on Aug. 29, 2023, 5 pages.
  • Abedtash, “An Interoperable Electronic Medical Record-Based Platform for Personalized Predictive Analytics”, ProQuest LLC, Jul. 2017, 185 pages.
  • Claris Healthcare Inc., Claris Reflex Patient Rehabilitation System Brochure, retrieved on Oct. 2, 2019, 5 bages, https://clarisreflex.com/.
  • Fysiomed, 16983—Vario adjustable pedal arms, retrieved from timestamp of Jun. 7, 2017 from https://web.archive.org/web/20160607052632/https://www.fysiomed.com/en/products/16983-vario-adjustable-pedal-arms on Dec. 15, 2021, 4 pages.
  • HCL Fitness, HCI Fitness PhysioTrainer Upper Body Ergonometer, announced 2009 [online], retrieved on Aug. 19, 2021, 8 pages, www.amazon.com/HCI-Fitness-PhysioTrainer-Upper-Ergonometer/dp/B001 P5GUGM.
  • HCL Fitness, HCI Fitness PhysioTrainer Pro, 2017, retrieved on Aug. 19, 2021, 7 pages, https://www.amazon.com/HCI-Fitness-Physio Trainer-Electronically-Controlled/dp/B0759YMW78/.
  • International Preliminary Report on Patentability of International Application No. PCT/US2017/50895, Date of Mailing Dec. 11, 2018, 52 pages.
  • International Searching Authority, Search Report and Written Opinion for International Application No. PCT/US2017/50895, Date of Mailing Jan. 12, 2018, 6 pages.
  • International Searching Authority, Search Report and Written Opinion for International Application No. PCT/US2020/021876, Date of Mailing May 28, 2020, 8 pages.
  • International Searching Authority, Search Report and Written Opinion for International Application No. PCT/US2020/051008, Date of Mailing Dec. 10, 2020, 9 pages.
  • International Searching Authority, Search Report and Written Opinion for International Application No. PCT/US2020/056661, Date of Mailing Feb. 12, 2021, 12 pages.
  • Matrix, R3xm Recumbent Cycle, retrieved on Aug. 4, 2020, 7 pages, https://www.matrixfitness.com/en/cardio/cycles/r3xm-recumbent.
  • ROM3 Rehab, ROM3 Rehab System, Apr. 20, 2015, retrieved on Aug. 31, 2018, 12 pages, https://vimeo.com/125438463.
  • International Searching Authority, Search Report and Written Opinion for International Application No. PCT/US2021/032807, Date of Mailing Sep. 6, 2021, 11 pages.
  • Jennifer Bresnick, “What is the Role of Natural Language Processing in Healthcare?”, pp. 1-7, published Aug. 18, 2016, retrieved on Feb. 1, 2022 from https://healthitanalytics.com/ featu res/what-is-the-role-of-natural-language-processing-in-healthcare.
  • Alex Bellec, “Part-of-Speech tagging tutorial with the Keras Deep Learning library,” pp. 1-16, published Mar. 27, 2018, retrieved on Feb. 1, 2022 from https://becominghuman.ai/part-of-speech-tagging-tutorial-with-the-keras-deep-learning-library-d7f93fa05537.
  • Kavita Ganesan, All you need to know about text preprocessing for NLP and Machine Learning, pp. 1-14, published Feb. 23, 2019, retrieved on Feb. 1, 2022 from https:// towardsdatascience.com/all-you-need-to-know-about-text-preprocessing-for-nlp-and-machine-learning-bcl c5765ff67.
  • Badreesh Shetty, “Natural Language Processing (NPL) for Machine Learning,” pp. 1-13, published Nov. 24, 2018, retrieved on Feb. 1, 2022 from https://towardsdatascience. com/natural-language-processing-nlp-for-machine-learning-d44498845d5b.
  • Website for “Pedal Exerciser”, p. 1, retrieved on Sep. 9, 2022 from https://www.vivehealth.com/collections/physical-therapy-equipment/products/pedalexerciser.
  • Website for “Functional Knee Brace with ROM”, p. 1, retrieved on Sep. 9, 2022 from http://medicalbrace.gr/en/product/functional-knee-brace-with-goniometer-mbtelescopicknee/.
  • Website for “ComfySplints Goniometer Knee”, pp. 1-5, retrieved on Sep. 9, 2022 from https://www.comfysplints.com/product/knee-splints/.
  • Website for “BMI FlexEze Knee Corrective Orthosis (KCO)”, pp. 1-4, retrieved on Sep. 9, 2022 from https://orthobmi.com/products/bmi-flexeze%C2%AE-knee-corrective-orthosis-kco.
  • Website for “Neoprene Knee Brace with goniometer—Patella Rom MB.4070”, pp. 1-4, retrieved on Sep. 9, 2022 from https://www.fortuna.com.gr/en/product/neoprene-knee-brace-with-goniometer-patella-rom-mb-4070/.
  • Kuiken et al., “Computerized Biofeedback Knee Goniometer: Acceptance and Effect on Exercise Behavior in Post-total Knee Arthroplasty Rehabilitation,” Biomedical Engineering Faculty Research and Publications, 2004, pp. 1-10.
  • Ahmed et al., “Artificial intelligence with multi-functional machine learning platform development for better healthcare and precision medicine,” Database, 2020, pp. 1-35.
  • Davenport et al., “The potential for artificial intelligence in healthcare,” Digital Technology, Future Healthcare Journal, 2019, pp. 1-5, vol. 6, No. 2.
  • Website for “OxeFit XS1”, pp. 1-3, retrieved on Sep. 9, 2022 from https://www.oxefit.com/xs1.
  • Website for “Preva Mobile”, pp. 1-6, retrieved on Sep. 9, 2022 from https://www.precor.com/en-us/resources/introducing-preva-mobile.
  • Website for “J-Bike”, pp. 1-3, retrieved on Sep. 9, 2022 from https://www.magneticdays.com/en/cycling-for-physical-rehabilitation.
  • Website for “Excy”, pp. 1-12, retrieved on Sep. 9, 2022 from https://excy.com/portable-exercise-rehabilitation-excy-xcs-pro/.
  • Website for “OxeFit XP1”, p. 1, retrieved on Sep. 9, 2022 from https://www.oxefit.com/xp1.
  • Jeong et al., “Remotely controlled biking is associated with improved adherence to prescribed cycling speed,” Technology and Health Care 23, 2015, 7 pages.
  • Laustsen et al., “Telemonitored exercise-based cardiac rehabilitation improves physical capacity and health-related quality of life,” Journal of Telemedicine and Telecare, 2020, DOI: 10.1177/1357633X18792808, 9 pages.
  • Blasiak et al., “CURATE.AI: Optimizing Personalized Medicine with Artificial Intelligence,”SLAS TECHNOLOGY: Translating Life Sciences Innovation, 2020, 11 pages.
  • Ahmed et al., “Artificial Intelligence With Multi-Functional Machine Learning Platform Development for Better Healthcare and Precision Medicine,” Database (Oxford), 2020, pp. 1-35, vol. 2020.
  • Davenport et al., “The Potential for Artificial Intelligence in Healthcare,” Future Healthcare Journal, 2019, pp. 94-98, vol. 6, No. 2.
Patent History
Patent number: 12301663
Type: Grant
Filed: Jan 31, 2022
Date of Patent: May 13, 2025
Patent Publication Number: 20220158916
Assignee: ROM Technologies, Inc. (Brookfield, CT)
Inventors: Steven Mason (Las Vegas, NV), Daniel Posnack (Fort Lauderdale, FL), Peter Arn (Roxbury, CT), Wendy Para (Las Vegas, NV), S. Adam Hacking (Nashua, NH), Micheal Mueller (Oil City, PA), Joseph Guaneri (Merrick, NY), Jonathan Greene (Denver, CO)
Primary Examiner: Timothy J Weidner
Application Number: 17/589,409
Classifications
International Classification: G16H 10/60 (20180101); G16H 20/00 (20180101); G16H 40/67 (20180101); G16H 80/00 (20180101); G16Y 10/60 (20200101); G16Y 20/40 (20200101); G16Y 40/10 (20200101); G16Y 40/20 (20200101); H04L 43/06 (20220101); H04L 47/43 (20220101); H04L 49/552 (20220101); H04L 67/12 (20220101); H04L 69/22 (20220101);