Skip to content

Commit

Permalink
re #845 Info from the wiki to dox
Browse files Browse the repository at this point in the history
  • Loading branch information
garciaguevara committed Jun 26, 2014
1 parent 57ae9fc commit 92c5c70
Show file tree
Hide file tree
Showing 12 changed files with 204 additions and 49 deletions.
7 changes: 4 additions & 3 deletions PlusLib/src/DataCollection/ICCapturing/DeviceICCapturing.dox
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
/*!
\page DeviceICCapturing
\page DeviceICCapturing Imaging controls analog USB framegrabber

\section ICCapturingSupportedHwDevices Supported hardware devices
Supported model: DFG/USB2pro analog framegrabbers with USB interface

- Link to manufacturer's website:
- Link to manufacturer's website: http://www.theimagingsource.com/en_US/products/converters/

\section ICCapturingSupportedPlatforms Supported platforms
- \ref PlatformWin32
Expand All @@ -24,7 +25,7 @@
- \xmlElem \ref DataSources:
- \xmlElem \ref DataSource: there must be one child element
- \xmlAtt \ref PortUsImageOrientation \RequiredAtt
- \xmlAtt \ref ImageType \OptionalAtt{BRIGHTNESS}
- \xmlAtt \ref ImageType. Color image acquisition is supported. \OptionalAtt{BRIGHTNESS}
- \xmlAtt \ref BufferSize \OptionalAtt{150}
- \xmlAtt \ref AveragedItemsForFiltering \OptionalAtt{20}

Expand Down
13 changes: 9 additions & 4 deletions PlusLib/src/DataCollection/Interson/DeviceInterson.dox
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
/*!
\page DeviceInterson
\page DeviceInterson Interson USB ultrasound probes

\section IntersonSupportedHwDevices Supported hardware devices
SeeMore probes

- Link to manufacturer's website:

- Link to manufacturer's website: http://www.interson.com/products/seemore-153-usb-probes

\section IntersonSupportedPlatforms Supported platforms
- \ref PlatformWin32
Expand All @@ -14,17 +16,20 @@

\section IntersonInstallation Installation

Limitations: imaging parameters are hardcoded, makeing them configurable is a work in progress, see details in #864
Requires SDK provided by Interson for compilation and USB drivers provided by Interson for running (otherwise Plus application will not start due to missing WDAPI1010.dll).


\section IntersonConfigSettings Device configuration settings

- \xmlAtt \ref DeviceType "Type" = \c "Interson" \RequiredAtt
- \xmlAtt \ref DeviceType "Type" = \c "IntersonVideo" \RequiredAtt
- \xmlAtt \ref DeviceAcquisitionRate "AcquisitionRate" \OptionalAtt{125}
- \xmlAtt \ref LocalTimeOffsetSec \OptionalAtt{0}

- \xmlElem \ref DataSources:
- \xmlElem \ref DataSource: there must be one child element
- \xmlAtt \ref PortUsImageOrientation \RequiredAtt
- \xmlAtt \ref ImageType \OptionalAtt{BRIGHTNESS}
- \xmlAtt \ref ImageType Supported imaging modes: B-mode \OptionalAtt{BRIGHTNESS}
- \xmlAtt \ref BufferSize \OptionalAtt{150}
- \xmlAtt \ref AveragedItemsForFiltering \OptionalAtt{20}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
/*!
\page DeviceMicrosoftMediaFoundation
\page DeviceMicrosoftMediaFoundation Microsoft Media Foundation compatible imaging device

\section MicrosoftMediaFoundationSupportedHwDevices Supported hardware devices

Any compatible framegrabbers and webcams through Microsoft Media Foundation interface.
- Link to manufacturer's website:

\section MicrosoftMediaFoundationSupportedPlatforms Supported platforms
Expand All @@ -17,7 +17,7 @@

\section MicrosoftMediaFoundationConfigSettings Device configuration settings

- \xmlAtt \ref DeviceType "Type" = \c "MicrosoftMediaFoundation" \RequiredAtt
- \xmlAtt \ref DeviceType "Type" = \c "MmfVideo" \RequiredAtt
- \xmlAtt \ref DeviceAcquisitionRate "AcquisitionRate" \OptionalAtt{125}
- \xmlAtt \ref LocalTimeOffsetSec \OptionalAtt{0}

Expand Down
99 changes: 95 additions & 4 deletions PlusLib/src/DataCollection/NDICertusTracking/DeviceNDICertus.dox
Original file line number Diff line number Diff line change
@@ -1,23 +1,114 @@
/*!
\page DeviceNDICertus
\page DeviceNDICertus NDI Optotrak Certus optical pose tracker

\section NDICertusSupportedHwDevices Supported hardware devices

- Link to manufacturer's website:
- Link to manufacturer's website: http://www.ndigital.com/msci/products/optotrak-certus/

\section NDICertusSupportedPlatforms Supported platforms
- \ref PlatformWin32
- \ref PlatformWin64
- \ref PlatformWin32Embedded
- \ref PlatformMacOs
- \ref PlatformLinux

\section NDICertusInstallation Installation

\subsection NDICertusInstallCommon Install common software

Before setting up anything about the device or the connection, some software has to be installed.
- Device drivers (\\image\shared\data\lab.hardware\NDITrackers\NDICertus\OptotrakDeviceDrivers_v3.5.2\OptotrakDeviceDrivers_v3.5.2\setup.exe)
- NDI First Principles software (\\image\shared\data\lab.hardware\NDITrackers\NDICertus\FirstPrinciples_v1.2.2\setup.exe)

\subsection NDICertusComumnicationPCI Communicating Certus tracker by PCI card
PCI card installation. To install an NDI PCI drivers card you will need:
- This guide: [[Media:Optotrak_PCI_Interface_Card_Installation_Guide(IL-1070037).pdf |Optotrak PCI Interface Card Installation Guide, Rev. 3.0]]
- an NDI PCI interface card
- the NDI PCI drivers CD (NDIDeviceDrivers_v3.00.66) *
- Goodwin 757, NDI tools cabinet
- Copy at the image server (\\image\shared\data\lab.hardware\NDITrackers\NDIDeviceDrivers_v3.00.66)

Ultrasound machines equipped with NDI PCI card:
- [http://media.cs.queensu.ca/media/wiki/index.php/Using_and_programming_the_Ultrasonix_machine#SonixRP-1 SonixRP-1]
- [http://media.cs.queensu.ca/media/wiki/index.php/Using_and_programming_the_Ultrasonix_machine#SonixRP-2 SonixRP-2]

\subsection NDICertusComumnicationEthernet Communicating Certus tracker by via ethernet

\subsubsection NDICertusSetUpPC How to set up your PC

Install the following packages from the image server:
- OptotrakDeviceDrivers (<code>\\image\shared_data\data\lab.hardware\NDITrackers\NDICertus\0_OptotrakDeviceDrivers_v3.5.2</code>):
- Install '''Optotrak Link Drivers (Required)''' - you may need to reboot your computer.
[[Image:OptotrakDeviceDriversInstall.jpg|center]]
- OptoUpdate (<code>\\image\shared_data\data\lab.hardware\NDITrackers\NDICertus\1_OptoUpdate_3.5.2</code>):
- Click on the '''Update the system to v3.01''' button and select the '''Do Not Search for Hardware Components (Update Software Only)''' choice.
[[Image:OptotrakOptoUpdateInstall.jpg|center]]
- FirstPrinciples (<code>\\image\shared_data\data\lab.hardware\NDITrackers\NDICertus\2_FirstPrinciples_v1.2.2</code>):
- Install First Principles with the default values.
- 6DA_Optotrak (<code>\\image\shared_data\data\lab.hardware\NDITrackers\NDICertus\3_6DA_Optotrak_1.3.3</code>):
- Install 6DA_Optotrak with the default values.
- NDI DataView (<code>\\image\shared_data\data\lab.hardware\NDITrackers\NDICertus\4_NDI_DataView_Version_1.00.03</code>):
- Install NDI DataView with the default values.
- Copy the '''standard.cam''' and '''system.nif''' files to "c:\ndigital\realtime" folder (<code>\\image\shared_data\data\lab.hardware\NDITrackers\NDICertus\5_Copy_To_ndigital_realtime</code>)

Change NDI settings file (by default <code>optotrak.ini</code> file is located in the <code> "C:\ndigital\settings" </code> folder)

- Set ''Driver'' to ''etherlink.dll''
- Copy ''etherlink.dll'' to the <code>"c:\ndigital\programs"</code> folder from <code>"c:\ndigital\drivers"</code>
- Set ''ResetTimeout''' to 500 and ''PropagationTimeout''' to 5000 (recommended in the manual but maybe not vital)
- Set ''Server Address'' to the NDI SCU IP (130.15.7.98)
- ''Control Port'' should be 9999, ''Data Port'' should be 10000
- ''Data Timeout'' should be 10000 and ''Reset Delay'' should be between 5000 and 10000 (also recommended in the manual)

If you made these changes, the NDI will work via ethernet. If you want to use the PCI card again, you have to undo these changes (the most important thing is to set ''Driver'' to ''pcilink.dll''


\subsubsection NDICertusSetUpSCU How to set up the System Control Unit (SCU)
Change ethernet settings in NDI SCU ''(Note: this has to be done only when SCU, gateway or DNS IP address is changed)''
- Connect Serial cable to the SCU and a Serial-to-USB adaptor cable, then the USB into a computer
- Connect to SCU using MTTTY (COM port can be read from Device Manager)
- Commands (Read: <code>[Read command name]<Space><Enter> </code>, Write: <code>[Write command name]<Space>[Value]<Enter></code>)
- ENDHRD Reads the DHCP status
- ENDHWR Sets the DHCP status
- ENGWRD Reads the gateway address
- ENGWWR Sets the gateway address
- ENIPRD Reads the IP address
- ENIPWR Sets the IP address
- ENNMRD Reads the Ethernet host name
- ENNMWR Sets the Ethernet host name
- ENSMRD Reads the subnet mask
- ENSMWR Sets the subnet mask
- Current settings
- IP: 130.15.7.98
- Gateway: 130.15.7.1
- (DNS: 130.15.1.101)
- (DNS alternate: 130.15.1.11)
- Subnet mask: 255.255.255.0
- Name: CERTUS061

\subsection NDICertusUsage How to use the NDI Certus optical tracker

User guide: [[Media:Optotrak_Certus_User_Guide.pdf | Optotrak Certus User Guide rev. 2.0]]


\subsection NDICertusCoordinateSystems Coordinate systems

Tracker \c (Left-handed)
- X+: up (against gravity)
- Y+: to the right (if we face the camera)
- Z+: away from the camera

Reference DRB \c (Right-handed). The orientation of the DRB is the following: the side with the writing on it is on the far side from the camera and the screw points to the ground.
- X+: to the left (if we face the camera)
- Y+: up (against gravity)
- Z+: towards the camera

No "beeps" when attempting to connect to a Certus tracker => Power off the OptoTrak Certus camera and communication unit for a few seconds and try to connect again
If no Certus device is attached to the system then the application crashes (due to the TransputerDetermineSystemCfg call in NDI's toolkit, which determines the system configuration causes the application to crash)


\section NDICertusConfigSettings Device configuration settings

- \xmlAtt \ref DeviceType "Type" = \c "NDICertus" \RequiredAtt
- \xmlAtt \ref DeviceType "Type" = \c "CertusTracker" \RequiredAtt
- \xmlAtt \ref DeviceAcquisitionRate "AcquisitionRate" \OptionalAtt{50}
- \xmlAtt \ref LocalTimeOffsetSec \OptionalAtt{0}
- \xmlAtt \ref ToolReferenceFrame \OptionalAtt{Tracker}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,17 @@
/*!
\page DeviceOpenIGTLink
\page DeviceOpenIGTLink Any OpenIGTLink compatible tracker

\section OpenIGTLinkSupportedHwDevices Supported hardware devices
Any compatible tracker device through <a href="http://openigtlink.org/"> OpenIGTLink interface</a>.
Any tracker device that are supported by the <a href="http://public.kitware.com/IGSTKWIKI/index.php/Main_Page">IGSTK toolkit</a> can be used in Plus by using this OpenIGTLink interface

- Link to manufacturer's website:
- There are commercial systems that provide tracking coordinates and image data through OpenIGTLink, e.g., BrainLab
-BrainLab OpenIGTLink interface may be purchased as a license option with VectorVision Cranial 2.1.
- Contact BrainLab for information about licensing and for supported OpenIGTLink options.
- For tracking data, the BrainLab OpenIGTLink interface uses the <a href="http://www.na-mic.org/Wiki/index.php/OpenIGTLink/ProtocolV2/Type/TrackingData">TDATA</a> message type, which is supported by PLUS 2.0 as of <a href="https://www.assembla.com/code/plus/subversion/changesets/2337">r2337</a>
- In the configuration section for OpenIGTLinkTracker Device, set MessageType="TDATA" and ReconnectOnReceiveTimeout="false" (to avoid reconnects, as BrainLab asks for manual confirmation on each connect request)
- See ConfigFiles/BWH directory for example configurations using BrainLab tracking.
- Receiving live data from 3D Slicer: set \c UseReceivedTimestamps="false" and \c UseLastTransformsOnReceiveTimeout="true" (as Slicer only sends transforms when they change)

\section OpenIGTLinkSupportedPlatforms Supported platforms
- \ref PlatformWin32
Expand All @@ -17,7 +25,7 @@

\section OpenIGTLinkConfigSettings Device configuration settings

- \xmlAtt \ref DeviceType "Type" = \c "OpenIGTLink" \RequiredAtt
- \xmlAtt \ref DeviceType "Type" = \c "OpenIGTLinkTracker" \RequiredAtt
- \xmlAtt \ref DeviceAcquisitionRate "AcquisitionRate" \OptionalAtt{30}
- \xmlAtt \ref LocalTimeOffsetSec \OptionalAtt{0}
- \xmlAtt \ref ToolReferenceFrame \OptionalAtt{Tracker}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
/*!
\page DeviceOpenIGTLinkVideo
\page DeviceOpenIGTLinkVideo Any OpenIGTLink compatible imaging device

\section OpenIGTLinkVideoSupportedHwDevices Supported hardware devices
Any compatible video device through <a href="http://openigtlink.org/"> OpenIGTLink interface</a>.
There are commercial systems that provide tracking video and image data through OpenIGTLink, such as BrainLab, Siemens MRI scanners

- Link to manufacturer's website:

\section OpenIGTLinkVideoSupportedPlatforms Supported platforms
- \ref PlatformWin32
Expand Down
Original file line number Diff line number Diff line change
@@ -1,16 +1,18 @@
/*!
\page DevicePhidgetSpatial
\page DevicePhidgetSpatial Phidgets Spatial 3/3/3 magnetic, angular rate, and gravity (MARG) sensor

\section PhidgetSpatialSupportedHwDevices Supported hardware devices

- Link to manufacturer's website:
Contains accelerometer, gyroscope, and magnetometer sensors, each with 3 DOF
Small (few centimeters by few centimeters), low-cost (about $150) device
Gyroscope bias correction is performed at connection, therefore after the connection is initialized in Plus the device shall be kept stationary for 2 seconds.

- Link to manufacturer's website: http://www.phidgets.com/products.php?product_id=1044_0

\section PhidgetSpatialSupportedPlatforms Supported platforms
- \ref PlatformWin32
- \ref PlatformWin64
- \ref PlatformWin32Embedded
- \ref PlatformMacOs
- \ref PlatformLinux

\section PhidgetSpatialInstallation Installation

Expand Down
21 changes: 14 additions & 7 deletions PlusLib/src/DataCollection/PolarisTracking/DevicePolaris.dox
Original file line number Diff line number Diff line change
@@ -1,35 +1,42 @@
/*!
\page DevicePolaris
\page DevicePolaris NDI pose trackers

\section PolarisSupportedHwDevices Supported hardware devices
<a href="http://www.ndigital.com/medical/products/polaris-family/"> Polaris </a> optical and <a href="http://www.ndigital.com/medical/products/aurora/"> Aurora </a> electromagnetic pose trackers

- Link to manufacturer's website:

\section PolarisSupportedPlatforms Supported platforms
- \ref PlatformWin32
- \ref PlatformWin64
- \ref PlatformWin32Embedded
- \ref PlatformMacOs
- \ref PlatformLinux

\section PolarisInstallation Installation


Uses the NDI Combined API C Interface Library (ndicapi).
Drivers should be installed to allow the computer to connect to the SCU. Detailed instructions can be found in the Hybrid Polaris Spectra User Guide, which comes with the system.
If you have just turned on the tracker and attempt to use it right away, you may get the error message "command is invalid while in current mode"; wait for the leftmost LED on the position sensor to stop flashing and try again.
Active (wired) tools does not seem to work with Polaris Spectra. The issue is tracked in <a href="https://www.assembla.com/spaces/plus/tickets/510">#510</a>.
\section PolarisConfigSettings Device configuration settings

- \xmlAtt \ref DeviceType "Type" = \c "PolarisTracker" \RequiredAtt OR "Type" = \c "AuroraTracker" \RequiredAtt
- \xmlAtt \ref DeviceType "Type" = \c "PolarisTracker" \RequiredAtt OR \ref DeviceType "Type" = \c "AuroraTracker" \RequiredAtt
- \xmlAtt \ref DeviceAcquisitionRate "AcquisitionRate" \OptionalAtt{50}
- \xmlAtt \ref LocalTimeOffsetSec \OptionalAtt{0}
- \xmlAtt \ref ToolReferenceFrame \OptionalAtt{Tracker}
- \b SerialPort parameter must correlate to the com port number used by the NDI Polaris Spectra SCU Port. This port number was determined during driver installation, to check its value go to control panel->Device Manager->Ports(COM&LPT) and you should see an icon labelled NDI Polaris Spectra SCU Port(COMx), with x representing the COM port number you need to specify in the config file.
- \b BaudRate specifies the speed of the COM port, the recommended value is 115200.
- NOTE: Some computers are unable to connect to the NDI Polaris if the COM port in device manager is > 4. If you see this, reassign the COM port to <= 4.



- \xmlElem \ref DataSources:
- \xmlElem \ref DataSource: there must be one child element
- \xmlAtt \ref RomFile \RequiredAtt
- \xmlAtt \ref RomFile For each passive (wireless) tool the following parameters shall be specified: PortName: any chosen number between 4 and 15 (must be unique for each tool). RomFile: name of the tool definition file (*.rom files), the location is relative to the configuration file location. Standard tool rom files are located on the NDI Polaris Spectra Tool Kit cd in the Tool Definition Files folder. \RequiredAtt
- \xmlAtt \ref BufferSize \OptionalAtt{150}
- \xmlAtt \ref AveragedItemsForFiltering \OptionalAtt{20}

\section PolarisExampleConfigFile Example configuration file

\include "data/ConfigFiles/PlusDeviceSet_Server_Polaris.xml"
\include "PlusConfiguration_NoVideo_NDIPolaris.xml"

*/
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
/*!
\page DeviceSavedDataSource
\page DeviceSavedDataSource Replay recorded data from file

\section SavedDataSourceSupportedHwDevices Supported hardware devices

- Link to manufacturer's website:
For hardware-free testing and simulation purposes, any previous recording (saved into a sequence metafile) can be replayed as a live acquisition

\section SavedDataSourceSupportedPlatforms Supported platforms
- \ref PlatformWin32
Expand All @@ -17,10 +17,12 @@

\section SavedDataSourceConfigSettings Device configuration settings

- \xmlAtt \ref DeviceType "Type" = \c "SavedDataSource" \RequiredAtt
- \xmlAtt \ref DeviceType "Type" = \c "SavedDataSet" \RequiredAtt
- \xmlAtt \ref DeviceAcquisitionRate "AcquisitionRate" \OptionalAtt{10}
- \xmlAtt \ref LocalTimeOffsetSec \OptionalAtt{0}
- \xmlAtt \ref ToolReferenceFrame \OptionalAtt{Tracker}
- \b UseData \cTRANSFORM or \cIMAGE_AND_TRANSFORM


- \xmlAtt \ref ImageType Color image acquisition is supported by setting the imaging device's common attribute \c ImageType="RGB_COLOR". \OptionalAtt{BRIGHTNESS}

Expand Down
Loading

0 comments on commit 92c5c70

Please sign in to comment.