Compatible with a variety of IPG programmers, servers and neural stimulation systems

By obtaining and reading configuration information of multiple IPGs, flexible compatibility for multiple IPGs is achieved, solving the problems of insufficient compatibility flexibility and timeliness in the existing technology, reducing energy consumption and operation complexity, and improving System security and user experience.

CN114870252BActive Publication Date: 2025-02-25SCENERAY
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202210463266.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-04-28
Publication Date
2025-02-25
Estimated Expiration
2042-04-28

AI Technical Summary

Technical Problem

The prior art has poor flexibility and timeliness when achieving compatibility between a variety of implantable neural stimulators (IPGs), and users (doctors) need the help of professionals for code adaptation and compatibility.

Method used

By obtaining the configuration information of each IPG, the configuration information of multiple IPGs to be compatible is read from the configuration information of all IPGs, and the interactive device is used to select the target IPG, and directly from the configuration information of multiple IPGs to be compatible. Read the configuration information of the target IPG, establish a program-controlled connection, and configure stimulus parameters.

Benefits of technology

It realizes flexible compatibility with multiple IPGs, reduces the energy consumption of the program controller, improves the stability of the hardware circuit, reduces the learning cost and operation complexity of users, and improves the timeliness and security of the system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114870252B_ABST
    Figure CN114870252B_ABST
Patent Text Reader

Abstract

The present application provides a programmer, server and neural stimulation system that are compatible with multiple IPGs. The programmer that is compatible with multiple IPGs is configured to: obtain the configuration information of each IPG; obtain the configuration information of multiple IPGs to be compatible from the configuration information of all IPGs; use an interactive device to receive a first selection operation for one of the multiple IPGs to be compatible, and in response to the first selection operation, use the selected IPG as the target IPG; read the configuration information of the target IPG from the obtained configuration information of the multiple IPGs to be compatible; use the configuration information of the target IPG to establish a program-controlled connection between the programmer and the target IPG, so as to configure the stimulation parameters of the target IPG. The configuration information of multiple IPGs to be compatible is obtained from the configuration information of all IPGs, and the configuration information corresponding to the target IPG is read from the configuration information of multiple IPGs to be compatible, which has strong flexibility and timeliness.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of implantable medical devices, and in particular to a programmer, a server and a neural stimulation system that are compatible with multiple IPGs. Background Art

[0002] In the technical field of implantable medical devices, a programmable connection is established with an IPG (implantable pulse generator) on the patient side through a programmer, and a doctor reads the configuration information of the IPG through the programmer to adjust the IPG parameters.

[0003] Figure 1 A schematic diagram showing the relationship between a programmer currently available in the art and multiple IPGs to be compatible is shown. When a new model and a new version of an IPG needs to be programmed by the programmer, the compatibility of the programmer with the new IPG needs to be considered. In order to make the programmer compatible with each IPG, the code including the configuration information of each IPG needs to be adapted and compatible and then repackaged and sent to the programmer. Because the users (doctors) who operate the programmer do not have the ability to adapt, make compatible, package and publish the above codes, professionals are required to operate. Therefore, the flexibility and timeliness of the IPG-compatible programmer achieved by the above method are relatively poor.

[0004] Therefore, it is urgent to design a program controller that is compatible with multiple IPGs to solve the shortcomings of the existing technology. Summary of the invention

[0005] The purpose of this application is to provide a programmer, server and neural stimulation system that are compatible with multiple IPGs. The above problems are solved by obtaining the configuration information of multiple IPGs to be compatible from the configuration information of all IPGs and reading the configuration information corresponding to the target IPG from the configuration information of multiple IPGs to be compatible.

[0006] The purpose of this application is achieved by the following technical solutions:

[0007] In a first aspect, the present application provides a programmer that is compatible with multiple IPGs, and the programmer is configured to: obtain configuration information of each IPG; wherein each IPG is used to be implanted in a patient's body to release electrical stimulation energy to in-body tissues and / or sense bioelectric signals in the body; obtain configuration information of multiple IPGs to be compatible from the configuration information of all IPGs; use an interactive device to receive a first selection operation for one of the multiple IPGs to be compatible, and in response to the first selection operation, use the selected IPG as a target IPG; read the configuration information of the target IPG from the acquired configuration information of the multiple IPGs to be compatible; and use the configuration information of the target IPG to establish a programmable connection between the programmer and the target IPG, thereby configuring the stimulation parameters of the target IPG.

[0008] The beneficial effects of this technical solution are: on the one hand, the configuration information of each IPG is obtained, and then the configuration information of multiple IPGs to be compatible is obtained from the configuration information of all IPGs, the target IPG is selected through the first selection operation, and the configuration information corresponding to the target IPG is read from the configuration information of multiple IPGs to be compatible, which fully takes into account that the user (doctor) of each programmer has different requirements for multiple compatible IPGs, so it has strong flexibility. On the other hand, since there is no need for code adaptation and repackaging after compatibility, the user (doctor) selects the configuration information of the target IPG for reading according to actual needs, which has strong timeliness.

