Embedded Firmware and Verification for a Medical Infusion Device

Embedded Firmware and Verification for a Medical Infusion Device

Context

A medical-device company engaged Ambimat to develop and verify the firmware for an infusion device, and to demonstrate that the device met the medical standards applicable to it.

Requirement

  • Ensure the accuracy of the amount of dosage infused into the patient’s body
  • Reduce human errors in the injection process
  • Regulatory tests for the infusion pump

Ambimat’s work

Ambimat developed the graphical user interface through which the injection process is controlled, and validated the working of the pump by performing a set of tests on it. The device it runs on is:

  • A Class B safety device
  • A 1-channel syringe pump
  • Battery operated
  • Configurable for dosage
  • Alerting on: Replace Battery, Infusion Step Ending, End Of Flush, Near End Infusion, Low Battery, End Of Infusion, Air In Line, Occlusion Line set, Shutdown Battery, Internal Fault

Technical implementation

  • Firmware development for the infusion pump on an STM32F479NIH6 microcontroller
  • Graphical user interface built on MICRIUM OS (uC/OS-II)
  • Source code written to be compatible with FDA submission
  • Driver support for SPI, UART, I2C and USB
  • Detection and notification of multiple alert conditions
  • Air-in-line and occlusion detection
  • Integration of IR, pressure and Hall sensors

Verification and testing

  • Test plan prepared for unit, functional and integration testing of the product, with test cases for the stepper motor, ADC, NVRAM, pressure sensor, infusion port, syringe actuator and syringe refilling
  • UI testing
  • System testing complying with FDA and HIPAA protocols
  • Coverage of 10,800+ lines of code
  • Test cases generated using VectorCast, covering unit testing, individual functionality testing and integration testing
  • Test report generated with more than 90% code coverage, including a colour-coded view of covered, partially covered and uncovered source, a code-complexity metrics summary, and a Modified Condition / Decision Coverage (MC/DC) summary

Delivered outcome

  • The medicine injection process was automated
  • Medication errors during infusion were reduced
  • The result is straightforward for patients and for the medication management system to use

Related Ambimat capability

Firmware, driver and sensor-integration work of this kind, and the verification that goes with it, is described under embedded firmware and device software, part of Ambimat’s IoT and embedded product design and development service. Contact Ambimat to discuss a device firmware or verification requirement.

Education - Microprocessor Trainer I/F Board
Education – Microprocessor trainer I/F board
Next post: Education – Microprocessor trainer I/F board