OpenIGTLink module receiving data from the sensor

Hi all,

How to obtain the message with a complicate data structure, such as head info plus two 4x4 matrices, sent from the sensor via network using openIGTLink?
Many thanks!

Operating system: win 7
Slicer version: 4.8.1
Expected behavior:
Actual behavior:


Create an OpenIGTLink connector in the OpenIGTLinkIF module. Find it under the IGT category in the modules list. If you activate the connection, it will automatically generate a transform node in the Slicer scene, and update it any time it receives a new OpenIGTLink message with the same device name.
You may find useful related information in these tutorials:


Hi Tamas,

Thanks for your help! In my application, there are two EM sensors embedded in a flexible instrument. There is a standalone software in charge of communication with the EM sensors and sent a message containing the two 4x4 matrices derived from two sensors to 3D Slicer (server). I have tried to create an OpenIGTLink connector, and it does work. But it can not be obtained from vtkMRMLLinearTransformNode, because there are two matrices in a message are sent to 3D Slicer. So can you give me some advice how to get this message, or any examples?
Thanks again!


@wpgao What EM tracker do you use?

Hi Lassoan,

We use NDI aurora v2. Two 5DOF sensors were embedded in a flexible instrument!
We want to show the pose (orientation and position) of two sensors in 3D slicer!


Then you can simply use Plus toolkit to interface with your hardware. It is extensively tested to work well with Slicer.

Hi Lasso,

Thanks for your help!
Is there any advice on how to develop a module to receive the data sent from the API provided by NDI (we have source code and modify it as a client using OpenIGTLink lib)


No need to develop any module. You can use Plus Server for connecting NDI tracker and broadcast data through OpenIGTLink. OpenIGTLinkIF module in Slicer can connect to Plus Server, receive transforms and update corresponding transforms in the scene in real-time. See SlicerIGT tutorials for step-by-step instructions.

thanks for your help!