[0009] In summary, the above programmer is used for compatibility with multiple IPGs, fully considering the personalized needs of users (doctors) in specific application scenarios. Users (doctors) can actively select the target IPG to achieve real-time compatibility of the configuration information of the target IPG, with strong flexibility and timeliness. In the process of IPG compatibility, the programmer does not need to process large amounts of data, which reduces the energy consumption of the programmer, improves the stability of the hardware circuit of the programmer, and achieves the effect of cost saving.

[0010] In some optional embodiments, the programmer is further configured to: display a plurality of preset IPGs using the interactive device; receive a second selection operation for a plurality of IPGs to be compatible using the interactive device; and determine a plurality of IPGs to be compatible from the preset plurality of IPGs in response to the second selection operation.

[0011] The beneficial effect of this technical solution is that it can fully consider the needs of users (doctors) in specific applications, and users (doctors) can actively select the configuration information of the compatible IPG to achieve real-time compatibility with the configuration information of the target IPG, which is highly timely. In the process of IPG compatibility, the programmer does not need to process large amounts of data, which reduces the energy consumption of the programmer, improves the stability of the hardware circuit of the programmer, and achieves the effect of cost saving.

[0012] In summary, in the process of IPG compatibility, the program controller does not need to process large amounts of data, which reduces the energy consumption of the program controller, improves the stability of the program controller's hardware circuit, and achieves the effect of cost saving.

[0013] In some optional embodiments, the programmer is further configured to: verify the configuration information of the target IPG before establishing a programmable connection between the programmer and the selected IPG; when the verification is successful, establish the programmable connection between the programmer and the target IPG using the configuration information of the target IPG; when the verification fails, send feedback information using the interactive device.

[0014] The beneficial effect of this technical solution is that by verifying the configuration information of the target IPG, the security of the patient's IPG and the programmer's programming is improved, and the ineffective waiting of users (doctors) and patients is reduced, which has the advantage of humanization.

[0015] In some optional embodiments, the programmer is configured to: when the verification fails, send a prompt message to the user device of the maintenance personnel using the interactive device.

[0016] The beneficial effect of this technical solution is that in the event of a verification failure, by actively providing prompt information to maintenance personnel, even if the configuration information of the target IPG fails to pass the verification, the maintenance personnel can be promptly reminded to respond to and solve the problem, with a high degree of intelligence.

[0017] In some optional embodiments, the programmer is further configured to verify the configuration information of the target IPG in the following manner: obtaining target verification information corresponding to the configuration information of the target IPG; and verifying the configuration information of the target IPG based on the target verification information.

[0018] The beneficial effect of this technical solution is that by verifying the configuration information of the target IPG through the target verification information, it is possible to effectively identify whether the configuration information of the target IPG has been tampered with, thereby improving the security of the programmable connection between the programmer and the IPG.

[0019] In some optional embodiments, the configuration information of each IPG is stored in a block of the blockchain; the programmer is further configured to obtain the configuration information of each IPG in the following manner: obtain the blockchain address of the configuration information of each IPG in the blockchain and its corresponding key; based on each blockchain address and its corresponding key, obtain the configuration information of each IPG from the blockchain.

[0020] The beneficial effect of this technical solution is that the configuration information of each IPG stored in the block of the blockchain mainly includes relatively fixed information such as the device identification of the IPG, the specifications and models of the IPG, the power supply type, the chip version, etc., and the storage occupied is not large, so the creation process is relatively simple, and it can take advantage of its "distributed data storage" and "high security" advantages to solve the problem of "information islands".

[0021] In some optional embodiments, the construction process of the blockchain includes: filling the configuration information of the IPG into a new block through a consensus node in the blockchain network; verifying the signature of the configuration information in the new block through the consensus node in the blockchain network, and when the verification passes, adding the new block to the end of the blockchain in the consensus node for storing the configuration information.

[0022] The beneficial effect of this technical solution is that: through the above process, the configuration information of the IPG is stored in the blockchain, and a blockchain that stores the configuration information of each IPG can be constructed for use in programmers that are compatible with multiple IPGs, eliminating the steps of code adaptation, compatibility, packaging and publishing, reducing the learning cost of users (doctors), and facilitating the promotion of IPG stimulation therapy.

[0023] In some optional embodiments, the programmer is further configured to read the configuration information of the target IPG from the acquired configuration information of multiple IPGs to be compatible in the following manner: generate a configuration file based on the acquired configuration information of multiple IPGs to be compatible; and read the configuration information of the target IPG from the configuration file.

[0024] The beneficial effect of this technical solution is that the configuration information of the target IPG is read from the configuration file, and the user (doctor) does not need to select configuration information from a large number of IPG configuration files when making a diagnosis or treatment, so that the user (doctor) does not need to waste energy on the compatibility of the IPG, thereby improving the user's (doctor's) focus on the patient.

[0025] In some optional embodiments, the configuration information includes at least one of the device identification of the IPG, the specification model of the IPG, the power supply type, the chip version, the IPG communication protocol, the indication type, the frequency display value and the stored value, the pulse width display value and the stored value, the supported electrode model, the contact start subscript, the maximum amplitude value in the voltage mode, and the maximum amplitude value in the current mode.

