Joanna Kwon
@joannakwon_gitlab
Hi Tobias @tblock79, we are a team of engineers currently conducting research with a hospital. We were planning to utilized Yarra RDS to collect raw-data from the MRI systems in the hospital, but got push back from the hospital regarding security and stability of the software. Would you be able to share with us a few names of institutes or clinics/hospitals that have been happily using Yarra with no reported security/stability issues, apart from NYU? Such examples would be immensely helpful in persuading the board of this particular hospital in adopting a more efficient way of data collection. Thanks in advance!
Jeffrey Luci
@lucijj
@tblock79 , Is the problem with the NX20A just getting it to automatically start without closing the kiosk? If so, we're fine with operating it manually until a workaround can be found. Or, if you want me to help find ways, I have the time. Our scanner is not being used very much, and I now have approval to be in the lab. I'm happy to try to find solutions or beta test for you.
Tobias Block
@tblock79
@lucijj Hi! No, I don't think there is anything different from XA11. I think the version that we have now works fine on XA20. Will try to release it later today (or over the weekend)
@joannakwon_gitlab Will send you a few sites in a PM. In addition, you could also ask for experiences here in the discussion board
Tobias Block
@tblock79
@lucijj You can now find a new client version with support for XA20 in the download section.
Jeffrey Luci
@lucijj
Thanks a ton, Tobias @tblock79 ! I'll have time tomorrow to get it installed and tested.
jgalons
@jgalons
Hi Tobias, We have been using the yarralink sequence to transfer our data to an external shared drive along with "net use" cmd to mount the drive. Recently our hospital IT security team asked us to make sure that the mounted drive is disconnected after each transfer. Is there a way to automatically unmount the shared drive following a RDS data transfer? Thanks for your help
Tobias Block
@tblock79
@jgalons Hi! Are you using RDS or ORT to transfer the data (I am wondering because YarraLink is normally used with ORT)? With ORT, you can disconnect the network drive after the transfer. RDS does not support this at the moment, but if needed, we could add an optional command that is executed after the transfer (which could be used to execute "net use /delete")
jgalons
@jgalons
Thanks Tobias,
jgalons
@jgalons
I thought it was RDS that was used to transfer when using Yarralink ..We always got the RDS logo indicating that the data was being transferred after "checking" the Yarralink sequence. We have not used it for more than 14 months due to "restricting orders" issued by the new hospital owner IT security team. We are now cleared again. I will download the latest version of Yarralink and test it. Thanks again for your work!
Tobias Block
@tblock79
@jgalons It can well be that you are using YarraLink to start RDS (originally, it was intended to start ORT, but can be used to start RDS too). If you see the Yarra icon, that indicates that it's used to start RDS. Would be great if you could validate this. I will put the disconnect feature on the TODO list for the next RDS version. BTW, the YarraLink sequence has not been updated for a while, so your version is probably still current.
cjwiggins
@cjwiggins

Hi Tobias! Just wanted to report back on a Yarra installation 'issue' that I found. I followed the instructions for server configuration. Just at the end it mentions

 "Finally, edit file /etc/sudoers by typing:

 sudo nano /etc/sudoers

 and adding the following lines at the end of the file (this already includes the entries for the WebGUI):"

It turns out you can really screw up your Linux system if you get this wrong. And since this file is what configures sudo privileges, it can be difficult to recover from. Apparently the correct command would be

sudo visudo

which opens the file in the default editor, but with some checking when you save the file that the resulting /etc/sudoers file will be valid.

