Abstract
Systems and methods for providing stimulation and neural response sensing in an implantable stimulation device are disclosed. A neural response database records baseline neural response information from one or more sensing electrodes for a given pole configuration that provides stimulation to a patient. The stimulation device can then take neural response measurements at the sensing electrode(s) and the system (possibly with the assistance of an external device in communication with the stimulation device) can compare the neural response measurements with the baselines. If they differ, as they might if the electrode array has moved in the patient's tissue, an algorithm can be used to move the position of the pole configuration in the electrode array to cause the neural response measurements to equal, or at least come closer to, the neural response baselines.
Claims
1-36. (canceled)
37. A method for adjusting a position of a pole configuration in an electrode array of an implantable stimulation device, the method comprising: (a) providing stimulation to the patient's tissue using the pole configuration at a position in the electrode array; (b) measuring a neural response from the pole configuration at the position at one or more sensing electrodes in the electrode array as a measured response; (c) comparing the measured response at each of the at least one sensing electrodes to a baseline response at a corresponding one of the sensing electrodes; and (d) if the measured response does not equal the baseline response, adjusting the position of the pole configuration in the electrode array and repeating steps (a)-(c) until the measured response equals or is closer to the baseline response.
38. The method of claim 37, wherein in step (d) the position of the pole configuration is adjusted until the measured response equals the baseline response.
39. The method of claim 37, wherein in step (c) at least one feature of the measured response at each of the sensing electrodes is compared to the at least one feature of the baseline response at the corresponding one of the sensing electrodes.
40. The method of claim 39, wherein the at least one feature comprises a time or speed at which the measured response and the baseline response arrives at each of the sensing electrodes.
41. The method of claim 39, wherein the at least one feature comprises a duration of the measured response and the baseline response at each of the sensing electrodes.
54. The system of claim 53, wherein the algorithm is configured to operate wholly in the implantable stimulation device.
55. The system of claim 53, wherein steps (a) and (b) are configured to operate in the implantable stimulation device, and wherein steps (c) and (d) are configured to operate in the external device.
56. The system of claim 53, wherein in step (c) at least one feature of the measured response at each of the sensing electrodes is compared to the at least one feature of the baseline response at the corresponding one of the sensing electrodes, wherein the at least one feature comprises: a time or speed at which the measured response and the baseline response arrives at each of the sensing electrodes; a duration of the measured response and the baseline response at each of the sensing electrodes; or an amplitude of the measured response and the baseline response at each of the sensing electrodes.
42. The method of claim 39, wherein the at least one feature comprises an amplitude of the measured response and the baseline response at each of the sensing electrodes.
43. The method of claim 37, wherein prior to step (a), determining the baseline response by providing stimulation to the patient's tissue using the pole configuration at an initial position in the electrode array; measuring a neural response from the pole configuration at the initial position at the one or more sensing electrodes in the electrode array; and storing at least one feature of the measured neural response as received at each of the one or more sensing electrodes as the baseline response.
44. The method of claim 43, wherein in step (a) the stimulation is first provided using the pole configuration at the initial position.
45. The method of claim 37, further comprising receiving an indication of a symptom of a patient at an external device in communication with the implantable stimulation device, wherein the method is automatically initiated if the indication is not suitable relative to a threshold.
46. The method of claim 37, further comprising prior to step (a) determining a posture of the patient, wherein the baseline response at the one or more sensing electrodes corresponds to the determined posture of the patient.
47. The method of claim 37, wherein in step (d) the measured response and the baseline response are used to determine a direction for adjusting the position of the pole configuration.
48. The method of claim 47, wherein in step (d) the measured response and the baseline response are further used to determine a distance for adjusting the position of the pole configuration in the direction.
49. The method of claim 37, wherein step (d) further comprises adjusting other stimulation parameters of the pole configuration that do not affect the position of the pole configuration.
50. The method of claim 37, wherein there are a plurality of sensing electrodes.
51. The method of claim 50, wherein the sensing electrodes are aligned rostral-caudally in the electrode array.
52. The method of claim 50, wherein the sensing electrodes are aligned medio-laterally in the electrode array.
53. A system, comprising: an implantable stimulation device comprising an electrode array configured to provide stimulation to a patient's tissue; an external device configured to communicate with the implantable stimulation device; and an algorithm configured to operate at least in part in the implantable stimulation device, wherein the algorithm is configured to (a) provide stimulation to the patient's tissue using the pole configuration at a position in the electrode array; (b) measure a neural response from the pole configuration at the position at one or more sensing electrodes in the electrode array as a measured response; (c) compare the measured response at each of the at least one sensing electrodes to a baseline response at a corresponding one of the sensing electrodes; and (d) if the measured response does not equal the baseline response, adjust the position of the pole configuration in the electrode array and repeating steps (a)-(c) until the measured response equals or is closer to the baseline response.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0030] FIG. 1 shows an Implantable Pulse Generator (IPG), in accordance with the prior art.
[0031] FIGS. 2A and 2B show an example of stimulation waveforms producible by the IPG or in an External Trial Stimulator (ETS), in accordance with the prior art.
[0032] FIG. 3 shows stimulation circuitry useable in the IPG or ETS, in accordance with the prior art.
[0033] FIG. 4 shows an ETS environment useable to provide stimulation before implantation of an IPG, in accordance with the prior art.
[0034] FIG. 5 shows various external devices capable of communicating with and programming stimulation in an IPG and ETS, in accordance with the prior art.
[0035] FIG. 6 shows circuitry in an IPG or ETS for providing simulation to an electrode array and for sensing neural responses such as Evoked Compound Action Potentials (ECAPs) using the electrode array.
[0036] FIGS. 7A and 7B show movement of an electrode array in a patient's tissue causing a stimulating pole configuration to become misaligned with a stimulation target in the tissue.
[0037] FIG. 8 shows a Graphical User Interface (GUI) for establishing a pole configuration in an electrode array, and shows use of an electrode configuration algorithm to establish poles in the configuration at prescribed positions.
[0038] FIG. 9 shows an ECAP baseline database which stores baseline ECAP measurements for a given pole configuration, and for a number of patient postures.
[0039] FIGS. 10A-10C show examples of ECAP measurements at sensing electrodes, and how such measurements can differ from ECAP baselines when the electrode array moves in the tissue.
[0040] FIG. 11 shows a therapy adjustment algorithm which compares ECAP measurements to the ECAP baselines to, among other details, move the position of the pole configuration to cause the ECAP measurements to equal, or at least come closer to, the ECAP baselines.
[0041] FIGS. 12A and 12B show further details of the algorithm, and specifically steps that can be used to adjust the position of the pole configuration.
[0042] FIG. 13 shows how the pole configuration position can be adjusted in a rostral-caudal direction by the algorithm in an informed manner by comparison of the measured and baseline ECAPs.
[0043] FIGS. 14A and 14B show how the pole configuration position can be adjusted in a medio-lateral direction by the algorithm in an informed manner by comparison of the measured and baseline ECAPs.
[0044] FIGS. 15A and 15B show how the pole configuration position can be adjusted when the stimulating and sensing electrodes are on different leads.
DETAILED DESCRIPTION
[0045] An increasingly interesting development in pulse generator systems, and in Spinal Cord Stimulator (SCS) pulse generator systems specifically, is the addition of sensing capability to complement the stimulation that such systems provide. For example, and as explained in U.S. Patent Application Publication 2017/0296823, it can be beneficial to sense a neural response in neural tissue that has received stimulation from an SCS pulse generator. One such neural response is an Evoked Compound Action Potential (ECAP). An ECAP comprises a cumulative response provided by neural fibers that are recruited by the stimulation, and essentially comprises the sum of the action potentials of recruited fibers when they “fire.” An ECAP is shown in FIG. 6, and comprises a number of peaks that are conventionally labeled with P for positive peaks and N for negative peaks, with P1 comprising a first positive peak, N1 a first negative peak, P2 a second positive peak and so on. Note that not all ECAPs will have the exact shape and number of peaks as illustrated in FIG. 6, because an ECAP's shape is a function of the number and types of neural fibers that are recruited and that are involved in its conduction. An ECAP is generally a small signal, and may have a peak-to-peak amplitude on the order of tens of microVolts to tens of milliVolts.
[0046] Also shown in FIG. 6 is circuitry for an IPG 100 (or an ETS) that is capable of providing stimulation and sensing a resulting ECAP or other neural response or signal. The IPG 100 includes control circuitry 102, which may comprise a microcontroller for example such as Part Number MSP430, manufactured by Texas Instruments, which is described in data sheets at http://www.ti.com/lsds/ti/microcontroller/16-bit_msp430/overview.page?DCMP=MCU_other& HQS=msp430. Other types of controller circuitry may be used in lieu of a microcontroller as well, such as microprocessors, FPGAs, DSPs, or combinations of these, etc. Control circuitry 102 may also be formed in whole or in part in one or more Application Specific Integrated Circuits (ASICs), such as those described earlier.
[0047] The IPG 100 also includes stimulation circuitry 28 to produce stimulation at the electrodes 16, which may comprise the stimulation circuitry 28 shown earlier (FIG. 3). A bus 118 provides digital control signals from the control circuitry 102 (and possibly from an ECAP algorithm 124, described below) to one or more PDACs 40.sub.i or NDACs 42.sub.i to produce currents or voltages of prescribed amplitudes (A) for the stimulation pulses, and with the correct timing (PW, f). As noted earlier, but not shown in FIG. 6, a switch matrices could intervene between the PDACs and the electrode nodes 39, and between the NDACs and the electrode nodes, to route their outputs to one or more of the electrodes, including the conductive case electrode 12 (Ec). Control signals for switch matrices, if present, may also be carried by bus 118. Notice that the current paths to the electrodes 16 include the DC-blocking capacitors 38 described earlier, which provide safety by preventing the inadvertent supply of DC current to an electrode and to a patient's tissue. Passive recovery switches 41.sub.i (FIG. 3) could also be present, but are not shown in FIG. 4 for simplicity.
[0048] IPG 100 also includes sensing circuitry 115, and one or more of the electrodes 16 can be used to sense neural responses such as the ECAPs described earlier. In this regard, each electrode node 39 is further coupleable to a sense amp circuit 110. Under control by bus 114, a multiplexer 108 can select one or more electrodes to operate as sensing electrodes by coupling the electrode(s) to the sense amps circuit 110 at a given time, as explained further below. Although only one multiplexer 108 and sense amp circuit 110 is shown in FIG. 6, there could be more than one. For example, there can be four multiplexer 108/sense amp circuit 110 pairs each operable within one of four timing channels supported by the IPG 100 to provide stimulation. The analog waveform comprising the ECAP is preferably converted to digital signals by one or more Analog-to-Digital converters (ADC(s)) 112, which may sample the waveform at 50 kHz for example. The ADC(s) 112 may also reside within the control circuitry 102, particularly if the control circuitry 102 has A/D inputs.
[0049] As shown, an ECAP algorithm 124 is programmed into the control circuitry 102 to receive and analyze the digitized ECAPs. One skilled in the art will understand that the ECAP algorithm 124 can comprise instructions that can be stored on non-transitory machine-readable media, such as magnetic, optical, or solid-state memories within the IPG 100 (e.g., stored in association with control circuitry 102).
[0050] In the example shown in FIG. 6, the ECAP algorithm 124 operates within the IPG 100 to determine one or more ECAP features, which may include but are not limited to: [0051] a height of any peak (e.g., H_N1) present in the ECAP; [0052] a peak-to-peak height between any two peaks (such as H_PtoP from N1 to P2); [0053] a ratio of peak heights (e.g., H_N1/H_P2); [0054] a peak width of any peak (e.g., the full width half maximum of a N1, FWHM_N1); [0055] an area under any peak (e.g., A_N1); [0056] a total area (A_tot) comprising the area under positive peaks with the area under negative peaks subtracted or added; [0057] a length of any portion of the curve of the ECAP (e.g., the length of the curve from P1 to N2, L_P1 to N2) [0058] any time defining the duration of at least a portion of the ECAP (e.g., the time from P1 to N2, t_P1 to N2); [0059] a time delay from stimulation to issuance of the ECAP, which is indicative of the neural conduction speed of the ECAP, which can be different in different types of neural tissues; [0060] non-time domain measurements such as frequency analysis in the Fourier domain, or wavelet analysis more generally; [0061] any mathematical combination or function of these variables (e.g., H_N1/FWHM_N1 would generally specify a quality factor of peak N1).
[0062] Once the ECAP algorithm 124 determines one or more of these features, it may then adjust the stimulation that the IPG 100 provides, for example by providing new data to the stimulation circuitry 28 via bus 118. This is explained further in U.S. Patent Application Publications 2017/0296823 and 2019/0099602. In one simple example, the ECAP algorithm 124 can review the height of the ECAP (e.g., its peak-to-peak voltage), and in closed loop fashion adjust the amplitude I of the stimulation current to try and maintain the ECAP to a desired value.
[0063] FIGS. 7A and 7B illustrate movement of the electrode array 17 within a patient, with FIG. 7A showing an initial position and FIG. 7B a moved position. (Electrode array 17 can include the array 17′ from an ETS 50 as well as shown in FIG. 4, but from this point discussion assumes use of an IPG with its array 17. The disclosed technique however can however be used with an ETS and its electrode array 17′ as well). The electrode arrays 17 are shown in cross section as positioned in the epidural space 132 of the spinal column proximate to the dura 134. In the initial position of FIG. 7A, a stimulation program has been determined for the patient that is effective to recruit a stimulation target in the spinal column, represented generically as element 136. In this example, the stimulation program defines a particular pole configuration, which in this example comprises a tripole, with a central cathode pole 130b and two flanking anodes 130a and 130c. The tripole is formed in this example with the cathode pole 130b at electrode E2, which receives 100% of a specified current A output by the stimulation circuitry 28 as a cathodic current (100%*−A). The anode poles 130a and 130c are formed at electrodes E1 and E3, which share the specified current equally as an anodic current (50%*+A). Use of a tripole is merely one example, and other pole configurations (e.g., monopoles, bipoles, etc.) could be used as well.
[0064] The poles 130 in a pole configuration do not need to be positioned at the physical position of the electrodes as shown in FIGS. 7A and 7B. Instead, the poles 130 can be positioned at any random position in the electrode array 17. This is shown in FIG. 8, which additionally shows the GUI 82 on the external device (e.g., the clinician programmer 70 or external controller 60, FIG. 5) used to program the IPG. The GUI 82 can include a leads interface 140 showing a depiction of the electrode array 17, perhaps with reference to its location within the patient (e.g., with reference to various vertebrae). The GUI 82 can further include a parameters interface 142 used to set various stimulation parameters, such as the amplitude (A), pulse width (PW), and frequency (F) of the stimulation pulses. In reality the parameters interface 142 can be much more complicated, and can include many other options to define the stimulation to be provided. A cursor 144, controllable by a mouse or other computer peripheral, can be used to select particular electrodes 16 in the electrode array 17, or otherwise to set the position the poles 130 in the electrode array. A selected electrode or pole can be designated as an anode or cathode in the parameters interface 142, and a percentage X % of the current A that that electrode or pole is to receive can also be defined.
[0065] When the poles 130 in a pole configuration are not positioned at the physical position of the electrodes, an electrode configuration algorithm 150 operable in the external device 60 or 70 can compute what physical electrodes should be active, and with what polarities and current percentages, to best form the poles at the desired positions. The reader is assumed familiar with this electrode configuration algorithm 150, and it is described further for example in U.S. Patent Application Publication 2019/0175915. For example, assume in FIG. 8 that cathode pole 130b is to receive 100% of the cathodic current (%100*-A), and anode poles 130a and 130c are each to receive 50% of the anodic current (50%*+A). Because the cathode pole 130b is closest to electrode E3 but also somewhat close to E11, the electrode configuration algorithm 150 may activate both of electrodes E3 and E11 in a manner to share the cathodic current (75%*-A and 25%*-A respectively) to in effect create cathode pole 130b as a virtual pole between E3 and E11. Likewise, anode pole 130a is close to E5, but also somewhat close to E13 and E4. As such, the electrode configuration algorithm 150 may share the anodic current allocated to anode pole 130a (50%*+A) by prescribing currents of 35%*+A, 10%*+A, and 5%*+A at E5, E13, and E4 respectively. Anode pole 130c may likewise be defined by the electrode configuration algorithm 150 by prescribing currents of 35%*+A, 10%*+A, and 5%*+A at electrodes E1, E9, and E2 respectively.
[0066] Returning to FIG. 7B, it is seen that the electrode array 17 has moved (to the left) in the patient. This may occur due to a change in the patient's posture. For example, the patient may have moved from a sitting to a standing position, causing the electrode array to move slightly. The electrode array 17 may also have moved over time due to lead migration. In any event, the position of the poles 130 has now shifted relative to the stimulation target 136. As a result, the stimulation program may no longer adequately recruit this target 136, which may worsen the patient's pain symptoms. This reduction in effectiveness may be indicated by the patient. For example, the patient may enter a pain score in the graphical user interface of an external device such as his external controller 60 (FIG. 5). The patient may for example rate his pain using a “star rating” system, with five star signaling good pain relief, as in FIG. 7A. In FIG. 7B, where the electrode array has shifted and thus the pole configuration no longer targets the stimulation target 136 as it once did, it is seen that the patient is now experiencing more pain, providing only a three-star rating.
[0067] Also shown in FIGS. 7A and 7B is neural conduction of an ECAP as produced by the stimulation program. The ECAP generally travels by neural conduction both rostrally toward the brain and caudally away from the brain, although travel in only one direction is shown. The ECAP passes through neural tissue in the spinal cord with a speed which is dependent on the neural fibers involved in the conduction. In one example, the ECAP may move at a speed of about 5 cm/1 ms.
[0068] In this disclosure, ECAP sensing is used to infer that the electrode array 17 may have moved in the patient, with a therapy adjustment algorithm 160 (FIG. 11 et seq.) used to adjust the position of the pole configuration to compensate for such movement. The therapy adjustment algorithm 160 may comprise part of the ECAP algorithm 124, as shown in FIG. 6, and may similarly comprise instructions that can be stored on non-transitory machine-readable media in the IPG.
[0069] In a preferred example of the technique, one or more sensing electrodes are selected (e.g., by multiplexer 108, FIG. 6) to sense an ECAP in response to the prescribed stimulation. Three such sensing electrodes—S1, S2, and S3—are illustrated in FIGS. 7A and 7B. The sensing electrodes Si may be selected by the user (e.g., using GUI 82 of an external device), or may be selected by the ECAP algorithm 124 or the therapy adjustment algorithm 160 in the IPG. Preferably, the sensing electrodes Si are selected at a logical distance from the stimulating electrodes. For example, in FIGS. 7A and 7B, where electrodes E1-E3 are used for stimulation, electrodes E6-E8 may be chosen as sensing electrodes S1-S3. Choosing sensing electrodes Si at a sensibly far distance from the stimulating electrodes is desired to make sure that stimulation artifacts (i.e., the electric field produced in the tissue due to the stimulation) are not too large at the sensing electrodes, which artifacts might otherwise mask the small-signal ECAP signals. However, the sensing electrodes should also be suitably close to the stimulating electrodes such that the ECAP, which has an amplitude that attenuates with distance, is still large enough to be reliably sensed.
[0070] FIG. 9 shows an ECAP baseline database 135 that can be used in conjunction with the therapy adjustment algorithm 160. Database 135 stores baseline information about sensed ECAPs that can be used to infer that the electrode array might have moved in the patient, as explained subsequently. The database 135 can be populated during a fitting session. For example, once an effective pole configuration has been determined for the patient (such as the tripole described earlier), ECAP baseline measurements can be taken at the selected sensing electrodes and stored in the database 135. The database 135 may also be populated, or updated, during operation of the therapy adjustment algorithm 160. The database 135 may be stored in the IPG, such as in conjunction with the therapy adjustment algorithm 160, or may also reside in an external device 60 or 70.
[0071] In FIG. 9, baseline information is shown for sensing electrodes Si (Sib), S2 (S2b) and S3 (S3b). The baseline information may comprise any information that is useful to understanding ECAPs as sensed in the patient before the electrode array 17 has moved. It may comprise the entire waveform of the ECAP as sensed at the electrodes, or one or more ECAP features described earlier (e.g., H_N1, H_PtoP, H_N1/H_P2, etc.).
[0072] Because patient posture can cause the electrode array 17 to move, ECAP baseline information is preferably stored in database 135 in association with particular postures. For example, database 135 can store ECAP baseline information at the various sensing electrodes when the patient is standing (S1b=ST1, S2b=ST2, S3b=ST3), prone (e.g., S1b=PR1), supine (e.g., S1b=SU1). ECAP baseline information can also be stored when a patient is engaging in a particular activity, such as walking (e.g., S1b=WA1). (“Posture” as used herein also includes patient activity for simplicity). Optionally, the ECAP baseline information may also be stored with a pain score. As explained later, this can inform the therapy adjustment algorithm 160 when it may be necessary to adjust the patient's therapy.
[0073] FIG. 10A-10C shows ECAP baselines S1b-S3b as sensed at the sensing electrodes S1-S3 and stored when the electrode array 17 is in its initial position in FIG. 7A (solid lines). In this example, the ECAP passes the sensing electrodes S1-S3 sequentially in accordance with the speed of neural conduction. In reality, the amplitude of the ECAP (e.g., its peak-to-peak height) would reduce at more distant sensing electrodes as the ECAP disperses in the neural tissue; for example, the magnitude of the ECAP as sensed at S3 would be smaller than at S1. This however is not shown for convenience.
[0074] FIGS. 10A-10C additionally show manners in which sensed ECAPs can change when the electrode array 17 has moved from its initial position in FIG. 7B (dotted lines). As these figures show, movement of the electrode array 17 can cause various changes in the sensed ECAPs, and such changes can result from different factors. For example, movement of the electrode array 17 may bring the electrodes closer to or farther from the neural tissue (e.g., the dura 134) in the spinal column. Movement will also more generally change the volume of neural tissue involved in the conduction of the ECAPs. In any event, such movement can manifest in different ways. In FIG. 10A, the ECAPs do not change shape, but generally arrive at the sensing electrodes at a slightly later time, Δt. In FIG. 10B, the ECAPs do not change shape, but generally arrive at the sensing electrodes at progressively longer times Δt1, Δt2, and Δt3, indicating at the neural conduction has become slower. In FIG. 10C, the duration of the ECAP changes, becoming longer and more dispersed at more distant sensing electrodes (like S3). Movement of the electrode array can also cause the sensed ECAP to vary in amplitude (e.g., FIG. 14B). Other changes in the sensed ECAPs can result as the electrode array 17 moves, and FIGS. 10A-10C simply show some examples of this. The important point is changes in measured ECAPs from their baseline values S1b can indicate that the electrode array 17 might have moved in the tissue, and therefore that the prescribed therapy is no longer being provided to the optimal position. Accordingly, and as explained later, the position of pole configuration in the electrode array 17 can be moved using the therapy adjustment algorithm 160 to account for such movement and to adjust therapy to the proper position.
[0075] FIG. 11 shows an example of therapy adjustment algorithm 160. Not all shown steps are necessary in useful embodiments, and other steps could be added. Further, while certain aspects of the algorithm 160 occur within the IPG (e.g., as part of ECAP algorithm 124), portions may also occur in conjunction with an external device 60 or 70 in communication with the IPG, as assisted by telemetry between the two devices. For example, the IPG may provide stimulation and measurement neural response such as ECAPs, and wirelessly telemeter the ECAP, or its features, to the external device. The external device may in turn compare the measures neural responses to baseline responses, and if necessary adjust the position of the pole configuration by sending appropriate control instructions to the IPG. Alternatively, the algorithm 160 may operate exclusively within the IPG.
[0076] Step 162 begins with population of the database 135 with baseline ECAP information, which again can occur at different patient postures, as explained previously with respect to FIG. 9. At step 164, a patient enters a pain score indicative of his symptoms at an external device, such as his patient external controller 60. This can be a useful step in the algorithm 160, as operation of the algorithm 160 may not be necessary unless the patient's symptoms worsen. At step 164, operation of the algorithm 160 can continue if the patient's pain score drops, such as below a threshold (e.g., three stars or less). Optionally, the patient's posture (step 165) can also be determined at step 164 (using accelerometer 31 (FIG. 1) for example), with the baseline pain score for the relevant posture pulled from the database 135. This can allow the algorithm 160 to determine at step 164 if the patient's entered pain score is low relative to that baseline. For example, if the baseline pain score for a particular posture is three stars, and the patient enters three stars, the algorithm 160 may stop as the patient's condition hasn't worsened.
[0077] In any event, the algorithm 160 continues at step 165 by determining the patient's posture as just mentioned (if not determined already). This posture determination can be made in different manners, but in one example can involve querying information from the accelerometer 31 (FIG. 1) inside of the patient's IPG. Other means of determining a patient's posture in the IPG can be used as well, such as the technique disclosed in U.S. Pat. No. 9,446,243. At step 166, ECAP sensing is initiated, and at step 168, measured ECAPs S1m, S2m, and S3m are determined at the sensing electrodes. In step 170, the baseline ECAP information S1b, S2b, and S3b for the determined posture (step 165) is queried, and the measured information is compared to the baseline information. That is, S1m is compared to S1b, S2m is compared to S2b, and S3m is compared to S3b.
[0078] This comparison step 170 can occur in different manners, and can involve review of one or more ECAP features such as those described earlier. For example, the timing of arrival of the ECAP as gleaned from various peaks in the baseline and measured ECAPs can be compared similar to what was shown in FIGS. 10A and 10B, as can their amplitudes; the duration of the ECAPs can be compared, similar to what was shown in FIG. 10C, etc.
[0079] It should be noted that therapy adjust algorithm 160 doesn't necessarily need to start upon receipt of a patient pain score at step 164. In another example, the IPG may be programmed to take periodic ECAP measurements, Sim. In this case, these measurements Sim can automatically be compared to the baseline measurements S1b (e.g., at step 170) for a determined posture to allow the algorithm 160 to decide if therapy adjustment might be indicated.
[0080] Steps 172-176 are example steps used to determine the type of therapy adjustment to be made, which can depend on the consistency between the various comparisons. These steps are not strictly required in a useful implementation, but are useful in determining whether it may be reasonable to not change therapy at all (step 178); to select new sensing electrodes (step 177); to change only the stimulation parameters (such as amplitude, pulse width or frequency) that do not affect the position of the pole configuration (step 180); or to change the position of the pole configuration 200 as may be necessary in the case of electrode array movement.
[0081] Step 172 inquires whether ECAP feature changes are consistent at a given sensing electrode, such as at S1. If not, step 176 can inquire whether ECAP feature changes are present at other sensing electrodes. If not, the measured ECAPs Sim vary too randomly when compared to the baseline ECAPs S1b, and it may then be unwarranted to change stimulation (step 178). Alternatively, because different sensing electrodes might provide a clearer and more consistent picture, new sensing electrodes can be chosen in step 177, and the process repeated by taking new ECAP measurements Sim at step 168. If at step 176 ECAP feature changes are present at other sensing electrodes, there may be enough consistency to warrant adjusting stimulation parameters (e.g., A, PW, F) that don't involve adjusting the position of the stimulation in the electrode array (step 180).
[0082] If at step 172 there are consistent ECAP features at a given sensing electrode, then step 174 can inquire whether such feature changes are consistent at the other sensing electrodes. If not, there may again be reason to adjust stimulation parameters, but not the position of the pole configuration (step 180). By contrast, if such feature changes are consistent at the other sensing electrodes—like the feature changes shown in FIGS. 10A-10C—this may suggest that the electrode array 17 has moved. Therefore, the algorithm 160 may determine that it is warranted to move the position of the pole configuration (step 200).
[0083] Further details regarding how the algorithm 160 can adjust the position of the pole configuration at step 200 are shown in FIG. 12A. A goal of step 200 is to change the position of the pole configuration in the electrode array 17 until the measured ECAPs (Sim) equal the baseline ECAPs (Sib), or at least until Sim is brought closer to S1b. Thus, in a first step 210, the pole configuration is adjusted to a new position. Notice in this step that movement of the pole configuration can involve use of the electrode configuration algorithm 150 (FIG. 8) to determine which electrodes to activate, and with what polarities and current percentages.
[0084] In step 212 ECAP sensing is initiated, and in step 214 ECAP measurements S1m, S2m, and S3m are taken. At this point it may be reasonable to receive the patient's pain score again to gauge whether the position adjustment has been effective, in step 216. If the patient's pain score is no longer low, it may be reasonable to simply allow the patient to accept the position-adjusted therapy without need to compare the ECAP measurements Sim to the ECAP baselines S1b. Further, in step 226, because the patient's symptoms have improved, it may be reasonable to allow the patient to store the ECAP measurements Sim as the new baseline measurements S1b for the posture determined earlier (FIG. 11, step 165), and therefore the patient's external device may prompt the patient to this effect. Thus, the ECAP baselines S1b can be set to Sim in the database 135, and the pain score at step 216 can also be stored in the database for the determined posture as well.
[0085] At this point (step 226), even though the position-adjusted therapy has improved the patient's symptoms, it may be reasonable to continue adjusting the position; perhaps the patient's symptoms can be further improved, and an even better pain score received. Therefore, the algorithm 160 may continue to step 238, which prompts the patient via his external device 60 whether the patient would like to continue adjusting the pole configuration position, and/or whether the patient would additionally like to experiment with changing other stimulation parameters (A, PW, F) that do not affect the position at which the pole configuration is applied in the electrode array. If the patient wishes no further adjustments, the algorithm 160 can end. Else, the algorithm 160 returns to step 210, which moves the pole configuration again, and allows the process to repeat.
[0086] Returning to step 216, if the patient's pain score is low, the algorithm in step 218 can compare the ECAP measurements Sim to the ECAP baselines S1b retrieved earlier (step 170, FIG. 11) to see whether they are equal in step 220. As one skilled will appreciate, determining that these measured and baseline values are equal does not necessarily mean that they are exactly equal. Instead, “equal” in this context can include some margin of error, which can depend on the ECAP features that are compared. For example, the peaks in the measured and baseline ECAPs can be said to be equal if they differ in time (e.g., Δt; FIG. 10A) by a very small amount (e.g., 0.01 ms); the ECAP durations (e.g., FIG. 10C) can be said to be equal if they are if they again differ by a small amount (e.g., 0.1 ms), etc.
[0087] If the measured and baseline values are equal, the algorithm 160 will assume, despite the patient's low pain score, that the position of the pole configuration appears to be optimized, and may notify the patient of that fact in step 222. However, the patient may still benefit from adjustments to stimulation, even if such adjustments move the position of the pole configuration. Therefore, the patient may be prompted at step 222 to see whether they would like to adjust any stimulation parameters, or if the algorithm 160 should end (not shown). Such adjustments at step 222 can be freely chosen by the patient, perhaps as assisted by the use of other optimization algorithms beyond the scope of this disclosure. In any event, if the patient's symptoms improved as reflected in an entered pain score (step 224), the algorithm 160 may once again take ECAP measurements (step 225), and prompt the patient whether to store such measurements as the new baselines (step 227), similar to what occurred in step 226 above. If the patient's symptoms aren't improved at step 224 although the pole position appears optimized, the patient may continue to iteratively adjust stimulation parameters that don't affect pole configuration position at step 229, hopefully eventually leading to improved symptoms, and to steps 225 and 227 as discussed above.
[0088] Returning to step 220, if ECAP measurements do not equal the ECAP baselines, the algorithm 160 will proceed to adjust the pole configuration to yet another new position. This can occur in a number of ways, and can be assisted by the use of counters (Count 1 and Count 2), which keep the algorithm 160 from running in an infinite loop in case a match between the ECAP measurements Sim and the ECAP baselines S1b cannot be established. Assume for example that Count 1 has a threshold of four, and Count 2 has a threshold of three. If in step 220 a match cannot be established, Count 1 is incremented (from zero to one) in step 230, and is compared to its threshold (of four) in step 232. Because Count 1's threshold is not met at this point, the algorithm 160 returns to step 210, thus allowing the algorithm to move the pole configuration to another new position, allowing the process to repeat. This is useful, because it allows the algorithm 160 to iteratively try a number of new pole configuration positions, have the patient rank them (step 216), and have new ECAP measurements Sim compared to the baselines S1b (step 220).
[0089] Once Count 1's threshold is met—i.e., after four new pole configuration positions are assessed but with no match at step 220—the algorithm 160 proceeds to step 234 where Count 2 is incremented (to one) and Count 1 is reset (to zero). Count 2 is compared to its threshold (three) in step 236, and if this threshold is not met, the patient's external device can prompt whether the patient wishes to continue adjusting the position of the pole configuration in step 238. Alternatively, the algorithm 160 in step 238 may also allow the patient to adjust other stimulation parameters that do not affect the position of the pole configuration (e.g., A, PW, F). If the patient desires to continue moving the pole configuration, the algorithm 160 may continue to try up to four more pole configuration positions, as set by Count 1's threshold. Otherwise, the algorithm 160 may end (not shown).
[0090] Eventually, Count 2's threshold may be met, which would mean in this example that the algorithm 160 has tried twelve different pole configuration positions, as set by Count 1 and Count 2's thresholds (four times three), but still no match has been determined at step 220. At this point, the algorithm 160 may conclude that it is unable to fully optimize the position of the pole configuration by matching the ECAP measurements Sim to the ECAP baselines S1b, as shown at step 240. As also shown, the algorithm 160—having at this point assessed twelve different pole configurations—may prompt the patient if he wishes to use the pole configuration that was best, even if Sim for that pole configuration does not equal S1b. A “best” pole configuration can be determined in different ways. For example, a best pole configuration can comprise that for which the patient entered the best (highest) pain score (step 216). Alternatively, a best pole configuration may be one in which Sim is closest to S1b, even if not “equally.” Sim can be “closer to” S1b if one or more of S1m, S2m, or S3m's features (e.g., time of arrival, duration, amplitude, etc.) is closer to the corresponding baseline S1b, S2b, S3b. In this sense, even if the algorithm 160 was not able to adjust the pole configuration position to the point where Sim equals S1b, the algorithm 160 can still improve the therapy provided to the patient, and therefore compensate for electrode array 17 movement. This being said, the hope would be that in some iteration—that for some pole configuration position—the ECAP measurements Sim and S1b would be made equal at step 220.
[0091] FIG. 12B shows the effect of use of the algorithm 160 to compensate for electrode array movement. The left shows the pole configuration (tripole) introduced earlier, which is at this point optimized to recruit stimulation target 136 in the patient's tissue. At this point, the patient reports a high pain score (five stars). In the middle, it is seen that the electrode array has moved downwards. As a result, the pole configuration is no longer well aligned with the stimulation target 136, and thus the patient's pain score has dropped (three stars). This low pain score, as noted earlier, can prompt use of the algorithm 160, which may result in movement of the position of the pole configuration, as shown to the right. In this case, the pole configuration has been moved up in the electrode array by a distance d to compensate for the downward movement of the electrode array, such that the pole configuration again aligns with the stimulation target 136. Notice also how electrode configuration algorithm 150 (FIG. 8) has operated to select different electrodes with particular polarities and current percentages to place the cathode pole 130b and anodes poles 130a and 130c at their new moved positions.
[0092] How the pole configuration can be moved at step 210 (FIG. 12A) can occur in different manners. In one example, the patient may be prompted on his external device 60 how to move the pole configuration, i.e., in what direction (up, down, left, or right) and by what distance. In this regard, the patient's external device may contain a GUI similar to that shown in FIG. 8. The pole configuration can also be iteratively moved automatically by the algorithm 160. In one example, in a first iteration of step 210, the pole configuration could be moved 1 mm to the right in the electrode array 17; in a next iteration it could be moved 1 mm to the left; then 1 mm up, and 1 mm down. Once the best of these random positions is determined (i.e., where Sim best equals S1b), the process can be repeated until eventually a best pole configuration position is determined. Having said this, the pole configuration need not necessarily be moved at random in step 210, and instead can be automatically moved in a more informed manner using data gleaned from the comparison of the measured and baseline ECAPs.
[0093] FIG. 13 shows a first example of how the pole configuration can be moved in an informed manner in step 210. This example is particularly useful in adjusting the pole configuration rostrally or caudally in the electrode array 17. In this example, the speed of neural conduction of ECAPs in the patient's tissue, V.sub.ECAP, can be used to determine a distance d that the pole configuration should be moved in the electrode array, and in what direction (rostrally or caudally). V.sub.ECAP may be known a priori, or may have been measured earlier by the ECAP algorithm 124, for example, by knowing the spacing between the sensing electrodes S1, S2, and S3 in the array, and sensing the time difference at which the ECAP passes each.
[0094] The measured ECAPs Sim and the baseline ECAPs S1b as determined earlier in the algorithm 160 (FIG. 11) can be assessed to determine whether the measured ECAPs Sim are arriving at the sensing electrodes earlier in time than the baseline ECAPs S1b would reflect (−Δt), or whether the measured ECAPs Sim are arriving at the sensing electrodes later in time than the baseline ECAPs would reflect (Δt). In this regard, note that a Δt will exist for each of the sensing electrodes used (e.g., between S1m and S1b, between S2m and S2b, etc.), and it can be logical to take the average of these time shifts (AVG(Δt)). If AVG(Δt) is positive, this means that the sensing electrodes have moved farther away from the pole configuration than they used to be. If AVG(Δt) is negative, the sensing electrodes have moved nearer to the pole configuration. This could result for example if the electrode array 17 has moved by becoming straighter or more bent in the patient.
[0095] As FIG. 13 shows, if the sensing electrodes have moved farther away from the pole configuration, the pole configuration can be moved closer to the sensing electrodes, and V.sub.ECAP and AVG(Δt) can inform the algorithm 160 as to the distance d that the pole configuration should be moved—i.e., d=AVG(Δt)*V.sub.ECAP. Conversely, if the sensing electrodes have moved nearer to the pole configuration, the pole configuration can be moved farther from the sensing electrodes by a distance −d=−AVG(Δt)*V.sub.ECAP. In short, at step 210, a direction and distance in which the pole configuration can be moved can be established by a comparison of Sim to S1b. Alternatively, if the speed of the ECAP may fall within a range, from V.sub.ECAP(min) to V.sub.ECAP(max), then a range of distances, from d(max) to d(min), can be established, thus allowing different distances in this range to be tried at step 210 in different iterations of the algorithm 160.
[0096] FIGS. 14A and 14B show another example of how the pole configuration can be moved by algorithm 160 in an informed manner in step 210, and in particular as to how the pole configuration can be moved in a medio-lateral manner, that is, from left to right in the electrode array. In this example, and as shown in FIG. 14A, sensing electrodes S1, S2, and S3 are provided medio-laterally in the electrode array. The electrode array 17 in this example is shown as comprising three percutaneous leads, but a paddle lead 19 (FIG. 1) could also have been used to illustrate this example. As before, a pole configuration has been established to recruit a stimulation target 136, and in this example, the pole configuration comprises a bipole with an anode pole 131a and a cathode pole 131b. Again, these poles 131 can be positioned anywhere in the electrode array through use of the electrode configuration algorithm 150 (FIG. 8). An ECAP as sensed at sensing electrodes S1-S3 spaced medio-laterally in the electrode array is shown in FIG. 14A as well, which may comprise ECAP baselines S1b used by the algorithm 160. Because the sensing electrodes are generally equidistant from the pole configuration, the ECAP arrives at each sensing electrode at essentially the same time. Additionally, the amplitude of the ECAP is generally the same at each sensing electrode, although in reality sensing electrodes in better rostral-caudal alignment with the pole configuration (e.g., sensing electrode S2) may have larger amplitudes.
[0097] FIG. 14B shows the effect in measured ECAPs if the electrode array moves medio-laterally. For example, suppose as shown that the middle lead in the electrode array has moved to the left in the patient's tissue as shown. This will bring the pole configuration closer to S1, and further from S3. Therefore, measured ECAP S1m will increase in amplitude from its baseline S1b, while measured ECAP S3m will decrease from its baseline S3b as shown. This can indicate electrode array movement; although the examples illustrates movement of only part of the array (the middle lead), the technique can still be applicable if the entire array moves as well.
[0098] As was the case for rostral-caudal adjustment of pole configuration position in FIG. 13, the measured ECAPs and baseline ECAPs can be assessed to determine if the electrode array (or a part of the electrode array) has moved, which can inform how to move the pole configuration in step 210. A simple example is illustrated in which the algorithm 160 inquires as to which measured ECAPs are larger or smaller in amplitude compared to their baselines. For example, if S1m<S1b and S3m>S3b, then the pole configuration has moved closer to S3 and further from S1. In other words, the pole configuration has moved to the right. Therefore, at step 210, the algorithm 160 can move the pole configuration to the left to compensate and to try and bring Sim back equal to or closer to S1b. By contrast, and as shown in FIG. 14B, if S1m>S1b and S3m<S3b, then the pole configuration has moved closer to S1 and further from S3. In other words, the pole configuration has moved to the left. Therefore, at step 210, the algorithm 160 can move the pole configuration to the right to compensate, and as shown in FIG. 14B, the pole configuration has been moved a distance d to the right.
[0099] FIG. 15A shows a different example in which the sensing electrodes are on a different lead in the electrode array 17 from the electrodes involved in producing the pole configuration. As shown, electrodes on the left lead in the array are used to form the pole configuration, again a bipole, which bipole is recruiting a stimulation target 136, The right lead includes sensing electrodes, and the waveform to the right show ECAP baselines resulting form the stimulation. In this example, sensing electrode Si is closest to the pole configuration, and hence the ECAP arrives at this electrode first, and with a relatively high amplitude (Sib). Sensing electrodes S3 is furthest from the pole configuration, and hence the ECAP arrives at this electrode last, and with a relatively small amplitude (S3b).
[0100] FIG. 15B shows possible results when the leads in the electrode array 17 move relative to each other. The waveforms show ECAP measurements Sim that are both earlier in time and larger in amplitude when compared to their ECAP baseline counterparts Sib. From this, the algorithm 160 may conclude that sensing electrodes have moved closer to the stimulating electrodes used to form the pole configuration (although it may not yet be clear as to which of the leads might have moved). This can be useful in step 210 when deciding how to move the pole configuration. For example, the algorithm 160 may infer that the left lead used to form the pole configuration has moved upward in the tissue while the right lead with the sensing electrodes has stayed stationary. If so, at step 210, the algorithm 160 can move the pole configuration downward on the left lead as shown so that the pole configuration better aligns with the stimulation target 136. Presumably the algorithm would also see in this circumstance that such movement of the pole configuration would tend to bring the measured ECAPs Sim back to (or closer to) their baseline levels S1b.
[0101] However, it is also possible given the ECAP measurements Sim that the right lead with the sensing electrodes has moved downward in the tissue while the left lead used to form the pole configuration has stayed stationary. In this circumstance, there is no need to adjust the position of the pole configuration, as it is still properly aligned to recruit the stimulation target 136. The algorithm 160 may not initially be able to discern between these two possible movements of the leads, but can still try moving the pole configuration downward. However, moving the pole configuration downward would move the pole configuration further away from the stimulation target, which should cause the patient's pain score to get worse (lower). In this circumstance, and although not shown, the algorithm 160 could be modified to not move the pole configuration, but instead may take other actions. For example, the algorithm 160 could store the new ECAP measurements Sim as the ECAP baselines S1b to update them as would be warranted given the shift in position of the right lead. The algorithm 160 could also choose new sensing electrodes Si′ which would be farther away from the stimulating electrodes to readjust the relative distance between them, and again use measured ECAPs Sim at these new sensing electrodes as new baselines S1b.
[0102] Although described in the context of ECAPs, it should be noted that the disclosed technique can be used with any type of neural response to stimulation. Further, while the disclosed technique is borne out of concern for adjusting a patient's therapy in light of electrode array movement, the disclosed technique can be used to adjust a patient's therapy in any context.