Unable to communicate with GE IGS540...

377 views
Skip to first unread message

Sven N.

unread,
Jul 23, 2013, 8:44:06 AM7/23/13
to
we have the following situation: our customer uses a GE IGS540, this device is communicating with an installation of DCM4CHEE.

the problem: the device is rejecting the worklist response message.

what i've found out so far is this:
- the device seems to send several DICOM query tags (pure speculation on my side)
- DCM4CHEE sends back a response, containing this query tag as empty element if no corresponding data is found
- the device rejects the worklist response because of those empty tags

with "empty tag" i mean XML elements "<attr ...>" which containing pos="-1" and len="-1" (see below).
tags in question are for example (0032,1064), (0008,1110) and (0040,0100)>(0040,0008), all of them with their depending tags.


what furthermore complicates the error finding process is that the customer site is far away from our office and we have no remote access (plus, i'm new to the DICOM topic ...). i therefore have to simulate the device locally, which i'm doing using the "findscu" binary from the DCM-TK in the shell (http://support.dcmtk.org/docs/findscu.html; we're running on OS X). however, i'm still trying to get the big picture.


calling DCM4CHEE with findscu and query-key "0032,1064" (DCM4CHEE at ip-address 192.168.240.150 with port 11112):

bash> ./findscu --worklist --aetitle MY_MOD --call DCM4CHEE --log-level info --key "(0032,1064)" -X 192.168.240.150 11112


i get back this in the shell:

I: Requesting Association
I: Association Accepted (Max Send PDV: 16340)
I: ===================== OUTGOING DIMSE MESSAGE ====================
I: Message Type                  : C-FIND RQ
I: Presentation Context ID       : 1
I: Message ID                    : 1
I: Affected SOP Class UID        : FINDModalityWorklistInformationModel
I: Data Set                      : present
I: Priority                      : low
I: ======================= END DIMSE MESSAGE =======================
I: Find SCU Request Identifiers:
I: 
I: # Dicom-Data-Set
I: # Used TransferSyntax: Unknown Transfer Syntax
I: (0032,1064) SQ (Sequence with explicit length #=0)      #   0, 1 RequestedProcedureCodeSequence
I: (fffe,e0dd) na (SequenceDelimitationItem for re-encod.) #   0, 0 SequenceDelimitationItem
I: 
I: ===================== INCOMING DIMSE MESSAGE ====================
I: Message Type                  : C-FIND RSP
I: Message ID Being Responded To : 1
I: Affected SOP Class UID        : FINDModalityWorklistInformationModel
I: Data Set                      : none
I: DIMSE Status                  : 0x0110: Unknown Status Code
I: ======================= END DIMSE MESSAGE =======================
W: Status Detail:
W: 
W: # Dicom-Data-Set
W: # Used TransferSyntax: Little Endian Implicit
W: (0000,0902) LO [java.lang.UnsupportedOperationException ] #  40, 1 ErrorComment
W: 
I: Releasing Association


this is the logged file for the request: (.../dcm4chee/server/default/log/MY_MOD/20130722152157.164-mwl-cfindrq.xml)

<?xml version="1.0" encoding="UTF-8"?>
<dataset>
<attr tag="00321064" vr="SQ" pos="-1" name="Requested Procedure Code Sequence" len="-1"/>
</dataset>


and this one for the response: (.../dcm4chee/server/default/log/MY_MOD/20130722152157.172-mwl-cfindrsp.xml)

<?xml version="1.0" encoding="UTF-8"?>
<dataset>
<attr tag="00080005" vr="CS" pos="42" name="Specific Character Set" vm="1" len="10">ISO_IR 100</attr>
<attr tag="00321064" vr="SQ" pos="-1" name="Requested Procedure Code Sequence" len="-1"/>
</dataset>


is there a way to prevent DCM4CHEE from creating those elements/lines containing pos="-1" and len="-1"? i don't know where this would make more sense, remove it from the request (possibly creating an empty request file, leading to new errors) or remove it from the response before it is sent back to the device.

i've tried a few calls with attribute coercion (tried to remove those "-1" lines) but gave up with no success. maybe there's an option in the jmx-console, but so far i haven't found one that works; "NoMatchForNoData=True" (service MWLScu) had no effect, however, according to its description it is only effective if CalledAETitle=LOCAL (which is not the case in my setup, it's =DCM4CHEE).

any hint or idea?

Sven N.

unread,
Jul 23, 2013, 8:45:05 AM7/23/13
to
using a different query key:

bash> ./findscu --worklist --aetitle MY_MOD --call DCM4CHEE --log-level info --key "(0040,0100)" -X 192.168.240.150 11112

i get this in the shell:

I: Requesting Association
I: Association Accepted (Max Send PDV: 16340)
I: ===================== OUTGOING DIMSE MESSAGE ====================
I: Message Type                  : C-FIND RQ
I: Presentation Context ID       : 1
I: Message ID                    : 1
I: Affected SOP Class UID        : FINDModalityWorklistInformationModel
I: Data Set                      : present
I: Priority                      : low
I: ======================= END DIMSE MESSAGE =======================
I: Find SCU Request Identifiers:
I: 
I: # Dicom-Data-Set
I: # Used TransferSyntax: Unknown Transfer Syntax
I: (0040,0100) SQ (Sequence with explicit length #=0)      #   0, 1 ScheduledProcedureStepSequence
I: (fffe,e0dd) na (SequenceDelimitationItem for re-encod.) #   0, 0 SequenceDelimitationItem
I: 
W: ---------------------------
W: Find Response: 1 (Pending)
W: 
W: # Dicom-Data-Set
W: # Used TransferSyntax: Little Endian Explicit
W: (0008,0005) CS [ISO_IR 100]                             #  10, 1 SpecificCharacterSet
W: (0040,0100) SQ (Sequence with undefined length #=1)     # u/l, 1 ScheduledProcedureStepSequence
W:   (fffe,e000) na (Item with undefined length #=6)         # u/l, 1 Item
W:     (0008,0060) CS [US]                                     #   2, 1 Modality
W:     (0040,0001) SH [MY_MOD]                                 #   6, 1 ScheduledStationAETitle
W:     (0040,0002) DA [20130710]                               #   8, 1 ScheduledProcedureStepStartDate
W:     (0040,0003) TM [1651]                                   #   4, 1 ScheduledProcedureStepStartTime
W:     (0040,0009) SH [45]                                     #   2, 1 ScheduledProcedureStepID
W:     (0040,0010) SH [MY_MOD]                                 #   6, 1 ScheduledStationName
W:   (fffe,e00d) na (ItemDelimitationItem)                   #   0, 0 ItemDelimitationItem
W: (fffe,e0dd) na (SequenceDelimitationItem)               #   0, 0 SequenceDelimitationItem
W: 
I: ===================== INCOMING DIMSE MESSAGE ====================
I: Message Type                  : C-FIND RSP
I: Message ID Being Responded To : 1
I: Affected SOP Class UID        : FINDModalityWorklistInformationModel
I: Data Set                      : none
I: DIMSE Status                  : 0x0000: Success
I: ======================= END DIMSE MESSAGE =======================
I: Releasing Association


this is the logged file for the request:

<?xml version="1.0" encoding="UTF-8"?>
<dataset>
<attr tag="00400100" vr="SQ" pos="-1" name="Scheduled Procedure Step Sequence" len="-1"/>
</dataset>


and this one for the response:

<?xml version="1.0" encoding="UTF-8"?>
<dataset>
<attr tag="00080005" vr="CS" pos="42" name="Specific Character Set" vm="1" len="10">ISO_IR 100</attr>
<attr tag="00400100" vr="SQ" pos="-1" name="Scheduled Procedure Step Sequence" len="-1">
<item id="1" pos="220" len="-1">
<attr tag="00080060" vr="CS" pos="228" name="Modality" vm="1" len="2">US</attr>
<attr tag="00400001" vr="SH" pos="238" name="Scheduled Station AE Title" vm="1" len="6">MY_MOD</attr>
<attr tag="00400002" vr="DA" pos="252" name="Scheduled Procedure Step Start Date" vm="1" len="8">20130710</attr>
<attr tag="00400003" vr="TM" pos="268" name="Scheduled Procedure Step Start Time" vm="1" len="4">1651</attr>
<attr tag="00400009" vr="SH" pos="280" name="Scheduled Procedure Step ID" vm="1" len="2">45</attr>
<attr tag="00400010" vr="SH" pos="290" name="Scheduled Station Name" vm="1" len="6">MY_MOD</attr>
</item>
</attr>
</dataset>


Reply all
Reply to author
Forward
0 new messages