|Publication number||US5107833 A|
|Application number||US 07/608,492|
|Publication date||Apr 28, 1992|
|Filing date||Nov 2, 1990|
|Priority date||Nov 2, 1990|
|Also published as||WO1992007620A1|
|Publication number||07608492, 608492, US 5107833 A, US 5107833A, US-A-5107833, US5107833 A, US5107833A|
|Inventors||Michael S. Barsness|
|Original Assignee||Medtronic, Inc.|
|Export Citation||BiBTeX, EndNote, RefMan|
|Patent Citations (4), Referenced by (129), Classifications (10), Legal Events (5)|
|External Links: USPTO, USPTO Assignment, Espacenet|
Attention is drawn to the commonly assigned, copending U.S. patent application Ser. No. 468,407, filed Jan. 22, 1990, in the name of Paul B. Wyborney, et al, which is incorporated herein by reference.
1. Field of the Invention
This invention relates to a method and apparatus for controlling the gain of an RF amplifier in response to noise, missing pulses or signal loss and providing a real-time indication of the RF telemetry signal strength to the user of a medical device programmer.
2. Description of the Prior Art
In the field of programmable implanted medical devices, such as cardiac pacemakers, tachyarrhythmia-control devices, implantable drug dispensers and nerve stimulators, it has become common to provide an interactive, transceiver system for both remotely programming operating functions, modes and parameters of the implanted device, and telemetering out data related thereto on command by RF telemetry. In nearly all such active, electronic, implanted medical devices, it has become highly desirable to have the ability to reprogram the device's modes of operation, parameters and other functions and to monitor the performance of the device, both historically and contemporaneously. Such current medical devices are designed to provide two-way telemetry by radio frequency signal transmission between the implanted device and the programming head or wand of the external programmer to provide for the exchange of binary coded transmitted information to enable the aforementioned programming by telemetry-in and the reading out of data stored in the device by telemetry-out.
For example, the Medtronic U.S. Pat. No. 4,253,466 describes an implantable digital, programmable, cardiac pacemaker pulse generator which may be programmed by the programmer described in Medtronic U.S. Pat. No. 4,250,884, both incorporated herein by reference. Such programmers as disclosed in the '884 patent are microprocessor-based and menu-driven under an overall operating routine and subroutines. Such programmers display operating conditions, commands and error messages to prompt the user in the proper use of the programming system. The system of the '466 and 884 patent sets forth the software-controlled programming of a series of Medtronic™ pacemakers, but it does not describe the telemetry-out on command of the external programmer of the programmed commands, electrogram, end of-life indicators and the like that have been developed and implemented in subsequent programming systems.
More recently, microprocessor based programmers have been developed by Medtronic, Inc. and others which are operated under the control of dedicated, plug in ROM modules to enable the operation of the system with regard to specific model or series of models of implanted pulse generators. In such systems, the programmer is incapable of operating until a plug-in module or cartridge has been properly installed. The Medtronic® MemoryMod™ cartridge enables the physician to apply the programmer to a specific set of pulse generator models. The software cartridge concept allows Medtronic, Inc. to expand and update the application of the programmer to new pulse generators and functional capabilities as they become available.
Referring now to FIG. 1-4, the Medtronic Model 9710, 9710A or 9710E programming system (hereinafter the Model 9710 system) is depicted. In FIG. 1, the programmer 10, printer 12, programming head 14 and ECG cable and electrode leads assembly 16 is depicted in a simplified form. The MemoryMod cartridge is installed in programmer 10 which includes within its case the micro processor based computing system, an LCD display, a keyboard, and an AC or battery power supply. The programmer 10 is connected to a printer 12 in order to provide a printed record of values programmed into the implanted device or received from the implanted device or ECG cable and electrode leads assembly. Compatible Medtronic printers include the Model 9712 printer and the Model 9751 system enhancement module high-speed printer. The programming head 14 must be connected for all programming and telemetry functions to the programmer 10 and will be described in greater detail hereafter. The ECG cable and electrode leads assembly 16 is required for the functions that detect the electrocardiogram and/or pacemaker signals via skin electrodes, including the "automatic threshold," "measure," and programming confirmation by way of the program confirmation indicator emitted by the pacemaker (as an alternative to confirmation by telemetry). The processing of input commands applied by way of the keyboard on the programmer to the programming system, the formatting of data for telemetry via the programming head 14, and the processing of signals picked up from skin electrodes via ECG cable and electrode leads 16 is under the control of the software contained within the MemoryMod cartridge. The programming head 14 may comprise the Medtronic Model 9713 or 9713D programming head.
In FIG. 2, the ECG cable and electrode leads assembly 16 is depicted attached via disposable skin electrodes 18 to a patient's chest. The ECG cable and patient electrodes depicted in FIG. 2 are required for programmer functions requiring detection of cardiac and pacemaker signals as mentioned hereinbefore. However, the system may be used without the assembly 16 to program data into the implanted pacemaker or interrogate the pacemaker to telemetry-out program values and data. In current implanted pacemakers, confirmation of a programming transmission occurs by automatic transfer of data via telemetry-out. Use of the ECG cable and electrode leads assembly 16 is not required for programming confirmation with these devices. However, if telemetry is not received because of strong electrical interference, the programmer will attempt to confirm the transmission by surface detection of the PCI (program confirmation indicator) issued by the pulse generator. This method of program confirmation can occur only if the programmer is connected to electrodes on the patient. As described hereinafter, improvements of the present invention are directed toward the reduction or elimination of failures in telemetry-out because of strong electrical interference.
Furthermore, advanced programming and telemetry systems envisage the transmission of the patient s electrogram directly from the pacing electrodes in contact with the heart to the programmer via the RF telemetry link in order to provide near-field and/or far field electrograms directly from the myocardium. In such systems, the effects of electrical interference and other noise on the telemetry transmission is of concern. Medtronic U.S. Pat. No. 4,556,063 (incorporated herein by reference) describes such a system for telemetering out both digital and analog data.
In order to initiate and complete all programming and telemetry functions, the programming head 14 must be properly positioned over the pulse generator so that the POSITION HEAD indicator lights go out FIG. 3 depicts the positioning of the programming head 14 against the patient's skin overlying the implanted pulse generator. The optimum positioning of thelprogramming head over the implanted pulse generator 20 is depicted in FIG. 4. In use, after the programming system is coupled together as depicted in FIGS. 1 and 2 and the pulsegenerator model is keyed into the keyboard of the programmer 10, the POSITION HEAD indicator LED 22 lights up and remains lit until a telemetry link is established between the telemetry head 14 and the implanted device 20. The indicator LED 22 goes out to indicate when the programming head is properly positioned over the implanted house generator 20. For all programming and telemetry functions, the programming head 14 must be positioned so that the POSITION HEAD indicators go out.
In the system depicted in FIGS. 1 through 4, while the programming head is held in position over the pulse generator 20, the POSITION HEAD indicator is periodically flashed each time the programmer 10 receives an invalid interval and adjusts the telemetry signal sensitivity for best reception. If the telemetry link is lost due to programming head reposition or interference, the indicator LED 22 comes on steadily. While the POSITION HEAD indicator LED 22 is on, the programming head 14 may emit a radio frequency "search" signal used to establish a telemetry link with a pulse generator 20. It is desirable to avoid prolonged application of the RF search signal since the search signal can be sensed by the pulse generator and could occasionally cause unintentional inhibition or triggering of the pulse generator 20.
The pulse generator 20 contains a reed switch responsive to the externally applied magnetic field of the programmer head 14 and an RF signal transceiver circuit for receiving, amplifying and processing telemetered-in programming or interrogation commands. Actuation of the pulse generator reed switch and signal transmission and reception is affected by the programming head position and its distance from the pulse generator 20.
The presence of electrical interference or noise strong enough to interrupt reception of telemetry from the implanted pulse generator can affect operation of the POSITION HEAD indicator lights and telemetry functions, including programming confirmation. In such cases, the POSITION HEAD indicator LED 22 may not go out, or a "TOO MUCH INTERFERENCE" or "NO TELEMETRY" message may appear in the LCD following use of a programming or telemetry function.
Hospital operating rooms, catherization laboratories and even physicians' offices are often noisy electrical environments, and such noise has been found on occasion to interfere with the proper programming or interrogation of an implanted pacemaker. Such programming and interrogation of the implanted pacemaker's function is commonly undertaken as part of the surgical implant of the implanted pulse generator. Other equipment in the operating room or in adjoining rooms or floors of the facility may generate severe electrical noise. To ensure the safety of the patient, prior systems, as explained above, have been designed conservatively to avoid misprogramming once acquisition has been obtained by closure of the reed switch of the implanted pulse generator.
To minimize the effects of strong electrical interference, the Model 9713D programming head is provided with a manually controlled, five position, telemetry receiver gain control. The instructions for use with the Model 9713D programming head indicate that in the initial operation of the programmer, the gain control should be set to its highest gain to provide the most sensitive setting. However, if the POSITION HEAD indicator lights did not go out, and if several repositions of the programming head are unsuccessful, then the user is instructed in the physician's manual to reduce the receiver sensitivity by turning the gain control to a lower setting and again repositioning the programming head for each gain setting until a setting is found that provides proper operation. Similarly, if during the use of the telemetry function or confirmation of a programming transmission, the message "TOO MUCH INTERFERENCE" or "NO TELEMETRY" appears on the programmer display, then again sensitivity is to be reduced until a setting and positioning of the programming head is found that provided proper operation.
In response to the above-described disadvantages of the prior art system, attempts have been made to provide automatic gain control circuitry (see for example, U.S. Pat. No. 4,562,840) and software subroutines e.g., those within the Medtronic MemoryMod cartridges, described hereinafter as the "old algorithm" and specifically disclosed in Medtronic U.S. Pat. No. 4,531, 523, incorporated herein by reference. As mentioned hereinbefore, the POSITION HEAD indicator light LED 22 on the programming head 14 indicates proper positioning of the programming head 14 over the implanted pulse generator 20 by going out. This is accomplished by resident software within the MemoryMod cartridges that monitors the intervals of time between RF pulses received by the programmer.
As described in Medtronic U.S. Pat. No. 4,542,532, incorporated herein by reference, the RF telemetry pulse signal is centered at 175 kHz with a band width of 25 kHz. The RF signals are pulse interval modulated with a "1" or "0" interval value. These intervals are monitored on a continuous basis by one of the processors in the programmer. If any valid interval is detected as within the valid range (732±15% micro seconds for a binary "0" and 1098±15% micro seconds for a binary "1"), a flag is set indicating this state. If any interval is received outside of the valid ranges, the flag is reset. Once every 250 ms., another processor within the programmer examines the contents of this flag. If the flag is set indicating the valid interval collected, the POSITION HEAD LED 22 is turned off. If the flag indicated an invalid collected interval, the LED 22 would be turned on. This POSITION HEAD indicator LED 22 is used by physicians to validate the condition of the link prior to requesting information from the IPG. The information uplinked by telemetry from the implanted pulse generator 20 lasts 300 ms., while the test to determine the validity of the link checks lasts 1 ms. and indicates a good or bad telemetry link, depending on the state of the single collected interval prior to the most recent 250 ms. check.
Moreover, the old algorithm set the automatic gain control at maximum to start telemetry-in and operated in an essentially uni-directional fashion to decrease the maximum gain under certain conditions to be described hereinafter. The old algorithm disadvantageously tended to leave the system operating at high gain and thus susceptible to the detection of noise in a noisy environment.
Even with these improvements incorporated in the prior art systems described above noise interference is still encountered. The physician is still instructed in the physician's manual to either identify the source of interference and eliminate it or move the patient and programmer to another location to avoid its effects.
As mentioned hereinbefore, the prior system provided the user with the POSITION HEAD LED 22 and two visual commands, or prompts, in response to weak or noisy signal reception from the implanted pulse generator 20. It would be desirable to provide the physician with a more effective automatic gain control algorithm and with a more precise indication of signal strength in relation to the then prevailing AGC setting, in order to ascertain the cause of difficulties in programming or telemetry.
It is thus an object of the present invention to provide an improved automatic gain control algorithm for discriminating telemetry signals from noise.
It is a further object of the present invention to provide telemetry signal strength display to the user of programmer.
The difficulties and deficiencies with the prior software and hardware implementations of automatic gain control and signal strength indication are alleviated and corrected in accordance with the present invention by a telemetry method and apparatus implemented in software algorithms for controlling the automatic gain control and providing a signal strength numeric display in a programming system.
The invention comprises a software controlled, external programmer for transcutaneously programming and receiving data from an implanted medical device providing a real time indication of the implanted medical device RF telemetry signal strength to the user of the device programmer while automatically optimizing gain level to minimize interference in the presence of noise. The method and apparatus involves monitoring the validity of received intervals or frames uplinked from the implanted medical device to adjust the gain of the RF amplifier in a pre-determined range. When noise is detected, indicating a relatively small signal-to-noise ratio, the automatic gain control (AGC) level is decreased, effectively tracking this condition. Similarly, lack of any signal or loss of individual RF pulses causes the AGC level to be increased. The signal strength algorithm utilizes this real-time monitoring of signal integrity and signal-to-noise ratio to provide an indication to the user. In addition to the use of current gain level, a secondary factor is included to provide stability of link factor to the signal strength indication to decrease it in the event that a significant quantity of momentary link instabilities are detected. The telemetry gain adjustment algorithm begins operation at minimum signal level, increasing gain value every 45 ms. until a maximum gain level is reached. When at maximum, the gain is reset to minimum, restarting the search. When valid telemetry signals are received, the gain is stabilized for the duration of uplink telemetry transmission.
These and other advantages of the present invention will become more apparent by referring to the following detailed description and accompanying drawings in which:
FIG. 1 depicts the programmer system hardware of the prior art in which the software implemented, automatic gain control and sensitivity indicator of the present invention may be implemented;
FIG. 2 depicts the connection of the programmer of FIG. 1 to skin electrodes through the ECG cable and electrode leads;
FIG. 3 depicts the positioning of the programming head over the implanted pulse generator and the indicator light LED for indicating proper position for both programming in and telemetry-out from the implanted pulse generator;
FIG. 4 depicts the optimum programming head position in relation to the implanted pulse generator;
FIG. 5 depicts in block diagram form the receiver stages within the programmer depicted in FIG. 1 for receiving programming confirmation and telemetered-out data;
FIG. 6 depicts data bit and frame telemetry formats of dow and uplink-telemetered data;
FIG. 7 depicts the RF signal at the high gain setting of the automatic gain control typically achieved by the old algorithm in a relatively normal background noise environment;
FIG. 8 depicts the RF signal at the low gain setting of the automatic gain control typically achieved by the new algorithm in a relatively normal background noise environment;
FIG. 9 depicts the step-wise adjustment of gain in accordance with the old and new algorithms;
FIG. 10 is a flow chart of the new algorithm for automatically adjusting the gain control;
FIG. 11 is a modified flow chart of the new algorithm of FIG. 10 usable with data frame telemetry format; and
FIG. 12 is a flow chart of the new algorithm for providing the signal strength alphanumeric display.
As stated hereinbefore, the present invention comprises an improvement in the automatic gain control of an amplification stage of the uplink or telemetry-out circuitry of the programmer system of FIG. 1-4, wherein the improvement is implemented in software, as well as the provision of a signal strength indicator for providing the user with a visual alpha-numeric readout of the prevailing signal strength during uplink telemetry. The prevailing signal strength is derived from the automatic gain control factor developed at the point when the minimum gain is set.
Referring now to FIG. 5, the Model 9710 receive system block diagram depicted therein provides a simplified representation of the automatic gain control and associated circuitry. The block diagram of FIG. 5 shows the interrelationship of the variable gain amplification stage and microprocessor in the programmer 10 with the radio frequency programming head 14 and printer 12.
The programmer 10 includes the 1 to 40 adjustable gain amplification stage 30 which receives its input signals from RF head 14 during uplink telemetry, amplifies those signals in accordance with the gain factor and applies those signals through 175 kHz band pass filter 32 to fixed amplifier 34. The total gain of the system at the output of fixed amplifier 34 varies between 175 and 7,000. The amplified gain signals are applied to a mixer stage 36 and detector 38 which compares the amplified signal to a 1.6 volt reference 40 and provides an output signal when the amplified and filtered signal exceeds the reference.
The output signal is applied to one-shot 42 to develop an interrupt signal applied to a flag input of a peripheral processing unit (PPU) microprocessor 44 which is used in the Model 9710 to process the RF burst transmitted by the IPG. This processor 44 is interrupted each time an RF burst is detected. Under normal situations (no programming of the IPG taking place), the PPU microprocessor 44 is in an "idle" mode. In this mode, interrupts are enabled, and the function of the PPU under software control of FIGS. 10 or 11 is to adjust the automatic gain value provided by the digital current source 46 to maintain a sufficient signal level for future communications. This automatic gain value controls the gain of the RF amplifier in 2 dB steps. processing unit (MPU), the PPU under software control of FIG. 12 develops and provides the signal strength indication that is displayed on the programmer LCD to assist the user in positioning the programming head over the pulse generator. Once valid uplink telemetry intervals are detected, the gain and signal strength values are frozen and the system shifts operation from the idle or acquisition mode to the uplink telemetry mode for receiving and processing bit or frame format data.
The RF burst pulse (centered at 175 kHz) is detected by detector 38 and is also filtered in filter 48 and transmitted to the printer 12. The one shot 50 develops a further signal applied to a resident microprocessor 52 for processing in order to provide a print out if commanded to do so by instructions entered in the keyboard of programmer 10.
Turning now to FIG. 6, a bit based and frame based telemetry format for uplink and downlink telemetry is generally depicted in the two top most sections of the drawing. The down and uplink data transmission format for both the bit-based and frame-based telemetry formats is shown in the lower portion of FIG. 6. The bit-based telemetry format is to be distinguished from the frame-based telemetry format to be described hereinafter. The new automatic gain control and signal strength indication algorithms of the present invention may be implemented with either telemetry format in a fashion described hereinafter.
Basically, the down and uplink telemetry transmission format involves the transmission of hundreds of frame or data bits in each block labeled "TX," "RX No. 1" and "RX No. 2." During the TX block, the external programmer transmits by downlink telemetry an interrogate command or a programming command which is followed by the uplink telemetry of the data stream from the implanted pulse generator in blocks RX No. 1 and RX No. 2. During uplink telemetry, the implanted pulse generator transmits out the data in block RX No. 1 and then repeats the same transmission in block RX No. 2, so that the external programmer can compare the two data streams for error detection.
The bit-based data transmission of ones and zeros is illustrated immediately above the down and uplink data transmission format illustration of FIG. 6. The data bits "1" and "0" are represented by intervals between 175 kHz RF burst of 1,098 and 732 micro-seconds (plus or minus 15% tolerances), respectively. The automatic gain control algorithm of the present invention compares the 1,098 and 732 micro-second intervals against intervals between received signals to determine whether or not the received signals represent noise or valid data bits in a manner to be described hereafter.
An illustration of one frame of frame-based data transmission appears immediately above the illustration of the intervals between data bits. The frame-based telemetry format consists of individual frames of uplink telemetry RF pulses that convey data by pulse position modulation. Each valid frame is 1.95 ms in length and contains five intervals between the leading RF sync pulses which bound the individual frames.
A valid frame possesses a first sync interval between two RF pulses equal to 122 micro-seconds. The next interval is a "dead" zone of 152± micro seconds. The next interval may vary in length from 0 to 305 micro seconds in 30.5 micro second steps, identifying the type of data (ID) transmitted. The actual detected interval is normalized to the beginning of the ID field and divided by the 30.5 micro-second clock to yield a value from 0 to 10.
Two further 152 micro-second dead zone intervals separate the ID field, the least significant nibble (LSN) field and the most significant nibble (MSN) field. The LSN and MSN field intervals are normalized to the beginning of each respective field and divided by 30.5 to develop a value between zero and fifteen. The last 152 micro-second interval fills out the frame length to 1.95 ms. Within each 1.95 ms. frame there should be 5 intervals separated by 175 kHz signals.
The cross-referenced '407 application describes the frame format telemetry in greater detail. For purposes of this application, the programmer is required to be able to detect and decode both bit based and frame-based data streams since both are presently employed in earlier and more recent generation implanted pulse generators.
FIGS. 7 and 8 depict representations of the RF uplink telemetry signals in the presence of noise at high gain and low gain, respectively. The typical noisy signal at high gain is depicted in FIG. 7 and contains high amplitude, closely-spaced noise excursions of virtually equal amplitude to the 175 kHz RF burst pulses depicted at A,B, and C. Thus, based on amplitude discrimination at high gain, each noise impulse would be confused with a 175 kHz RF telemetry burst, and the pulse interval modulated telemetered signal could not be decoded in the peripheral processing unit and associated software. Conversely, the typical low gain signal depicted in FIG. 8 provides adequate signal amplitude differentiation to discriminate the RF transmitted burst pulses from background noise and to decode either the bit or frame formatted, pulse interval modulated data transmitted from the implanted pacemaker. The ne algorithm of the present invention seeks to maintain the gain at or near the low gain setting rather than at the highest gain possible in the presence of noise.
In this regard, it should be noted that implanted pacemaker pulse generators of the type described in the aforementioned U.S. Pat. No. 4,556,063, provide RF telemetry-out signals in the 250 to 300 mv peak-to-peak range, assuming a two inch gap between the implanted pulse generator 20 and the programming head 14 arranged as depicted in FIG. 4. The minimum threshold necessary to ensure reliable detection is approximately 300-320 mv peak-to-peak. The output of the gain amplifier 30 of FIG. 5 clips at a level of about 500 mv peak-to peak. This level is attained with the lowest output implantable pulse generator at a gain value of about 5 in a range of 0 to 9. Any amplification above this value raises the noise level with no increase in RF signal strength, resulting in the typical signal at high gain depicted in FIG. 7. In accordance with the present invention, the new software algorithm limits the gain to a value of about 7. This value allows ample signal strength for even the lowest output implantable pulse generator without allowing the gain to exceed the noise threshold in a "normal" operating environment.
As described hereinbefore, the prior art manually adjusted gain control and software implemented automatic gain control was set to the maximum gain during the idle mode to facilitate the early acquisition of the RF uplinked telemetry signal and to minimize the amount of time it took to reposition the programming head 14 in relation to the implanted pulse generator 20 of FIGS. 3 an 4. Unfortunately, at maximum gain, an RF signal could not be distinguished from low level noise as shown in the typical signal depicted in FIG. 7, and time is lost as the user searched for a lower gain valve which can distinguish noise from the telemetry signal.
In the software-implemented, old algorithm shown in U.S. Pat. No. 4,531,523 (FIG. 3), the gain was likewise initialized at maximum and decreased in steps until telemetry signals were differentiated from amplified background noise. The old automatic gain control algorithm was uni-directional in design. On initialization or a major time out (98 ms.), the gain would be set at its highest level and reduced incrementally as noise was detected. The noise detection logic defined noise as two pulses that are not 1's or 0's that occur within 8 ms. This 8 ms. time window was needed to filter out the implantable pulse generator output induced noise and the false errors that are detected at the end of blanking intervals in the implanted pulse generator. This old algorithm could not increase the gain level incrementally, because it had no detection mechanism for bit-level dropouts. It could only detect long signal loss intervals of greater than 98 ms. and would jump back to high gain under this condition. Using this method, the gain would stabilize at a level just below the noise threshold. At this level, occasional noise hits are probable, and if they occur at an interval greater than 8 ms., they will cause uplink message corruption with no subsequent gain adjustment.
The attack and decay characteristics of the old algorithm were slow and inaccurate. On initial programming head positioning, the gain was set at maximum and reduced as fast as noise was detected if that noise recurred at frequency greater than 125 Hz. Rapid reduction was not realized, however, because if the gain was reduced, noise hits became less frequent. The response time of the old algorithm, using a simple head positioning test and a "programmed nominal" function required in regard to certain implantable pulse generator models a 3-5 second settling time to obtain reliable communications. Even after settling, the gain tended to be nearer the maximum gain. This characteristic of the old algorithm is depicted in the top curve of FIG. 9, and it is specifically shown and described in the aforementioned U.S. Pat. No. 4,531,532.
The new automatic gain control and algorithm of the present invention employs linear attack and decay characteristics. Initially, in the "idle" or acquisition mode, the automatic gain control value is set at zero gain and steps through the gain range in a 2 db increment stair-step pattern. When the high gain limit is reached (software selectable), the search starts over at zero gain again. Thus, in the idle mode, the automatic gain control gain value rapidly increases and decreases as shown in the bottom curve of FIG. 9 in the search for a hit on a transmitted RF pulse signal.
Turning now to FIG. 10, a first embodiment of the new AGC algorithm of the present invention usable with the bit-based telemetry format is depicted in simplified fashion. In FIG. 10, the program is started upon command of the PPU microprocessor within programmer 10 and in the idle mode, that is, in the absence of any detected RF data or noise signals, the gain cycles between 0 and 7 (maximum) through the loop comprising blocks 70-80. Initially, a 45 ms. timer 72 is started, and if no telemetry signal is sensed within the 45 ms. time period, then the link status flag is set to "BAD" in block 75 and the gain is incremented in block 76 by one step. If no telemetry signal is sensed over a predetermined number of times up to a maximum gain, then decision block 78 commands block 80 to reset the gain to minimum. This sequence is depicted in FIG. 9 in regard to the lower gain curve depicting the behavior of the automatic gain control circuit in the idle mode. As long as the gain is not at its maximum value, the 45 ms. timer is restarted at block 72, and the gain is incremented. The state of the link status flag (BAD or GOOD) is employed in the signal strength algorithm of FIG. 12.
When successive telemetry signals occur within the 45 ms. time period, interrupts are generated in block 82. The intervals between interrupts are measured in block 84 and compared to a further interval of "1 MAX" which exceeds the binary "1" and "0" intervals in decision block 86. If the measured interval is greater than the 1 MAX interval, then the gain is again incremented in block 76. Again the increased gain is compared to the maximum gain in decision block 78 and once maximum gain is reached, the gain is reset to a selectable minimum in block 80.
However, if the measured interval is less than or equal to the maximum binary "1" interval (1.098±15%), then the interval "t" is compared to the interval representing a binary "1" in decision block 88. If the measured interval "t" is equal to a valid "1", then the bit is processed in block 96 and the program loops back to START.
If the measured interval "t" is not equal to a valid "1" but falls between the binary "1" and binary "0" intervals (that is not equal to either the binary "1" or the binary "0" interval plus or minus their respective tolerances) as determined in block 90, then the link status is set BAD in block 92 and the gain is decremented by one step in block 100. But if the measured interval falls within the binary "0" interval as determined in decision block 102, then the gain is neither incremented nor decremented in accordance with the new algorithm. The link status flag is set to "GOOD" in block 94, the "0" bit is processed in block 96 and the program loops back to START.
If the measured interval "t" is determined to be less than a binary "0" interval in block 102, then the link status flag is set BAD in block 92 and the gain is decreased in block 100. In decision block 104, the gain is compared to the minimum gain, and if the decreased gain is less than the minimum gain, then the gain is set to the selectable minimum gain in block 106 and the program loops back to START.
Once a requisite number of sequential data bits are successfully processed in block 96, the uplink telemetry of the data is enabled and the gain is no longer adjusted as the algorithm of FIG. 10 is disabled.
Turning now to FIG. 11, the flow chart of FIG. 10 is modified therein to process frame-based rather than bit based telemetry data. The modification starts at block 84 and loops back to the START block 70 and thus replaces blocks 86-106 of FIG. 10. Again, operating in the idle mode, the algorithm steps through blocks 70-84 of FIG. 10, and if no signal is received in 45 ms., the link status flag is set BAD in block 75 and gain is increased in blocks 76, 78, 80. If a signal is detected within 45 ms. then the interval is measured in block 84 and the measured interval is compared to a 2 ms. interval (greater than the frame length) in decision block 108. If the interval is greater than 2 ms. then the link status flag is set BAD in block 109 and the gain is increased in blocks 110, 112, 114.
If the measured interval is shorter than 2 ms., then the program moves to decision block 116 where the interval is compared to the preset sync interval depicted in FIG. 6. If the sync interval is not matched or is expected in decision block 118, then the program moves to set the link status flag BAD in block 119 and to the decrease gain loop comprising blocks 120, 122 and 124.
However, if the sync interval is matched, the program moves to examine the proper number of intervals between sync intervals in blocks 126, 128 and 130. In block 126, the successive intervals between sync intervals are counted and if two many intervals are detected (more than 5), decision block 128 concludes that the gain is too high and moves to the decrease gain loop starting at block 119. On the other hand, if too many intervals are not detected in decision block 128, then the number of intervals are compared to the expected number in block 130. If too few intervals are detected, then the algorithm concludes that the gain should be increased and moves to the increase gain loop starting with block 109. If, however, the number of intervals is correct, then the status flag is set GOOD in block 132 and the intervals are processed in block 134 and the program loops back to START.
In the decrease gain loop comprising blocks 120, 122 and 124, the gain is decreased in block 120 and compared to the minimum gain in block 122. If the decrease gain is less than the minimum gain, then the gain is set at minimum in block 124.
Similarly, in the increase gain loop comprising blocks 110, 112 and 114, the gain is increased in block 110 and compared to the maximum gain in block 112. If the maximum gain is reached, then the gain is set to minimum in block 114 and the program loops back to start.
To summarize the foregoing, it can be seen that the bit-based and frame-based flow charts and software respond to noise by decreasing gain and to signal drop out by increasing gain during the idle mode, as follows:
______________________________________ Noise Signal Loss______________________________________bit-based 0 < t < 1 t > 45 ms. or or t < 0 t > 1 maxframe-based >5t/frame t > 45 ms. or t > 2 ms.______________________________________
Where t is the interval between detected 175 kHz RF signals.
When acquisition is achieved, uplink telemetry and storage of the telemetered intervals is enabled for decoding and display. During the uplink telemetry, noise signals may still get through, but the gain will not be changed. In the uplink telemetry mode and in the presence of 175 kHz noise tripping the detect amplitudes, the algorithm measures each interval t, stores successive intervals and continuously sums the stored intervals t0, t1, t2 and compares the sums to the 0 and 1 intervals (in bit-based telemetry). If the sums match a 0 or 1 bit interval, then the uplink is accepted.
Similarly, in frame-based telemetry, successive intervals are stored until the total number of frames (2×38) are received. Intervals that are too short to represent a sync interval, dead space interval, or one of the possible ID, LSN or MSN intervals are summed together until a valid interval is detected. Thus, noise signals between the frame-based signals depicted in FIG. 6 are eliminated.
Turning now to a further aspect of the present invention, to help properly position the programming head during the idle or acquisition mode, the strength of the telemetry signal is indicated to the user employing the algorithms of FIGS. 10 or 11 and FIG. 12 and as set forth in the software listing appended hereto as Appendix A. On the alphanumeric display of the programmer 10, the word "SIGNAL" followed by a value from zero (minimum) to nine (maximum) appears on the left side of the display under "MODE." The value decreases if the signal is interrupted by electrical interference. This information is not available momentarily while the programmer is processing other commands or information. The signal strength algorithm utilizes the real time monitoring of noise or signal drop-out which effects a decrease or increase in the AGC level or value during the idle or acquisition mode, thereby providing real time monitoring of signal integrity and signal-to noise ratio to provide an indication to the user. Since the AGC value is lowest for maximum signal level and highest for minimum level, the value is complemented for use as a signal strength indicator to the user.
In addition to the use of current gain value, a secondary factor is included to provide a stability-of-link factor to the signal strength indication Once every 125 ms. or so, the "GOOD" or "BAD" status of the link is checked. This link status is used to turn off the "position head" LED on the front of the programmer or programmer head. A stability factor is adjusted based on this instantaneous check of link status. The factor is made more negative when the link check status is BAD and more positive when GOOD.
The stability factor is a function of the number of good frames or bits received over time versus the number of bad frames or bits received over a similar period. When the sample of frame status indicates a GOOD bit or frame (block 94 of FIG. 10 or block 132 of FIG. 11), then the stability factor is increased by a fixed value. When the status indicates a BAD bit or frame (blocks 75, 92 of FIG. 10 or 109, 119 of FIG. 11), then the stability factor is reduced by a larger, also fixed value. Once a bad bit or frame is detected, the algorithm requires several consecutive good frames to build the signal indicator value back up to its maximum corresponding with the gain value. Complemented plus 2. If there are a significant number of momentary link instabilities indicated by the stability factor, the resulting signal strength value is reduced, ultimately to 0. If those instabilities diminish, the signal strength level will increase. The maximum displayed signal strength level will then correspond with the complement of the AGC value plus 2 or 9.
The displayed range of signal strength could be artificially adjusted to other values, 0 through 100 for instance, by scaling AGC instability factors accordingly. In the current implementation, the values correspond with AGC levels 0 through 9. The value is displayed on the programmer liquid crystal display and is updated roughly every 125 ms.
When a signal loss occurs, the AGC algorithms scan through gain levels searching for one which will result in valid uplink detection, as described in conjunction with FIGS. 9-11. Without the stability factor in the calculations, the signal strength value would also scan during this time. The stability factor, however, increases negatively at a rapid rate whenever total signal loss occurs. This factor's maximum value corresponds with the maximum AGC value and cancels any AGC level when the link is extremely unstable or nonexistent.
The signal strength feature is desirable, since it allows the physician user to map the optimal position for obtaining a reliable RF signal when the programming head 14 is placed against the patient's chest overlying the implanted pacemaker 20 as depicted in figures 3 and 4. In high noise environments and in cases where the implantable pulse generator 20 implanted in obese patients or is flipped over so that the read switch is further away, it is necessary through trial and error to reposition the programming head and to try different RF signal gain settings as described hereinbefore. The signal level indicator makes the mapping of the location of the implanted pulse generator easier and provides the physician user with a quantitive measure of optimal position.
Although the signal strength indicator has been described hereinbefore as appearing on the LCD screen of the programmer 10, it will be understood that it could as well appear on the programming head 14 as a numeric display for convenience of the physician user. Furthermore, as described hereinbefore, th indicator value could appear on the CRT display of the Model 9760 programming system and/or on both the programming head and the Model 9710 or Model 9760 alphanumeric displays. Furthermore, it will be understood that both the gain value and the signal strength indicator value may be printed out on the printer when a record is made of the telemetry out of the data from the implanted pacemaker.
FIG. 12 illustrates a flow chart of a program implementing the above description of the signal strength calculation algorithm.
In decision block 200, the timeout of the asynchronous timer 15 checked. Upon the timeout of the 125 ms. timer, the MPU get link status from the PPU at block 202 and gets the RF gain value from the PPU at block 204. In block 206 the gain value is shifted right twice. The shifted gain is complemented in block 208.
Block 210 masks the upper bits to prevent a value once complemented from exceeding 7. For example, if the shifted gain is at zero and it is complemented, it will end up being too large a number for the display range of 0 to 9. In block 212, "2" is added to make the minimum displayed value without noise be something other than zero.
At block 214, the previously-calculated stability value is subtracted and the result is converted to ASCII code in block 216. At block 218, the LCD display "signal:--" is created with the blank space filled with the calculated numeric signal strength.
Next, the stability factor is updated. At decision block 220, if the link status flag previously received from the PPU at block 202 is GOOD, the stability value is adjusted down by pre-determined amount.
At decision block 226, if the adjustment at block 224 causes a borrow, the stability factor value at block 228 is limited to zero.
If the result of the link status check at block 220 is bad, then the stability factor is adjusted "up" in block 230 again by a separate pre-determined value. If there is a carry as a result of that operation in block 232, the stability value is limited to a maximum in block 234.
As described earlier, the adjustment values are not equal; preferably the "up" adjustment is a predetermined value substantially greater than the "down" adjustment. The new stability factor is used in block 214 the next time that the process is repeated.
The aforementioned algorithms are implemented in the program listing attached hereto as Appendix A.
The following description explains the expressions appearing in the appended software listing: The Peripheral Processing Unit (PPU) is a separate micro-processor used in the 9710 to process RF bursts transmitted by the IPG. This processor is interrupted each time an RF burst is detected. Under normal situations (not programming the IPG) the PPU is in an "idle" mode. In this mode, interrupts are enabled and the function of the PPU is to adjust the Automatic Gain value to maintain a sufficient signal level for future communications. This Automatic Gain value is outputted to a port of the micro-processor whenever it is changed and controls the gain of the RF amplifier in the Model 9710 in 2 dB steps.
If there is no interrupt for 45 milliseconds, an internal timer times out and the unit TIMEO is called. This unit's major function is to set flags used throughout the system in response to a telemetry gap of 45 msec and to adjust the gain up by one step in an attempt to locate the signal. This assumes that the signal is missing due to lack of gain. If this assumption is false, that is, the signal is missing due to saturation of the amplifier, then the condition will continue until the gain "wraps around" to its minimum value which will eliminate the saturated condition if that is possible.
During idle, if an IPG is present, then the processor is interrupted and control is given to the unit EXTO. The time interval since the last such interrupt is measured. This interval is compared with stored values to check the interval for conformance to the requirement for a sync interval. If the interval is determined to be a valid sync interval, then the number of intervals collected since the last sync interval was received is checked. Under normal circumstances, i.e. correct gain adjustment, there should be 5 intervals in one frame there have been more than this number, then extra noise is indicated and the gain level is adjusted down. If there are less than 5 intervals in the previous frame, then signal loss is indicated and the gain is adjusted up. Since interrupts could be lost due to amplifier saturation, the gain is allowed to wrap around to its minimum value as in the time-out case.
When a valid frame of 5 intervals including sync is detected, EXTO sets a flag to indicate a good frame has been received. If the previous frame is in error then the flag is cleared to indicate this condition as well. This flag is checked once every 125 ms when update of the SIGNAL indicator is required.
During uplink data reception, the PPU is placed in a unique mode which prevents AGC due to timing constraints as well as the undesirability of changing gain level and introducing transients during uplink reception. During this time, collected intervals are stored for later processing once all uplink data has been received. During uplink decoding, if errors are detected, flags are set which are later processed to adjust the gain level for noise or signal loss.
Once the uplink data is received, it is processed by the unit TELEM in conjunction with subordinate units such as GET FRAME and GET-- VAL. These subordinate units implement what noise immunity is possible by adding collected intervals and checking each field range. If the current sum is less than the minimum value for the current field, then the next collected interval is added in. If noise was received, two smaller intervals equalling the correct interval would be stored.
The signal indicator is calculated by the Master Processing Unit (MPU). The responsible unit is LNKCHK. This unit interrogates the PPU once every 125 ms and receives the current gain level and last frame status. The gain level is complemented and incremented by 2 to provide a gain floor of 2. This is done to provide a minimum signal gain level with no noise and leave room for noise when the signal level is small. Th gain value is complemented because the actual value used is small for larger signals and large for smaller signals.
Once the gain value has been modified for use by the signal indicator algorithm, a stability factor is calculated. This stability factor is a function of the number of good frames received over time versus the number of bad frames received over a similar period. When the sample of frame status indicates a good frame, then the stability factor is increased by a fixed value. When the status indicates a bad frame then the stability factor is reduced by a larger, also fixed value. Once a bad frame is detected, it requires several consecutive good frames to build the signal indicator value back up to its maximum corresponding with the gain value, complemented, plus 2.
The following designs are included in the appended software:
______________________________________PPU:TIMEO 45 msec PPU time-out handlerEXTO RF telemetry handlerTELEM uplink processing executiveGET-- FRAME subroutine to decode a frameGET-- VAL subroutine to look up data intervalsMPU:LNKCHK Link status, Signal indicator unit.______________________________________
The appended code is generic and not microprocessor dependent. The code which adjusts the gain value is 8051. The code which calculates the signal strength is Z80. ##SPC1##
|Cited Patent||Filing date||Publication date||Applicant||Title|
|US4531523 *||Oct 4, 1984||Jul 30, 1985||Medtronic, Inc.||Digital gain control for the reception of telemetry signals from implanted medical devices|
|US4712179 *||Feb 5, 1987||Dec 8, 1987||Cordis Corporation||Method and apparatus for calibrating internal measurements of an implanted cardiac pacer|
|US5024221 *||Nov 17, 1987||Jun 18, 1991||Siemens-Pacesetter, Inc.||Programmable band-pass amplifier for use with implantable medical device|
|US5036869 *||Mar 23, 1990||Aug 6, 1991||Nihon Kohden Corporation||Medical wireless telemeter|
|Citing Patent||Filing date||Publication date||Applicant||Title|
|US5314450 *||Jun 10, 1992||May 24, 1994||Medtronic, Inc.||Dual channel telemetry for implanted medical device|
|US5433115 *||Jun 14, 1993||Jul 18, 1995||Simmonds Precision Products, Inc.||Contactless interrogation of sensors for smart structures|
|US5440300 *||Nov 28, 1994||Aug 8, 1995||Simmonds Precision Products, Inc.||Smart structure with non-contact power and data interface|
|US5476488 *||Dec 15, 1993||Dec 19, 1995||Pacesetter, Inc.||Telemetry system power control for implantable medical devices|
|US5515041 *||Jul 30, 1993||May 7, 1996||Simmonds Precision Products Inc.||Composite shaft monitoring system|
|US5562713 *||Jan 18, 1995||Oct 8, 1996||Pacesetter, Inc.||Bidirectional telemetry apparatus and method for implantable device|
|US5581248 *||Jun 14, 1993||Dec 3, 1996||Simmonds Precision Products, Inc.||Embeddable device for contactless interrogation of sensors for smart structures|
|US5602540 *||May 19, 1994||Feb 11, 1997||Simmonds Precision Products Inc.||Fluid gauging apparatus with inductive interrogation|
|US5620472 *||Jan 12, 1995||Apr 15, 1997||Pacesetter, Inc.||Apparatus and method for dynamically interpreting and displaying a real-time telemetry link|
|US5630835 *||Jul 24, 1995||May 20, 1997||Cardiac Control Systems, Inc.||Method and apparatus for the suppression of far-field interference signals for implantable device data transmission systems|
|US5683432 *||Jan 11, 1996||Nov 4, 1997||Medtronic, Inc.||Adaptive, performance-optimizing communication system for communicating with an implanted medical device|
|US5703576 *||May 6, 1996||Dec 30, 1997||Simmonds Precision Products Inc.||Embeddable DC power supply for smart structure sensors|
|US5769877 *||Sep 10, 1996||Jun 23, 1998||Plexus, Inc.||High value capacitive, replenishable power source|
|US5836975 *||Jun 5, 1997||Nov 17, 1998||Medtronic, Inc.||Method and apparatus for diagnosis and treatment of arrhythmias|
|US5843139 *||Mar 12, 1997||Dec 1, 1998||Medtronic, Inc.||Adaptive, performance-optimizing communication system for communicating with an implanted medical device|
|US5987356 *||Aug 12, 1998||Nov 16, 1999||Medtronic, Inc.||Method and apparatus for diagnosis and treatment of arrhythmias|
|US6009350 *||Feb 6, 1998||Dec 28, 1999||Medtronic, Inc.||Implant device telemetry antenna|
|US6167312 *||Apr 30, 1999||Dec 26, 2000||Medtronic, Inc.||Telemetry system for implantable medical devices|
|US6223083||Apr 16, 1999||Apr 24, 2001||Medtronic, Inc.||Receiver employing digital filtering for use with an implantable medical device|
|US6263246||Sep 14, 1999||Jul 17, 2001||Medtronic, Inc.||Method and apparatus for communications with an implantable device|
|US6295473||Apr 16, 1999||Sep 25, 2001||Medtronic, Inc.||Digital delay line receiver for use with an implantable medical device|
|US6304778||Aug 20, 1999||Oct 16, 2001||Cardiac Pacemakers, Inc.||Implantable defibrillators with programmable cross-chamber blanking|
|US6317626||Nov 3, 1999||Nov 13, 2001||Medtronic, Inc.||Method and apparatus for monitoring heart rate|
|US6379300||Oct 8, 1999||Apr 30, 2002||Medtronic, Inc.||Telemtry system for implantable medical devices|
|US6438407||Mar 20, 2000||Aug 20, 2002||Medtronic, Inc.||Method and apparatus for monitoring physiologic parameters conjunction with a treatment|
|US6508771||Dec 1, 1999||Jan 21, 2003||Medtronic, Inc.||Method and apparatus for monitoring heart rate|
|US6510339 *||Dec 6, 2000||Jan 21, 2003||Cardiac Pacemakers, Inc.||ECG auto-gain control|
|US6556871||Jan 4, 2001||Apr 29, 2003||Cardiac Pacemakers, Inc.||System and method for receiving telemetry data from an implantable medical device|
|US6622044||Jan 4, 2001||Sep 16, 2003||Cardiac Pacemakers Inc.||System and method for removing narrowband noise|
|US6644321||Oct 29, 1999||Nov 11, 2003||Medtronic, Inc.||Tactile feedback for indicating validity of communication link with an implantable medical device|
|US6687539||Oct 16, 2001||Feb 3, 2004||Cardiac Pacemakers, Inc.||Implantable defibrillators with programmable cross-chamber blanking|
|US6687547||Mar 19, 2001||Feb 3, 2004||Medtronic, Inc.||Method and apparatus for communicating with an implantable medical device with DTMF tones|
|US6714811||Dec 1, 1999||Mar 30, 2004||Medtronic, Inc.||Method and apparatus for monitoring heart rate|
|US6752155||Dec 20, 2002||Jun 22, 2004||Medtronic, Inc.||Tactile feedback for indicating validity of communication link with an implantable medical device|
|US6752765||Nov 17, 2000||Jun 22, 2004||Medtronic, Inc.||Method and apparatus for monitoring heart rate and abnormal respiration|
|US6820019||Jul 31, 1999||Nov 16, 2004||Medtronic, Inc.||Device and method for determining and communicating the remaining life of a battery in an implantable neurological tissue stimulating device|
|US6873875||Aug 29, 2000||Mar 29, 2005||Cardiac Pacemakers, Inc.||Implantable pulse generator and method having adjustable signal blanking|
|US6901293||Apr 7, 2003||May 31, 2005||Medtronic, Inc.||System and method for monitoring power source longevity of an implantable medical device|
|US6947795 *||Oct 1, 2001||Sep 20, 2005||Transoma Medical, Inc.||Frame length modulation and pulse position modulation for telemetry of analog and digital data|
|US6978181||May 24, 2002||Dec 20, 2005||Pacesetter, Inc.||Inter-programmer communication among programmers of implantable medical devices|
|US7001359||Mar 16, 2001||Feb 21, 2006||Medtronic, Inc.||Implantable therapeutic substance infusion device with active longevity projection|
|US7016739||Aug 27, 2003||Mar 21, 2006||Cardiac Pacemakers, Inc.||System and method for removing narrowband noise|
|US7089057||Apr 26, 2002||Aug 8, 2006||Medtronic, Inc.||Detection of possible failure of capacitive elements in an implantable medical device|
|US7133718||Jun 19, 2003||Nov 7, 2006||Medtronic, Inc.||Method and apparatus for temporarily varying a parameter in an implantable medical device|
|US7142923||Oct 29, 2003||Nov 28, 2006||Medtronic, Inc.||Implantable neurostimulator programming with battery longevity indication|
|US7167747||May 13, 2003||Jan 23, 2007||Medtronic, Inc.||Identification of oversensing using sinus R-wave template|
|US7181275||Dec 23, 2003||Feb 20, 2007||Medtronic, Inc.||Method and apparatus for actively determining a coupling interval corresponding to a cardiac vulnerable zone|
|US7200436||Jul 12, 2004||Apr 3, 2007||Cardiac Pacemakers, Inc.||Implantable pulse generator and method having adjustable signal blanking|
|US7203545||Apr 21, 2003||Apr 10, 2007||Cardiac Pacemakers, Inc.||System and method for receiving telemetry data from an implantable medical device|
|US7236822||Oct 16, 2002||Jun 26, 2007||Leptos Biomedical, Inc.||Wireless electric modulation of sympathetic nervous system|
|US7239912||Sep 13, 2002||Jul 3, 2007||Leptos Biomedical, Inc.||Electric modulation of sympathetic nervous system|
|US7266409||Apr 15, 2005||Sep 4, 2007||Medtronic, Inc.||Method and apparatus for determining oversensing in a medical device|
|US7333855||Apr 15, 2005||Feb 19, 2008||Medtronic, Inc.||Method and apparatus for determining oversensing in a medical device|
|US7369893||Apr 27, 2005||May 6, 2008||Medtronic, Inc.||Method and apparatus for identifying lead-related conditions using prediction and detection criteria|
|US7418297||Jul 28, 2005||Aug 26, 2008||Transoma Medical, Inc.||Frame length modulation and pulse position modulation system|
|US7542801||May 25, 2005||Jun 2, 2009||Medtronic, Inc.||System and method for monitoring power source longevity of an implantable medical device|
|US7551964||Feb 24, 2004||Jun 23, 2009||Leptos Biomedical, Inc.||Splanchnic nerve stimulation for treatment of obesity|
|US7551965||Mar 8, 2006||Jun 23, 2009||Cardiac Pacemakers, Inc.||System and method for removing narrowband noise|
|US7623924||Aug 30, 2005||Nov 24, 2009||Leptos Biomedical, Inc.||Devices and methods for gynecologic hormone modulation in mammals|
|US7689276||Aug 18, 2004||Mar 30, 2010||Leptos Biomedical, Inc.||Dynamic nerve stimulation for treatment of disorders|
|US7689277||Jan 24, 2006||Mar 30, 2010||Leptos Biomedical, Inc.||Neural stimulation for treatment of metabolic syndrome and type 2 diabetes|
|US7699060||Oct 26, 2004||Apr 20, 2010||Medtronic, Inc.||Tactile feedback for indicating validity of communication link with an implantable medical device|
|US7702386||Jan 24, 2007||Apr 20, 2010||Leptos Biomedical, Inc.||Nerve stimulation for treatment of obesity, metabolic syndrome, and Type 2 diabetes|
|US7801606||Feb 14, 2007||Sep 21, 2010||Cardiac Pacemakers, Inc.||Implantable pulse generator and method having adjustable signal blanking|
|US7934508||Jan 8, 2010||May 3, 2011||Medtronic, Inc.||Tactile feedback for indicating validity of communication link with an implantable medical device|
|US7937144||May 17, 2007||May 3, 2011||Advanced Neuromodulation Systems, Inc.||Electric modulation of sympathetic nervous system|
|US7937145||Jun 11, 2007||May 3, 2011||Advanced Neuromodulation Systems, Inc.||Dynamic nerve stimulation employing frequency modulation|
|US7937149||Dec 3, 2003||May 3, 2011||Medtronic, Inc.||Method and apparatus for detecting change in physiologic parameters|
|US7953488||Jul 31, 2008||May 31, 2011||Medtronic, Inc.||Pre-qualification of an alternate sensing configuration|
|US7974690||Jun 30, 2008||Jul 5, 2011||Medtronic, Inc.||Lead integrity testing during suspected tachyarrhythmias|
|US7974692||Aug 31, 2010||Jul 5, 2011||Cardiac Pacemakers, Inc.||Implantable pulse generator and method having adjustable signal blanking|
|US7986994||Dec 3, 2003||Jul 26, 2011||Medtronic, Inc.||Method and apparatus for detecting change in intrathoracic electrical impedance|
|US8024035||May 17, 2007||Sep 20, 2011||Advanced Neuromodulation Systems, Inc.||Electric modulation of sympathetic nervous system|
|US8078277||Oct 29, 2008||Dec 13, 2011||Medtronic, Inc.||Identification and remediation of oversensed cardiac events using far-field electrograms|
|US8126553||Jul 25, 2008||Feb 28, 2012||Medtronic, Inc.||Sensing integrity determination based on cardiovascular pressure|
|US8131367||Apr 30, 2009||Mar 6, 2012||Medtronic, Inc.||System and method for monitoring power source longevity of an implantable medical device|
|US8145299||Feb 12, 2010||Mar 27, 2012||Advanced Neuromodulation Systems, Inc.||Neural stimulation for treatment of metabolic syndrome and type 2 diabetes|
|US8200322||Jul 30, 2008||Jun 12, 2012||Medtronic, Inc.||Electrogram storage for suspected non-physiological episodes|
|US8214037||Jun 30, 2011||Jul 3, 2012||Cardiac Pacemakers, Inc.||Implantable pulse generator and method having adjustable signal blanking|
|US8255046||Jul 31, 2008||Aug 28, 2012||Medtronic, Inc.||Detecting worsening heart failure based on impedance measurements|
|US8271072||Apr 27, 2010||Sep 18, 2012||Medtronic, Inc.||Detecting worsening heart failure|
|US8295926||Oct 23, 2009||Oct 23, 2012||Advanced Neuromodulation Systems, Inc.||Dynamic nerve stimulation in combination with other eating disorder treatment modalities|
|US8321030||Apr 20, 2010||Nov 27, 2012||Advanced Neuromodulation Systems, Inc.||Esophageal activity modulated obesity therapy|
|US8340760||Sep 12, 2011||Dec 25, 2012||Advanced Neuromodulation Systems, Inc.||Electric modulation of sympathetic nervous system|
|US8340772||May 5, 2010||Dec 25, 2012||Advanced Neuromodulation Systems, Inc.||Brown adipose tissue utilization through neuromodulation|
|US8380320 *||Sep 12, 2005||Feb 19, 2013||Medtronic, Inc.||Implantable medical device communication system with macro and micro sampling intervals|
|US8396543||Jan 28, 2010||Mar 12, 2013||Medtronic, Inc.||Storage of data for evaluation of lead integrity|
|US8417338||Feb 1, 2012||Apr 9, 2013||Medtronic, Inc.||System and method for monitoring power source longevity of an implantable medical device|
|US8428718||Jul 7, 2011||Apr 23, 2013||Medtronic, Inc.||Method and apparatus for detecting change in intrathoracic electrical impedance|
|US8437840||Sep 26, 2011||May 7, 2013||Medtronic, Inc.||Episode classifier algorithm|
|US8442627||Dec 30, 2005||May 14, 2013||Medtronic, Inc.||Advanced thoracic fluid monitoring capability with impedance|
|US8489197||Feb 26, 2007||Jul 16, 2013||Cardiac Pacemakers, Inc.||System and method for receiving telemetry data from an implantable medical device|
|US8521281||Oct 14, 2011||Aug 27, 2013||Medtronic, Inc.||Electrogram classification algorithm|
|US8632473||Jan 30, 2009||Jan 21, 2014||Medtronic, Inc.||Detecting worsening heart failure based on fluid accumulation with respiratory confirmation|
|US8634927||Jan 28, 2011||Jan 21, 2014||Medtronic, Inc.||Medical device recharge systems using a controller in wireless communication with a separate recharge device|
|US8644931||Jul 25, 2008||Feb 4, 2014||Medtronic, Inc.||Impedance variability analysis to identify lead-related conditions|
|US8712541||Jan 28, 2011||Apr 29, 2014||Medtronic, Inc.||Far field telemetry operations between an external device and an implantable medical device during recharge of the implantable medical device via a proximity coupling|
|US8744560||Sep 30, 2011||Jun 3, 2014||Medtronic, Inc.||Electrogram summary|
|US8768483||Jun 19, 2013||Jul 1, 2014||Cardiac Pacemakers, Inc.||System and method for receiving telemetry data from an implantable medical device|
|US8771184||May 4, 2007||Jul 8, 2014||Body Science Llc||Wireless medical diagnosis and monitoring equipment|
|US8774909||Sep 26, 2011||Jul 8, 2014||Medtronic, Inc.||Episode classifier algorithm|
|US8781585||Nov 21, 2011||Jul 15, 2014||Medtronic, Inc.||Identification and remediation of oversensed cardiac events using far-field electrograms|
|US8792983 *||Sep 6, 2013||Jul 29, 2014||Cardiac Pacemakers, Inc.||Methods and apparatuses for implantable medical device telemetry power management|
|US8805526||May 3, 2006||Aug 12, 2014||Cardiac Pacemakers, Inc.||Configurable medical telemetry radio system|
|US8823382||Apr 30, 2008||Sep 2, 2014||Medtronic, Inc.||System and method for monitoring a power source of an implantable medical device|
|US8838231||Jun 3, 2011||Sep 16, 2014||Advanced Neuromodulation Systems, Inc.||Neural Stimulation for treatment of metabolic syndrome and type 2 diabetes|
|US8886296||Oct 14, 2011||Nov 11, 2014||Medtronic, Inc.||T-wave oversensing|
|US8996124||Aug 26, 2008||Mar 31, 2015||Data Sciences International, Inc.||Assessing noise on a communication channel|
|US9037240||Jul 25, 2008||May 19, 2015||Medtronic, Inc.||Electrode lead integrity reports|
|US20040172080 *||Dec 3, 2003||Sep 2, 2004||Stadler Robert W.||Method and apparatus for detecting change in intrathoracic electrical impedance|
|US20040199082 *||Apr 3, 2003||Oct 7, 2004||Ostroff Alan H.||Selctable notch filter circuits|
|US20040230232 *||Jan 14, 2004||Nov 18, 2004||Cardiac Pacemakers, Inc.||Implantable defibrillators with programmable cross-chamber blanking|
|US20040230233 *||May 13, 2003||Nov 18, 2004||Gunderson Bruce D.||Identification of oversensing using sinus R-wave template|
|US20040230255 *||Feb 24, 2004||Nov 18, 2004||Dobak John D.||Splanchnic nerve stimulation for treatment of obesity|
|US20040243194 *||Jul 12, 2004||Dec 2, 2004||Cardiac Pacemakers, Inc.||Implantable pulse generator and method having adjustable signal blanking|
|US20050065575 *||Aug 18, 2004||Mar 24, 2005||Dobak John D.||Dynamic nerve stimulation for treatment of disorders|
|US20050085703 *||Oct 26, 2004||Apr 21, 2005||Medtronic, Inc.||Tactile feedback for indicating validity of communication link with an implantable medical device|
|US20050124900 *||Dec 3, 2003||Jun 9, 2005||Stadler Robert W.||Method and apparatus for detecting change in physiologic parameters|
|US20050137639 *||Dec 23, 2003||Jun 23, 2005||Havel William J.||Method and apparatus for actively determining a coupling interval corresponding to a cardiac vulnerable zone|
|US20050177206 *||Oct 29, 2003||Aug 11, 2005||North Richard B.||Implantable neurostimulator programming with battery longevity indication|
|US20050261749 *||Jul 28, 2005||Nov 24, 2005||Transoma Medical, Inc.||System and method for telemetry of analog and digital data|
|US20070060977 *||Sep 12, 2005||Mar 15, 2007||Spital Glenn O||Implantable medical device communication system with macro and micro sampling intervals|
|EP1228782A1 *||Nov 13, 2001||Aug 7, 2002||St. Jude Medical AB||Medical communication system|
|WO1998025669A1||Oct 20, 1997||Jun 18, 1998||Medtronic Inc||Method and apparatus for diagnosis and treatment of arrhythmias|
|WO2001032261A1 *||Oct 10, 2000||May 10, 2001||Medtronic Inc||Tactile feedback for indicating validity of communication link with an implantable medical device|
|WO2002057994A2 *||Jan 16, 2002||Jul 25, 2002||Medtronic Inc||System and method for emergency communication between an implantable medical and a remote computer system of health care provider|
|WO2007079354A2||Dec 18, 2006||Jul 12, 2007||Medtronic Inc||Abvanced thoracic fluid monitoring capability with impedance|
|WO2012058398A1||Oct 27, 2011||May 3, 2012||Medtronic, Inc.||Method and apparatus for reducing noise in a medical device|
|WO2012102796A1 *||Dec 12, 2011||Aug 2, 2012||Medtronic, Inc.||Far field telemetry operations between an external device and an implantable medical device during recharge of the implantable medical device via a proximity coupling|
|U.S. Classification||607/32, 128/903, 128/901|
|Cooperative Classification||Y10S128/901, Y10S128/903, A61N1/37223, A61N1/37252|
|European Classification||A61N1/372D8, A61N1/372D2E|
|Nov 2, 1990||AS||Assignment|
Owner name: MEDTRONIC, INC., MINNESOTA
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST.;ASSIGNOR:BARSNESS, MICHAEL S.;REEL/FRAME:005501/0858
Effective date: 19901102
|Sep 27, 1994||CC||Certificate of correction|
|Sep 29, 1995||FPAY||Fee payment|
Year of fee payment: 4
|Oct 4, 1999||FPAY||Fee payment|
Year of fee payment: 8
|Sep 26, 2003||FPAY||Fee payment|
Year of fee payment: 12