[0026] The beneficial effect of this technical solution is that the above configuration information can cover the key configuration parameters of the IPG and meet the actual needs of users (doctors) without increasing data redundancy.

[0027] In a second aspect, the present application also provides a server, which is configured to: obtain configuration information of each IPG; wherein each IPG is used to be implanted in the patient's body to release electrical stimulation energy to the body's tissues and / or sense bioelectric signals in the body; obtain configuration information of multiple IPGs to be compatible corresponding to each programmer from the configuration information of all IPGs and send it to the corresponding programmer, so that each programmer can perform the following steps: read the configuration information of the target IPG from the configuration information of multiple IPGs to be compatible corresponding to the programmer; use the configuration information of the target IPG to establish a programmable connection between the programmer and the target IPG, thereby configuring the stimulation parameters of the target IPG.

[0028] The beneficial effect of this technical solution is that the programmer only needs to read the configuration information of the selected IPG from the configuration information of the multiple IPGs to be compatible to achieve compatibility with the IPG. The setting of the above-mentioned server fully takes into account that the user (doctor) of each programmer has different ranges of compatible multiple IPGs, so it has strong flexibility. The programmer does not need to obtain the configuration information of the target IPG from all the configuration information. The server can obtain the configuration information of the multiple IPGs to be compatible that meets the needs of each programmer according to the needs of each programmer, and has strong timeliness. Each programmer receives the configuration information of the corresponding multiple IPGs to be compatible, with a small amount of data and strong flexibility. Each programmer does not obtain the configuration information of all IPGs, which reduces the loss caused by someone maliciously cracking the configuration information.

[0029] In summary, the above server can realize the real-time compatibility of the programmer with the target IPG, with strong flexibility and timeliness.

[0030] In a third aspect, the present application further provides a neural stimulation system, comprising: the programmer described in any one of the first aspects; and a plurality of IPGs to be compatible. BRIEF DESCRIPTION OF THE DRAWINGS

[0031] The present application is further described below in conjunction with the accompanying drawings and embodiments.

[0032] Figure 1 It is a schematic diagram of the relationship between an existing program controller and multiple IPGs to be compatible provided by the prior art;

[0033] Figure 2 It is a flowchart of execution steps of a program controller compatible with multiple IPGs provided in an embodiment of the present application;

[0034] Figure 3 It is a flowchart of another program controller execution step compatible with multiple IPGs provided in an embodiment of the present application;

[0035] Figure 4 It is a flowchart of another program controller execution steps compatible with multiple IPGs provided in an embodiment of the present application;

[0036] Figure 5 It is a schematic diagram of a process for verifying configuration information of a target IPG provided in an embodiment of the present application;

[0037] Figure 6 It is a schematic diagram of a process for obtaining configuration information of each IPG provided in an embodiment of the present application;

[0038] Figure 7 It is a flowchart of a blockchain construction process provided by an embodiment of the present application;

[0039] Figure 8 It is a schematic diagram of a process of reading configuration information of a target IPG provided by an embodiment of the present application;

[0040] Fig. 9 It is a flow chart of a server execution step provided in an embodiment of the present application;

[0041] Fig.10 It is a flowchart of the execution steps of a program controller provided in an embodiment of the present application;

[0042] Fig.11 It is a structural diagram of a neural stimulation system and server provided in an embodiment of the present application. DETAILED DESCRIPTION

[0043] Below, the present application is further described in conjunction with the accompanying drawings and specific implementation methods. It should be noted that, under the premise of no conflict, the various embodiments or technical features described below can be arbitrarily combined to form a new embodiment.

[0044] First, the application field of the present application is briefly described. The IPG is set in the patient's body to provide electrical stimulation. The stimulated biological tissue can be the patient's brain tissue, and the stimulated part can be a specific part of the brain tissue. When the patient's disease type is different, the stimulated part is generally different.

[0045] The programmer can program the IPG implanted in the patient's body. When the programmer and IPG establish a programmable connection, the user (doctor) can adjust the parameters of the IPG's electrical stimulation signal, or sense the patient's deep brain electrical activity through the IPG, and can use the sensed electrical activity to guide the user (doctor) to continue adjusting the parameters of the IPG's electrical stimulation signal. The parameters of the electrical stimulation signal can be any of the frequency (the number of pulses per unit time 1s, in Hz), pulse width (the duration of each pulse, in μs), and amplitude (generally expressed in voltage, i.e., the intensity of each pulse, in V). In specific applications, the various parameters of the IPG can be adjusted in current mode or voltage mode.

[0046] This application does not limit the data interaction method between the programmer and the IPG. For example, the programmer can be divided into a doctor programmer and a patient programmer; the patient programmer or the doctor programmer can interact with the IPG through the 401MHz-406MHz working frequency band / 2.4GHz-2.48GHz working frequency band, and the doctor programmer can also interact with the transit gateway through the 3G / 4G / 5G network, and the transit gateway can interact with the patient programmer through the 3G / 4G / 5G network, and the patient programmer can interact with the IPG through the 401MHz-406MHz working frequency band / 2.4GHz-2.48GHz working frequency band; it can also be that the doctor programmer interacts with the patient programmer through the 3G / 4G / 5G network, and the patient programmer can interact with the IPG through the 401MHz-406MHz working frequency band / 2.4GHz-2.48GHz working frequency band. All of the above connection methods can realize data interaction between the programmer and the IPG.

