Telemetry protocol for ultra low error rates useable in implantable medical devices
First Claim
1. A method for receiving and processing telemetry of a block transmitted between an external component and an implantable medical device, comprising payload data and first error detection data relevant to at least the payload data, the method comprising:
- wirelessly receiving a plurality of packets transmitted from a sending device at a receiving device, each received packet comprising at least a portion of the block and second error detection data relevant to at least its associated block portion, the plurality of the received packets comprising the entirety of the block including the payload data and the first error detection data;
assessing the second error detection data for each received packet, and, if valid, accepting the packet at the receiving device, and, if invalid, requesting that the invalid packet be resent to the receiving device;
reconstituting the block at the receiving device using the accepted packets, the reconstituted block comprising the payload data and the first error detection data;
computing a code for the payload data in the reconstituted block; and
assessing the reconstituted block by comparing the code to the first error detection data, and, if valid, accepting the reconstituted block at the receiving device;
wherein one of the external component and the implantable medical device comprises the sending device and the other comprises the receiving device.
2 Assignments
0 Petitions
Accused Products
Abstract
An improved telemetry protocol for an implantable medical device is disclosed. The sending device forms a block of information to be telemetered to the receiving device in a typical fashion, including a header, a message, and an error detection data, such as a Cyclic Redundancy Code (CRC) for that data. This CRC, called CRC1, is preferably computed using a first CRC polynomial. Then, the entirety of the block is divided into smaller packets of a predetermined byte size. Each packet, regardless of its contents, has a CRC computed for it (CRC2) preferably computed using a second CRC polynomial. Each packet with its appended CRC2 is sent to the receiving device, which deduces a CRC2 and compares it with the appended CRC2. If not valid, that packet is again requested to be resent. If valid, the next packet is requested to be sent, its CRC2 checked, etc., until all packets are received and verified. The receiving device then discards the CRC2s to reconstitute the original block. The receiving device then deduces CRC1 and compares it with the CRC1 appended to the block. If valid, the block is accepted, and if not, the procedure is repeated for the block.
25 Citations
24 Claims
-
1. A method for receiving and processing telemetry of a block transmitted between an external component and an implantable medical device, comprising payload data and first error detection data relevant to at least the payload data, the method comprising:
-
wirelessly receiving a plurality of packets transmitted from a sending device at a receiving device, each received packet comprising at least a portion of the block and second error detection data relevant to at least its associated block portion, the plurality of the received packets comprising the entirety of the block including the payload data and the first error detection data; assessing the second error detection data for each received packet, and, if valid, accepting the packet at the receiving device, and, if invalid, requesting that the invalid packet be resent to the receiving device; reconstituting the block at the receiving device using the accepted packets, the reconstituted block comprising the payload data and the first error detection data; computing a code for the payload data in the reconstituted block; and assessing the reconstituted block by comparing the code to the first error detection data, and, if valid, accepting the reconstituted block at the receiving device;
wherein one of the external component and the implantable medical device comprises the sending device and the other comprises the receiving device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method for telemetering a block of information between an external component and an implantable medical device, the method comprising:
-
computing at a sending device first error detection data for at least payload data to be telemetered to a receiving device; forming the block of information at the sending device, the block comprising the payload data and the first error detection data; dividing the entirety of the block into a plurality of sequential first packets; associating second error detection data with each of the first packets to form second packets; wirelessly broadcasting the plurality of second packets to the receiving device; and rebroadcasting one of the plurality of second packets if notified that the one second packet was assessed invalid by the receiving device;
wherein one of the external component and the implantable medical device comprises the sending device and the other comprises the receiving device. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
-
18. A method for sending and receiving blocks of information between an external component and an implantable medical device, the method comprising:
-
computing at a sending device first error detection data for at least payload data to be telemetered to a receiving device; forming the block of information at the sending device, the block comprising the payload data and the first error detection data; dividing the entirety of the block into a plurality of sequential first packets; associating second error detection data with each of the first packets to form second packets; wirelessly broadcasting the plurality of second packets to the receiving device; receiving the wirelessly broadcasted plurality of second packets at the receiving device, the plurality of the received second packets comprising the entirety of the block including the payload data and the first error detection data; assessing the second error detection data for each received second packet, and, if valid, accepting the packet at the receiving device, and, if invalid, requesting that the invalid second packet be resent to the receiving device; reconstituting the block at the receiving device using the accepted second packets, the reconstituted block comprising the payload data and the first error detection data; computing a code for the payload data in the reconstituted block; and assessing the reconstituted block by comparing the code to the first error detection data, and, if valid, accepting the reconstituted block at the receiving device, and, if invalid, requesting that the block be resent to the receiving device;
wherein one of the external component and the implantable medical device comprises the sending device and the other comprises the receiving device. - View Dependent Claims (19, 20, 21, 22, 23, 24)
-
Specification