CN117138230A - Coordinating the use of power-saving battery switch hardware features through multiple firmware features - Google Patents

Coordinating the use of power-saving battery switch hardware features through multiple firmware features Download PDF

Info

Publication number
CN117138230A
CN117138230A CN202310775392.8A CN202310775392A CN117138230A CN 117138230 A CN117138230 A CN 117138230A CN 202310775392 A CN202310775392 A CN 202310775392A CN 117138230 A CN117138230 A CN 117138230A
Authority
CN
China
Prior art keywords
firmware
battery switch
open
power domain
power
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310775392.8A
Other languages
Chinese (zh)
Inventor
J·D·沙莫斯
E·沃耶
L·A·斯卡里
J·E·埃勒尔
M·瓦索利
I·西马诺维奇
M·雄圭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Medtronic Inc
Original Assignee
Medtronic Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Medtronic Inc filed Critical Medtronic Inc
Publication of CN117138230A publication Critical patent/CN117138230A/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01MPROCESSES OR MEANS, e.g. BATTERIES, FOR THE DIRECT CONVERSION OF CHEMICAL ENERGY INTO ELECTRICAL ENERGY
    • H01M10/00Secondary cells; Manufacture thereof
    • H01M10/42Methods or arrangements for servicing or maintenance of secondary cells or secondary half-cells
    • H01M10/425Structural combination with electronic components, e.g. electronic circuits integrated to the outside of the casing
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61NELECTROTHERAPY; MAGNETOTHERAPY; RADIATION THERAPY; ULTRASOUND THERAPY
    • A61N1/00Electrotherapy; Circuits therefor
    • A61N1/02Details
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61NELECTROTHERAPY; MAGNETOTHERAPY; RADIATION THERAPY; ULTRASOUND THERAPY
    • A61N1/00Electrotherapy; Circuits therefor
    • A61N1/02Details
    • A61N1/08Arrangements or circuits for monitoring, protecting, controlling or indicating
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61NELECTROTHERAPY; MAGNETOTHERAPY; RADIATION THERAPY; ULTRASOUND THERAPY
    • A61N1/00Electrotherapy; Circuits therefor
    • A61N1/18Applying electric currents by contact electrodes
    • A61N1/32Applying electric currents by contact electrodes alternating or intermittent currents
    • A61N1/36Applying electric currents by contact electrodes alternating or intermittent currents for stimulation
    • A61N1/3605Implantable neurostimulators for stimulating central or peripheral nerve system
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61NELECTROTHERAPY; MAGNETOTHERAPY; RADIATION THERAPY; ULTRASOUND THERAPY
    • A61N1/00Electrotherapy; Circuits therefor
    • A61N1/18Applying electric currents by contact electrodes
    • A61N1/32Applying electric currents by contact electrodes alternating or intermittent currents
    • A61N1/36Applying electric currents by contact electrodes alternating or intermittent currents for stimulation
    • A61N1/3605Implantable neurostimulators for stimulating central or peripheral nerve system
    • A61N1/36125Details of circuitry or electric components
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61NELECTROTHERAPY; MAGNETOTHERAPY; RADIATION THERAPY; ULTRASOUND THERAPY
    • A61N1/00Electrotherapy; Circuits therefor
    • A61N1/18Applying electric currents by contact electrodes
    • A61N1/32Applying electric currents by contact electrodes alternating or intermittent currents
    • A61N1/36Applying electric currents by contact electrodes alternating or intermittent currents for stimulation
    • A61N1/372Arrangements in connection with the implantation of stimulators
    • A61N1/378Electrical supply

Abstract

An exemplary implantable neurostimulator includes a battery configured to provide power to the implantable neurostimulator, a battery switch configured to open or close, and a plurality of firmware modules. At least two of the plurality of firmware modules are configured to generate and transmit one or more respective requests. The implantable neurostimulator also includes power domain firmware configured to receive the one or more respective requests, determine whether to open or close a switch in response to the one or more respective requests, and control the battery switch to open or remain closed in response to the determination.

Description