[0047] In this embodiment, unless otherwise stated, IPG is the abbreviation of "implantable neurostimulator". In this embodiment, the implantable neurostimulator can be a rechargeable deep brain neurostimulator.

[0048] See also Figure 2 , an embodiment of the present application provides a programmer that is compatible with multiple IPGs. Figure 2 A schematic flow chart of execution steps of a programmer compatible with multiple IPGs provided in the present application is shown, wherein the programmer is configured to execute steps S101 to S105.

[0049] Step S101: Acquire configuration information of each IPG; wherein each IPG is used to be implanted in a patient's body to release electrical stimulation energy to the body's tissues and / or sense bioelectric signals in the body.

[0050] Step S102: Acquire configuration information of multiple IPGs to be compatible from configuration information of all IPGs.

[0051] Step S103: using the interactive device to receive a first selection operation for one of the multiple IPGs to be compatible, and in response to the first selection operation, using the selected IPG as the target IPG.

[0052] Step S104: reading the configuration information of the target IPG from the acquired configuration information of the multiple IPGs to be compatible.

[0053] Step S105: using the configuration information of the target IPG, establishing a program-controlled connection between the programmer and the target IPG, thereby configuring the stimulation parameters of the target IPG.

[0054] On the one hand, the configuration information of each IPG is obtained, and then the configuration information of multiple IPGs to be compatible is obtained from the configuration information of all IPGs, the target IPG is selected through the first selection operation, and the configuration information corresponding to the target IPG is read from the configuration information of multiple IPGs to be compatible. This fully takes into account that the user (doctor) of each programmer has different requirements for compatible multiple IPGs, so it has strong flexibility.

[0055] On the other hand, since there is no need for code adaptation and repackaging after compatibility, users (doctors) can select the configuration information of the target IPG to read according to actual needs, which is highly timely.

[0056] Therefore, the above programmer is used for compatibility with multiple IPGs, which can fully consider the personalized needs of users (doctors) in specific application scenarios. Users (doctors) can actively select the target IPG to achieve real-time compatibility of the configuration information of the target IPG, with strong flexibility and timeliness. In the process of IPG compatibility, the programmer does not need to process large amounts of data, which reduces the energy consumption of the programmer, improves the stability of the hardware circuit of the programmer, and achieves the effect of cost saving.

[0057] The IPG in the present application can sense the local field potential (LFP) of in vivo tissue and / or the single cell potential of in vivo neurons when sensing bioelectric signals in the patient's body.

[0058] The configuration information in this embodiment may include the device identification of the IPG, the specification model of the IPG, the power supply type, the chip version, the IPG communication protocol, the indication type, the frequency display value and the stored value, the pulse width display value and the stored value, the supported electrode model, the contact starting subscript, at least one of the maximum amplitude in the voltage mode and the maximum amplitude in the current mode. The present application does not limit the type of configuration information, and the configuration information of different IPGs may be completely different or partially different. For example, the configuration information of the IPG may be "device identification SN123331.1a; power supply type rechargeable lithium battery; stimulator chip version 1.203b; IPG communication protocol 2.4GHz-2.48GHz frequency band communication protocol; indication type Parkinson's". Therefore, the above configuration information can cover the key configuration parameters of the IPG and meet the actual needs of users (doctors) without increasing data redundancy.

[0059] The configuration information of each IPG can be stored in an external storage device, such as a cloud storage device, a local storage device, a USB flash drive, etc. The interactive device can be a touch screen interactive device, a voice interactive device, or other device that can realize user (doctor) interactive operations. The first selection operation is, for example, a touch operation or a voice command operation that can use the interactive device to select the target IPG. When the first selection operation is a touch operation, it can be a double-click confirmation operation, a long press confirmation operation, etc.; when the first selection operation is a voice command operation, it can be a voice command such as "Interactive device, I want to select IPG No. 6 as the target IPG".

[0060] In a specific application, the interactive device is a touch screen interactive device, and the logos of IPG No. 1 to IPG No. 20 to be compatible are displayed on the touch screen. The doctor needs to configure the stimulation parameters of the patient's IPG No. 6, because the model of IPG No. 6 is relatively new and the programmer is not compatible with IPG No. 6. The doctor does not need to send the programmer to a professional, but only needs to double-click the logo of IPG No. 6 to confirm through the touch screen interactive device, so as to read the configuration information of IPG No. 6, establish a programmable connection between the programmer and IPG No. 6, and thus configure the stimulation parameters of IPG No. 6.

[0061] See also Figure 3 In some optional implementations, the programmer is also configured to execute steps S106 to S108. Figure 3 A flowchart of execution steps of another programmer compatible with multiple IPGs provided by the present application is shown.

