.NET 8.0 to upgrade a legacy EEG software

The migration and modernization of legacy EEG data capture program
Industry:

Services:

Desktop development Software modernization Medical device integration
Device integration
Performance optimization
Data source integration
Project management
Business consulting
1

Project overview

Our client – an innovator in designing and manufacturing Electroencephalography (EEG) equipment and technology. By developing state-of-the-art devices and solutions for efficient neuro diagnostics, the company is redefining clinical standards.

Our work was focused on modernizing a program for accurate EEG capture and analysis.

2

Main goals

  • Upgrade the existing codebase to the .NET framework’s version 8 to ensure better performance
  • Remove the MS Sync as a legacy tool to enable future replacement with more modern alternatives
  • Update LightningChart to a newer version
  • Replace TVideoGrabber with GStreamer to address the challenge of long-duration video recordings
  • Improve the system’s flexibility by supporting non-Microsoft databases
  • Build a solid foundation for future feature expansion and integration
3

How the solution works

The program is used to record and review EEG studies full on-site by using stationary computers and amplifiers. It’s designed to store the studies on both the computer and amplifier, which allows data sharing and exporting for further clinical evaluation.

 

We migrated the software to provide a standalone desktop application, which provides critical features:

  • Touch-optimized interface for convenient data acquisition and visualization
  • USB and Bluetooth support for dual data storage
  • Event annotation
  • Audio and video recording (high-definition quality)
  • Real-time monitoring, in particular battery status
  • Session guidance
  • Session logging for reimbursement
  • Session locking for continuity
4

Our contribution

Initial state

 

The system was a WPF application built upon the older .NET framework (version 4.7) and several .NET libraries. Some libraries were designed for desktop use specifically and handled the communication between amplifiers, while others contained shared portal logic for acquisition and review.

 

The interface was using:

  • LightningChart for EEG display, a rather old component and bonded to outdated .NET version
  • TVideoGrabber for video capture, which causes some issues during long-time video recording

The system was synced with the Rendr API using outdated Microsoft Sync, which caused several bottlenecks. The system setup required SQL Server Compact Edition on the client side along with MS’ full-feature SQL Server on the server side.

 

Even though Entity Framework was used, you couldn’t choose different database engines for client and server on account of how sync works.

 

Current state – updates by Abto Software

 

In the first stage, our team:

  • Upgraded to .NET 8
  • Replaced the Entity Framework with the EF Core to support non-Microsoft databases
  • Removed the Microsoft Sync 
  • Introduced a new structure to enable more efficient data storage
  • Replaced TVideoGrabber with GStreamer, a robust multimedia engine
  • Updated LightningChart version 6.5 to LightningChart version 12, which supports .NET 8
5

Main challenges

The integration of new multimedia technology

 

One challenge was replacing the TVideoGrabber with GStreamer, an open-source multimedia framework:

  • The technology uses non-monolithic, pipeline-based architecture 
  • The engine lacks production-ready .NET bindings
  • Early versions either crashed or leaked during long video recordings, complicating debugging.
  • The interplay with webcams and other medical devices required testing, fallback logic, and alternations for smooth video capture

In brief, we resolved the challenge: 

  • By exploring the capabilities and limitations of GStreamer 
  • And adapting the GStreamer to specific project requirements in several project iterations 

The handling of devices and cameras without disconnect

 

Another challenge was maintaining stable connectivity despite interruptions:

  • To ensure smooth resumption without restart
  • To ensure gap-free alignment after resumption
  • To prevent video corruption in case of sudden mid-session disconnection
  • And resolve the problem of failed amplifier signals and locked camera drivers

In short, we mastered the challenge:

  • By designing a system to handle sudden disconnections
  • And enable seamless recovery without crashes or forced session termination to enable data continuity

Tools and technology stack

  • .NET 8.0
  • EF Core
  • WPF framework

Timeline:

  • December 2024 – ongoing

Team:

  • 1 project manager/requirements analyst/QA engineer
  • 1 delivery manager
  • 1 technical leader
  • 1 GStreamer specialist
6

Value delivered to business

1. Future-proof technology

.NET capabilities – cross-platform support, clean architecture, faster runtime execution, lower memory usage – for future business growth and cheaper long-term maintenance.

 

2. Reliable performance

Stable operation even during long sessions – no disruptions and far less downtime in critical clinical settings.

 

3. A wide-range device compatibility

Easy integration with different EEG devices through USB & Bluetooth – better controlled clinical workflows.

 

4. Greater adaptivity and scalability

Quick adjustment to different clinical scenarios – more cases dynamically supported without realignment.

Categories:

Contact Us

To find out more about Abto Software expertise, request a quote or get a demo of your custom solution.

  • Clicking this button, I agree to the processing of my personal data.

Contact us

Tell your idea, request a quote or ask us a question