Coordinating the use of power-saving battery switch hardware features through multiple firmware features
Technical Field
The present disclosure relates to power saving features in devices, such as devices configured to deliver therapy to a patient.
Background
Diseases, ages, and injuries can impair the physiological function of a patient. In some cases, the physiological function is completely impaired. In other examples, physiological functions may operate adequately at some times or under some conditions, and inadequately at other times or under other conditions. In one example, bladder dysfunction such as overactive bladder, urgency, or urinary incontinence is a problem that can afflict people of all ages, sexes, and ethnicities. Various muscles, nerves, organs and ducts within the pelvic floor cooperate to collect, store and release urine. A variety of disorders can impair urinary tract performance and lead to overactive bladder, urgency or incontinence that interfere with normal physiological function. Many disorders may be associated with aging, injury, or disease.
Urinary incontinence can include urge incontinence and stress incontinence. In some examples, urge incontinence can be caused by an imbalance in the peripheral or central nervous system that controls the urinary bladder reflex. Some patients may also suffer from neurological disorders that interfere with the normal triggering and operation of the bladder, sphincter muscles, or that lead to overactive bladder or urge incontinence. In some cases, urinary incontinence can be due to abnormal sphincter function in the internal or external urinary sphincters.
Disclosure of Invention
In general, the present disclosure relates to devices, systems, and techniques for controlling power delivery in devices such as Implantable Medical Devices (IMDs), such as implantable stimulation devices (implantable neurostimulators). For example, the present disclosure describes examples of devices, systems, and techniques for reducing power consumption in battery-powered devices (such as IMDs). Although primarily discussed herein as being used in an IMD, the techniques of this disclosure may be used in any device having a battery as a power source.
For many stimulation treatments, excitatory, patterned, pulsed or cyclical stimulation pulses have periods of time that inhibit the delivery of stimulation to the body. During certain periods of time of inhibiting therapy, most of the electronics of the IMD may be disconnected from the battery power source or any power source derived from the battery. Such a state may be referred to herein as sleep mode. When power is disconnected from most of the electronics of the IMD, the power may remain connected to some portion of the IMD, such as a power domain circuit that may close a battery switch to restore power to the rest of the device. Such power domain circuitry may have a firmware counterpart that may alleviate, mediate, or arbitrate requests to open the battery switch or to keep the battery switch closed. The power domain firmware may control the position of the battery switch to open or remain closed based on requests received by the power domain firmware from a plurality of firmware modules within the IMD. The plurality of firmware modules may be referred to herein as modules because at least two of the plurality of firmware modules may represent corresponding hardware or send a request to themselves as to whether to open the battery switch or to keep the battery switch closed. In some examples, the plurality of firmware modules may be implemented as a single piece of firmware, even though they are referred to as a plurality of firmware modules. In some examples, the single piece of firmware may include power domain firmware. The power domain firmware may alleviate, mediate or arbitrate the requests such that the battery switch is turned off only when each of the requests received by the power domain firmware indicates that the battery switch may be turned off.
For battery-powered implantable stimulators, the energy consumption of the battery results from a combination of stimulation current delivered to the nervous system and the energy required to operate the support electronics. The support electronics may include processor circuitry, such as a microprocessor, telemetry circuitry, sensors, timing circuitry, and the like. In some cases, the support electronics may consume as much current of the battery as the stimulation current. Thus, by entering sleep mode, a majority of battery consumption may be eliminated, for example, when stimulation therapy is turned off, greatly extending the battery life of the stimulator and/or increasing the recharging interval (e.g., the length of time between recharges).
In one example, the present disclosure relates to an implantable neurostimulator comprising: a battery configured to provide power to the implantable neurostimulator; a battery switch configured to open and remove power from one or more components of the implantable neurostimulator, or to close to provide power to each component of the implantable neurostimulator that requires power to operate; and processing circuitry configured to: executing a plurality of firmware modules configured to perform respective functions of the implantable neurostimulator, at least two of the plurality of firmware modules configured to determine whether corresponding hardware components require power or whether power is required to perform the respective functions during the respective time periods, and generate and transmit one or more respective requests based on the determination of whether the corresponding hardware components require power or whether power is required to perform the respective functions during the respective time periods; and executing power domain firmware that configures the processing circuitry to: receiving the one or more respective requests; determining whether to open the battery switch or to keep the battery switch closed in response to the one or more respective requests; and controlling the battery switch to open or remain closed in response to the determination.
In another example, the present disclosure relates to a method comprising: generating and transmitting, by power domain firmware executing on the processing circuitry and receiving one or more respective requests from at least two of a plurality of firmware modules, the at least two of the plurality of firmware modules executing on the processing circuitry and configured to determine whether respective corresponding hardware components require power or whether power is required to perform respective functions of the implantable neurostimulator during respective time periods, and based on the determination of whether the corresponding hardware components require power or whether power is required to perform the respective functions during the respective time periods; determining, by the power domain firmware, whether to open a battery switch or to keep the battery switch closed in response to the one or more respective requests; and controlling, by the power domain firmware, the battery switch to open or remain closed in response to the determination.
In another example, the disclosure relates to a non-transitory computer-readable storage medium comprising instructions comprising a plurality of firmware modules and power domain firmware that, when executed, cause processing circuitry of an implantable neurostimulator to: performing a corresponding function of the implantable neurostimulator; determining whether the corresponding hardware component requires power or whether power is required to perform the respective function during the respective time period; generating and transmitting one or more respective requests based on the determination of whether the corresponding hardware component requires power or whether power is required to perform the respective function during the respective time period; receiving the one or more respective requests; determining whether to open the battery switch or to keep the battery switch closed in response to the one or more respective requests; and controlling the battery switch to open or remain closed in response to the determination.
In another example, the present disclosure relates to an implantable neurostimulator comprising: means for receiving, by power domain firmware executing on the processing circuitry and from at least two of a plurality of firmware modules, one or more respective requests, the at least two of the plurality of firmware modules executing on the processing circuitry and configured to determine whether power is required by a respective corresponding hardware component or during a respective time period to perform a respective function of the implantable neurostimulator, and to generate and transmit the one or more respective requests based on the determination of whether power is required by the corresponding hardware component or during the respective time period to perform the respective function; means for determining, by the power domain firmware, whether to open a battery switch or to keep the battery switch closed in response to the one or more respective requests; and means for controlling, by the power domain firmware, the battery switch to open or remain closed in response to the determination.
The details of one or more examples are set forth in the accompanying drawings and the description below. Other features, objects, and advantages of the disclosure will be apparent from the description and drawings, and from the claims.
The above summary is not intended to describe each illustrated example or every implementation of the present disclosure.
Drawings
Fig. 1A is a schematic diagram illustrating an exemplary leadless neurostimulation device.
Fig. 1B is a conceptual diagram illustrating a leg with a leadless neurostimulation device implanted near a tibial nerve.
Fig. 1C is a conceptual diagram illustrating an exemplary system for managing delivery of neural stimulation to a patient to manage bladder dysfunction, such as overactive bladder, urgency, or urinary incontinence.
Fig. 2 is a block diagram illustrating an exemplary configuration of an Implantable Medical Device (IMD).
Fig. 3 is a block diagram illustrating an exemplary configuration of an external programmer.
Fig. 4 is a block diagram illustrating an exemplary nerve stimulation device having multiple firmware modules in accordance with the techniques of this disclosure.
FIG. 5 is a conceptual diagram illustrating an exemplary request that multiple firmware modules may send to power domain firmware.
Fig. 6 is a flow diagram illustrating an exemplary technique for controlling power delivery in a device in accordance with one or more aspects of the present disclosure.
Fig. 7A-7D are flowcharts illustrating exemplary techniques for opening a battery switch according to one or more aspects of the present disclosure.
Fig. 8A-8B are flowcharts illustrating exemplary techniques for recovering after closing a battery switch in accordance with one or more aspects of the present disclosure.
Detailed Description
The present disclosure relates to devices, systems, and techniques for reducing current draw or power consumption of devices such as IMDs. The techniques of this disclosure may increase battery life and/or recharging intervals (e.g., time between recharges) of devices implementing such techniques. In some examples, these techniques may be used with a neurostimulator that may provide treatment for a variety of dysfunctions, diseases, or conditions. For purposes of illustration and not limitation, use of the techniques of the present disclosure will be described below with respect to bladder dysfunction. Bladder dysfunction generally refers to a condition of bladder or urinary tract dysfunction, and may include, for example, overactive bladder, urgency, or urinary incontinence. Overactive bladder (OAB) is a condition of a patient that may include symptoms such as urgency with or without urinary incontinence. Urgency is a sudden, irresistible urge to urinate and may often (although not always) be associated with urinary incontinence. Urinary incontinence refers to a condition in which urine is unintentionally lost, and may include urge incontinence, stress incontinence, or stress and urge incontinence, which may be referred to as mixed urinary incontinence. As used in this disclosure, the term "urinary incontinence" includes disorders in which urination occurs when it is not desired, such as stress or urge incontinence. Other bladder dysfunction may include disorders such as non-obstructive urinary retention.
One type of therapy for treating bladder dysfunction involves the delivery of continuous electrical stimulation to a target tissue site within a patient to cause a therapeutic effect during the delivery of the electrical stimulation. For example, delivering electrical stimulation from an IMD to a target treatment site (e.g., delivering stimulation to modulate a tissue site of a tibial nerve, a spinal nerve (e.g., a sacral nerve), a pudendum nerve, a dorsal genital nerve, a lower rectal nerve, a perineal nerve, or branches of any of the foregoing) may provide immediate treatment effects for bladder dysfunction, such as a desired reduction in bladder contraction frequency. In some cases, electrical stimulation of the tibial nerve may modulate afferent nerve activity to restore urinary function during the electrical stimulation. However, continuous electrical stimulation (which may include pulsed stimulation) or other types of neural stimulation (e.g., drug delivery therapy) may provide neural stimulation during unnecessary phases of the physiological cycle, which may result in undesirable side effects, adaptability, less focused therapy, and an increase in energy used by the IMD delivering the therapy.
In contrast to this type of continuous nerve stimulation therapy, the example devices, systems, and techniques described in this disclosure relate to managing delivery of nerve stimulation therapy in a discontinuous manner, which may include an on-cycle and an off-cycle. For example, the IMD may deliver the neural stimulation therapy for a specified period of time, followed by a specified period of time when the IMD does not deliver the neural stimulation (e.g., inhibits delivery of the neural stimulation). During periods when the IMD is not delivering neural stimulation, the IMD may enter a sleep mode to further reduce the amount of power or current draw on the battery powering the IMD. As described herein, the time period during which stimulation is delivered (on-cycle) may include an on-period and an off-period (e.g., duty cycle or pulse train of pulses), where the short inter-pulse duration is considered part of stimulation delivery even when no pulses are delivered. In some examples, IMD16 may not enter sleep mode during the short inter-pulse duration of the on-cycle when no pulse is delivered. For example, the short inter-pulse duration when no pulses are delivered during an on cycle is still considered part of stimulation delivery, but IMD16 may be considered not to deliver stimulation during an off cycle.
The present disclosure includes a discussion of various examples, aspects, and features. Various examples, aspects, and features are contemplated for use in different combinations, unless otherwise indicated. For ease of discussion and in fact, every possible combination of features is not explicitly recited.
In some examples, a system may be configured to provide stimulation at a neural target that is located at a site remote from an affected peripheral organ. For example, stimulation sitesMay be located at a relatively large distance from the bladder or intestine, such as the tibial nerve. The system may include a plurality of devices (e.g., an implantable sensor and an implantable stimulation device) having wireless communication circuitry that allows wireless information communication between the devices, which may provide sensing or therapeutic stimulation. For example, the radio circuit may be designed to use near field communication,Or other wireless protocol.
For ease of discussion, various examples are discussed in connection with bladder function. It should be appreciated that bladder function is but one possible application. Aspects of the present disclosure may also be used in connection with urine, bowel and general pelvic floor dysfunction. For brevity, each type of dysfunction is not repeated for each feature or example discussed herein.
As mentioned above, constant or sustained stimulation may result in undesirable side effects, adaptability, less focused treatment, and an increase in energy used by the medical device delivering the treatment. Thus, the stimulus may be cyclically turned on and off. When stimulation is cycled off, the neurostimulation device may enter a sleep mode in which the current drawn from the battery powering the neurostimulation device is very small. This may translate into longer recharging intervals and/or longer replacement intervals.
A device such as an IMD may implement the techniques described in this disclosure and deliver stimulation therapy to at least one nerve (e.g., tibial, sacral, spinal, or pelvic floor nerve) via at least one electrode electrically connected to the IMD to modulate the activity of the nerve. The electrical stimulation may be configured to modulate contractions of the detrusor muscle of the patient to cause a decrease in the frequency of bladder contractions (to reduce incontinence) or an increase in the frequency of bladder contractions (to promote voiding). The reduced frequency of bladder contractions may reduce urge to void and may reduce urgency and/or incontinence, thereby at least partially alleviating bladder dysfunction.
The neural stimulation described herein may be intended to manage bladder dysfunction, such as overactive bladder, urgency, urinary incontinence, or even non-obstructive urinary retention. For example, the stimulus may be delivered to a target tissue site that is typically used to alleviate these types of dysfunctions. Although techniques for managing bladder dysfunction are primarily described in this disclosure, these techniques may also be applied to manage other pelvic floor disorders or disorders associated with other organs, tissues, or nerves of a patient. For example, the devices, systems, and techniques described in this disclosure may alternatively or additionally be used to manage sexual dysfunction, pelvic pain, fecal urgency, or fecal incontinence. Exemplary nerves that can be targeted for treatment include tibial, sacral, pudendal, dorsal, sural, sciatic, lower rectal, fibular or perineal nerves. Exemplary organ systems that may be treated for dysfunction may include large and small intestines, stomach and/or intestines, liver and spleen, which may be modulated by delivering neural stimulation directly to the organ, to one or more nerves that innervate the organ, and/or to the blood supply to the organ. In other examples, the treatment may target the spinal cord to relieve pain. In other examples, the treatment may target the brain to treat parkinson's disease or seizure disorders.
Various examples are discussed with respect to one or more stimulation devices. It is recognized that stimulation devices may include features and functions other than electrical stimulation. Many of these additional features are explicitly discussed herein. Several exemplary features include, but are not limited to, different types of sensing capabilities and different types of wireless communication capabilities. For ease of discussion, the present disclosure does not explicitly recite every conceivable combination of additional features, such as by repeating each feature each time a different example and use of the stimulation device is discussed. Furthermore, the techniques described herein for controlling power delivery within a device may be used in any device powered by a battery.
Fig. 1A is a schematic diagram illustrating an exemplary leadless neurostimulation device. Leadless neurostimulation device 1 includes a housing 2 that houses components configured for delivering neurostimulation therapy therein, a head unit 3 including one or more main electrodes 4, and a mounting plate 5 that couples housing 2 to head unit 3. The head unit 3 comprises at least one main electrode 4 forming part of the outer surface of the head unit 3. The housing 2 comprises a secondary electrode 6 forming part of the outer surface of the housing 2 and positioned on the same side of the device 1 as the primary electrode 4. In an alternative embodiment, not depicted, the primary electrode 4 and the secondary electrode 6 may be arranged on opposite sides of the device 1.
The primary electrode 4 and the secondary electrode 6 operate in conjunction with each other to provide stimulation therapy to a target treatment site (e.g., tibial nerve). The counter electrode 6 may also be referred to as a shell electrode, a can electrode or a reference electrode. In one example, the main electrode 4 may include a cathode, and the sub-electrode 6 may include an anode. In some examples, the primary electrode 4 and the secondary electrode 6 may be characterized as bipolar pairs or systems.
The terms "primary" and "secondary" are used to distinguish between two or more electrodes configured to transmit electrical signals therebetween. These terms are not used to imply a hierarchy between the electrodes, positive and negative terminals, a total number of electrodes, or directionality of signal transmission between the electrodes.
Additional information about leadless neurostimulation device 1 may be found in U.S. patent publication 2022/0096845A1, the entire contents of which are incorporated herein by reference.
Fig. 1B is a conceptual diagram illustrating a leg with a leadless neurostimulation device implanted near a tibial nerve. In the example of fig. 1B, leadless neurostimulation device 1 is implanted near tibial nerve 7 in patient's leg 8. For example, leadless neurostimulation device 1 may deliver neurostimulation to a patient to manage bladder dysfunction, such as overactive bladder, urgency, or urinary incontinence. The leadless neurostimulation device 1 may be configured to deliver neurostimulation to the tibial nerve 7 in a cyclical manner and to place the leadless neurostimulation device 1 in a sleep mode when neurostimulation is not actively delivered (e.g., inhibited) (e.g., shut down cycle).
Fig. 1C is a conceptual diagram illustrating an exemplary system 10 for managing delivery of neural stimulation to a patient 14 to manage bladder dysfunction, such as overactive bladder, urgency, or urinary incontinence. As described above, the system 10 may be configured to deliver neural stimulation to the patient 14 in a cyclical manner and place the Implantable Medical Device (IMD) 16 in a sleep mode when the neural stimulation is not actively delivered (e.g., inhibited) (e.g., shut down cycle).
As shown in the example of fig. 1C, therapy system 10 includes IMD 16 (e.g., an exemplary medical device) coupled to leads 18, 20, and 28 and sensor 22. System 10 also includes an external programmer 24 configured to communicate with IMD 16 via wireless communication. Although not shown in fig. 1A-1B, external programmer 24 may be configured to communicate with leadless neurostimulation device 1.
IMD 16 is generally used as a therapeutic device that delivers electrical nerve stimulation to a target tissue site proximate to, for example, the sacral nerve, tibial nerve, spinal nerve, pudendal nerve, dorsal genital nerve, lower rectal nerve, perineal nerve, or other pelvic nerve, or branches of any of the foregoing. IMD 16 provides electrical stimulation to patient 14 by generating and delivering programmable electrical stimulation signals (e.g., in the form of electrical pulses or electrical waveforms) to targeted treatment sites proximate lead 28, and more specifically proximate electrodes 29A-29D (collectively "electrodes 29") disposed proximate the distal end of lead 28.
IMD 16 may be surgically implanted within patient 14 at any suitable location within patient 14, such as near the pelvis. In some examples, IMD 16 may be implanted in a subcutaneous location in the lower abdominal side or lower back or upper buttock side. IMD 16 has a biocompatible housing, which may be formed of titanium, stainless steel, liquid crystal polymer, or the like. Proximal ends of leads 18, 20, and 28 are electrically and mechanically coupled to IMD 16, directly or indirectly, e.g., via respective lead extensions. Electrical conductors disposed within the lead body of leads 18, 20, and 28 electrically connect sensing electrodes (e.g., electrodes 19A, 19B, 21A, and 21B) and stimulation electrodes (such as electrode 29) to sensing circuitry and stimulation delivery circuitry (e.g., stimulation generator) within IMD 16. In the example of fig. 1C, leads 18 and 20 carry electrodes 19A, 19B (collectively, "electrodes 19") and electrodes 21A, 21B (collectively, "electrodes 21"), respectively. As described in more detail below, the electrodes 19 and 21 may be positioned to sense an impedance of the bladder 12, which may increase as the volume of urine within the bladder 12 increases. In some examples, the system 10 may include electrodes (such as electrodes 19 and 21), strain gauges, one or more accelerometers, ultrasonic sensors, optical sensors, or any other sensor capable of detecting the contraction of the bladder 12, the pressure or volume of the bladder 12, or any other indication of the filling cycle of the bladder 12 and/or possibly the bladder dysfunction status.
In other examples, system 10 may use sensors other than electrodes 19 and 21 to sense bladder volume, or not use any sensors at all. For example, external programmer 24 may receive user input identifying a voiding event, perceived filling level, and the like. The user input may be in the form of a drain log analyzed by external programmer 24 or IMD 16 or a personal user input associated with a corresponding drain event, leak, or any other event related to a phase of a physiological cycle. External programmer 24 and/or IMD 16 may use the user input to generate an estimated filling period and determine when to deliver stimulation and exit sleep mode and when to withhold stimulation and enter sleep mode. User input may be used in addition to or in lieu of sensors such as electrodes 19A and 21A to detect physiological markers.
One or more medical leads (e.g., leads 18, 20, and 28) may be connected to IMD 16 and surgically or percutaneously tunneled to place one or more electrodes carried by the distal end of the respective lead at a desired nerve or muscle site, for example, at one of the previously listed target treatment sites (such as a tissue site proximate to the sacral, tibial, spinal, or pudendal nerves). For example, the lead 28 can be positioned such that the electrode 29 delivers electrical stimulation to the sacral, tibial, sacral, or pudendal nerve to reduce the frequency and/or magnitude of contractions of the bladder 12. Additional electrodes of lead 28 and/or electrodes of another lead may also provide additional stimulation treatments to other nerves or tissue. In fig. 1C, leads 18 and 20 are placed in a first position and a second position, respectively, adjacent to the outer surface of the wall of bladder 12. In other examples of therapy system 10, IMD 16 may be coupled to more than one lead that includes electrodes for delivering electrical stimulation to different stimulation sites within patient 14 (e.g., to target different nerves).
In the example shown in fig. 1C, the leads 18, 20, 28 are cylindrical. The electrodes 19, 20, 29 of the leads 18, 20, 28 may be ring electrodes, segmented electrodes, partially ring electrodes, or any suitable electrode configuration, respectively. The segmented electrode and the partial ring electrode each extend around an arc of less than 360 degrees (e.g., 90-120 degrees) of the peripheral edge of the respective lead 18, 20, 28. In some examples, segmented electrodes 29 of leads 28 may be used to target different fibers of the same or different nerves to produce different physiological effects (e.g., therapeutic effects). In an example, one or more of the leads 18, 20, 28 may be at least partially paddle-shaped (e.g., a "paddle-shaped" lead), and may include an array of electrodes on a common surface, which may or may not be substantially planar.
In some examples, one or more of the electrodes 19, 20, 29 may be a skin electrode configured to extend at least partially around the nerve (e.g., extend axially around an outer surface of the nerve). Delivering electrical stimulation via one or more skin electrodes and/or segmented electrodes may help achieve a more uniform electric field or activation field distribution relative to the nerve, which may help minimize discomfort to patient 14 caused by delivering electrical stimulation. The electric field may define the volume of tissue affected when the electrodes 19, 20, 29 are activated. The activation field represents neurons in the neural tissue adjacent to the activation electrode that will be activated by the electric field.
The illustrated number and configuration of leads 18, 20, and 28 and the electrodes carried by leads 18, 20, and 28 are merely exemplary. Other configurations of leads and electrodes are also contemplated, such as number and location. For example, in other implementations, IMD 16 may be coupled to additional leads or lead segments having one or more electrodes positioned at different locations in the spinal or pelvic region proximate patient 14. The additional leads may be used to deliver different stimulation treatments or other electrical stimulation to corresponding stimulation sites within the body of the patient 14 or to monitor at least one physiological signature of the patient 14.
According to some examples of the present disclosure, IMD 16 delivers electrical stimulation based on a stimulation program to at least one of the sacral nerve, tibial nerve, spinal nerve, pudendum nerve, dorsal genital nerve, lower rectal nerve, or perineal nerve to provide a therapeutic effect that reduces or eliminates a dysfunctional state such as overactive bladder. The desired therapeutic effect may be an inhibitory physiological response associated with the excretion of the patient 14, such as a reduction in bladder contraction frequency by a desired level or degree (e.g., percentage).
The stimulation program may define various parameters of the stimulation waveform and electrode configuration that result in the delivery of a predetermined stimulation intensity to the targeted nerve or tissue. In some examples, the stimulation program defines parameters for at least one of: the current or voltage amplitude of the stimulation signal, the frequency or pulse rate of the stimulation, the shape of the stimulation waveform, the duty cycle of the stimulation, the pulse width of the stimulation, and/or the combination of electrodes 29 used to deliver the stimulation and the respective polarities of the subset of electrodes 29. Together, these stimulation parameter values may be used to define a stimulation intensity (also referred to herein as a stimulation intensity level). In some examples, if the stimulation pulses are delivered in bursts, the burst duty cycle may also contribute to the stimulation intensity. Moreover, regardless of intensity, the particular pulse width and/or pulse rate may be selected from a range suitable to cause the desired therapeutic effect after termination of stimulation and optionally during stimulation. Further, as described herein, the periods during which stimulation is delivered may include an on period and an off period (e.g., duty cycle or pulse train of pulses), wherein the short inter-pulse duration even when no pulses are delivered is considered part of stimulation delivery. In some examples, IMD 16 may not enter sleep mode during the short inter-pulse duration when no pulses are delivered. For example, the short inter-pulse duration when no pulses are delivered during an on cycle is still considered part of stimulation delivery, but IMD 16 may be considered not to deliver stimulation during an off cycle.
The stimulation program may also define a period of time for which IMD 16 delivers stimulation (e.g., an on cycle) and a period of time for which IMD 16 inhibits stimulation delivery (e.g., an off cycle). The period during which IMD 16 inhibits stimulation delivery is a period in which there is no stimulation program activity for IMD 16 (e.g., IMD 16 does not track the pulse duration or inter-pulse duration that occurs as part of an electrical stimulation delivery scheme). During such times, IMD 16 may enter a sleep mode. Typically, the period of time during which IMD 16 inhibits nerve stimulation is on the order of weeks, days, minutes, or hours, rather than tens of seconds or seconds.
These time periods (e.g., a time period for an on cycle and a time period for an off cycle) may be programmed to be absolute or associated with a trigger such as a sensor signal or telemetry circuit signal. In some examples, IMD 16 may be configured to deliver different types of stimulation therapies at different times during the physiological cycle of patient 14. For example, IMD 16 may deliver a stimulus configured to reduce or eliminate bladder contractions to promote urinary retention and/or increased bladder capacity, and then deliver a stimulus configured to promote urination (e.g., increased frequency or magnitude of bladder contractions) for a user-requested voiding event or once a voiding event has been detected to have begun.
In some examples, the sleep mode includes multiple sleep periods in a sequence, with brief periods outside of the sleep mode. For example, if there is no problem with the results of a diagnostic test or a request to connect to an external device, IMD 16 may exit sleep mode to run the diagnostic test or advertise telemetry before reentering sleep mode. In some examples, the sleep time may be changed by an algorithm that monitors the efficacy of the treatment (e.g., using implanted or external sensors) and adjusts the therapeutic stimulation dose.
The system 10 may also include an external programmer 24, as shown in fig. 1C. External programmer 24 may be a clinician programmer or a patient programmer. In some examples, external programmer 24 may be a wearable communication device in which the therapy request input is integrated into a key fob or wristwatch, a handheld computing device, a smart phone, a computer workstation, or a networked computing device. External programmer 24 may include a user interface configured to receive input from a user (e.g., patient 14, patient care provider, or clinician). In some examples, the user interface includes, for example, a keypad and a display, which may be, for example, a Liquid Crystal Display (LCD) or a Light Emitting Diode (LED) display. The keypad may take the form of an alphanumeric keypad or a reduced set of keys associated with a particular function. Additionally or alternatively, the external programmer 24 may include a peripheral pointing device, such as a mouse, via which a user may interact with the user interface. In some examples, the display of external programmer 24 may include a touch screen display, and a user may interact with external programmer 24 via the display. It should be noted that a user may also interact with external programmer 24 and/or IMD 16 remotely via a networked computing device. In some examples, external programmer 24 may be configured to interoperate with leadless neurostimulation device 1 of fig. 1A-1B.
A user, such as a physician, technician, surgeon, electrophysiologist, or other clinician, may also interact with external programmer 24 or another separate programmer (not shown), such as a clinician programmer, to communicate with IMD 16. Such users may interact with the programmer to retrieve physiological or diagnostic information from IMD 16. The user may also interact with the programmer to program IMD16, for example, to select values of stimulation parameters utilized by IMD16 to generate and deliver stimulation and/or values of other operating parameters of IMD16, such as the magnitude of stimulation energy, the period of stimulation requested by the user, or the period of prevention of stimulation, or any other such user therapy customization. As discussed herein, the user may also provide input to the external programmer 24 indicating physiological events such as bladder filling level perception and voiding events.
For example, a user may use a programmer to retrieve information from IMD16 regarding the frequency of contractions and/or voiding events of bladder 12. As another example, a user may use a programmer to retrieve information from IMD16 regarding the performance or integrity of IMD16 or other components of system 10, such as leads 18, 20, and 28 or a power source of IMD 16. In some examples, if a system condition is detected that may affect the efficacy of the treatment, the information may be presented to the user as an alert.
Patient 14 may request IMD 16 to deliver or terminate electrical stimulation, such as when patient 14 senses that a leakage scenario may be imminent or when an upcoming drainage may benefit from termination therapy that promotes urinary retention, for example, using a keypad or touch screen of external programmer 24. In this way, the patient 14 may use the external programmer 24 to provide treatment requests to control the delivery of electrical stimulation "on demand" (e.g., when the patient 14 deems stimulation treatment needed). Where patient 14 uses external programmer 24 to request IMD 16 to deliver therapy, IMD 16 may exit sleep mode in order to deliver electrical stimulation. In some examples, patient 14 may use external programmer 24 to request IMD 16 to terminate electrical stimulation. Where patient 14 uses external programmer 24 to terminate electrical stimulation, IMD 16 may enter a sleep mode. Patient 14 may also use external programmer 24 to provide other information to IMD 16, such as information indicating the phase of the physiological cycle, such as the occurrence of a drainage event.
External programmer 24 may provide a notification to patient 14 when the electrical stimulation is delivered, or notify patient 14 of the intended termination of the electrical stimulation. Additionally, termination notification may be helpful so that the patient 14 is aware that the voiding event may be more likely, and/or that the filling cycle is about to end so that the bladder should be emptied (e.g., the patient 14 should go to a toilet). In such examples, external programmer 24 may display a visual message, issue an audible alert signal, or provide a somatosensory alert (e.g., by causing a housing of external programmer 24 to vibrate). In other examples, the notification may indicate when treatment is available during a physiological cycle (e.g., a countdown in minutes, or an indication that treatment is ready). In this way, external programmer 24 may await input from patient 14 before terminating the electrical stimulation that alleviates bladder contractions or otherwise promotes urinary retention. The patient 14 may enter an input confirming termination of the electrical stimulation such that the treatment is stopped for voiding purposes; the confirmation system should maintain therapy delivery until the patient 14 is excretable; and/or confirm that patient 14 is ready to undergo another, different stimulation therapy that promotes voiding during a voiding event.
In the event that no input is received within a particular time frame at the time of the predicted voiding event, external programmer 24 may wirelessly transmit a signal to IMD 16 indicating that no patient input is present. IMD 16 may then choose to continue stimulation until patient input is received, or terminate stimulation to avoid tissue damage based on programming of IMD 16.
IMD 16 and external programmer 24 may communicate via wireless communication using any techniques known in the art. Examples of communication techniques may include, for example, low frequency, radio Frequency (RF) telemetry or inductive coupling, although other techniques are also contemplated. In some examples, external programmer 24 may include programming leads that may be placed in proximity to the body of patient 14 near the implantation site of IMD 16 in order to improve the quality or safety of communication between IMD 16 and external programmer 24.
In one example described herein, an apparatus (e.g., IMD 16) includes a battery configured to provide power to the apparatus. The apparatus includes a power domain firmware configured to determine when to open a battery switch or to remain closed the battery switch based on one or more requests of a plurality of requests that the power domain firmware may receive from a plurality of firmware modules. When the battery switch is off, the device is in the sleep mode described above, and power is not supplied to many components of the device, whereas when the battery switch is off, power is supplied to all components of the device that require power. The apparatus includes a battery switch and a plurality of firmware modules. In examples where the device includes a stimulation circuit, the stimulation circuit is not powered by the battery when the medical device is in a sleep mode (e.g., the battery switch is open).
Unlike other techniques for entering or exiting sleep mode, an implantable neurostimulator, such as leadless neurostimulation device 1 or IMD 16, may include a plurality of firmware modules executing on a processing circuit and a power domain firmware module executing on a power domain circuit. Each of the plurality of firmware modules is configured to perform a respective function of the device (e.g., therapy delivery, telemetry, etc.). At least two of the plurality of firmware modules are configured to determine whether corresponding hardware components (e.g., therapy delivery circuitry, telemetry circuitry, etc.) require power or whether power is required to perform a respective function during a respective time period. At least two of the plurality of firmware modules are further configured to generate and transmit one or more respective requests based on a determination of whether the corresponding hardware component requires power or whether power is required to perform the respective function during the respective time period. The power domain firmware module is configured to receive one or more respective requests and to determine whether to open the battery switch or to keep the battery switch closed in response to the one or more respective requests. The power domain firmware module is further configured to control the battery switch to open or remain closed in response to the determination.
As mentioned above, different physiological markers may be present. As one example, the magnitude of the filling level may be a physiological marker of the bladder filling cycle. In one example, system 10 may detect the magnitude of the filling level by detecting the pressure level of bladder 12 (e.g., via sensor 22). For example, one or more pressure or stretch sensors may be attached to the outside of the bladder 12 or implanted within the bladder. As another example, system 10 may detect the magnitude of the filling level by detecting the impedance level of bladder 12, such as by monitoring the impedance between electrodes 19 and 21 of fig. 1C.
IMD 16 may detect contractions of bladder 12 using any suitable technique, such as based on the sensed one or more physiological parameters, which may be physiological markers of a physiological cycle. In one example, the physiological signature is the impedance of the bladder 12. In the example shown in fig. 1, IMD 16 may use a four-wire (or kelvin) measurement technique to determine the impedance of bladder 12. In other examples, IMD 16 may measure bladder impedance using a dual-line sensing arrangement. In either case, IMD 16 may transmit electrical measurement signals, such as electrical current, through bladder 12 via leads 18 and 20, and determine the impedance of bladder 12 based on the transmitted electrical signals. Such impedance measurements may be used to determine the filling level of the bladder 12, etc.
In the exemplary four-wire arrangement shown in fig. 1C, electrodes 19A and 21A and electrodes 19B and 21B may be positioned substantially opposite each other relative to the center of bladder 12. For example, electrodes 19A and 21A may be placed on opposite sides of bladder 12, i.e., the anterior and posterior sides or the left and right sides. In fig. 1C, electrodes 19 and 21 are shown as being placed near the outer surface of the wall of bladder 12. In some examples, electrodes 19 and 21 may be sutured or otherwise attached to the bladder wall. In other examples, electrodes 19 and 21 may be implanted within the bladder wall. To measure the impedance of bladder 12, IMD 16 may provide electrical signals, such as current, to electrode 19A via lead 18, while receiving electrical signals via electrode 21A of lead 20. IMD 16 may then determine the voltages between electrodes 19B and 21B via leads 18 and 20, respectively. IMD 16 uses the known values of the electrical signals derived from the determined voltages to determine the impedance of bladder 12.
In other examples, electrodes 19 and 21 may be used to detect EMG of detrusor muscle. The EMG may be used to determine the frequency and physiological signature of bladder contractions of the patient 14. In some examples, EMG may also be used to detect the intensity of bladder contractions. Alternatively or in addition to EMG, strain gauges or other devices may be used to detect the state of the bladder 12, for example by sensing a force indicative of bladder contractions.
In the example of fig. 1C, IMD16 also includes a sensor 22 for detecting changes in the contractions of bladder 12. The sensor 22 may include, for example, a pressure sensor for detecting changes in bladder pressure, an electrode for sensing tibial, pudendal, or sacral afferent nerve signals, an electrode for sensing urethral sphincter EMG signals (or anal sphincter EMG signals in examples where the system 10 provides treatment to manage fecal urgency or incontinence), or any combination thereof. In examples where sensor 22 is a pressure sensor or a stretch sensor, sensor 22 may be a remote sensor that transmits signals wirelessly to IMD16, or may be carried on one of leads 18, 20, or 28 or additional leads coupled to IMD 16. In some examples, IMD16 may determine whether the frequency of contraction of bladder 12 has occurred based on the pressure signal generated by sensor 22.
In examples where sensor 22 includes one or more electrodes for sensing afferent nerve signals, the sensing electrode may be carried on one of leads 18, 20, or 28 or additional leads coupled to IMD 16. In examples where sensor 22 includes one or more sensing electrodes for generating urethral sphincter EMG, the sensing electrodes may be carried on one of leads 18, 20, or 28 or additional leads coupled to IMD 16. In any case, in some examples, IMD16 may control the timing of delivering the electrical stimulation based on the input received from sensor 22.
Sensor 22 may include a patient motion sensor, such as an accelerometer, that generates a signal indicative of a patient activity level or posture state. In some examples, IMD 16 may terminate or resume delivery of electrical stimulation to patient 14 when a patient activity level below or above a particular threshold is detected based on signals from the motion sensor. For example, if the patient activity level is greater than or equal to a threshold (which may be stored in the memory of IMD 16) may indicate an increased probability that an unintentional drainage event will occur, therefore, system 10 should exit sleep mode and begin delivering electrical stimulation. In other examples, IMD 16 may use sensor 22 to identify a posture state that is known to require a desired therapeutic effect. For example, the patient 14 may be more prone to an inadvertent voiding event when the patient 14 is in an upright posture as compared to a lying down posture. In any event, electrodes 19 and 21 and sensor 22 may be configured to detect a voiding event and/or a magnitude of the filling level of bladder 12 during a filling cycle.
As discussed above, the system 10 may monitor the filling cycle of the bladder 12 by detecting subsequent voiding events over time. In some examples, system 10 may detect the voiding event by receiving a user input (e.g., via external programmer 24) indicating the occurrence of the voiding event. In other words, the external programmer 24 may receive input from a user identifying an occurrence of a drain event, a beginning of a drain event, and/or an end of a drain event. In other examples, system 10 may automatically detect the drain event without receiving user input via external programmer 24. Instead, the system 10 may detect the voiding event by detecting at least one of bladder pressure, urine flow from the bladder, wetness of the patient 14 external preparation, bladder volume, electromyography (EMG) signals, nerve recordings, posture changes, physical location of the patient 14 within a structure such as a home or care facility, or a washroom use event. Some sensors external to patient 14 may communicate with external programmer 24 and/or IMD 16 to provide such information indicative of a possible drainage event. For example, humidity may be detected by a moisture sensor (e.g., an electrical impedance or chemical sensor) embedded in the undergarment worn by patient 14 and transmitted to IMD 16 or external programmer 24. Similarly, the washroom may include a presence sensor (e.g., an infrared sensor, a thermal sensor, or a pressure sensor) that detects when patient 14 is using the washroom and transmits a signal indicative of the presence of patient 14 to IMD 16 or external programmer 24. In this way, the non-invasively obtained data may provide information indicative of a voiding event without an implanted sensor, and such information may be used to determine when to enter or exit sleep mode.
Fig. 2 is a block diagram illustrating an exemplary configuration of an IMD. As shown in fig. 2, IMD 32 (which may be an example of leadless neurostimulation device 1 or IMD 16) includes a sensor 30, a processor circuit 53, a therapy delivery circuit 52, an impedance circuit 54, a memory 56, a telemetry circuit 58, a power domain circuit 70, a battery switch 72, and a power supply 60. In some examples, sensor 30 may be similar to sensor 22 of fig. 1C. In other examples, IMD 32 may include a greater or lesser number or different components. For example, in the case where IMD 32 represents leadless neurostimulation device 1, IMD 32 does not include leads, but rather electrodes are disposed on a surface of IMD 32.
In general, IMD 32 may include any suitable hardware arrangement, alone or in combination with software and/or firmware, for performing techniques attributed to IMD 32 and components of IMD 32. In various examples, processor circuit 53 of IMD 32 may include one or more processors, such as one or more microprocessors, digital Signal Processors (DSPs), application Specific Integrated Circuits (ASICs), field Programmable Gate Arrays (FPGAs), or any other equivalent integrated or discrete logic circuitry, as well as any combinations of such components. In various examples, IMD 32 may also include a memory 56, such as Random Access Memory (RAM), synchronous RAM (SRAM), ferroelectric RAM (FRAM), non-volatile memory, read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), flash memory, which includes executable instructions for causing the one or more processors to perform actions attributed to them. In some examples, memory 56 includes non-volatile memory 74, which may be used to store values (such as state and memory information 68) used by components (such as firmware components), which may not be powered when battery switch 72 is open in order to preserve such values.
Although processor circuit 53, therapy delivery circuit 52, impedance circuit 54, and telemetry circuit 58 are described as separate circuits, in some examples processor circuit 53, therapy delivery circuit 52, impedance circuit 54, and telemetry circuit 58 are functionally integrated. In some examples, processor circuit 53, therapy delivery circuit 52, impedance circuit 54, and telemetry circuit 58 correspond to separate hardware units, such as a microprocessor, ASIC, DSP, FPGA, or other hardware unit. In further examples, any of processor circuit 53, therapy delivery circuit 52, impedance circuit 54, and telemetry circuit 58 may correspond to a plurality of separate hardware units, such as a microprocessor, ASIC, DSP, FPGA, or other hardware unit.
Memory 56 stores a therapy program 66 that specifies stimulation parameter values and electrode combinations for the electrical stimulation provided by IMD 32. Treatment program 66 may also store information regarding the determination and use of physiological parameters, information regarding physiological cycles and/or dysfunctional states, or any other information needed by IMD 32 to deliver stimulation therapy. In some examples, the stimulation therapy is based on one or more physiological parameters of the patient 14. In some examples, the memory 56 also stores bladder data 69 that the processor circuit 53 can use to control the timing of the delivery of the electrical stimulation (e.g., the phases of the physiological cycle defining when to deliver and inhibit stimulation). For example, the bladder data 69 may include a threshold or baseline value of at least one of bladder impedance, bladder pressure, afferent nerve signals, bladder contraction frequency, or external urinary sphincter EMG template that is used as a physiological marker of the associated physiological cycle. Bladder data 69 may also include timing information and physiological markers associated with physiological events, such as voiding events.
Memory 56 may also store status and memory information 68. In some examples, the non-volatile memory 74 may store the state and memory information 68 such that the state and memory information 68 is stored even when the battery switch 72 is open. For example, when IMD 32 is about to enter sleep mode, processor circuit 53, power domain circuit 70, or power domain firmware (not shown in fig. 2) may store certain state and memory information in state and memory information 68. The battery switch 72 may then be opened. Then, when IMD 32 is exiting sleep mode, state and memory information 68 may be accessed by various components of IMD 32 (such as firmware, processor circuitry 53, etc.), which may be used to restore IMD 32 to a normal operating state. The status and memory information 68 may include time information indicating when to enter sleep mode, expected exit time from sleep mode, length of time for last therapy delivery, etc. The status and memory information 68 may include diagnostic information such as images and logs, and/or usage information. The status and memory information 68 may also include information regarding the sensor acquisition and treatment sequence. The status and memory information 68 may include algorithm status and data for ongoing assessment, such as bladder filling calculations or therapy titration calculations. Status and memory information 68 may also include diagnostic data for device status, such as battery voltage, electrode impedance, and/or telemetry logs. It should be noted that when the battery switch 72 is closed, the status and memory information 68 may be stored in other types of memory of the memory 56, such as RAM, SRAM, FRAM, etc., rather than in the non-volatile memory 74.
In some examples, the power domain circuit 70 may remain powered while the battery switch 72 is open. In some examples, power domain circuitry 70 may cause battery switch 72 to close to re-power other components of IMD 32. For example, the power domain circuitry 70 may close the battery switch 72 in response to detecting incoming telemetry, detecting recharging energy, or after a defined period of time (e.g., a period of time received from the power domain firmware). In some examples, when battery switch 72 is open, each of the other components of IMD 32 are powered down, except for a real-time clock (not shown) and circuitry or firmware that may be configured to detect incoming telemetry transmissions and/or recharging energy for recharging the battery.
Information related to sensed bladder contractions, bladder impedance, and/or posture of the patient 14 may be stored in bladder data 69. Bladder data 69 may be retrieved by the user and/or used by processor circuit 53 to adjust stimulation parameters (e.g., amplitude, pulse width, and pulse rate). In some examples, the memory 56 includes separate memory for storing instructions, electrical signal information, therapy programs 66, status and memory information 68, and bladder data 69. In some examples, processor circuit 53 selects new stimulation parameters of therapy program 66 or selects a new stimulation program from therapy programs 66 for electrical stimulation delivery based on patient inputs or sensor signals. In some examples, the processor circuit 53 may use the bladder data 69 to determine the efficacy of the therapy program and may adjust the time period of stimulation and the suppression time period of stimulation and associated modes of operation and sleep based on the determined efficacy of the therapy program.
Generally, therapy delivery circuit 52 generates and delivers electrical stimulation under the control of processor circuit 53. As used herein, controlling electrical stimulation delivery may also include controlling termination of stimulation to achieve different stimulation phases and non-stimulation phases. In some examples, processor circuit 53 controls therapy delivery circuit 52 by accessing memory 56 to selectively access and load at least one of therapy programs 66 to therapy delivery circuit 52. For example, in operation, processor circuit 53 may access memory 56 to load one of therapy programs 66 to therapy delivery circuit 52. In other examples, therapy delivery circuit 52 may access memory 56 and load one of therapy programs 66.
By way of example, the processor circuit 53 may access the memory 56 to load one of the therapy programs 66 into the therapy delivery circuit 52 for delivering electrical stimulation to the patient 14. The clinician or patient 14 may select a particular one of the treatment programs 66 from the list using a programming device such as the external programmer 24 or a clinician programmer. Processor circuit 53 may receive the selection via telemetry circuit 58. The therapy delivery circuit 52 delivers electrical stimulation to the patient 14 for an extended period of time, such as a number of minutes, hours, days, weeks, or until the patient 14 or clinician manually stops or changes the procedure, according to the selected procedure.
The therapy delivery circuit 52 delivers electrical stimulation according to the stimulation parameters. In some examples, therapy delivery circuit 52 delivers the electrical stimulation in the form of electrical pulses. In such examples, the relevant stimulation parameters may include voltage amplitude, current amplitude, pulse rate, pulse width, duty cycle, or a combination of electrodes 29 used by therapy delivery circuitry 52 to deliver the stimulation signals. In other examples, therapy delivery circuit 52 delivers the electrical stimulation in the form of a continuous waveform. In such examples, the relevant stimulation parameters may include voltage or current amplitude, frequency, shape of the stimulation signal, duty cycle of the stimulation signal, or a combination of electrodes 29 used by therapy delivery circuit 52 to deliver the stimulation signal.
In some examples, the stimulation parameters of the therapy program 66 may be selected to relax the bladder 12 after termination of the electrical stimulation, e.g., to reduce the frequency of contraction of the bladder 12. Exemplary ranges of stimulation parameters for electrical stimulation that may be effective in treating bladder dysfunction (e.g., when applied to the tibial, spinal, sacral, pudendal, dorsal genital, lower rectal, or perineal nerves) are as follows:
1. frequency or pulse rate: between about 0.5Hz and about 500Hz, such as between about 1Hz and about 250Hz, between about 1Hz and about 20Hz, or about 10Hz.
2. Amplitude of: between about 0.1 volts and about 50 volts, such as between about 0.5 volts and about 20 volts, or between about 1 volt and about 10 volts. Alternatively, the amplitude may be between about 0.1 milliamp (mA) and about 50mA, such as between about 0.5mA and about 20mA, or between about 1mA and about 10 mA.
3. Pulse width: between about 10 microseconds (μs) and about 5000 μs, such as between about 100 μs and about 1000 μs, or between about 100 μs and about 200 μs.
When IMD 32 monitors the filling level of the bladder to determine the status of the bladder filling cycle, processor circuit 53 may monitor the impedance of bladder 12 for a predetermined duration to detect contractions of bladder 12 and determine a baseline contractions frequency of bladder 12 by determining the number of contractions of bladder 12 for the predetermined duration. In other examples, electrodes 19 or 21 may be used to detect EMG of detrusor muscle to identify bladder contraction frequency. Alternatively, the strain gauge sensor signal output or other measure of the change in bladder contractions may be used to detect a physiological signature of the bladder 12. In some examples, each of these alternative methods of monitoring the filling level and/or voiding event of the bladder 12 may be used.
In the example shown in fig. 2, the impedance circuit 54 includes a voltage measurement circuit 62 and a current source 64, and may include an oscillator (not shown) or the like for generating an alternating signal. In some examples, the impedance circuit 54 may use a four wire or kelvin arrangement as described above with respect to fig. 1C. For example, processor circuit 53 may periodically control current source 64 to provide a current signal, for example, through electrode 19A, and receive a current signal through electrode 21A. In some examples, to collect impedance measurements, current source 64 may deliver current signals (e.g., subthreshold signals) to bladder 12 that do not deliver stimulation therapy due to, for example, the amplitude or width of such signals and/or the timing of the delivery of such signals. Impedance circuit 54 may also include switching circuitry (not shown) for selectively coupling electrodes 19A, 19B, 21A, and 21B to current source 64 and voltage measurement circuit 62. The voltage measurement circuit 62 may measure the voltage between the electrodes 19B and 21B. The voltage measurement circuit 62 may include a sample and hold circuit or other suitable circuit for measuring voltage amplitude. The processor circuit 53 determines an impedance value from the measured voltage value received from the voltage measurement circuit 62.
In other examples, the processor circuit 53 may monitor the signals received from the sensor 22 to detect contractions of the bladder 12 and determine a baseline contractions frequency. In some examples, the sensor 22 may be a pressure sensor for detecting a pressure change of the bladder 12, and the processor circuit 53 may correlate the pressure change to the contraction of the bladder 12. Processor circuit 53 may determine a pressure value based on the signal received from sensor 22 and compare the determined pressure value to a threshold value stored in bladder data 69 to determine whether the signal is indicative of a contraction of bladder 12. In some implementations, the processor circuit 53 monitors the pressure of the bladder 12 to detect the contraction of the bladder 12 for a predetermined duration, and determines the frequency of contraction of the bladder 12 by calculating the number of contractions of the bladder 12 over a predetermined period of time.
In some examples, processor circuit 53 may cause contraction frequency information to be stored as bladder data 69 in memory 56 and may utilize the changes in contraction frequency to track the filling level of the bladder filling cycle or otherwise track the phase of the filling cycle. In some implementations, processor circuit 53 may determine the contraction frequency during the filling cycle automatically or under the control of a user. Processor circuit 53 may determine that an increase in the contraction frequency indicates an advanced stage of the filling cycle. In some examples, processor circuit 53 may use the EMG signals of patient 14 to track bladder contractions. In some implementations, the sensor 22 may include an EMG sensor, and the processor circuit 53 may generate the EMG from the received signals generated by the sensor 22. Sensor 22 may be implanted proximate to a muscle that is active when bladder 12 contracts, such as, for example, a detrusor muscle. The processor circuit 53 may compare the EMG collected during the second time period to an EMG template (e.g., a short-term running average) stored as bladder data 69 to determine whether the contraction of the bladder 12 indicates a particular phase of the bladder filling cycle.
In other examples, the sensor 22 may be a pressure sensor and the processor circuit 53 may monitor signals received from the sensor 22 during at least a portion of the second time period to detect contractions of the bladder 12. In some examples, the processor circuit 53 substantially continuously monitors the pressure of the bladder 12 at least during the second time period to detect contractions of the bladder 12, and determines the frequency of contractions of the bladder 12 by determining the number of contractions of the bladder 12 within a specified time period. Sensor 22 may also provide longer term pressure changes to track bladder filling status (e.g., increased bladder volume may correspond to increased bladder pressure).
In the example of fig. 2, the therapy delivery circuit 52 drives the electrodes on a single lead 28. Specifically, therapy delivery circuit 52 delivers electrical stimulation to tissue of patient 14 via selected electrodes 29A-29D carried by leads 28. The proximal end of lead 28 extends from the housing of IMD 32, and the distal end of lead 28 extends to a target treatment site such as a tibial nerve, a spinal nerve (e.g., S3 nerve), or a treatment site within the pelvic floor such as a tissue site proximate to the sacral nerve, pudendal nerve, dorsal genital nerve, lower rectal nerve, perineal nerve, lower abdominal nerve, urethral sphincter, or any combination thereof. In other examples, therapy delivery circuit 52 may deliver electrical stimulation using electrodes on more than one lead, and each of the leads may carry one or more electrodes. The leads may be configured as axial leads with ring electrodes or segmented electrodes and/or paddle leads with electrode pads arranged in a two-dimensional array. The electrodes may operate in a bipolar or multipolar configuration with other electrodes, or may operate in a monopolar configuration with reference to the electrodes carried by the device housing or "can" of IMD 32.
As previously described, sensor 22 may include a pressure sensor configured to detect changes in bladder pressure, an electrode for sensing pudendum or sacral afferent nerve signals, or an electrode for sensing external urinary sphincter EMG signals (or anal sphincter signals in examples where IMD 32 provides fecal urgency or fecal incontinence treatment), or any combination thereof. Additionally or alternatively, the sensor 22 may include a motion sensor, such as a dual-axis accelerometer, a tri-axis accelerometer, one or more gyroscopes, pressure transducers, piezoelectric crystals, or other sensors that generate a signal that varies as the patient's activity level or posture state changes. The processor circuit 53 may detect physiological markers indicative of points during the bladder filling cycle. Sensor 22 may also be a motion sensor responsive to a tap on the skin over IMD 32 (e.g., by patient 14). The processor circuit 53 may be configured to record patient input using the tap method (e.g., a tap may indicate that a voiding event is occurring). Alternatively or in addition, processor circuit 53 may control therapy circuit 52 to deliver or terminate the delivery of electrical stimulation in response to a tap or some tap pattern.
In examples where sensor 22 includes a motion sensor, processor circuit 53 may determine the patient activity level or posture state based on signals generated by sensor 22. The patient activity level may be, for example, sitting, exercising, working, running, walking, or any other activity of the patient 14. For example, the processor circuit 53 may determine the patient activity level by sampling the signal from the sensor 22 and determining a number of activity counts during the sampling period, wherein each activity level of the plurality of activity levels is associated with a respective activity count. In one example, processor circuit 53 compares the signal generated by sensor 22 to one or more amplitude thresholds stored in memory 56 and identifies each threshold crossing as an activity count. Physical activity may indicate filling levels, voiding events, or any other physiological indicia related to bladder filling cycles.
In some examples, processor circuit 53 may control therapy delivery circuit 52 to deliver or terminate the electrical stimulation. The power domain circuit 70 may control the battery switch 72 to enter or exit sleep mode.
Telemetry circuitry 58 includes any suitable hardware, firmware, software, or any combination thereof for communicating with another device, such as external programmer 24 (fig. 1C). Under the control of processor circuit 53, telemetry circuit 58 may receive downlink telemetry (e.g., patient input) from external programmer 24 and transmit uplink telemetry (e.g., alarms) to external programmer by way of an antenna, which may be internal and/or external. Processor circuit 53 may provide data to be uplink transmitted to external programmer 24 and control signals for telemetry circuitry within telemetry circuit 58 and receive data from telemetry circuit 58.
In general, processor circuit 53 may control telemetry circuit 58 to exchange information with external programmer 24 and/or another device external to IMD 32. Processor circuit 53 may transmit the operational information and receive stimulation programs or stimulation parameter adjustments via telemetry circuit 58. Moreover, in some examples, IMD 32 may communicate with other implanted devices such as a stimulator, control device, or sensor via telemetry circuitry 58.
Power supply 60 delivers operating power to components of IMD 32. The power supply 60 may include a battery and a power generation circuit for generating operating power. In some examples, the battery may be rechargeable to allow long term operation. Recharging may be accomplished through proximal inductive interaction between an external charger and an inductive charging coil within IMD 32.
Power domain circuitry 70 (and/or power domain firmware not shown in fig. 2) may be configured to remove power, typically provided by power supply 60, from various components of IMD 32. In some examples, power domain firmware 100 executing on processing circuitry, such as power domain circuitry 70, may be configured to determine whether IMD 32 should enter a sleep mode (e.g., open battery switch 72 or keep battery switch 72 closed) based on requests from multiple firmware modules (not shown in fig. 2). For example, the power domain circuit 70 may be configured to receive a notification from the power domain firmware that the battery switch 72 may be opened, and in response to the notification, remove power from the processor circuit 53, the therapy delivery circuit 52, and/or the impedance circuit 54 by opening the battery switch 72 and entering the sleep mode. In some examples, power domain circuit 70 may also be configured to restore power to such components upon exiting sleep mode. For example, the power domain circuitry 70 may close the battery switch 72 in response to detecting incoming telemetry, detecting recharging energy, or after a defined period of time (e.g., a period of time received from the power domain firmware).
Fig. 3 is a block diagram illustrating an exemplary configuration of external programmer 24. Although external programmer 24 may be described generally as a handheld computing device, external programmer 24 may be, for example, a notebook computer, a smart phone, or a workstation. As shown in fig. 3, external programmer 24 may include processor circuitry 90, memory 92, user interface 94, telemetry circuitry 96, and power source 98. The memory 92 may store program instructions that, when executed by the processor circuit 90, cause the processor circuit 90 and the external programmer 24 to provide the functionality attributed to the external programmer 24 throughout this disclosure.
Generally, external programmer 24 includes any suitable hardware arrangement that performs the techniques attributed to external programmer 24, as well as processor circuitry 90, user interface 94, and telemetry circuitry 96 of external programmer 24, alone or in combination with software and/or firmware. In various examples, external programmer 24 may include one or more processors, such as one or more microprocessors, DSP, ASIC, FPGA, or any other equivalent integrated or discrete logic circuits, as well as any combination of such components. In various examples, external programmer 24 may also include memory 92, such as RAM, ROM, PROM, EPROM, EEPROM, flash memory, hard disk, CD-ROM, that includes executable instructions for causing one or more processors to perform actions attributed to them. Further, although processor circuit 90 and telemetry circuit 96 are described as separate circuits, in some examples processor circuit 90 and telemetry circuit 96 may be functionally integrated. In some examples, processor circuit 90 and telemetry circuit 96 and telemetry circuit 58 correspond to separate hardware units, such as microprocessors, ASIC, DSP, FPGA, or other hardware units. In other examples, processor circuit 90 and any of telemetry circuit 96 and telemetry circuit 58 may correspond to multiple separate hardware units, such as a microprocessor, ASIC, DSP, FPGA, or other hardware unit.
The memory 92 may store program instructions that, when executed by the processor circuit 90, cause the processor circuit 90 and the external programmer 24 to provide the functionality attributed to the external programmer 24 throughout this disclosure. In some examples, memory 92 may also include program information, such as stimulation programs defining neural stimulation, similar to those stored in memory 56 of IMD 32. Stimulation programs stored in memory 92 may be downloaded into memory 56 of IMD 32.
In some examples, the system includes a user interface 94 that allows the patient 14 to provide input. IMD32 may respond to patient-provided data from the user interface by altering therapy. For example, the patient 14 may use an external programmer 24 (e.g., a handheld device) to record (by pushing a button) a physiological event of interest. Processor circuit 53 of IMD32 may respond by turning on or off therapy and exiting or entering sleep mode, or by adjusting therapy (e.g., stimulation intensity), or by changing the therapy program. With reference to the urology application discussed herein, the patient 14 may push a button on the external programmer 24 (e.g., their smartphone) as the bladder is excreted. For example, this may send a signal to IMD32 to turn off and enter sleep mode for a pre-programmed period of time based on the drainage characteristics of patient 14.
The user interface 94 may include buttons or a keypad, lights, speakers for voice commands, a display such as a Liquid Crystal (LCD), light Emitting Diode (LED), or Cathode Ray Tube (CRT). In some examples, the display may be a touch screen. As discussed in this disclosure, the processor circuit 90 may present and receive information related to the electrical stimulation and resulting therapeutic effect via the user interface 94. For example, the processor circuit 90 may receive patient input via the user interface 94. The input may be in the form of, for example, pressing a button on a keypad or selecting an icon from a touch screen.
The processor circuit 90 may also present information related to the delivery of electrical stimulation to the patient 14 or caregiver in the form of an alert to the patient 14 via the user interface 94, as described in more detail below. Although not shown, external programmer 24 may additionally or alternatively include a data or network interface to another computing device to facilitate communication with the other device and presentation of information related to electrical stimulation and therapeutic effects following termination of electrical stimulation via the other device.
Telemetry circuitry 96 supports wireless communication between IMD 32 and external programmer 24 under control of processor circuitry 90. Telemetry circuitry 96 may also be configured to communicate with another computing device via wireless communication techniques, or directly with another computing device through a wired connection. In some examples, telemetry circuitry 96 may be substantially similar to telemetry circuitry 58 of IMD 32 described above, providing wireless communication via a radio frequency or proximal inductive medium. In some examples, telemetry circuit 96 may include an antenna, which may take a variety of forms, such as an internal antenna or an external antenna.
Examples of local wireless communication techniques that may be used to facilitate communication between programmer 24 and another computing device include RF communication according to the 802.11 or bluetooth specification set, infrared communication according to, for example, the IrDA standard or other standard or proprietary telemetry protocols. In this way, other external devices can communicate with programmer 24 without having to establish a secure wireless connection.
The power supply 98 delivers operating power to the components of the programmer 24. The power supply 98 may include a battery and a power generation circuit for generating operating power. In some examples, the battery may be rechargeable to allow long term operation.
Fig. 4 is a block diagram illustrating an exemplary nerve stimulation device having multiple firmware modules in accordance with the techniques of this disclosure. IMD 32 includes power domain firmware 100. Power domain firmware 100 may execute within power domain circuitry 70. IMD 32 may include a plurality of firmware modules. For example, IMD 32 may include non-volatile memory firmware 102, device time firmware 104, telemetry firmware 106, therapy delivery firmware 108, fuel gauge firmware 110 (which may be configured to provide an estimate of the remaining charge of a battery powering IMD 32), and/or device recharging firmware 112 (which may be configured to manage battery recharging sessions), each of which may be referred to as a firmware module, whether implemented separately or together as one or more pieces of firmware. In some examples, telemetry circuitry of IMD 32 may be configured to use multiple channels. In such cases, IMD 32 may also include channel firmware 107 that may be associated with multiple channels. In examples where IMD 32 includes sensing circuitry (such as impedance circuitry 54 and/or sensor 30 of fig. 2), IMD 32 may include sensing firmware 114. Although not depicted in fig. 4, IMD 32 may include corresponding hardware (e.g., circuitry) for one or more of the plurality of firmware modules. For example, IMD 32 may include non-volatile memory 74 (fig. 2) that may correspond to non-volatile memory firmware 102, telemetry circuitry 58 that may correspond to and execute telemetry firmware 106, therapy delivery circuitry 52 that may correspond to and execute therapy delivery firmware 108, and the like. In some examples, there may not be hardware corresponding to a particular firmware module, or multiple firmware modules may use the same set of hardware (e.g., circuitry). Although specific firmware modules are depicted in fig. 4, in some examples, fewer, more, or different firmware modules may be included in an apparatus in accordance with the techniques of this disclosure.
In some examples, IMD 32 may be a neurostimulator that includes power domain hardware capabilities that facilitate the ability to sleep firmware features on IMD 32 to save power. IMD 32 may include firmware (e.g., power domain firmware 100) that allocates and manages power consumption requests to ensure IMD 32 has available power but is dormant as much as possible when needed. For example, IMD 32 firmware logic may enable prioritized scheduling and timing of firmware features. Unlike other techniques for entering or exiting sleep mode, an implantable neurostimulator, such as IMD 32, may include a plurality of firmware modules (e.g., nonvolatile memory firmware 102, device time firmware 104, telemetry firmware 106, therapy delivery firmware 108, fuel gauge firmware 110, device recharging firmware 112, and/or other firmware modules) executing on processing circuitry (e.g., processor circuitry 53, telemetry circuitry 58, therapy delivery circuitry 52) and power domain firmware module 100 executing on power domain circuitry 70. Each of the plurality of firmware modules is configured to perform a respective function of the device (e.g., therapy delivery, telemetry, etc.). At least two of the plurality of firmware modules are configured to determine whether corresponding hardware components (e.g., therapy delivery circuitry 52, telemetry circuitry 58, etc.) require power or whether power is required to perform a respective function during a respective time period. At least two of the plurality of firmware modules are further configured to generate and transmit one or more respective requests based on a determination of whether the corresponding hardware component requires power or whether power is required to perform the respective function during the respective time period. The power domain firmware 100 is configured to receive one or more respective requests and determine whether to open the battery switch 72 or to keep the battery switch 72 closed in response to the one or more respective requests. The power domain firmware 100 is also configured to control the battery switch 72 to open or remain closed in response to the determination.
Power domain firmware 100 may be configured to receive input from a plurality of firmware modules (e.g., non-volatile memory firmware 102, device time firmware 104, telemetry firmware 106, therapy delivery firmware 108, fuel gauge firmware 110, device recharging firmware 112, and/or other firmware modules not shown in fig. 4) regarding whether battery switch 72 may be opened or held closed by power domain firmware 100. Power domain firmware 100 may mitigate, mediate, or arbitrate whether to open battery switch 72 (fig. 2) and for how long to open battery switch 72 based on inputs from the plurality of firmware modules.
For example, power domain firmware 100 may receive a request from telemetry firmware 106 to prevent battery switch 72 from opening until further notification, and may receive a request from therapy delivery firmware 108 to allow battery switch 72 to open until further notification. In this case, power domain firmware 100 may determine to keep battery switch 72 closed and control the battery switch to remain closed because telemetry firmware 106 has indicated that battery switch 72 should remain closed. In such examples, telemetry firmware 106 and/or telemetry circuitry 58 still require power, e.g., to perform telemetry operations. In another example, power domain firmware 100 may receive a request from therapy delivery firmware 108 to prevent battery switch 72 from being opened until expiration of a first time period (e.g., 5 minutes from now), and a request from telemetry firmware 106 to allow battery switch 72 to be opened now, but to require battery switch 72 to be closed when expiration of a second time period (e.g., 5 minutes from now). In such examples, power domain firmware 100 may determine to keep battery switch 72 closed and control the battery switch to remain closed until at least power domain firmware 100 receives a request from telemetry firmware 106 to allow battery switch 72 to open. In this way, the power domain firmware 100 does not control the battery switch 72 to open unless all received requests indicate that it is possible to open the battery switch 72, and then as long as all received requests indicate that the battery switch 72 can be kept open.
The power domain firmware 100 is configured to control the battery switch 72 to open or close based on requests (such as firmware requests or hardware interrupts) from multiple firmware modules. In this way, power domain firmware 100 may act as an arbiter or mediator of requests received from multiple firmware modules. For example, when battery switch 72 is closed, a battery of IMD32 (e.g., power supply 60) may provide power to components of IMD32 that require power, and IMD32 may be said to be in an operational mode. When battery switch 72 is open, the battery provides power to less than all of the components of IMD32 that require power to operate, thereby reducing power consumption. In this case, IMD32 may be said to be in sleep mode.
In some examples, power domain firmware 100 may store information regarding why battery switch 72 is closed and why battery switch 72 is open. In some examples, power domain firmware 100 may send a message to the plurality of firmware modules indicating why battery switch 72 will open before battery switch 72 is open. In some examples, rather than opening battery switch 72, power domain firmware 100 may send a message instructing power domain circuit 70 (fig. 2) to open battery switch 72, and power domain circuit 70 may open battery switch 72 in response to the message.
In some examples, power domain firmware 100 may periodically perform analysis of requests received from multiple firmware modules. For example, power domain firmware 100 may perform such analysis every predetermined amount of time. This predetermined amount of time may include 5 seconds, 10 seconds, 15 seconds, 16 seconds, 20 seconds, 30 seconds, or any other predetermined amount of time. In other examples, power domain firmware 100 may perform analysis of received requests continuously, in real-time. The result of this analysis may be to turn off the battery switch 72 and, in some examples, to keep the battery switch 72 off for how long. Alternatively, the result of such analysis may be to keep the battery switch 72 closed. In some examples, the maximum length of time that the battery switch 72 may be open may be limited. By limiting the maximum length of time that battery switch 72 can be opened, IMD 32 may be in an operational mode when incoming telemetry or therapy delivery is desired.
In some examples, power domain firmware 100 may send a notification to each of the plurality of firmware modules before opening battery switch 72 to allow time to store data used by the plurality of firmware modules in non-volatile memory 74 (fig. 2) before opening battery switch 72, because opening battery switch 72 may result in a loss of data if the data is stored only in volatile memory, such as RAM. In some examples, power domain firmware 100 may commit data from multiple firmware modules to non-volatile memory 74 instead of each of the multiple firmware modules performing the commit. In some examples, each of the plurality of firmware modules may retrieve its own stored data from nonvolatile memory 74 when battery switch 72 is reclosed. The notification that the switch is about to open may also allow any of the plurality of firmware modules to send a request to keep the battery switch 72 closed until the battery switch 72 is open.
In some examples, power domain firmware 100 allows other portions of the firmware (e.g., multiple firmware modules) to have inputs of when the battery switch can be opened and closed. In some examples, power domain firmware 100 may receive a scheduling request from any of the plurality of firmware modules. This scheduling request may be limited to one of four types of requests. For example, at least two firmware modules of the plurality of firmware modules (not including power domain firmware 100) may transmit requests to power domain firmware 100 during the time that the plurality of firmware modules are powered. Such requests may include: a) Allowing the battery switch 72 to open at any time until further notification; b) The battery switch 72 is not allowed (e.g., prevented) to open at all until further notification; c) The battery switch 72 is not allowed (e.g., prevented) to open until X seconds from now; or d) allow the battery switch 72 to now open, but close the switch and fully operate the firmware in Y seconds.
The power domain firmware 100 may evaluate the conditions of all requests from the plurality of firmware modules periodically (or alternatively, continuously), and if all requests received by the power domain firmware 100 indicate that the battery switch 72 may be turned off immediately, the power domain firmware 100 may turn off the battery switch 72 for an appropriate length of time. The appropriate length of time may be based on requests received from multiple firmware modules. For example, if therapy delivery firmware 108 requests that battery switch 72 be open, but needs to be closed and the firmware fully operational within 8 seconds, and any other received requests indicate that battery switch 72 may be open for the 8 seconds, power domain firmware 100 may open battery switch 72 and power domain circuit 70 may close battery switch 72 once so that therapy delivery firmware 108 fully operates 8 seconds after receiving the request from therapy delivery firmware 108. It should be noted that this 8 second period may be shortened by detecting incoming telemetry or battery recharging energy. For example, if IMD 32 detects incoming telemetry or battery recharging energy after opening battery switch 72, power domain circuitry 70, telemetry circuitry 58, or other circuitry may close the switch in response to detecting incoming telemetry or recharging energy before 8 seconds have expired.
In some examples, power domain firmware 100 may maintain life device values that any of the plurality of firmware modules may reference as needed or desired. For example, power domain firmware 100 may maintain a lifetime count of an accumulated amount of time IMD 32 causes battery switch 72 to open and a lifetime count of an accumulated amount of time IMD 32 causes battery switch 72 to close. The lifetime count may include a count over the lifetime of a device (e.g., IMD 32).
The nonvolatile memory firmware 102 may manage the power requirements of the nonvolatile memory 74 (FIG. 2) by generating and sending requests to the power domain firmware 100. Non-volatile memory 74 may be configured to store data in such a way that when not powered, the data is preserved even when non-volatile memory 74 or other components of IMD 32 are not powered. In some examples, the data may include diagnostic information, such as images and logs, which may be stored in the state and memory 56. The non-volatile memory firmware 102 may be configured to track standard device times. In some examples, this standard device time may include a total number of device resets and a second count after the last reset. In some examples, the nonvolatile memory firmware 102 may also maintain a predetermined number (e.g., 10) of recently reset diagnostic logs.
Fuel gauge firmware 110 may be configured to provide an estimate of remaining battery charge using the voltage measurements, coulomb counter cut-points, and the battery charge curve. Device recharging firmware 112 may be configured to manage battery recharging sessions.
The power domain circuitry 70 may close the open battery switch 72 due to incoming telemetry, incoming recharging energy, or after a defined interval (e.g., a period of time determined by the power domain firmware 100 to keep the battery switch open). The power domain firmware 100 may be configured to reliably and robustly determine the duration that the battery switch 72 is open, regardless of how the battery switch 72 is closed. If a request from one or more of the plurality of firmware modules indicates that battery switch 72 should be prevented from opening, any preliminary actions taken by power domain firmware 100 to open battery switch 72 may be canceled so that the one or more of the plurality of firmware modules issuing the request will continue to be powered and may continue to operate.
For example, when the non-volatile memory 74 is updating diagnostic information, the non-volatile memory 74 may request that the battery switch 72 remain closed. At other times, the nonvolatile memory 74 may not issue a request to keep the battery switch closed. For example, the non-volatile memory 74 may not require power during the time that the diagnostic information is not updated. Thus, the nonvolatile memory 74 may issue a request to open the switch. All important data may be written to the non-volatile memory 74 for persistent storage during the power down event before the battery switch 72 is opened. In some examples, because it may be desirable not to generate new data after writing important data to non-volatile memory 74 before battery switch 72 is opened, IMD 32 may prevent any firmware modules from executing properly after writing data to non-volatile memory 74 and before battery switch 72 is opened.
The device time firmware 104 may update the device time, which the power domain firmware 100 may store in the mirror of the non-volatile memory 74 just prior to the battery switch opening. If the battery switch 72 is not open for some reason, the device time system (not shown) may be restarted, and the device time firmware 104 may be part of the device time system.
Telemetry firmware 106 may require battery switch 72 to be closed during the downlink, processing, or uplink of any telemetry messages, as telemetry circuitry 58 may otherwise be powered down. In some examples, telemetry firmware 106 may require battery switch 72 to close for a period of time after each telemetry message and may issue an appropriate request to keep the battery switch closed until expiration of the first period of time. In other words, telemetry firmware 106 may issue a request to prevent battery switch 72 from opening until expiration of the first time period. In other cases, telemetry firmware 106 may issue a request that allows battery switch 72 to open at any time until further notification. In some examples, telemetry firmware 106 may utilize power domain hardware (e.g., of power domain circuit 70 of fig. 2) to detect incoming telemetry while maintaining control over telemetry. In some examples, power domain firmware 100 may be powered down when battery switch 72 is open. In such examples, the power domain circuit 70 may be configured to close the battery switch 72 upon detection of incoming telemetry. For example, the power domain circuit 70 may detect energy on an antenna or coil for telemetry to detect incoming telemetry.
The therapy delivery firmware 108 may request that the battery switch 72 remain closed any time the stimulus is delivered. The therapy delivery firmware 108 may issue a request to allow the battery switch 72 to open at any time the therapy is off or during a long-cycle off duration when the therapy is on but no stimulus is currently being delivered. If the battery switch 72 is open during the long cycle shutdown period, the therapy delivery firmware 108 may issue a request to allow the battery switch to now be open, but require the battery switch to be closed when the second period expires. In this way, the battery switch 72 may be closed and the therapy delivery firmware 108 (and/or other firmware modules) may be fully restarted before the next cycle-on period. Similarly, if the battery switch 72 is open during a long cycle shutdown period, the battery switch 72 may be closed and the therapy delivery firmware 108 (and/or other firmware modules) may be fully restarted before the next cycle on period. In some examples, therapy delivery firmware 108 may perform some cleaning action before battery switch 72 is opened. When the battery switch 72 is closed and the therapy delivery firmware 108 is restarted, the therapy delivery firmware 108 may use the saved therapy data and the lifetime count of the cumulative amount of open/closed switch time to determine when therapy delivery should resume.
Fuel gauge firmware 110 may issue a request that power domain firmware 100 be allowed to open battery switch 72 at any time. When fuel gauge firmware 110 is running, battery discharge may be tracked in at least two ways: interrupting via a coulomb counter per occurrence of a predetermined amount of battery discharge; or via a firmware timer that is used to address overhead discharges that are not measured by the hardware. When power domain firmware 100 is about to open battery switch 72, fuel gauge firmware 110 may read a coulomb counter register (not shown) to see how much charge has been used since the last coulomb counter interrupt. The read information may be saved to a power mirror in the non-volatile memory 74 (fig. 2) to be added to the total number of discharges later. Fuel gauge firmware 110 may also read the overhead discharge firmware timer and save the read information to the power mirror so that the information may be used when the timer is restarted when fuel gauge firmware 110 is restarted. In some examples, when the battery switch 72 is closed, the fuel gauge firmware 110 may use the switch off duration to estimate the discharge that occurs when the battery switch 72 is open. For example, a technician may determine, e.g., in a laboratory, the amount of discharge that IMD 32 has occurred over time, and fuel gauge firmware 110 may use such information to estimate the discharge that occurs when battery switch 72 is open.
Device recharging firmware 112 may require battery switch 72 to remain closed during a commanded recharging session or during an automatic passive recharging session that occurs when non-timed non-power domain firmware 100 battery switch closure occurs. In some examples, when device recharging firmware 112 issues a request to keep battery switch 72 closed, IMD 32 may determine that the battery voltage is very low and IMD 32 needs to be recharged. In some examples, IMD 32 is configured to accept recharging energy and remain in the powered battery switch 72 closed mode for a number of minutes or until a first telemetry command is received. As it may not be appropriate to open the battery switch 72 during a battery recharging session or during an active telemetry session. Thus, device recharging firmware 112 and/or telemetry firmware 106 may be configured to request that the battery switch remain closed (e.g., thereby preventing the battery switch from opening) until after the recharging session is completed and/or after the telemetry session is completed.
For example, power domain firmware 100 may not allow battery switch 72 to open, e.g., until 10 seconds from the first start of power domain firmware 100, in order to give the firmware enough time to initialize and receive telemetry before battery switch 72 opens again. For example, telemetry firmware 106 may issue a request that power domain firmware 100 not allow battery switch 72 to open until, for example, 60 seconds from now. Telemetry firmware 106 may do so each time a telemetry message is received. By issuing such a request, telemetry firmware 106 may ensure that battery switch 72 is closed and that telemetry firmware remains ready for more telemetry messages. For example, therapy delivery firmware 108 may issue a request that power domain firmware 100 allow battery switch 72 to open at any time until it is further noted that therapy delivery firmware 108 is not delivering therapy. The therapy delivery firmware 108 may issue a request to prevent the battery switch 72 from being turned off until further notification, for example, when therapy is being delivered. The therapy delivery firmware 108 may issue a request to allow the battery switch 72 to now be opened, but require the battery switch 72 to be closed upon expiration of the second time period, for example, when the therapy is enabled at the beginning of a long-cycle shutdown period or prior to a therapy delivery session that will occur at a later point in time.
For example, device recharging firmware 112 may issue a request to prevent battery switch 72 from reopening until further notification. Device recharging firmware 112 may issue such a request at the beginning of a commanded recharging session. The device recharging firmware 112 may issue a request to allow the battery switch 72 to open at any time until further notification at the end of the commanded recharging session or at the end of an automatic passive recharging session. The device recharging firmware 112 may issue a request to prevent the battery switch 72 from opening when an automatic passive recharging session begins, which occurs when the non-timed non-power domain firmware 100 battery switch closes, until, for example, 120 seconds from now on.
FIG. 5 is a conceptual diagram illustrating an exemplary request that multiple firmware modules may send to power domain firmware. For example, at least two of the plurality of firmware modules may send one or more requests to power domain firmware 100.
The request of fig. 5 may include a first request 120 to allow the battery switch 72 to open at any time until further notification. For example, when the therapy delivery function of IMD 32 is off, therapy delivery firmware 108 may send a first request 120 to power domain firmware 100. The request may also include a second request 122 to prevent the battery switch 72 from being opened until further notification. For example, therapy delivery firmware 108 may send second request 122 to power domain firmware 100 when therapy is being actively delivered by IMD 32.
The request may also include a third request 124 to prevent the battery switch 72 from opening until the expiration of the first time period. The first period of time may be a specified amount of time (e.g., by a firmware module) or a predetermined amount of time. For example, telemetry firmware 106 may send a third request to power domain firmware 100 after receiving an incoming telemetry message to keep telemetry circuit 58 and processor circuit 53 powered up if another incoming telemetry message is received or if telemetry circuit 58 must respond to the incoming telemetry message. As described above, in some examples, the time period is predetermined and not necessarily contained within the third request 124. For example, the predetermined period of time may be 60 seconds. In some examples, the time period is specified by the firmware that sent the request. For example, telemetry firmware 106 may send a third request 124 that includes a time period (e.g., 60 seconds) that telemetry firmware 106 indicates that battery switch 72 should be closed or remain closed.
These requests may also include a fourth request 126 to allow the battery switch 72 to now be opened, but to require the battery switch 72 to be closed when the second time period expires. The second time period may be a specified amount of time (e.g., by a firmware module) or a predetermined amount of time. For example, when therapy delivery is scheduled to begin at the end of the second designated time or the second predetermined time, therapy delivery firmware 108 may send fourth request 126 to power domain firmware 100. As described above, in some examples, the time period is predetermined and not necessarily contained within the fourth request 126. For example, the predetermined period of time may be 10 minutes. In some examples, the time period is specified by the firmware that sent the request. For example, the therapy delivery firmware 108 may send a fourth request 126 that includes a time period (e.g., 10 minutes) for which the therapy delivery firmware 108 indicates that the battery switch 72 should be closed or remain closed. The first time period may be the same as or different from the second time period.
In some examples, the plurality of firmware modules may send only the first request 120, the second request 122, the third request 124, and/or the fourth request 126 to the power domain firmware 100. In other words, in some examples, each request sent by any of the plurality of firmware modules to power domain firmware 100 is selected from the list consisting of first request 120, second request 122, third request 124, and fourth request 126. For example, power domain firmware 100 may receive one or more requests from a plurality of firmware modules. In some examples, the one or more requests may be selected by one or more of the plurality of firmware modules from a list consisting of: a) a request to allow the battery switch 72 to open at any time until further notification, b) a request to prevent the battery switch 72 from opening (or to keep the battery switch 72 closed) until further notification, c) a request to prevent the battery switch 72 from opening (or to keep the battery switch 72 closed) until expiration of a first period of time, or d) a request to allow the battery switch 72 to now open but to require the battery switch 72 to close upon expiration of a second period of time.
For example, power domain firmware 100 may receive a second request 122 from telemetry firmware 106 to prevent battery switch 72 from being opened until further notification allows battery switch 72 to be opened until further notified of the therapy delivery circuit. In this case, power domain firmware 100 may determine to keep battery switch 72 closed and control the battery switch to remain closed because telemetry firmware 106 has indicated that battery switch 72 should remain closed. In such examples, telemetry firmware 106 and/or telemetry circuitry 58 still require power, e.g., to perform telemetry operations. In another example, power domain firmware 100 may receive request 124 from therapy delivery firmware 108 to prevent battery switch 72 from being opened until expiration of a first time period (e.g., 5 minutes from now), and receive request 126 from telemetry firmware 106 to allow battery switch 72 to be opened now, but require battery switch 72 to be closed when expiration of a second time period (e.g., 5 minutes from now). In such examples, power domain firmware 100 may determine to keep battery switch 72 closed and control the battery switch to remain closed until at least power domain firmware 100 receives a request from telemetry firmware 106 to allow battery switch 72 to open. In this way, the power domain firmware 100 does not control the battery switch 72 to open unless all received requests indicate that it is possible to open the battery switch 72, and then as long as all received requests indicate that the battery switch 72 can be kept open.
Fig. 6 is a flowchart illustrating an exemplary battery switch control technique in accordance with one or more aspects of the present disclosure. Although primarily described with respect to IMD 32 of fig. 4, the technique of fig. 6 may be performed by any battery-powered device having a battery switch.
Power domain firmware 100 may receive one or more corresponding requests from a plurality of firmware modules (150). For example, power domain firmware 100 may receive requests from any of nonvolatile memory firmware 102, device time firmware 104, telemetry firmware 106, therapy delivery firmware 108, fuel gauge firmware 110, device recharging firmware 112, and/or other firmware modules not depicted in fig. 4. In some examples, the one or more respective requests include at least one of: a) A request to allow battery switch 72 to open at any time until further notification; b) Blocking the request for the battery switch 72 to open until further notification; c) Preventing the battery switch 72 from opening until the first time period expires; or d) a request to allow the battery switch 72 to now open but to require the battery switch 72 to close upon expiration of the second time period.
The power domain firmware 100 may determine whether to open the battery switch 72 or to keep the battery switch 72 closed (152) in response to one or more corresponding requests. For example, power domain firmware 100 may periodically or continuously monitor requests and evaluate the requests to determine whether each request that power domain firmware 100 has received warrants opening of battery switch 72 or whether any of the received requests require battery switch 72 to remain closed.
The power domain firmware 100 may control the battery switch 72 to open or remain closed in response to the determination (154). For example, if all received requests allow the battery switch 72 to be turned off at a first given time, the power domain firmware 100 (or the power domain circuit 70) may control the battery switch 72 to be turned off. If at least one of the received requests requires that the battery switch 72 remain closed, the power domain firmware 100 may control the battery switch 72 to remain closed. In some examples, power domain firmware 100 controls battery switch 72 via power domain circuitry 70, rather than directly controlling battery switch 72. For example, when the battery switch 72 is to be turned off, the power domain firmware 100 may directly turn off the battery switch 72 or may send a message to the power domain circuit 70 to turn off the battery switch 72, and in some examples, how long the battery switch 72 is turned off.
In some examples, one or more respective requests each allow the battery switch 72 to open, and in those examples, it is determined to open the battery switch. In some examples, at least one of the one or more respective requests includes a request to block the battery switch from opening, and wherein the determination is to keep the battery switch closed.
In some examples, power domain firmware 100 is configured to control battery switch 72 to open only during a given time period when each of the plurality of firmware modules does not request to block battery switch 72 from opening during the given time period. In some examples, the plurality of firmware modules includes at least one of the following: nonvolatile memory firmware; device timer firmware; fuel gauge firmware; device recharger firmware; treatment delivery firmware; or telemetry firmware.
In some examples, therapy delivery circuit 52 (fig. 2) generates an electrical stimulation signal and telemetry circuit 58 communicates with another device (e.g., external programmer 24 of fig. 1C). In some examples, power domain firmware 100 stores a life count of an accumulated amount of time that battery switch 72 is closed and a life count of an accumulated amount of time that battery switch 72 is open in memory.
Fig. 7A-7D are flowcharts illustrating example techniques for opening a battery switch. Although described primarily with respect to IMD 32 of fig. 4, the techniques of fig. 7A-7D may be performed by any battery powered device having a battery switch.
The power domain firmware 100 may evaluate the open switch condition and determine how long the battery switch 72 should be open (200). For example, power domain firmware 100 may determine that all requests received from the plurality of firmware modules allow battery switch 72 to open. If one or more requests received from the plurality of firmware modules do not allow battery switch 72 to open, power domain firmware 100 may not open battery switch 72 at this time.
Power domain firmware 100 may notify the plurality of firmware modules that battery switch 72 is about to open (202). For example, power domain firmware 100 may send a message to each of the plurality of firmware modules to inform the plurality of firmware modules that battery switch 72 is about to be opened. By informing the plurality of firmware modules that battery switch 72 is about to open, power domain firmware 100 may provide each of the plurality of firmware modules with an opportunity to evaluate the need for power and possibly send a new request to power domain firmware 100 to block battery switch 72 from opening. The notification also provides each of the plurality of firmware modules to read the module-specific partial update data and prepare for shutdown. Each of the plurality of firmware modules may update the log and mirror as needed to ensure that once the battery switch 72 is closed and power is restored, all data can be restored and operation continued.
The power domain firmware 100 may re-evaluate the open battery switch condition and determine how long the battery switch 72 should be open (204). For example, in response to notifying the plurality of firmware modules that battery switch 72 is about to open, power domain firmware 100 may receive a further request from any of the plurality of firmware modules that may warrant re-evaluation or change the length of time that battery switch 72 should be open. If the reevaluation indicates that the battery switch 72 should not be turned off, the power domain firmware 100 may send a notification to each of the plurality of firmware modules that the battery switch 72 will not be turned off at this time and cancel the battery switch off operation.
The power domain firmware 100 may determine settings of the power domain firmware 100 (including, for example, timer settings) and save the power domain firmware 100 register values to be used in the power domain firmware 100 image in the non-volatile memory 74 (206), as these settings and values may be used later when the battery switch 72 is closed again.
The power domain firmware 100 may read the power domain firmware 100 real time clock and store the current value of the power domain firmware 100 real time clock in the power domain firmware 100 image in the non-volatile memory 74 (208). The real time clock value may be used later when the battery switch 72 is closed again. In some examples, if an error occurs in reading the real-time clock, power domain firmware 100 may store a zero value of the real-time clock in a power domain firmware 100 image in non-volatile memory 74.
Power domain firmware 100 may disable the interrupt (210). For example, power domain firmware 100 may prevent other modules (e.g., hardware and/or firmware) from interrupting the open battery switching process.
As shown in fig. 7B, power domain firmware 100 may determine which power domain firmware 100 switches off external interrupts should be masked or unmasked (212). For example, power domain firmware 100 may ignore a masking interrupt when battery switch 72 is open, but not an unmasked interrupt.
Power domain firmware 100 may determine whether there are any real-time interrupt sources currently asserted or any interrupts that power domain firmware 100 should handle before continuing (214). If power domain firmware 100 determines that there are any real-time interrupt sources currently asserted or any interrupts that power domain firmware 100 should handle before continuing ("yes" path from block 214), power domain firmware 100 may proceed to block 234 of fig. 7C and cancel the opening of battery switch 72. For example, the power domain firmware may prevent the opening of the battery switch 72 or may re-assert a close battery switch event. This may be performed to avoid a situation where the power domain firmware 100 only opens the battery switch 72 such that the power domain circuit 70 immediately closes the battery switch 72.
If power domain firmware 100 determines that there is no currently asserted real-time interrupt source or interrupt that power domain firmware 100 should handle before continuing ("no" path from block 214), power domain firmware 100 may delay opening battery switch 72 for a predetermined period of time, such as 5 milliseconds, 10 milliseconds, 20 milliseconds, 30 milliseconds, 40 milliseconds, 50 milliseconds, 60 milliseconds, 70 milliseconds, or other predetermined period of time, to allow the battery to resume if the battery voltage is low (216).
The power domain firmware 100 or any of the plurality of firmware modules may write all of the logs queued in RAM to the non-volatile memory 74 (218). The power domain firmware 100 or any of the plurality of firmware modules may write all data relating to diagnosis or use queued in RAM into the non-volatile memory 74 (220). In this way, such data may be obtained when the battery switch 72 is closed again.
The power domain firmware 100 may write the determined duration for which the battery switch 72 should be open (see blocks 200 and 204 of fig. 7A) to the power domain firmware 100 system timer (222).
As shown in fig. 7C, in some examples, power domain firmware 100 may determine whether the write operation was successful (224). If the write operation is unsuccessful (the "NO" path from block 224), power domain firmware 100 may cancel the battery switch off and cancel the entire process and go to block 236 of FIG. 7D.
If the write operation is successful ("yes" path from block 224), power domain firmware 100 may start the system timer of power domain firmware 100 in a repeating pattern (226). For example, a repeating pattern may be used for robustness. In the repeat mode, if the battery switch 72 is not closed when the power domain firmware 100 system timer expires, the power domain firmware 100 system timer will expire again until the battery switch 72 is closed.
As determined in block 212 of fig. 7B, power domain firmware 100 may set an interrupt mask (228). Power domain firmware 100 may recheck to determine if there are any real-time interrupt sources currently asserted or any interrupts that power domain firmware 100 should handle before continuing to determine if any unmasked interrupts are currently asserted (230). If there is no currently asserted real-time interrupt source or interrupt that power domain firmware 100 should handle before continuing ("no" path from block 230), power domain firmware 100 may control battery switch 72 to open (232). Power domain firmware 100 may read the hardware battery switch state condition for the next x intervals (e.g., the next predetermined number of intervals) (234). The power domain firmware 100 may determine whether the battery switch state condition is still closed (236). If the battery switch state condition is still not closed ("no" path from block 236), the battery is open and the sequence may end. If the battery switch state condition is still closed (the "yes" path from block 236), power domain firmware 100 may resume the original power domain firmware 100 interrupt masking (238). For example, the power domain firmware 100 may resume the power domain firmware 100 interrupt mask that existed prior to the power domain interrupt mask being set in block 228. In some examples, if the battery switch 72 is not open due to the hardware and firmware of the IMD being out of synchronization, the power domain firmware 100 may stay in the loop until the watchdog timer triggers a reset.
If there are any real-time interrupt sources currently asserted or any interrupts that power domain firmware 100 should handle before continuing ("yes" path from block 230), power domain firmware 100 may resume the original power domain firmware 100 interrupt mask (238).
As shown in fig. 7D, power domain firmware 100 may clear power domain firmware 100 system timer settings (240). The power domain firmware 100 may enable an interrupt (242). For example, power domain firmware 100 may enable an interrupt that is not currently masked. Power domain firmware 100 may clear power domain firmware interrupt request source 244. For example, certain power domain firmware interrupt request sources may be byproducts of battery switch closure events and may be purged. Power domain firmware 100 may notify the plurality of firmware modules that battery switch 72 will not open (246). In some examples, in response to receiving a notification that battery switch 72 will not be open, each of the plurality of firmware modules may undo any actions they have taken to prepare for shutdown, such as restarting a device timer.
Fig. 8A-8B are flowcharts of an exemplary technique for closing a battery switch in accordance with one or more aspects of the present disclosure. The power domain firmware 100 may read the power domain firmware 100 register value (300), for example, from the non-volatile memory 74. This may occur as quickly as possible at firmware start-up of power domain firmware 100. This value may be used in conjunction with a value (stored in the power domain firmware 100 image) written to a power domain firmware register of the non-volatile memory 74 before the battery switch 72 is opened.
The power domain firmware 100 may mask all power domain firmware 100 interrupts (302). Such power domain firmware 100 interrupts may be unmasked as needed as firmware of IMD 32 continues to execute.
Power domain firmware 100 may turn off power domain firmware 100 system timer (304). The power domain circuit 70 may configure telemetry-based switch closure hardware (306). Power domain firmware 100 may clear system timer interrupt sources (308).
The power domain firmware 100 may assert a power-on reset (310) at any time the battery switch 72 is open.
As shown in fig. 7B, power domain firmware 100 may restore power domain firmware 100 images from non-volatile memory 74 (312). For example, the power domain firmware 100 may load a power domain firmware 100 image from the non-volatile memory 74.
The power domain firmware 100 may determine whether the battery switch 72 is open under firmware control (314). For example, power domain firmware 100 may use a boot-up power domain firmware 100 register value and a power domain firmware 100 value saved prior to disconnection from battery switch 72 to determine whether battery switch 72 is open under firmware control.
The power domain firmware 100 may determine the number of seconds that the battery switch 72 is open (316). For example, power domain firmware 100 may use the power domain firmware 100 real time clock to determine the number of seconds that battery switch 72 is open. In some examples, if there is an error in reading the real time clock of power domain firmware 100 before or after opening battery switch 72, power domain firmware 100 may determine the number of seconds that battery switch 72 is open based on a start value in the power domain firmware 100 system timer and an initial timer value set before battery switch 72 is open.
Power domain firmware 100 may update the life count of the accumulated amount of time battery switch 72 is open (318).
The plurality of firmware modules may continue to recover from the open battery switch condition. For example, the therapy delivery firmware 108 may determine whether and when therapy should be restarted, and may schedule the restart of such therapy. The fuel gauge 110 may adjust the estimation of the state of charge based on the open switch duration and/or the partial discharge coulomb counter information stored prior to the opening of the battery switch 72. The firmware of the non-volatile memory 74 may update the reset diagnostic (or not) depending on whether the battery switch 72 is turned off by the power domain firmware 100 for dielectric or for another purpose, such as by a determination of the system design.
The present disclosure includes the following non-limiting examples.
Embodiment 1. An implantable neurostimulator, the implantable neurostimulator comprising: a battery configured to provide power to the implantable neurostimulator; a battery switch configured to open and remove power from one or more components of the implantable neurostimulator, or to close to provide power to each component of the implantable neurostimulator that requires power to operate; and processing circuitry configured to: executing a plurality of firmware modules configured to perform respective functions of the implantable neurostimulator, at least two of the plurality of firmware modules configured to determine whether corresponding hardware components require power or whether power is required to perform the respective functions during the respective time periods, and generate and transmit one or more respective requests based on the determination of whether the corresponding hardware components require power or whether power is required to perform the respective functions during the respective time periods; and executing power domain firmware that configures the processing circuitry to: receiving the one or more respective requests; determining whether to open the battery switch or to keep the battery switch closed in response to the one or more respective requests; and controlling the battery switch to open or remain closed in response to the determination.
Embodiment 2 the implantable neurostimulator of claim 1, wherein the one or more respective requests include at least one of: a request to allow the battery switch to open at any time until further notification; a request to prevent the battery switch from opening until further notification; a request to prevent the battery switch from opening until expiration of a first time period; or a request to allow the battery switch to now open but require the battery switch to close upon expiration of a second time period.
Embodiment 3. The implantable neurostimulator of claim 1 or 2, wherein the one or more respective requests each allow the battery switch to open, and wherein the determination is to open the battery switch.
Embodiment 4. The implantable neurostimulator of claim 3, wherein treatment delivery is in a shut down cycle.
Embodiment 5. The implantable neurostimulator of any one of claims 1-4, wherein at least one of the one or more corresponding requests comprises a request to block the battery switch from opening, and wherein the determination is to keep the battery switch closed.
Embodiment 6. The implantable neurostimulator of any one of claims 1-5, wherein the power domain firmware further configures the processing circuitry to control the battery switch to open only during a given time period when each of the plurality of firmware modules does not request that the battery switch be prevented from opening during the given time period.
Embodiment 7 the implantable neurostimulator of any one of claims 1-6, wherein the plurality of firmware modules comprises at least one of the following firmware modules: nonvolatile memory firmware; device time firmware; fuel gauge firmware; device recharger firmware; treatment delivery firmware; telemetry firmware; or sensing firmware.
Embodiment 8 the implantable neurostimulator of any one of claims 1 to 7, further comprising: a stimulation circuit configured to generate an electrical stimulation signal; and telemetry circuitry configured to communicate with another device.
Embodiment 9. The implantable neurostimulator of any one of claims 1-8, wherein the power domain firmware further configures the processing circuitry to store in memory a lifetime count of the cumulative amount of time the battery switch was closed and a lifetime count of the cumulative amount of time the battery switch was open.
Embodiment 10. The implantable neurostimulator of any one of claims 1 to 9, wherein the one or more respective requests comprise one or more interrupts.
Embodiment 11. A method, the method comprising: generating and transmitting, by power domain firmware executing on a processing circuit and receiving one or more respective requests from at least two of a plurality of firmware modules executing on the processing circuit and configured to determine whether respective corresponding hardware components require power or whether power is required to perform respective functions of an implantable neurostimulator during respective time periods, and based on the determination of whether the corresponding hardware components require power or whether power is required to perform the respective functions during the respective time periods; determining, by the power domain firmware, whether to open a battery switch or to keep the battery switch closed in response to the one or more respective requests; and controlling, by the power domain firmware, the battery switch to open or remain closed in response to the determination.
The method of claim 11, wherein the one or more respective requests include at least one of: a request to allow the battery switch to open at any time until further notification; a request to prevent the battery switch from opening until further notification; a request to prevent the battery switch from opening until expiration of a first time period; or a request to allow the battery switch to now open but require the battery switch to close upon expiration of a second time period.
The method of claim 11 or 12, wherein the one or more respective requests each allow the battery switch to open, and wherein the determination is to open the battery switch.
The method of claim 13, wherein the treatment delivery is performed during a shut-down cycle.
The method of any one of claims 11 to 14, wherein at least one of the one or more respective requests comprises a request to block the battery switch from opening, and wherein the determining is to keep the battery switch closed.
The method of any one of claims 11 to 15, further comprising: when each firmware module of the plurality of firmware modules does not request to prevent the battery switch from opening during a given period of time, the battery switch is controlled by the power domain firmware to open only during the given period of time.
The method of any one of claims 11 to 16, wherein the plurality of firmware modules includes at least one of: nonvolatile memory firmware; device time firmware; fuel gauge firmware; device recharger firmware; treatment delivery firmware; telemetry firmware or sensing firmware.
The method of claim 17, further comprising: generating, by the stimulation circuit, an electrical stimulation signal; and communicating with another device via telemetry circuitry.
The method of any of claims 11-18, further comprising storing, by the power domain firmware, a life count of an accumulated amount of time the battery switch is closed and a life count of an accumulated amount of time the battery switch is open in memory.
Embodiment 20. The method of any one of claims 11 to 19 wherein the one or more respective requests comprise one or more interrupts.
Embodiment 21. A non-transitory computer-readable storage medium comprising instructions comprising a plurality of firmware modules and power domain firmware that when executed cause processing circuitry of an implantable neurostimulator to: performing a corresponding function of the implantable neurostimulator; determining whether the corresponding hardware component requires power or whether power is required to perform the respective function during the respective time period; generating and transmitting one or more respective requests based on the determination of whether the corresponding hardware component requires power or whether power is required to perform the respective function during the respective time period; receiving the one or more respective requests; determining whether to open the battery switch or to keep the battery switch closed in response to the one or more respective requests; and controlling the battery switch to open or remain closed in response to the determination.
Embodiment 22 an implantable neurostimulator comprising: means for receiving, by power domain firmware executing on a processing circuit and from at least two of a plurality of firmware modules, one or more respective requests, the at least two of the plurality of firmware modules executing on the processing circuit and configured to determine whether power is required by a respective corresponding hardware component or during a respective time period to perform a respective function of the implantable neurostimulator, and to generate and transmit the one or more respective requests based on the determination of whether power is required by the corresponding hardware component or during the respective time period to perform the respective function; means for determining, by the power domain firmware, whether to open a battery switch or to keep the battery switch closed in response to the one or more respective requests; and means for controlling, by the power domain firmware, the battery switch to open or remain closed in response to the determination.
It should be noted that the techniques of this disclosure are not limited to IMDs or medical devices. These techniques may be applied to any device having a battery and a battery switch. It should also be noted that the system 10 and techniques described herein may not be limited to treatment or monitoring of a human patient. In alternative examples, the system 10 may be implemented in non-human patients (e.g., primates, canines, equines, porcine, and felines). These other animals may be subjected to clinical or research treatments that may benefit from the presently disclosed subject matter.
The techniques of this disclosure may be implemented in a wide range of computing devices, medical devices, or any combination thereof. Any of the described units, circuits, or components may be implemented together or separately as discrete but interoperable logic devices. Depiction of different features as circuits or units is intended to highlight different functional aspects and does not necessarily imply that such circuits or units must be realized by separate hardware, firmware, or software components. Rather, functionality associated with one or more circuits or units may be performed by separate hardware, firmware, or software components, or may be integrated within common or separate hardware, firmware, or software components.
The present disclosure contemplates a computer-readable storage medium comprising instructions that cause a processor to perform any of the functions and techniques described herein. The computer-readable storage medium may take any of the exemplary forms of volatile, non-volatile, magnetic, optical, or dielectric media, such as RAM, ROM, NVRAM, EEPROM or tangible flash memory. The computer-readable storage medium may be referred to as non-transitory. The server, client computing device, or any other computing device may also include a more portable removable memory type to enable easy data transfer or offline data analysis.
The techniques described in this disclosure, including those attributed to various circuits and various components, may be implemented at least in part in hardware, software, firmware, or any combination thereof. For example, aspects of the techniques may be implemented within one or more processors including one or more microprocessors, DSP, ASIC, FPGA, or any other equivalent integrated discrete logic or other processor circuits, as well as any combination of such components, remote servers, remote client devices, or other devices. The term "processor circuit" or "processor circuit" may generally refer to any of the foregoing logic circuits, alone or in combination with other logic circuits, or any other equivalent circuit.
Such hardware, software, firmware may be implemented within the same device or within separate devices to support the various operations and functions described in this disclosure. Furthermore, any of the described units, circuits, or components may be implemented together or separately as discrete but interoperable logic devices. Depiction of different features as circuits or units is intended to highlight different functional aspects and does not necessarily imply that such circuits or units must be realized by separate hardware or software components. Rather, functionality associated with one or more circuits or units may be performed by separate hardware or software components or integrated within common or separate hardware or software components. For example, any of the circuits described herein may include circuitry configured to perform features attributed to that particular circuit, such as fixed function processor circuitry, programmable processor circuitry, or a combination thereof.
The techniques described in this disclosure may also be embedded or encoded in an article of manufacture that includes a computer-readable medium encoded with instructions. Instructions embedded or encoded in an article of manufacture comprising an encoded computer-readable storage medium may cause one or more programmable processors or other processors to implement one or more of the techniques described herein, such as when the instructions included or encoded in the computer-readable storage medium are executed by the one or more processors. Exemplary computer-readable storage media can include Random Access Memory (RAM), read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), flash memory, a hard disk, a compact disc ROM (CD-ROM), a floppy disk, a magnetic tape cartridge, magnetic media, optical media, or any other computer-readable storage device or tangible computer-readable media. The computer-readable storage medium may also be referred to as a storage device.
In some examples, the computer-readable storage medium includes a non-transitory medium. The term "non-transitory" may indicate that the storage medium is not embodied in a carrier wave or propagated signal. In some examples, a non-transitory storage medium may store data (e.g., in RAM or cache) that may change over time.
Various examples have been described herein. Any combination of the described operations or functions is contemplated. These and other embodiments are within the scope of the following claims. Based on the foregoing discussion and illustrations, it has been appreciated that various modifications and alterations to the disclosed examples may be made without strictly adhering to the examples and applications illustrated and described herein. Such modifications do not depart from the true spirit and scope of the various aspects of the present disclosure, including the aspects set forth in the claims.

