Official Support for C# / .NET 8.0 & .NET Framework 4.5.2

DSPAUT SDK (DSK)
C# Ultrasonic Library

DSPAUT SDK (DSK) is a dedicated C# development library designed to control the measurement engine of DSPAUT phased array ultrasonic testing (PAUT) hardware (P5, B3, R5, etc.) programmatically. Acquire, process, and map real-time ultrasonic signals to custom visual layouts using the `SVDSK.dll` assembly.

DSPAUT SDK SimplePAUT integrated application active interface
App: 10-SimplePAUT Integrated Calibration Modules Active
using DSPAUT; Single Namespace & Assembly
Rx Callback Frame Real-time Rx Callback Methods
CalcSScanImage Built-in S-Scan Graphic conversion
Scan/Index Encoder Multi-axis encoder control support
DskTutorial solution explorer layout in Visual Studio
LIBRARY STRUCTURE

Intuitive C# SDK Referencing & Clean Architecture

Enables developers to quickly prototype and deploy customized NDT software in Windows 10 using Visual Studio 2017 and above. Simply add the core C# assembly `SVDSK.dll` and the helper library `DskCommon` to your project references. The execution operates directly from the build output directory (`../Bin/Release_x86`), and resources are cleanly decoupled and managed within `CommonResource`.

  • Provides clean C# .NET 8.0 classes and properties for all device parameters
  • Direct hardware access via the `DSPAUT` namespace API calls
  • Unified debugging and diagnostic trace logging using Log2console integration
PHYSICAL LEVEL CONTROLS

Low-Level Parameter Adjustment & Gate Control

Fine-tune pulser-receiver settings programmatically via C# functions to optimize signal response. Manage gain, digitizing frequency indexes, PRF, and voltage levels (ranging from 25V to 200V). Leverages bipolar pulsing to customize Burst Counts (from 1 to 5 cycles), boosting acoustic penetration in highly attenuative industrial materials.

  • Real-time position, range, and threshold management of 3 independent gates (Gate A/B/I)
  • Configure transmitter/receiver element limits and hardware frequency bandpass filters
  • Channel Group configuration organizes multi-vector arrays to stream through Rx callbacks
DSK channel group parameter configuration screen
DSK TUTORIALS

5 Core C# Development Tutorials

Fully functional samples ready to build and run in Visual Studio. Click on any screenshot to view the interface in full, crisp resolution.

01-InitDevice application run TUTORIAL 01

01-InitDevice

Device Connection & Real-time Acquisition

Initializes the hardware using `InitDsk` and `InitDevice` commands, starting acquisition channels to capture incoming data. Uses `Dsk.Freeze` and `UnFreeze` properties to control streaming programmatically.

02-SScan application run TUTORIAL 02

02-SScan

Real-time S-Scan Image Conversion

Demonstrates coordinate mapping logic converting raw A-scans to a 2D sectorial scan visual. Gathers boundaries using `GetSScanWidth`/`Height` and computes 2D byte arrays using `CalcSScanImage`.

03-AScan application run TUTORIAL 03

03-AScan

Extracting Beam Waveforms & A-Scans

Retrieves signal amplitude data for a user-specified focal law index. Processes multi-beam signals in real-time, displaying linear waveform graphs directly on a custom bitmap surface.

04-Inspection application run TUTORIAL 04

04-Inspection

Multi-Axis Encoder & Distance Tracking

Essential for mechanical crawlers and automated industrial scanning. Uses `SetScanEncoder` to set bounds, step sizes, and pulse resolution to track physical movement in millimeters.

10-SimplePAUT dashboard interface 10-SimplePAUT display layout
TUTORIAL 10

10-SimplePAUT

JSON Config Serialization & Complete PAUT App

Our master demo illustrating complete SDK capability. Showcases setup file saving and loading using `JsonFile2Object`, gate threshold alarms, multi-channel connections, and A/B/C/S-scan concurrent graphics.

C# Integration Guide

A few lines of code to control
Ultrasonic Hardware

The official SDK hides lower-level register complexities inside clean, object-oriented C# wrappers. Initialize the device and bind the real-time callback using simple C# constructs.

Step 1

Import the DEEPSOUND Namespace

Add referencing declarations in your C# assembly entry points.

Step 2

Initialize Device Engine

Call `InitDsk()` and `InitDevice()` to gain hardware access.

Step 3

Bind SetCallBackFrame

Register callbacks to receive real-time frame arrays containing locational coordinates.

DskTutorial / Program.cs
C# (.NET 8.0)
// 1. Import DSK Namespace Assembly using System; using DEEPSOUND; namespace DskTutorial { class Program { static void Main(string[] args) { // 2. Initialize DSK engine DSK.InitDsk(); // 3. Boot high-speed Gigabit Ethernet/USB hardware bool isDeviceReady = DSK.InitDevice(); if (!isDeviceReady) { Console.WriteLine("Device connection failed!"); return; } // 4. Link callback function to fetch raw frames DSK.SetCallBackFrame(new DskCallBackFrameX(OnReceiveFrameX)); Console.WriteLine("Streaming active. Press any key to stop."); Console.ReadKey(); // 5. Safely release device handles on exit DSK.CloseDevice(); } // Rx callback capturing real-time frame & coordinate (X-axis) private static void OnReceiveFrameX(short[] frameData, double locX) { // Real-time signal processing routing here Console.WriteLine($"Frame Received - Pos: {locX}mm, size: {frameData.Length} shorts"); } } }
INQUIRY

Inquire about DSPAUT SDK (DSK)

If you need customized development assistance, license quotes, or detailed technical partnership proposals for industrial OEM systems, please reach out. Our engineering team is ready to guide you.