Hardware connection for IGT

slicerigt

(Félix Navarro Guirado) #1

Dear communuty,

We are trying to connect our ultrasound device and brachy stepper to Slicer using the PLUS server.

Do any of you have used a BK US device (via OEM interface or video capture) or a brachy stepper as tracker device?

I cannot connect with my devices and I don’t know why (I can provide the xml configuration files).


(Kyle Sunderland) #2

Can you post an issue, including your config file + log file to the Plus GitHub page?


(Félix Navarro Guirado) #3

Thank you very much for your reply.

I’m going to attach screenshots of the config files since the software of the modifies the content.

This is the xml file that I have used to test the connection with the CIVCO EXII brachy stepper:

This is the xml file that I have used to test the connection with the BK flex focus TRUS via OEM port:

Regarding the CIVCO stepper: I have verified that the baud rate is 9600 and that the virtual COM port is the number 5, nevertheless it seems that no answer is received. Do you have any information about the remaining configuration parameters of the COM port?

Regarding the TRUS device: I’m using Flex Focus inestead of Pro Focus. I’m supposed to deactivate the crc check and the acknowledge of the communications but I have not received support form the manufacturer about how to do this. When I try to connect the server says “unexpected response”. Do you know how to do this or could you recommend a frame grabber?
This is the complete log of the connection trial:

Blockquote:
|DEBUG|266.132000| Application configuration file ‘C:/Users/BEBIG Variseed/PlusApp-2.6.0.20180310-Win32/bin/PlusConfig.xml’ saved| in E:\D\PSNPb\PlusLib\src\PlusCommon\vtkPlusConfig.cxx(502)
|INFO|266.133000| Connect using configuration file: C:\Users\BEBIG Variseed\Desktop\Pruebas registro US-RM\BkOEM.xml| in E:\D\PSNPb\PlusApp\PlusServerLauncher\PlusServerLauncherMainWindow.cxx(314)
|INFO|266.134000| Server process command line: “C:/Users/BEBIG Variseed/PlusApp-2.6.0.20180310-Win32/bin/PlusServer.exe” --config-file=“C:\Users\BEBIG Variseed\Desktop\Pruebas registro US-RM\BkOEM.xml” --verbose=5| in E:\D\PSNPb\PlusApp\PlusServerLauncher\PlusServerLauncherMainWindow.cxx(205)
|INFO|266.770000| Server process started successfully| in E:\D\PSNPb\PlusApp\PlusServerLauncher\PlusServerLauncherMainWindow.cxx(213)
|INFO|272.763000|SERVER> Software version: Plus-2.6.0.63ba551d - Win32| in tkPlusLogger(188)
|DEBUG|272.763000|SERVER> Device set configuration is read from file: C:\Users\BEBIG Variseed\Desktop\Pruebas registro US-RM\BkOEM.xml| in :\D\PSNPb\PlusLib\src\PlusServer\Tools\PlusServer.cxx(104)
|INFO|272.764000|SERVER> Server status: Reading configuration.| in :\D\PSNPb\PlusLib\src\PlusServer\Tools\PlusServer.cxx(109)
|DEBUG|272.764000|SERVER> StartupDelaySec: 1.000000| in :\D\PSNPb\PlusLib\src\PlusDataCollection\vtkPlusDataCollector.cxx(89)
|DEBUG|272.764000|SERVER> AveragedItemsForFiltering is not defined in source element “Video”. Using default value: 20| in :\D\PSNPb\PlusLib\src\PlusDataCollection\vtkPlusDataSource.cxx(378)
|INFO|272.765000|SERVER> VideoDevice: Local time offset: 0ms| in :\D\PSNPb\PlusLib\src\PlusDataCollection\vtkPlusDevice.cxx(1105)
|DEBUG|272.765000|SERVER> vtkPlusTransformRepository::ReadConfiguration: no CoordinateDefinitions element was found| in :\D\PSNPb\PlusLib\src\PlusCommon\vtkPlusTransformRepository.cxx(626)
|DEBUG|272.765000|SERVER> BK scanner OEM port: 7915| in :\D\PSNPb\PlusLib\src\PlusDataCollection\BkProFocus\vtkPlusBkProFocusOemVideoSource.cxx(170)
|DEBUG|272.766000|SERVER> Connected to BK scanner| in :\D\PSNPb\PlusLib\src\PlusDataCollection\BkProFocus\vtkPlusBkProFocusOemVideoSource.cxx(188)
|DEBUG|272.766000|SERVER> No saved data source devices were found that use original timestamps, so synchronization of loop times is not performed| in :\D\PSNPb\PlusLib\src\PlusDataCollection\vtkPlusDataCollector.cxx(652)
|DEBUG|272.767000|SERVER> VideoDevice: vtkPlusDevice::StartRecording| in :\D\PSNPb\PlusLib\src\PlusDataCollection\vtkPlusDevice.cxx(1240)
|DEBUG|272.767000|SERVER> Process message from BK: DATA:US_WIN_SIZE 600,580;| in :\D\PSNPb\PlusLib\src\PlusDataCollection\BkProFocus\vtkPlusBkProFocusOemVideoSource.cxx(451)
|DEBUG|272.768000|SERVER> Initializing Plus OpenIGTLink server…| in :\D\PSNPb\PlusLib\src\PlusServer\Tools\PlusServer.cxx(154)
|DEBUG|272.768000|SERVER> Data sent by default: IGTL version: 1Message types: IMAGE. Transforms: (none). Strings: (none). Images: Image (EmbeddedTransformToFrame: Tracker)| in :\D\PSNPb\PlusLib\src\PlusServer\vtkPlusOpenIGTLinkServer.cxx(170)
|INFO|272.768000|SERVER> Press Ctrl-C to quit.| in :\D\PSNPb\PlusLib\src\PlusServer\Tools\PlusServer.cxx(171)
|INFO|272.769000|SERVER> Plus OpenIGTLink server listening on IPs: 169.254.94.70, 169.254.115.33, 169.254.17.247, 169.254.45.154, 127.0.0.1 – port 18944| in :\d\psnpb\pluslib\src\plusserver\vtkPlusOpenIGTLinkServerWin32.cxx(81)
|DEBUG|272.769000|SERVER> Ultrasound geometry. StartLineX_m: 0.00933471 StartLineY_m: -0.00658264 StartLineAngle_rad: 0.342409 StartDepth_m: -1.32635e-005 StopLineX_m: -0.00933471 StopLineY_m: -0.00658264 StopLineAngle_rad: 2.79918 StopDepth_m: 0.0766017| in :\D\PSNPb\PlusLib\src\PlusDataCollection\BkProFocus\vtkPlusBkProFocusOemVideoSource.cxx(746)
|DEBUG|272.770000|SERVER> Process message from BK: DATA:B_GEOMETRY_PIXEL:A 212,270,811,849;| in :\D\PSNPb\PlusLib\src\PlusDataCollection\BkProFocus\vtkPlusBkProFocusOemVideoSource.cxx(451)
|DEBUG|272.770000|SERVER> Ultrasound geometry. tissueLeft_m: -0.0429663 tissueTop_m: 0.0765787 tissueRight_m: 0.0429663 tissueBottom_m: -0.00648955| in :\D\PSNPb\PlusLib\src\PlusDataCollection\BkProFocus\vtkPlusBkProFocusOemVideoSource.cxx(826)
|DEBUG|272.771000|SERVER> Process message from BK: DATA:B_GAIN:A 50;| in :\D\PSNPb\PlusLib\src\PlusDataCollection\BkProFocus\vtkPlusBkProFocusOemVideoSource.cxx(451)
|DEBUG|272.771000|SERVER> Acknowledge message received| in :\D\PSNPb\PlusLib\src\PlusDataCollection\BkProFocus\vtkPlusBkProFocusOemVideoSource.cxx(513)
|DEBUG|272.772000|SERVER> Process message from BK: SDATA:US_WIN_SIZE 600,580;| in :\D\PSNPb\PlusLib\src\PlusDataCollection\BkProFocus\vtkPlusBkProFocusOemVideoSource.cxx(451)
|DEBUG|272.772000|SERVER> Ultrasound geometry. StartLineX_m: 0.00933471 StartLineY_m: -0.00658264 StartLineAngle_rad: 0.342409 StartDepth_m: -1.32635e-005 StopLineX_m: -0.00933471 StopLineY_m: -0.00658264 StopLineAngle_rad: 2.79918 StopDepth_m: 0.0766017| in :\D\PSNPb\PlusLib\src\PlusDataCollection\BkProFocus\vtkPlusBkProFocusOemVideoSource.cxx(746)
|DEBUG|272.773000|SERVER> Process message from BK: SDATA:B_GEOMETRY_PIXEL:A 212,270,811,849;| in :\D\PSNPb\PlusLib\src\PlusDataCollection\BkProFocus\vtkPlusBkProFocusOemVideoSource.cxx(451)
|DEBUG|272.773000|SERVER> Ultrasound geometry. tissueLeft_m: -0.0429663 tissueTop_m: 0.0765787 tissueRight_m: 0.0429663 tissueBottom_m: -0.00648955| in :\D\PSNPb\PlusLib\src\PlusDataCollection\BkProFocus\vtkPlusBkProFocusOemVideoSource.cxx(826)
|DEBUG|272.774000|SERVER> Process message from BK: SDATA:B_GAIN:A 50;| in :\D\PSNPb\PlusLib\src\PlusDataCollection\BkProFocus\vtkPlusBkProFocusOemVideoSource.cxx(451)
|DEBUG|272.774000|SERVER> uncompressedPixelBufferSize = 265087| in :\D\PSNPb\PlusLib\src\PlusDataCollection\BkProFocus\vtkPlusBkProFocusOemVideoSource.cxx(571)
|DEBUG|272.774000|SERVER> Process message from BK: DATA:CAPTURE_IMAGE #6265087?PNG | in :\D\PSNPb\PlusLib\src\PlusDataCollection\BkProFocus\vtkPlusBkProFocusOemVideoSource.cxx(451)
|WARNING|272.792000|SERVER> Received unknown message from BK: ERROR:INTERFACE| in :\D\PSNPb\PlusLib\src\PlusDataCollection\BkProFocus\vtkPlusBkProFocusOemVideoSource.cxx(517)
|WARNING|272.824000|SERVER> Unspecified charactes received. Adding these to image.| in :\D\PSNPb\PlusLib\src\PlusDataCollection\BkProFocus\vtkPlusBkProFocusOemVideoSource.cxx(618)

Thank you very much.


(Kyle Sunderland) #4

I’m not familiar with the details of the BK devices, and I can’t test the connection since we don’t have a device here.

@lassoan are you able to help, or do you know someone who can?


(Félix Navarro Guirado) #5

Thank you very much for your answer,

In order to provide a workaround, could you recommend a frame grabber or video capture device?