Accuvix A 30 Samsung and Orthanc

Hello,
i am trying to set up orthanc (on ubuntu 14.04) and have a connection to a Accuvix A 30 Samsung.

Aesculap and GingkoCAD do connect very well to the Orthanc store. The Samsung Device recognizes Orthanc to but refuses to finish it's setup because it seems to expect some answers from orthanc which are not delivered.

Could anybody please tell me how to debug the communication between Orthanc and Samsung or have other hints what to try?

Thanks for your help
regards
Georg

Dear Greg,

Unfortunately, without having a direct access to such a Samsung modality, I cannot provide any help.

If I were in your place, I would start a debugging session (with gdb), and inspect the call stack to understand what messages are exchanged.

If you are not a developer, you should definitely contact your Samsung paying support. Orthanc being open-source, they can spot the problem. I would then happily include any necessary patch in the Orthanc code base.

Sébastien-

Salut Sébastien,

Dear Greg,

Unfortunately, without having a direct access to such a Samsung modality, I cannot provide any help.

If I were in your place, I would start a debugging session (with gdb), and inspect the call stack to understand what messages are exchanged.

If you are not a developer, you should definitely contact your Samsung paying support. Orthanc being open-source, they can spot the problem. I would then happily include any necessary patch in the Orthanc code base.

Thanks for your fast replay. I aprreciate very much. I was inspecting the settings in the Samsung Device made by the vendors technician... he mentioned Orthanc as "work list" not as "storage" and in fact he juggled the settings for the devices AET and Port :frowning: With the correct values i can confirm the connection. I checked a box "save after end examn" but unfortunately there is no transfer to orthanc after endig the examn and pressing the appropriate button.

Any hints for me how to check transfer?

Regards

Georg

Thanks for your fast replay. I aprreciate very much. I was inspecting the settings in the Samsung Device made by the vendors technician… he mentioned Orthanc as “work list” not as “storage” and in fact he juggled the settings for the devices AET and Port :frowning: With the correct values i can confirm the connection. I checked a box “save after end examn” but unfortunately there is no transfer to orthanc after endig the examn and pressing the appropriate button.

Any hints for me how to check transfer?

Well, does not look like a problem with Orthanc, but instead a problem on Samsung’s side. In such a case, I would open a command shell on your Samsung device (this is in general possible if you have administrative access to the modality, which seems to be the case).

Then, I would execute a command-line using the standard “storescu.exe” tool from DCMTK, to manually send a DICOM file to Orthanc. The Windows binary is available in the following official ZIP archive in the “bin” folder:
ftp://dicom.offis.de/pub/dicom/offis/software/dcmtk/dcmtk360/bin/dcmtk-3.6.0-win32-i386.zip

For instance, I would write:

C:\Temp> storescu.exe 192.168.1.10 4242 sample.dcm

Where “192.168.1.10” is the IP address of Orthanc, “4242” its DICOM port, and “sample.dcm” some random DICOM file generated by your modality.

Once the file is correctly received by Orthanc, I would call back your Samsung support to show them that their modality is badly configured.

Sébastien-

Bonsoir Sébastien,

Thanks for your fast replay. I aprreciate very much. I was inspecting the settings in the Samsung Device made by the vendors technician... he mentioned Orthanc as "work list" not as "storage" and in fact he juggled the settings for the devices AET and Port :frowning: With the correct values i can confirm the connection. I checked a box "save after end examn" but unfortunately there is no transfer to orthanc after endig the examn and pressing the appropriate button.

Any hints for me how to check transfer?

Well, does not look like a problem with Orthanc, but instead a problem on Samsung's side. In such a case, I would open a command shell on your Samsung device (this is in general possible if you have administrative access to the modality, which seems to be the case).

Unfortunately i don't have the admin access of the modality but i'll call the technician. I do have the admin acces to the machines that host Orthanc and the rest of the infrastructure.

Then, I would execute a command-line using the standard "storescu.exe" tool from DCMTK, to manually send a DICOM file to Orthanc. The Windows binary is available in the following official ZIP archive in the "bin" folder:
ftp://dicom.offis.de/pub/dicom/offis/software/dcmtk/dcmtk360/bin/dcmtk-3.6.0-win32-i386.zip

For instance, I would write:

C:\Temp\> storescu.exe 192.168.1.10 4242 sample.dcm

Where "192.168.1.10" is the IP address of Orthanc, "4242" its DICOM port, and "sample.dcm" some random DICOM file generated by your modality.

Once the file is correctly received by Orthanc, I would call back your Samsung support to show them that their modality is badly configured.

You're great! Thank you very much. I'll try to check the logs i found in /var/log/orthanc when connecting and ending an examn. Afer that i'll try your hint. Thanks a lot. I'll post the result here.

regards
Georg

Hi Folks,

Bonsoir Sébastien,

> Thanks for your fast replay. I aprreciate very much. I was inspecting the settings in the Samsung Device made by the vendors technician... he mentioned Orthanc as "work list" not as "storage" and in fact he juggled the settings for the devices AET and Port :frowning: With the correct values i can confirm the connection. I checked a box "save after end examn" but unfortunately there is no transfer to orthanc after endig the examn and pressing the appropriate button.
>
> Any hints for me how to check transfer?
>
> Well, does not look like a problem with Orthanc, but instead a problem on Samsung's side. In such a case, I would open a command shell on your Samsung device (this is in general possible if you have administrative access to the modality, which seems to be the case).