[0062] Step S106: using the interactive device to display a plurality of preset IPGs.

[0063] Step S107: using the interactive device to receive a second selection operation for a plurality of IPGs to be compatible.

[0064] Step S108: In response to the second selection operation, a plurality of IPGs to be compatible are determined from a plurality of preset IPGs.

[0065] It should be noted that, in the embodiment of the present application, steps S106 to S108 only need to be executed before step S103, and are not specifically limited here.

[0066] By selecting and determining multiple IPGs to be compatible from the preset multiple IPGs through the second selection operation, it is not necessary to obtain the configuration information of the target IPG from the configuration information of all IPGs, which reduces the data redundancy of the programmer, and the programmer does not need to process large amounts of data, which reduces the energy consumption of the programmer in the process of compatibility with the target IPG. Reducing the energy consumption of the programmer in the process of compatibility with the target IPG, and thus reducing the power supply requirements for the programmer, can effectively improve the stability of the hardware circuit of the programmer, reduce the PCB area in the programmer, and achieve the effect of cost saving.

[0067] Therefore, in the process of being compatible with IPG, the programmer does not need to process large amounts of data, which reduces the energy consumption of the programmer, improves the stability of the programmer's hardware circuit, and achieves the effect of cost saving.

[0068] Among them, the multiple IPGs to be compatible are part of the preset multiple IPGs. In specific applications, the user (doctor) can filter out the multiple IPGs to be compatible from the preset multiple IPGs according to the restriction conditions, for example, filter out the multiple IPGs of multiple patients corresponding to the same user (doctor), or filter out the multiple IPGs in a certain patient, or filter out the multiple IPGs of a certain version. The second selection operation is, for example, a touch operation or a voice command operation, which can use the interactive device to select the target IPG. When the second selection operation is a touch operation, it can be a drag selection and double-click confirmation operation, a click selection and long press confirmation operation, etc. When the second selection operation is a voice command operation, it can be a voice command such as "interactive device, I want to select IPG No. 3, IPG No. 5 and IPG No. 13 as IPGs to be compatible". The second selection operation can be a selection and confirmation operation of the user (doctor) on multiple IPGs in a patient.

[0069] See also Figure 4 In some optional implementations, the programmer is also configured to execute steps S109 to S111. Figure 4 A flowchart of execution steps of another programmer compatible with multiple IPGs provided by the present application is shown.

[0070] Step S109: Before establishing the program control connection between the programmer and the selected IPG, verify the configuration information of the target IPG.

[0071] Step S110: When the verification is successful, a program control connection is established between the programmer and the target IPG using the configuration information of the target IPG.

[0072] Step S111: When the verification fails, feedback information is sent using the interactive device.

[0073] Since hospitals are crowded places and network signals are complex, it is easy for the IPG configuration information to be lost or wrong during the information transmission process due to network reasons, which will affect the user (doctor)'s programming of the patient's IPG through the programmer. By verifying the configuration information of the target IPG, the security of the patient's IPG and the programmer's programming is improved. In addition, only the configuration information of the target IPG is verified, which reduces the amount of data processing during the verification process. Therefore, compared with no verification process, the compatibility time of the IPG is not significantly increased, and the experience of users (doctors) and patients is good. When the verification fails, the corresponding prompt information can be obtained to prompt the user (doctor), reducing the invalid waiting of patients and users (doctors).

[0074] Therefore, by verifying the configuration information of the target IPG, the security of the patient's IPG and the programmer's programming is improved, and the ineffective waiting of users (doctors) and patients is reduced, which has the advantage of humanization.

[0075] The method for verifying the configuration information of the target IPG may include various hash algorithms and / or CRC (Cyclic Redundancy Check) verification algorithms. The hash algorithms may include: MD5 (Message Digest Algorithm), MD4, MD2, SHA (Secure Hash Al gorithm), etc. In a specific application, MD5 is preferably used to verify the configuration information, which has the advantages of high efficiency and low probability of misjudgment.

[0076] In a specific application, the configuration information of the target IPG is verified by MD5. The configuration information of the target IPG is input into the verification software to perform MD5 Hash to obtain a first MD5 hash value. For the convenience of distinction, the original MD5 hash value corresponding to the configuration information of the target IPG is called the second MD5 hash value. The first MD5 hash value and the second MD5 hash value are compared. If the two are equal, the MD5 verification succeeds, otherwise the MD5 verification fails.

[0077] When the configuration information verification of the target IPG fails, the interactive device can be used to send feedback information to the user (doctor). For example, if the interactive device is a touch screen interactive device, the feedback information sent by the interactive device can be an information pop-up window, and the pop-up window content can be a prompt text "The configuration information verification of IPG No. 3 failed, please contact the maintenance personnel, the maintenance personnel contact information is as follows: telephone 13000000000"; for example, if the interactive device is a voice interactive device, the feedback information sent by the interactive device can be a voice prompt, and the voice prompt content can be a prompt voice "IPG No. 30 failed to pass the configuration information verification, please do not proceed to the next step of program control operation, please contact the maintenance personnel, the maintenance personnel contact information is as follows: telephone 13000000000".