Part of my problem was perhaps caused by the suggestion to add to the end of the file. But at the end there is '#include'. This looks like a comment (because everything else with '#' is a comment. But apparently in this circumstance it isn't, and adding stuff after it can cause problems!

jgalons
@jgalons
Hi Tobias. I am just following up regarding using the yarralink sequence to start RDS in clinical settings (Version VE11C). Thanks to the startup command options available in the configuration menu, we are now able to connect to the share drive, transfer the data, disconnect the network drive and kill the RDS process as requested by the hospital IT team. Bypassing the operator for data transfer is crucial as we have a large number of technologists and a fair amount of turnover among them. A life saver.. Thanks!
Tobias Block
@tblock79

@jgalons The issue with bypassing the operator is that it's necessary to identify a time point for the data export that does not affect the clinical scans. Because while the data export is running, new scans cannot be started (so this would have a big impact). In our case, we export the data over night when no scanning is performed. Are you planning to do this in-between scans? If you have found a way to terminate RDS after the export, this might do it. However, if scans are large, this might still impact the workflow. Other question: How do you determine when the RDS process can be killed?

Regarding the yarralink sequence: You can use it for starting RDS by modifying line 57 of the source code accordingly (or, you could simply rename RDS.exe into ort.dll).

jgalons
@jgalons

Hi Tobias,
We call RDS.exe in the code as you described. To make the transfer a “one-off” process, the configuration update rule is set-up as “Only Manually”. The timing is defined in the Startup commands menu where we added the following 4 lines for connection, transfer, disconnection and process termination.

net use z: \[servername][share] [password] /USER:[username] /PERSISTENT:YES /yes
RDS.exe -update
net use z: /delete
taskkill /-im RDS.exe /f

All these commands are run sequentially and yarralink is always the last “scan” in protocols requiring data transfer for specific sequences. In our experience, the “no scanning” period never exceed the time needed for transitioning between patients which can be significant in hospitals. It has never been an issue in our outpatient imaging center where the transitioning between patients is faster. On the other end we have not been transferring huge data sets like fMRI, 4D flow or DTI tractography...

Tobias Block
@tblock79
@jgalons Hmm, I am not sure if this can work reliably. YarraLink will start RDS.exe, which is then executing these startup commands. The call of RDS.exe in the second line will start RDS.exe again, but the second instance will just dispatch a message to the already running instance (to trigger the update) and return immediately. Since the next line disconnects the drive again, the drive will be disconnected even before the export starts. The last line would kill the running instance, so no update should take place at all. I assume it only works because there is a typo in the argument of taskkill, so that taskkill does not terminate anything (it should be /im instead of /-im)
Tobias Block
@tblock79
I can add an option to RDS to terminate after the transfer (and for the drive disconnect). Hope to find time in the next days
jgalons
@jgalons
Actually, the first call to RDS.exe does not trigger the execution of the startup commands. We thought that this was due to the "Only Manually" update mode. We checked again this morning on a patient and the sequence of events was as listed above...
the /-im was a typo .)
Tobias Block
@tblock79
@jgalons The startup commands will be executed whenever RDS is launched, regardless of the selected update mode (also in mode "Only Manually"). You can see that in file rds_operationwindow.cpp in line 157. If RDS.exe is started from the YarraLink sequence, that first instance will execute the startup commands. The second line of your startup commands will launch RDS.exe again, but since one instance is already running, it will just send a message to the first instance (asking the first instance to perform an update) and exit right away (you can see that in file main.cpp line 71/73). Thus, the taskkill command in the fourth line should, in theory, terminate the first instance, before the update ever starts. If it actually does perform an update, this might be due to some other reason, but I wouldn't count on this mechanism working reliably...
marjolein90
@marjolein90

Hi! Great software, it makes life a lot easier after scanning. Thanks!

Can Yarra RDS be used for exporting other data, such a physiofiles? Working with VE11C here.

Thanks,
Marjolein Piek
Lund University, Sweden