Unfortunately i don't have the admin access of the modality but i'll call the technician. I do have the admin acces to the machines that host Orthanc and the rest of the infrastructure.

> Then, I would execute a command-line using the standard "storescu.exe" tool from DCMTK, to manually send a DICOM file to Orthanc. The Windows binary is available in the following official ZIP archive in the "bin" folder:
> ftp://dicom.offis.de/pub/dicom/offis/software/dcmtk/dcmtk360/bin/dcmtk-3.6.0-win32-i386.zip
>
> For instance, I would write:
>
> C:\Temp\> storescu.exe 192.168.1.10 4242 sample.dcm
>
> Where "192.168.1.10" is the IP address of Orthanc, "4242" its DICOM port, and "sample.dcm" some random DICOM file generated by your modality.
>
> Once the file is correctly received by Orthanc, I would call back your Samsung support to show them that their modality is badly configured.

You're great! Thank you very much. I'll try to check the logs i found in /var/log/orthanc when connecting and ending an examn. Afer that i'll try your hint. Thanks a lot. I'll post the result here.

I put --trace option in /etc/init.d/orthanc and did start the daemon. Everything works fine until i press the "end examn" Button on the Samsung modality. Every time i do that teh protocol Orthanc.INFO shows the last lines like

I0506 14:17:13.153587 20614 Connection.cpp:370] SQLite::Connection::FlushToDisk
I0506 14:17:23.154598 20614 Connection.cpp:370] SQLite::Connection::FlushToDisk
I0506 14:17:33.155634 20614 Connection.cpp:370] SQLite::Connection::FlushToDisk
I0506 14:17:37.976058 20628 CommandDispatcher.cpp:266] Association Received
I0506 14:17:37.976547 20628 CommandDispatcher.cpp:449] Association Acknowledged (Max Send PDV: 28660)

And after that orthanc stopps runnig and disappears without any trace in logs...
What can i do?

regards
Georg

Hi Georg,

This indeed reflects a bug within Orthanc. To solve it, you will have to run a debugger on Orthanc:

  1. Recompile Orthanc from the 0.8.6 sources with debug information, by specifying the “-DCMAKE_BUILD_TYPE=Debug” flag while running CMake.
  2. Stop the Orthanc service (sudo /etc/init.d/orthanc stop).
  3. Start a debugging session over Orthanc, with a configuration file that mimics your /etc/orthanc/orthanc.json:

    gdb --args ./Orthanc --verbose ./Configuration.json

  4. Type “catch t” within gdb to ask gdb to break on each exception.
  5. Type “r” to start Orthanc within gdb.
  6. Press the “end examen” button on your Samsung modality. If gdb reports an exception that is not related to your problem, type “c” to ignore the exception and continue the debugging session.
  7. Once Orthanc has crashed, retrieve the backtrace, by typing “bt” inside gdb.
  8. Copy/paste here the content of your debugging session.

It would also be useful to report here the content of a valgrind session that exhibits the crash:

valgrind ./Orthanc --verbose ./Configuration.json 2> valgrind.txt

Thanks,

Sébastien-

Hi Sébastien,
shame on me... it's for sure no bug in Orthanc that the permissions on the orthanc-store-directory were not properly set.

I did not find a note in the documentation about the correct permissions so for testing i chose full access. Could you please tell me which permissions would be the best? In the daemon script the user is orthanc:orthanc, so how should i set access?

regards
Georg

Hi Georg,

Thanks for the feedback, and glad to hear that your problem is solved.

If you use the official Debian/Ubuntu package, the installation will automatically create the user “orthanc” in the group “orthanc”, will create the storage directory “/var/lib/orthanc/db-v5” with the proper permissions (700), and will start the “orthanc.init” service by user “orthanc” at boot time. Everything is automated, so you do not need to do anything.

For manual operation, the only requirement is to make sure that the user that starts Orthanc has read+write+exec access to the storage and index directories (cf. “StorageDirectory” and “IndexDirectory” options in the configuration file).

HTH,
Sébastien-

Hi Sébastien,

Hi Georg,

Thanks for the feedback, and glad to hear that your problem is solved.

If you use the official Debian/Ubuntu package, the installation will automatically create the user "orthanc" in the group "orthanc", will create the storage directory "/var/lib/orthanc/db-v5" with the proper permissions (700), and will start the "orthanc.init" service by user "orthanc" at boot time. Everything is automated, so you do not need to do anything.

Correct. That was my first starting point

For manual operation, the only requirement is to make sure that the user that starts Orthanc has read+write+exec access to the storage and index directories (cf. "StorageDirectory" and "IndexDirectory" options in the configuration file).

Here was the fault. I did start with the deb package. After that i noticed that /var/lib/orthanc... was in a volume with few disk space. Instead of adding a new disk to the system and mounting it as /var/lib/orthanc in fstab i added the disk, mounted and put the path to another directory like /orthanc but i did not set the perḿissions in the same way as on /varl/lib/orthanc/...

So: my fault, sorry for bringing up the mess with that

Regards
Georg

Fine!

Glad that everything is fine now :slight_smile:

Sébastien-