[0078] In a specific application, when the verification fails, the programmer is configured to execute the step: using the interactive device to send a prompt message to the user device of the maintenance personnel. The user device can be a smart phone, a tablet, a computer, etc. The maintenance personnel can be a full-time network engineer or a network service provider of the hospital. The maintenance personnel can use their own professional knowledge to find and deal with the cause of the verification failure as soon as possible according to the prompt information. For example, if the maintenance personnel finds that the configuration information of the target IPG is damaged, the original configuration information can be restored through the backup IPG configuration information; for example, if the maintenance personnel finds that the configuration information of the target IPG is caused by the bandwidth being occupied by an abnormal program and the network is unstable, the maintenance personnel can restrict the abnormal program, and then contact the user (doctor) by phone to guide the user (doctor) to re-connect the target IPG. The user (doctor) is only a person with high professional skills in the medical field, and the analysis of the verification failure is not professional. The above method can give the user (doctor) timely help, so that the doctor can have a deeper trust in the program-controlled device program-controlled IPG to treat the patient, thereby improving the doctor's enthusiasm for treating the patient.

[0079] Therefore, in the event of a verification failure, by actively providing prompt information to maintenance personnel, even if the configuration information of the target IPG fails to pass the verification, the maintenance personnel can be promptly reminded to respond to and solve the problem, with a high degree of intelligence.

[0080] See also Figure 5 Specifically, the step S109 may include steps S201 and S202, and through steps S201 and S202, the program controller may verify the configuration information of the target IPG.

[0081] Step S201: Acquire target verification information corresponding to the configuration information of the target IPG.

[0082] Step S202: verifying the configuration information of the target IPG based on the target verification information.

[0083] Therefore, by verifying the configuration information of the target IPG through the target verification information, it is possible to effectively identify whether the configuration information of the target IPG has been tampered with, thereby improving the security of the programmable controller and the IPG program-controlled connection.

[0084] In a specific application, the target verification information corresponding to the configuration information of the target IPG is X1, and the configuration information of the target IPG is input into the MD5 verification tool to obtain the MD5 value X2 of the configuration information. X1 is compared with X2 to verify whether the configuration information of the target IPG has been "tampered with".

[0085] It should be noted that the specific content in the above specific application is a simple example made for the convenience of description. Taking the MD5 check value as an example, in actual applications, it is usually a hexadecimal digit string, such as "0da11d895246f726ade26933175b9c083", "175b90da691d8951ade2246f72633c083", etc.

[0086] See also Figure 6 In some optional implementations, the configuration information of each IPG is stored in a block of the blockchain; the programmer is further configured to obtain the configuration information of each IPG using steps S301 to S302.

[0087] Step S301: Obtain the blockchain address of the configuration information of each IPG in the blockchain and its corresponding key.

[0088] Step S302: Based on each of the blockchain addresses and its corresponding key, obtain configuration information of each of the IPGs from the blockchain.

[0089] Since the hospital's information system is usually only open to the internal staff, the configuration information of each IPG is stored in the hospital's information system, which easily leads to the problem of "information islands". In addition, the original information storage method is easy to be tampered with and has low security. In the old understanding, due to the complexity of the blockchain structure and operation mechanism, and the information stored in the blockchain will take up a lot of storage space, the creation process of the blockchain is very cumbersome, and it cannot be used in daily life scenarios, and its practicality is low.

[0090] In this embodiment, the configuration information of each IPG stored in the block of the blockchain mainly includes relatively fixed information such as the device identification of the IPG, the specifications and models of the IPG, the power supply type, the chip version, etc., and the storage occupied is not large. Therefore, the creation process is relatively simple, and it can take advantage of its "distributed data storage" and "high security" advantages to solve the problem of "information islands".

[0091] Among them, blockchain is a new application model of computer technologies such as distributed data storage, peer-to-peer transmission, consensus mechanism, encryption algorithm, etc. Blockchain is essentially a decentralized database, a string of data blocks generated by cryptographic methods. Each data block contains a batch of network transaction information, which is used to verify the validity of its information (anti-counterfeiting) and generate the next block. Blockchain can include the underlying blockchain platform, platform product service layer, and application service layer.

[0092] A key pair (i.e. a public key and a private key) can be obtained through the algorithm. The public key is the public part of the key pair, and the private key is the non-public part. The public key is usually used to encrypt data, verify digital signatures, etc. This algorithm can ensure that the key pair obtained is unique. When using this key pair, if one of the keys is used to encrypt a piece of data, it must be decrypted with another key to query the information. For example, if the data is encrypted with the public key, it must be decrypted and queried with the private key. If it is encrypted with the private key, it must also be decrypted with the public key, otherwise the decryption will not be successful and the information stored in the blockchain cannot be queried. The blockchain address and its corresponding key can realize the acquisition of configuration information stored in the blockchain. This application does not limit the type of key.

[0093] See also Figure 7 The construction process of the blockchain includes steps S401 to S402.

[0094] Step S401: Fill the IPG configuration information into the new block through the consensus node in the blockchain network.