hyunsoolee0503
@hyunsoolee0503
Hi Tobias! Thanks to you and your team, we have collected raw datasets automatically from scanners to NAS using RDS. Recently, two additional scanners were installed in our site, so could we get certificates for these scanners. The scanners are all vida with XA20a.
Best regards,
Hyun-Soo
Oh I'm sorry. I just heard from my colleague that I don't need separate certificates for each scanner. So I have all I need. Thank you!
Tobias Block
@tblock79
@marjolein90 Hi Marjolein, I believe the physiodata is stored (or can be stored) in the Twix file. There is a thread in the IDEA Discussion board on that (the IDEA Discussion board is broken, but I can send you the thread as PM). So in this way, you should be able to get the physiodata with RDS.
marjolein90
@marjolein90
@tblock79 I would appreciate that, thanks!
usmanUCL
@usmanUCL
@tblock79 Hi! Few questions regarding Yarra: Can Yarra software be configured to select the date from which we want the raw data to be transferred from (in case we are not interested in data before that date)? 2) On VA11, when scanner is rebooted, once we leave Kiosk mode, will Yarra software be automatically started in background if it is pinned within the start up? Thanks
usmanUCL
@usmanUCL
3) When data is being transferred to remote drive, is it possible to stop it using 'Postpone Active Transfer', I tried it few times, but it continues to transfer raw data files (I was thinking only current file will be transferred and then it will stop)
usmanUCL
@usmanUCL
4) If we install the Yarra software onto a network drive and want to save to the same, would it be possible to avoid the second step of transferring data as it will be redundant
Thank you for your time in answering my queries
Usman (RBHT)
Tobias Block
@tblock79
@usmanUCL Hi Usman,
1) You can't specify a date but there is a file in the Yarra folder called lpfi.ini that contains the "last processed file id". Thus, you could open the Siemens TWIX tool and look at the file id from where you want the update to be done and write it into that file.
2) Yes, that's correct. Once it's leaving the kiosk mode, RDS will be started if it's contained in the Windows Startup folder.
3) Currently, it will continue the active transfer (scan) and then postpone any further transfers. We can look into adding a "hard stop" button for a future version.
4) That's not possible at the moment. Running the Yarra Client on a network share works as a workaround, but it's not the intended way of operating it as it will block the scanner for much longer. However, if this is important for your project, you could build a custom version of the Yarra Client and modify the transfer logic accordingly (shouldn't be too complicated)
usmanUCL
@usmanUCL
Hi Tobias, Thank you for your reply, I was trying to find lpfi.ini file inside the Yarra folder but couldn't locate it, is there a direct link to it where I can find it? Thanks again.
Tobias Block
@tblock79
@usmanUCL Hi Usman, The file is not part of the distribution but will be created/updated at the end of each update run. The content should be:
[LPFI]
FileID=1234
usmanUCL
@usmanUCL
Thanks, I am able to find LPFI file and it is working as you kindly guided after modification. I still have issues in automatic start of RDS.exe once I leave Kiosk mode after reboot of scanner although I have placed the short cut in the start up mode. I can see RDS.exe under start menu of Task Manager but it doesn't start automatically. May be this is due to being on network drive rather than drive? Thanks again for your kind guidance.
usmanUCL
@usmanUCL
For modifying transfer logic so that it doesn't execute the second step of transferring (in case Yarra was installed onto network drive), which files need to be modified in the source code?
Tobias Block
@tblock79
@usmanUCL It could be that the security policies might prevent execution of binaries from network drives. A lot has changed in that regard in the recent Siemens software versions (I don't know too much about it, as I don't have access to MR scanners at the moment). You could check if it does work when starting it from the C:\ drive (in that case, it's likely due to security policies)
@usmanUCL The transfer logic is mostly defined in the file rds_processcontrol.cpp
Simon Warfield
@skwarfield
I would like to get the certificates to run Yarra on XA11
Tobias Block
@tblock79
@skwarfield Can you send me your email address in a PM? I will email you the certificates then
jennifersteeden
@jennifersteeden
Is the RDS case-sensitive?
Tobias Block
@tblock79
@jennifersteeden Do you mean case-sensitive regarding the tags that are written into the protocol name? Yes, the tags are evaluated case-sensitive
jennifersteeden
@jennifersteeden
Yes i did - sorry for not being more specific. Thank you very much for your swift response!
kkwst2
@kkwst2
Hello, hoping to get the software-specific compilation of the YarraLink sequences to send raw data from our Avanto MRI running VE11C to our Ubuntu workstation. Where would I forward the C2P?
Tobias Block
@tblock79
@kkwst2 We don't officially support the YarraLink sequence anymore (as we are not using it at our site). You can download the source code here:
http://yarraframework.com/addons/yarralink/
We haven't used it on VE11C (I believe the last version we used it for was VE11A) but it might compile for VE11C without many changes
kkwst2
@kkwst2
Thanks for the reply. The link give me an error "Cannot resolve the cset".
Tobias Block
@tblock79
@kkwst2 Thanks for pointing that out. Need to update the link. You can find the code here:
https://bitbucket.org/yarra-dev/yarralink/src/master/
hyunsoolee0503
@hyunsoolee0503
Hi Tobias, I have a question regarding the yarra RDS. Recently, there shows some errors like: -- ERROR: Available disk space too small for exporting data. I was just wondering how can I fix this error. It would be really helpful if you let me know where in the local drive I can check with and delete temporary files from.
Thanks,
Hyun-Soo
Tobias Block
@tblock79
@hyunsoolee0503 Hi! The Yarra Client requires disk space to export the raw data onto disk. It seems that you have not enough empty diskspace available to save the raw data. Yarra writes the files into a subfolder of the Yarra installation path. Check how much diskspace is still available on that drive (typically drive C:). Temporary files can be deleted, e.g., from C:\temp
hyunsoolee0503
@hyunsoolee0503
Thanks Tobias! I'll check the subforder of the yarra installation path and C:\temp. I really appreciate your support.