IP Library › Granted Patent US 12,533,521
Granted Patent B2
US 12,533,521 · App. 17/671,267 · Granted Jan 27, 2026

Systems and methods for programming neuromodulation sequences

Inventors: Mary Kotchevar (Minneapolis, MN); Hemant Bokil (Cambridge, MA)
Assignee: Boston Scientific Neuromodulation Corporation
A61N1/37247A61N1/36132A61N1/36185A61N1/37217A61N1/37252G16H40/63H04W4/20
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,533,521
App. No.
17/671,267
Granted
Jan 27, 2026
Kind
B2
Abstract

A neuromodulator may include a neuromodulation generator and a plurality of electrodes. A programming system may be configured to wirelessly communicate with the neuromodulator. The programming system may be configured to receive user input for use in creating at least two block sequence descriptions for at least two neuromodulation sites, respectively. Each of the at least two block sequence descriptions may define both a sequence of blocks for each of the at least two neuromodulation sites and timing relationships between the blocks in the sequences. Each of the blocks may correspond to a neuromodulation field generated using a corresponding neuromodulation parameter set. The programming system may be configured to translate the block sequence descriptions into neuromodulator instructions and wireless communicate the neuromodulator instructions to the neuromodulator for use by the neuromodulator to deliver the neuromodulation to each of the at least two neuromodulation sites.

Claims (35)

1 . A method, comprising: programming a neuromodulator to deliver neuromodulation to generate at least two different sequences of neuromodulation fields for at least two neuromodulation sites, wherein the programming includes:

receiving user input including, for each of the at least two neuromodulation sites, receiving a selection of neuromodulation fields from a plurality of neuromodulation fields available for selection, defining an order for the selection of the neuromodulation fields, and receiving timing relationships for the neuromodulation fields in the selection including timing between successive neuromodulation fields in the selection and timing for repeating a sequence of neuromodulation fields in the selection;

creating at least two block sequence descriptions for the at least two neuromodulation sites, respectively, based on the selection of modulation fields, the order and the timing relationships from the user input, wherein each of the at least two block sequence descriptions defines both a sequence of blocks and timing relationships between the blocks in the sequence to provide different block sequence descriptions including to provide a first of the at least two block sequence descriptions with a first sequence of blocks and timing relationships between the blocks in the first sequence and to provide a second of the at least two block sequence descriptions with a second sequence of blocks and timing relationships between the blocks in the second sequence, and each of the blocks corresponds to a neuromodulation field generated using fractionalized data for a corresponding neuromodulation parameter set;

translating the at least two block sequence descriptions into neuromodulator instructions and processing the neuromodulator instructions to update multiple register settings at a same time and reduce memory usage, the neuromodulator instructions including steering data for each block in the sequence of blocks and timing relationship data for the blocks within the sequence of blocks;

wirelessly communicating the neuromodulator instructions to the neuromodulator, the neuromodulator configured to store the steering data in hardware steering registers and store the timing relationship data in hardware timing registers, and to use the hardware steering registers and the hardware timing registers to implement the neuromodulator instructions to deliver the neuromodulation using at least two channels to generate the at least two different sequences of neuromodulation fields for the at least two neuromodulation sites according to the at least two block sequence descriptions; and

delivering the neuromodulation, using the neuromodulator, to generate the at least two different sequences of neuromodulation fields for the at least two neuromodulation sites according to the at least two block sequence descriptions.

2 . The method of claim 1 , wherein the translating the at least two block sequence descriptions into the neuromodulator instructions includes using a translator to translate the at least two block sequence descriptions into assembly language, and using an assembler to translate the assembly language into the neuromodulator instructions.

3 . The method of claim 1 , further comprising determining whether the blocks can be optimized to a function or can combine consecutive no operation blocks.

4 . The method of claim 1 , wherein the neuromodulator instructions wirelessly communicated to the neuromodulator includes bytes corresponding to fractionalized energy allocated to individual ones of a plurality of electrodes, the method further including storing the bytes in registers of the neuromodulator for use by the neuromodulator to allocate energy to the individual ones of the plurality of electrodes.

5 . The method of claim 4 , wherein the neuromodulator includes a plurality of independent current sources for the plurality of electrodes, respectively, and the bytes in the registers of the neuromodulator are used by the independent current sources to generate current amplitudes for the individual ones of the plurality of electrodes.

6 . The method of claim 1 , wherein the blocks in the sequence of blocks correspond to different electrode configurations to create a sequence of spatially different modulation fields.

