Secure Medical Device Programming via Intermediary Layer

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The use of off-the-shelf general purpose computers as clinician programmers in medical devices poses safety and regulatory concerns due to vulnerabilities from conflicts with other programs, viruses, and disruptions, which can lead to unintended changes in therapy delivery to patients.

Innovation Solution

Implementing an intermediate computing device that acts as a secure layer between the general purpose computer and the implantable medical device, using techniques such as a watchdog module, mediator module, and safe mode activation to ensure safe and secure programming, and allowing clinician programmer software to run on a dedicated, special purpose device to mitigate these risks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If an off-the-shelf general purpose computer is used as a clinician programmer, then hardware costs and space requirements are reduced, but safety and reliability deteriorate due to vulnerabilities from conflicts with other programs, viruses, and disruptions

Engineering Contradiction:
Improvehardware cost reductionVSAvoidprogramming safety
Core Design Contradiction:
Ease of manufactureVSReliability

Solution Approach 1:

The patent introduces a dedicated communication interface or intermediary layer between the general-purpose computer and the implantable medical device. This intermediary acts as a secure gateway that validates and filters all programming commands, preventing harmful operations while allowing legitimate programming functions. The intermediary maintains the safety benefits of dedicated devices while enabling the use of cost-effective general-purpose computers.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system is divided into separate functional components: the general-purpose computer handles user interface and programming operations, while a dedicated secure communication module or interface card handles device communication. This segmentation isolates the safety-critical communication functions from the potentially vulnerable general-purpose operating system, reducing risk while maintaining cost efficiency.

Inventive Principle:
Principle #1Segmentation

2Productivity

If clinician programmer software runs on a general purpose computer with other applications, then hardware resources are optimized, but system stability deteriorates due to resource conflicts and disruptions from other programs

Engineering Contradiction:
Improvehardware utilization efficiencyVSAvoidsystem operational stability
Core Design Contradiction:
ProductivityVSStability of the object's composition

Solution Approach 1:

A dedicated communication interface or driver layer serves as an intermediary that manages all interactions between the general-purpose computer and the medical device. This intermediary establishes stable, predictable communication protocols and buffers that isolate the device programming functions from disruptions caused by other applications running on the computer.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent creates a protected or isolated computing environment for the clinician programmer software, such as a sandboxed application, virtual machine, or dedicated user account with restricted permissions. This isolated environment prevents conflicts with other system resources while allowing full functionality for device programming, maintaining stability despite running on a general-purpose computer.

Inventive Principle:
Principle #39Inert atmosphere (Inert environment)

3Adaptability or versatility

If a general purpose computer is used as a clinician programmer, then device versatility is improved, but susceptibility to harmful factors increases due to viruses and corruption of desktop applications

Engineering Contradiction:
Improvecomputer functionalityVSAvoidvirus and corruption vulnerability
Core Design Contradiction:
Adaptability or versatilityVSObject-affected harmful factors

Solution Approach 1:

The dedicated communication interface or secure gateway acts as a protective intermediary that validates all commands before they reach the medical device and filters incoming data. This intermediary implements security protocols that detect and block malicious operations, allowing the general-purpose computer to maintain its versatility while the intermediary protects against viruses and application corruption.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system implements preliminary security measures such as code signing verification, digital certificates, and pre-approved command sets that prevent malicious operations before they can execute. These preliminary anti-actions are built into the communication interface, proactively blocking potential virus attacks or corruption attempts while allowing legitimate programming functions to proceed.

Inventive Principle:
Principle #9Preliminary anti-action

Data Source

PatentUS7885712B2Medical device programming safety
Publication Date: 2011.02.08 MEDTRONIC INC
  • US7885712B2 patent drawing
  • US7885712B2 patent drawing
  • US7885712B2 patent drawing

AI summary

Techniques for increasing the safety of medical device programming using general purpose hardware, such as a general purpose personal computer, are described. In some embodiments, a system includes an intermediate computing device comprising an applications module. Information from the applications module, such as instructions for an implantable medical device (IMD), may be presented to a user via a user input terminal that is separate from the intermediate computing device. A user may interact with the user input terminal to select an instruction from the applications module, and the intermediate computing device may transmit the selected instruction to the IMD. In some embodiments, the intermediate computing device comprises a web server and the user input terminal comprises a web browser configured to access the web server. In other embodiments, the intermediate computing device comprises a client server and the user input terminal comprises a client.