Claims (20)

1. An implantable neurostimulator, the implantable neurostimulator comprising:
a battery configured to provide power to the implantable neurostimulator;
a battery switch configured to open and remove power from one or more components of the implantable neurostimulator, or to close to provide power to each component of the implantable neurostimulator that requires power to operate; and
processing circuitry configured to:
executing a plurality of firmware modules configured to perform respective functions of the implantable neurostimulator, at least two of the plurality of firmware modules configured to determine whether corresponding hardware components require power or require power during respective time periods to perform the respective functions, and generate and transmit one or more respective requests based on the determination of whether the corresponding hardware components require power or require power to perform the respective functions during the respective time periods; and
Executing power domain firmware, the power domain firmware configuring the processing circuitry to:
receiving the one or more respective requests;
determining whether to open the battery switch in response to the one or more respective requests; and
the battery switch is controlled to open in response to the determination.
2. The implantable neurostimulator of claim 1, wherein the one or more respective requests comprise at least one of:
a request to allow the battery switch to open at any time until further notification;
a request to prevent the battery switch from opening until further notification;
a request to prevent the battery switch from opening until expiration of a first request period; or alternatively
A request to allow the battery switch to now open but to require the battery switch to close upon expiration of a second request period.
3. The implantable neurostimulator of claim 1, wherein the one or more respective requests each allow the battery switch to open, and wherein the determination is to open the battery switch.
4. The implantable neurostimulator of claim 3, wherein therapy delivery is in a shut down cycle.
5. The implantable neurostimulator of claim 1, wherein at least one of the one or more respective requests comprises a request to block the battery switch from opening, and wherein the determination is to keep the battery switch closed.
6. The implantable neurostimulator of claim 1, wherein the power domain firmware further configures the processing circuitry to control the battery switch to open only during a given time period when each firmware module of the plurality of firmware modules does not request that the battery switch be prevented from opening during the given time period.
7. The implantable neurostimulator of claim 1, wherein the plurality of firmware modules comprise at least one of:
nonvolatile memory firmware;
device time firmware;
fuel gauge firmware;
device recharger firmware;
treatment delivery firmware;
telemetry firmware; or alternatively
The firmware is sensed.
8. The implantable neurostimulator of claim 1, further comprising:
a stimulation circuit configured to generate an electrical stimulation signal; and
telemetry circuitry configured to communicate with another device.
9. The implantable neurostimulator of claim 1, wherein the power domain firmware further configures the processing circuitry to determine a maximum duration for which the battery switch remains open in response to the one or more respective requests.
10. The implantable neurostimulator of claim 1, wherein the power domain firmware further configures the processing circuitry to store in memory a lifetime count of an accumulated amount of time the battery switch is closed and a lifetime count of an accumulated amount of time the battery switch is open.
11. A method, comprising:
generating and transmitting, by power domain firmware executing on a processing circuit and receiving one or more respective requests from at least two of a plurality of firmware modules executing on the processing circuit and configured to determine whether respective corresponding hardware components require power or whether power is required to perform respective functions of an implantable neurostimulator during respective time periods, and based on the determination of whether the corresponding hardware components require power or whether power is required to perform the respective functions during the respective time periods;
Determining, by the power domain firmware, whether to open a battery switch in response to the one or more respective requests; and
the battery switch is controlled to open by the power domain firmware in response to the determination.
12. The method of claim 11, wherein the one or more respective requests comprise at least one of:
a request to allow the battery switch to open at any time until further notification;
a request to prevent the battery switch from opening until further notification;
a request to prevent the battery switch from opening until expiration of a first request period; or alternatively
A request to allow the battery switch to now open but to require the battery switch to close upon expiration of a second request period.
13. The method of claim 11, wherein the one or more respective requests each allow the battery switch to open, and wherein the determination is to open the battery switch.
14. The method of claim 13, wherein the treatment delivery is in a shut down cycle.
15. The method of claim 11, wherein at least one of the one or more respective requests comprises a request to block the battery switch from opening, and wherein the determination is to keep the battery switch closed.
16. The method of claim 11, the method further comprising: when each firmware module of the plurality of firmware modules does not request to prevent the battery switch from opening during a given period of time, the battery switch is controlled by the power domain firmware to open only during the given period of time.
17. The method of claim 11, wherein the plurality of firmware modules comprises at least one of:
nonvolatile memory firmware;
device time firmware;
fuel gauge firmware;
device recharger firmware;
treatment delivery firmware;
telemetry firmware; or alternatively
The firmware is sensed.
18. The method of claim 17, the method further comprising:
generating, by the stimulation circuit, an electrical stimulation signal; and
communicating with another device via telemetry circuitry.
19. The method of claim 11, further comprising storing, by the power domain firmware in memory, a life count of an accumulated amount of time the battery switch is closed and a life count of an accumulated amount of time the battery switch is open.
20. A non-transitory computer-readable storage medium comprising instructions that, when executed, include a plurality of firmware modules and power domain firmware, cause processing circuitry of an implantable neurostimulator to:
Performing a corresponding function of the implantable neurostimulator;
determining whether the corresponding hardware component requires power or whether power is required to perform the respective function during the respective time period;
generating and transmitting one or more respective requests based on the determination of whether the corresponding hardware component requires power or whether power is required to perform the respective function during the respective time period;
receiving the one or more respective requests;
determining whether to open a battery switch in response to the one or more respective requests; and
the battery switch is controlled to open in response to the determination.
CN202310775392.8A 2022-06-28 2023-06-28 Coordinating the use of power-saving battery switch hardware features through multiple firmware features Pending CN117138230A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US202263367177P 2022-06-28 2022-06-28
US63/367,177 2022-06-28