7 . The method of claim 1 , wherein the user input includes user input to select and order blocks for the sequence of blocks, and an amplitude, pulse width and rate are associated with each of the blocks.

8 . The method of claim 1 , wherein the sequence of blocks includes Off blocks for which no neuromodulation is provided.

9 . The method of claim 1 , wherein the timing relationships include at least one of:

inter-block timing between blocks in the sequence of blocks; or

a duration, a start time or a stop time for blocks in the sequence of blocks.

10 . The method of claim 1 , wherein the sequence of blocks is repeated and associated with an ON-OFF duty cycle representing an ON time for repeating the sequence of blocks and an OFF time.

11 . The method of claim 1 , wherein the translating the at least two block sequence descriptions into the neuromodulator instructions includes using a plurality of field order tables corresponding to the hardware steering registers to store the steering data.

12 . The method of claim 11 , wherein each of the plurality of field order tables include a plurality of rows and a plurality of columns, and the plurality of rows corresponds to a plurality of block sequences, respectively, to define field order settings.

13 . The method of claim 12 , further comprising translating the at least two block sequence descriptions into assembly language, and using both an index table containing pointers to the plurality of rows in the field order tables and the at least two block sequence descriptions to determine one of the pointers for use to provide the steering data.

14 . A non-transitory machine-readable medium including instructions, which when executed by a machine, cause the machine to perform a method for programming a neuromodulator to deliver neuromodulation to generate at least two different sequences of neuromodulation fields for at least two neuromodulation sites, comprising:

receiving user input including, for each of the at least two neuromodulation sites, receiving a selection of neuromodulation fields from a plurality of neuromodulation fields available for selection, defining an order for the selection of the neuromodulation fields, and receiving timing relationships for the neuromodulation fields in the selection including timing between successive neuromodulation fields in the selection and timing for repeating a sequence of neuromodulation fields in the selection;

creating at least two block sequence descriptions for the at least two neuromodulation sites, respectively, based on the selection of modulation fields, the order and the timing relationships from the user input, wherein each of the at least two block sequence descriptions defines both a sequence of blocks and timing relationships between the blocks in the sequence to provide different block sequence descriptions including to provide a first of the at least two block sequence descriptions with a first sequence of blocks and timing relationships between the blocks in the first sequence and to provide a second of the at least two block sequence descriptions with a second sequence of blocks and timing relationships between the blocks in the second sequence, and each of the blocks corresponds to a neuromodulation field generated using fractionalized data for a corresponding neuromodulation parameter set;

translating the at least two block sequence descriptions into neuromodulator instructions and processing the neuromodulator instructions to update multiple register settings at a same time and reduce memory usage, the neuromodulator instructions including steering data for each block in the sequence of blocks and timing relationship data for the blocks within the sequence of blocks, and

wirelessly communicating the neuromodulator instructions to the neuromodulator, the neuromodulator configured to store the steering data in hardware steering registers and store the timing relationship data in hardware timing registers, and to use the hardware steering registers and the hardware timing registers to implement the neuromodulator instructions to deliver the neuromodulation using at least two channels to generate the at least two different sequences of neuromodulation fields, wherein the neuromodulator is configured to deliver the neuromodulation to generate the at least two different sequences of neuromodulation fields for the at least two neuromodulation sites according to the at least two block sequence descriptions.

15 . The non-transitory machine-readable medium of claim 14 , wherein the translating the at least two block sequence descriptions into the neuromodulator instructions includes translating the at least two block sequence descriptions into assembly language, and translating the assembly language into the neuromodulator instructions.

16 . The non-transitory machine-readable medium of claim 14 , wherein the neuromodulator instructions wirelessly communicated to the neuromodulator includes bytes corresponding to fractionalized energy allocated to individual ones of a plurality of electrodes, the method further including storing the bytes in registers of the neuromodulator for use by the neuromodulator to allocate energy to the individual ones of the plurality of electrodes.

17 . The non-transitory machine-readable medium of claim 14 , wherein the blocks in the sequence of blocks correspond to different electrode configurations to create a sequence of spatially different modulation fields, and the timing relationships include at least one of: inter-block timing between blocks in the sequence of blocks; or a duration, a start time or a stop time for blocks in the sequence of blocks.

18 . The non-transitory machine-readable medium of claim 14 , wherein the translating the at least two block sequence descriptions into the neuromodulator instructions includes using a plurality of field order tables corresponding to the hardware steering registers to store the steering data.

19 . A system, comprising:

a neuromodulator, wherein the neuromodulator includes a neuromodulation generator and a plurality of electrodes for use to deliver neuromodulation to generate at least two different sequences of neuromodulation fields for at least two neuromodulation sites; and

a programming system configured to wirelessly communicate with the neuromodulator, the programming system including a user interface, wherein the programming system is configured to receive user input, via the user interface, for the at least two neuromodulation sites, respectively, wherein the user input includes a selection of neuromodulation fields from a plurality of neuromodulation fields available for selection, defining an order for the selection of the neuromodulation fields, and timing relationships for the neuromodulation fields in the selection including timing between successive neuromodulation fields in the selection and timing for repeating a sequence of neuromodulation fields in the selection, and the programming system is configured to create at least two block sequence descriptions for the at least two neuromodulation sites, respectively, based on the selection of modulation fields, the order and the timing relationships from the user input,

wherein each of the at least two block sequence descriptions defines both a sequence of blocks and timing relationships between the blocks in the sequence to provide different block sequence descriptions including to provide a first of the at least two block sequence descriptions with a first sequence of blocks and timing relationships between the blocks in the first sequence and to provide a second of the at least two block sequence descriptions with a second sequence of blocks and timing relationships between the blocks in the second sequence,

wherein each of the blocks corresponds to a neuromodulation field generated using a corresponding neuromodulation parameter set, and

wherein the programming system is configured to translate the at least two block sequence descriptions into neuromodulator instructions and process the neuromodulator instructions to update multiple register settings at a same time and reduce memory usage, the neuromodulator instructions including steering data for each block in the sequence of blocks and timing relationship data for the blocks within the sequence of blocks, and wireless communicate the neuromodulator instructions to the neuromodulator, the neuromodulator configured to store the steering data in hardware steering registers and store the timing relationship data in hardware timing registers, and to use the hardware steering registers and the hardware timing registers to implement the neuromodulator instructions to deliver the neuromodulation using at least two channels to generate the at least two different sequences of neuromodulation fields, wherein the neuromodulator is configured to deliver the neuromodulation to generate the at least two different sequences of neuromodulation fields for the at least two neuromodulation sites according to the at least two block sequence descriptions.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 29, 2022
From: KOTCHEVAR, MARY; BOKIL, HEMANT
To: BOSTON SCIENTIFIC NEUROMODULATION CORPORATION
Reel/Frame 059428/0729 →
Continuity (2)
Provisional Application 63149570 · Feb 15, 2021
Related Publication 20220257957A1 · Aug 18, 2022
References Cited (22)
US 8620436B2 · Parramon et al. · 2013 [cited by applicant]
US 9446231B2 · Carbunaru et al. · 2016 [cited by applicant]
US 9974958B2 · Griffith · 2018 [cited by applicant]
US 10456583B2 · Doan · 2019 [cited by examiner]
US 10617872B2 · Marnfeldt · 2020 [cited by applicant]
US 20090326608A1 · Huynh et al. · 2009 [cited by applicant]
US 20140130026A1 · Yohn · 2014 [cited by examiner]
US 20150328467A1 · Demers · 2015 [cited by examiner]
US 20180071514A1 · Wagenbach · 2018 [cited by examiner]
US 20180214699A1 · Kothandaraman · 2018 [cited by examiner]
US 20210023372A1 · Musallam · 2021 [cited by examiner]
US 20210154481A1 · Scheltienne · 2021 [cited by examiner]
EP 4291293A1 · 2023 [cited by applicant]
EP 4291293B1 · 2024 [cited by applicant]
WO WO2018129280A1 · 2018 [cited by examiner]
WO WO2022174149A1 · 2022 [cited by applicant]
“Australian Application Serial No. 2022220342, First Examination Report mailed Aug. 5, 2024”, 3 pgs. [cited by applicant]
“European Application Serial No. 22707567.8, Response to Communication Pursuant to Rules 161(1) and 162 filed Apr. 2, 2024”, 11 pgs. [cited by applicant]
“International Application Serial No. PCT/US2022/016325, International Preliminary Report on Patentability mailed Aug. 24, 2023”, 8 pgs. [cited by applicant]
“International Application Serial No. PCT/US2022/016325, International Search Report mailed May 19, 2022”, 4 pgs. [cited by applicant]
“International Application Serial No. PCT/US2022/016325, Written Opinion mailed May 19, 2022”, 6 pgs. [cited by applicant]
“Australian Application Serial No. 2022220342, Response filed Mar. 18, 2025 to First Examination Report mailed Aug. 5, 2024”, 14 pgs. [cited by applicant]