[0095] Step S402: The signature of the configuration information in the new block is verified by the consensus node in the blockchain network. When the verification passes, the new block is added to the end of the blockchain in the consensus node for storing the configuration information.

[0096] Therefore, through the above steps, the configuration information of the IPG is stored in the blockchain, and a blockchain storing the configuration information of each IPG can be constructed for use in programmers compatible with multiple IPGs, eliminating the steps of code adaptation, compatibility, packaging and release, reducing the learning cost of users (doctors), and facilitating the promotion of IPG stimulation treatment plans.

[0097] Among them, it is generally believed that the private key is used to encrypt the information to be transmitted, and the resulting ciphertext is called the signature of the transmission process; it is generally believed that signature verification refers to the data receiving end obtaining the transmitted information and confirming through the signature whether the information has been tampered with in the middle.

[0098] A consensus node can be regarded as a special ordinary time node. In addition to completing the work of an ordinary time node, it can also reach consensus through a consensus mechanism to update the ledger. The consensus mechanism is a mathematical algorithm in the blockchain system that enables different nodes to establish trust and obtain rights and interests.

[0099] See also Figure 8 In some optional implementations, the programmer is further configured to read the configuration information of the target IPG from the acquired configuration information of multiple IPGs to be compatible using steps S501 to S502.

[0100] Step S501: Generate a configuration file based on the acquired configuration information of multiple IPGs to be compatible.

[0101] Step S502: Read the configuration information of the target IPG from the configuration file.

[0102] The configuration information of the target IPG is obtained from a configuration file, and the configuration file is generated based on the configuration information of multiple IPGs to be compatible, so as to facilitate the storage of the configuration information to be compatible.

[0103] Thus, the configuration information of the target IPG is read from the configuration file, and the user (doctor) does not need to select configuration information from numerous IPG configuration files when conducting diagnosis and treatment, so that the user (doctor) does not need to waste energy on IPG compatibility, thereby improving the user's (doctor's) focus on the patient.

[0104] This embodiment does not limit the format of the generated configuration file. The format of the generated configuration file is, for example, a text file format (ASCll, MIME, txt), excel format, csv (comma separated value file) format, json (JavaScript Object Notation, JS object notation) format or computer program instructions. The data in the generated configuration file can be read or stored in a parsable format or sequence.

[0105] See also Fig. 9 and Fig.10 The embodiment of the present application further provides a server, which is configured to execute steps S601 to S602. Fig. 9A schematic diagram showing a flow chart of execution steps of a server provided by the present application is shown. Fig.10 A schematic flow chart of the execution steps of a program controller provided by the present application is shown.

[0106] Step S601: Acquire configuration information of each IPG; wherein each IPG is used to be implanted in a patient's body to release electrical stimulation energy to the body's tissues and / or sense bioelectric signals in the body.

[0107] Step S602: Acquire the configuration information of multiple IPGs to be compatible corresponding to each program controller from the configuration information of all IPGs and send it to the corresponding program controller, so that each program controller can execute steps S701 to S702.

[0108] Each programmer can execute steps S701 to S702 based on the configuration information of multiple IPGs to be compatible obtained from the server.

[0109] Step S701: Read the configuration information of the target IPG from the configuration information of the multiple IPGs to be compatible corresponding to the programmer.

[0110] Step S702: Using the configuration information of the target IPG, a program-controlled connection is established between the programmer and the target IPG, thereby configuring the stimulation parameters of the target IPG.

[0111] The server can obtain the configuration information of each IPG, and then obtain the configuration information of multiple IPGs to be compatible from the configuration information of all IPGs. The above configuration information is used for each programmer to be compatible with multiple IPGs. When a new specification or model of IPG needs to be programmed, it is used as a compatible IPG and its configuration information is obtained to establish a program-controlled connection.

[0112] The programmer only needs to read the configuration information of the selected IPG from the configuration information of the multiple IPGs to be compatible to achieve compatibility with the IPG. The setting of the above server fully takes into account that the user (doctor) of each programmer has different ranges of compatible multiple IPGs, so it has strong flexibility. The programmer does not need to obtain the configuration information of the target IPG from all the configuration information. The server can obtain the configuration information of the multiple IPGs to be compatible that meets the needs of each programmer according to the needs of each programmer, and it has strong timeliness. Each programmer receives the configuration information of the corresponding multiple IPGs to be compatible, with a small amount of data and strong flexibility. Each programmer does not obtain the configuration information of all IPGs, which reduces the loss caused by someone maliciously cracking the configuration information.

[0113] Therefore, the server can realize the real-time compatibility of the programmer with the target IPG, with strong flexibility and timeliness.

[0114] See also Fig.11 The present application also provides a neural stimulation system, the neural stimulation system comprising:

[0115] The program controller according to any one of the above embodiments;

[0116] Multiple IPGs to be compatible. The configuration information of each IPG can be stored in the server described in the above embodiment.

[0117] In some optional embodiments, the types of diseases that the neural stimulation system can be used to treat or manage include any one or more of the following: spastic disorders, pain, migraine, mental illness, bipolar disorder, anxiety disorders, post-traumatic stress disorder, depression, obsessive-compulsive disorder, behavioral disorders, mood disorders, memory disorders, mental state disorders, movement disorders, Huntington's disease, Alzheimer's disease, and drug addiction.

[0118] Therefore, the neurostimulation system can be used to treat or manage a variety of diseases and has a wide range of applications.

[0119] The terms "first", "second", "third", "fourth", etc. (if any) in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present application described herein can be implemented in an order other than those illustrated or described herein, for example. In addition, the terms "including" and "corresponding to" and any of their variations are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0120] This application is explained from the perspectives of purpose of use, effectiveness, progress and novelty, and has met the functional enhancement and usage requirements emphasized by the Patent Law. The above description and drawings of this application are only the preferred embodiments of this application, and are not intended to limit this application. Therefore, all structures, devices, features, etc. that are similar or identical to this application, that is, all equivalent replacements or modifications made in accordance with the scope of the patent application of this application, should fall within the scope of protection of the patent application of this application.

Claims

1. A program controller compatible with multiple IPGs, characterized in that: The programmer is configured to: Acquiring configuration information of each IPG; wherein each IPG is used to be implanted in a patient's body to release electrical stimulation energy to tissues in the body and / or sense bioelectric signals in the body; Acquire configuration information of multiple IPGs to be compatible from configuration information of all IPGs; Receiving, by means of an interactive device, a first selection operation for one of a plurality of IPGs to be compatible, and in response to the first selection operation, taking the selected IPG as a target IPG; Reading the configuration information of the target IPG from the acquired configuration information of the multiple IPGs to be compatible; The configuration information of the target IPG is used to establish a program-controlled connection between the programmer and the target IPG, thereby configuring the stimulation parameters of the target IPG.

2. The program controller according to claim 1, characterized in that: The programmer is also configured to: Using the interactive device to display a plurality of preset IPGs; Receiving, by means of the interactive device, a second selection operation for a plurality of IPGs to be compatible; In response to the second selection operation, a plurality of IPGs to be compatible are determined from a plurality of preset IPGs.

3. The program controller according to claim 1, characterized in that: The programmer is also configured to: Before establishing a program-controlled connection between the programmer and the selected IPG, verifying the configuration information of the target IPG; When the verification is successful, establishing a program-controlled connection between the programmer and the target IPG using the configuration information of the target IPG; When the verification fails, feedback information is sent using the interactive device.

4. The program controller according to claim 3, characterized in that: The programmer is configured to: When the verification fails, the interactive device is used to send a prompt message to the user equipment of the maintenance personnel.

5. The program controller according to claim 3, characterized in that: The programmer is further configured to verify the configuration information of the target IPG in the following manner: Obtain target verification information corresponding to the configuration information of the target IPG; The configuration information of the target IPG is verified based on the target verification information.

6. The program controller according to claim 1, characterized in that: The configuration information of each IPG is stored in a block of the blockchain; The programmer is further configured to obtain the configuration information of each IPG in the following manner: Obtain the blockchain address of the configuration information of each IPG in the blockchain and its corresponding key; Based on each of the blockchain addresses and its corresponding key, configuration information of each of the IPGs is obtained from the blockchain.

7. The program controller according to claim 6, characterized in that: The construction process of the blockchain includes: Fill the IPG configuration information into the new block through the consensus node in the blockchain network; The signature of the configuration information in the new block is verified by the consensus node in the blockchain network. When the verification passes, the new block is added to the end of the blockchain in the consensus node for storing the configuration information.

8. The program controller according to claim 1, characterized in that: The programmer is further configured to read the configuration information of the target IPG from the acquired configuration information of the multiple IPGs to be compatible in the following manner: Generate a configuration file based on the acquired configuration information of the multiple IPGs to be compatible; The configuration information of the target IPG is read from the configuration file.

9. The program controller according to claim 1, characterized in that: The configuration information includes at least one of the IPG device identification, IPG specification model, power supply type, chip version, IPG communication protocol, indication type, frequency display value and stored value, pulse width display value and stored value, supported electrode models, contact starting subscript, maximum amplitude value in voltage mode, and maximum amplitude value in current mode.

10. A server, characterized in that: The server is configured to: Acquiring configuration information of each IPG; wherein each IPG is used to be implanted in a patient's body to release electrical stimulation energy to tissues in the body and / or sense bioelectric signals in the body; The configuration information of multiple IPGs to be compatible corresponding to each program controller is obtained from the configuration information of all IPGs and sent to the corresponding program controller, so that each program controller can perform the following steps: Reading the configuration information of the target IPG from the configuration information of the multiple IPGs to be compatible corresponding to the programmer; The configuration information of the target IPG is used to establish a program-controlled connection between the programmer and the target IPG, thereby configuring the stimulation parameters of the target IPG.

11. A neural stimulation system, characterized in that: The neural stimulation system comprises: The program controller according to any one of claims 1 to 9; Multiple IPGs to be compatible.

Citation Information

Patent Citations

  • Communication protocol information processing method and device and electronic equipment

    CN109729072A