Publications (1)

Publication Number Publication Date
CN117138230A true CN117138230A (en) 2023-12-01

Family

ID=88885081

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310775392.8A Pending CN117138230A (en) 2022-06-28 2023-06-28 Coordinating the use of power-saving battery switch hardware features through multiple firmware features

Country Status (1)

Country Link
CN (1) CN117138230A (en)

Similar Documents

Publication Publication Date Title
US11202908B2 (en) Selective termination of stimulation to deliver post-stimulation therapeutic effect
US9168374B2 (en) Intra-burst pulse variation for stimulation therapy
US9724511B2 (en) Incontinence therapy
US20210299442A1 (en) Incontinence therapy
US10512427B2 (en) Bladder fullness level indication based on bladder oscillation frequency
US9446235B2 (en) Low frequency electrical stimulation therapy for pelvic floor disorders
US20200230406A1 (en) Managing therapy delivery based on physiological markers
US11744499B2 (en) Monitoring bladder dysfunction using a probability function
EP4003498B1 (en) Incontinence therapy
US20210316145A1 (en) Patient specific optimization algorithm
EP4299108A1 (en) Coordinating use of power-saving battery switch hardware feature by multiple firmware features
CN117138230A (en) Coordinating the use of power-saving battery switch hardware features through multiple firmware features
US20220409907A1 (en) Hibernation of electronics in an implantable stimulator
US20230011629A1 (en) Determining longevity of batteries using depth of discharge
WO2024035909A1 (en) Stimulation patterns for therapy

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination