OpenICE Community Support Forum
Welcome to the OpenICE community support forum. Use this forum for submitting bugs, asking for help, and solving problems you are having with OpenICE software. For ideas, general questions, and conversation please use the discussion forum.
How to add a new device
Hi Jeff
We are doing a POC and are planning to add a new device to OpenICE platform. Do you have any documentation that describe the standard process for adding a new device in terms of communication for initial handshake/protocol that needs to be implemented by this device.
Regards
Vinod

Philips Rev K Devices
I noticed that at least one other user has had difficulties using OpenICE with Philips Rev K devices.
I have been able to successfully connect to Philips MP70 and MP50 devices with Rev G (and I believe the MD PnP lab has Rev J).
I recently had the opportunity to test OpenICE on a Philips X2, Rev K.2. The X2 does not have a serial port, so I used the LAN port on the external battery pack, and ran the monitor in demo mode. OpenICE was able to successfully connect, and is able to extract the numerics alright, but there are problems with the waveforms. Initial waveforms appear in the GUI, but then stop (I was using version 0.6.3 of OpenICE).
The log file shows that the waveforms have "no new samples to emit", and that the physioId of one of the signals is being read in as 0. There is also a DDS error indicating that the participant information was not available for device identity publication (see log file excerpt below).
Initially, and occasionally afterwards, there is valid waveform data in the sample array updates (viewed in the debugger). However, very quickly after starting, the updates start coming back empty. I have written code to export the numerics/waveform data to csv; the numerics data is written fine, but not even the first packet of waveform data is recorded.
I remember seeing the flags INVALID | QUESTIONABLE | UNAVAILABLE in the debugger for the MeasurementState of SampleArrayObservedValue objects (with physioId = 0).
I later tried testing on an X2 with rev J, and the software worked without problems. So there does seem to be a problem with rev K (and possibly newer) devices.
I have compared the export interface manuals for both Rev H and Rev K, and the differences between the two appear to be minimal (a few new objects have been defined).
Unfortunately I have had to send back the X2 rev K I had on loan, so I am unable to do much more hands-on troubleshooting myself at the moment. I do still have log files, and I did spend some time with a java debugger stepping through the code (mostly in AbstractDemoIntellivue and AbstractDevice), so I might be able to answer some questions... But hopefully the above information will be helpful when one of you needs to troubleshoot rev K or higher devices!
Regards,
Nathan
---------------------------------------------------
2015-05-26 14:38:23,524 | WARN | Bean with key 'timeManager' has been registered as an MBean but has no exposed attributes or operations | org.springframework.jmx.export.MBeanExporter | JavaFX Application Thread
2015-05-26 14:38:23,576 | ERROR | [D0000|Reader(80000807)|T=DeviceIdentity|GET_MATCHED Participant DATA]DDS_DataReader_get_matched_publication_participant_data:ERROR: Failed to get discovered_participant_data | com.rti.dds | EventLoopHandler
2015-05-26 14:38:23,576 | WARN | Unable to get participant information for DeviceIdentity publication | org.mdpnp.apps.testapp.DeviceListModelImpl | EventLoopHandler
2015-05-26 14:38:23,617 | INFO | Connecting to >126.3.145.100< | org.mdpnp.devices.DeviceDriverProvider$SpringLoadedDriver | Thread-15
2015-05-26 14:38:23,849 | INFO | Start emit fast data for period 2000ms | org.mdpnp.devices.philips.intellivue.DemoEthernetIntellivue | Network Loop
2015-05-26 14:38:24,375 | INFO | ProductionSpecification | org.mdpnp.devices.philips.intellivue.AbstractDemoIntellivue$IntellivueExt | Network Loop
2015-05-26 14:38:24,376 | INFO | [[specType=SERIAL_NUMBER,componentId=ID_COMP_PRODUCT,prodSpec=DE037A8036], [specType=PART_NUMBER,componentId=ID_COMP_PRODUCT,prodSpec=M3002A], [specType=PART_NUMBER,componentId=ID_COMP_APPL_SW,prodSpec=S-M8102-1501A ], [specType=SW_REVISION,componentId=ID_COMP_APPL_SW,prodSpec=K.21.39 ], [specType=PART_NUMBER,componentId=ID_COMP_CONFIG,prodSpec=S-M8102-1401A ], [specType=SW_REVISION,componentId=ID_COMP_CONFIG,prodSpec=K.21.39 ], [specType=PART_NUMBER,componentId=ID_COMP_BOOT,prodSpec=S-M8000-1301A ], [specType=SW_REVISION,componentId=ID_COMP_BOOT,prodSpec=A.16.24]] | org.mdpnp.devices.philips.intellivue.AbstractDemoIntellivue$IntellivueExt | Network Loop
2015-05-26 14:38:24,378 | ERROR | [D0000|Reader(80000807)|T=DeviceIdentity|GET_MATCHED Participant DATA]DDS_DataReader_get_matched_publication_participant_data:ERROR: Failed to get discovered_participant_data | com.rti.dds | EventLoopHandler
2015-05-26 14:38:24,379 | WARN | Unable to get participant information for DeviceIdentity publication | org.mdpnp.apps.testapp.DeviceListModelImpl | EventLoopHandler
2015-05-26 14:38:24,382 | ERROR | [D0000|Reader(80000807)|T=DeviceIdentity|GET_MATCHED Participant DATA]DDS_DataReader_get_matched_publication_participant_data:ERROR: Failed to get discovered_participant_data | com.rti.dds | EventLoopHandler
2015-05-26 14:38:24,382 | WARN | Unable to get participant information for DeviceIdentity publication | org.mdpnp.apps.testapp.DeviceListModelImpl | EventLoopHandler
2015-05-26 14:38:27,442 | WARN | No ObservedValue for 0 | org.mdpnp.devices.philips.intellivue.AbstractDemoIntellivue$IntellivueExt | Network Loop
2015-05-26 14:38:27,443 | WARN | No ObservedValue for 0 | org.mdpnp.devices.philips.intellivue.AbstractDemoIntellivue$IntellivueExt | Network Loop
2015-05-26 14:38:27,444 | WARN | No ObservedValue for 0 | org.mdpnp.devices.philips.intellivue.AbstractDemoIntellivue$IntellivueExt | Network Loop
2015-05-26 14:38:27,469 | WARN | No SampleArraySpecification or RelativeTime for handle=2006 rt=null sas=null sar=null unitCode=null | org.mdpnp.devices.philips.intellivue.AbstractDemoIntellivue$IntellivueExt | Network Loop
2015-05-26 14:38:28,002 | WARN | MDC_IMPED_TTHOR 1827 will repeat 109 old samples to make up a shortfall | org.mdpnp.devices.philips.intellivue.DemoEthernetIntellivue | taskExecutor-1
2015-05-26 14:38:28,002 | WARN | MDC_IMPED_TTHOR 1827 filling in 109 zeros; this should not continue happening | org.mdpnp.devices.philips.intellivue.DemoEthernetIntellivue | taskExecutor-1
2015-05-26 14:38:28,006 | WARN | MDC_ECG_LEAD_III 1817 will repeat 872 old samples to make up a shortfall | org.mdpnp.devices.philips.intellivue.DemoEthernetIntellivue | taskExecutor-1
2015-05-26 14:38:28,006 | WARN | MDC_ECG_LEAD_III 1817 filling in 872 zeros; this should not continue happening | org.mdpnp.devices.philips.intellivue.DemoEthernetIntellivue | taskExecutor-1
2015-05-26 14:38:28,020 | WARN | MDC_ECG_LEAD_II 1817 will repeat 872 old samples to make up a shortfall | org.mdpnp.devices.philips.intellivue.DemoEthernetIntellivue | taskExecutor-1
2015-05-26 14:38:28,020 | WARN | MDC_ECG_LEAD_II 1817 filling in 872 zeros; this should not continue happening | org.mdpnp.devices.philips.intellivue.DemoEthernetIntellivue | taskExecutor-1
2015-05-26 14:38:28,034 | WARN | MDC_ECG_LEAD_I 1817 will repeat 872 old samples to make up a shortfall | org.mdpnp.devices.philips.intellivue.DemoEthernetIntellivue | taskExecutor-1
2015-05-26 14:38:28,034 | WARN | MDC_ECG_LEAD_I 1817 filling in 872 zeros; this should not continue happening | org.mdpnp.devices.philips.intellivue.DemoEthernetIntellivue | taskExecutor-1
2015-05-26 14:38:28,464 | WARN | No ObservedValue for 0 | org.mdpnp.devices.philips.intellivue.AbstractDemoIntellivue$IntellivueExt | Network Loop
2015-05-26 14:38:28,466 | WARN | No ObservedValue for 0 | org.mdpnp.devices.philips.intellivue.AbstractDemoIntellivue$IntellivueExt | Network Loop
...
org.mdpnp.devices.philips.intellivue.AbstractDemoIntellivue$IntellivueExt | Network Loop
2015-05-26 14:38:30,001 | WARN | MDC_IMPED_TTHOR 1827 no new samples to emit | org.mdpnp.devices.philips.intellivue.DemoEthernetIntellivue | taskExecutor-1
2015-05-26 14:38:30,002 | WARN | MDC_ECG_LEAD_III 1817 no new samples to emit | org.mdpnp.devices.philips.intellivue.DemoEthernetIntellivue | taskExecutor-1
2015-05-26 14:38:30,002 | WARN | MDC_ECG_LEAD_II 1817 no new samples to emit | org.mdpnp.devices.philips.intellivue.DemoEthernetIntellivue | taskExecutor-1
2015-05-26 14:38:30,002 | WARN | MDC_ECG_LEAD_I 1817 no new samples to emit | org.mdpnp.devices.philips.intellivue.DemoEthernetIntellivue | taskExecutor-1
2015-05-26 14:38:30,516 | WARN | No ObservedValue for 0 | org.mdpnp.devices.philips.intellivue.AbstractDemoIntellivue$IntellivueExt | Network Loop
2015-05-26 14:38:30,518 | WARN | No ObservedValue for 0 | org.mdpnp.devices.philips.intellivue.AbstractDemoIntellivue$IntellivueExt | Network Loop
2015-05-26 14:38:30,518 | WARN | No ObservedValue for 0 |
...
2015-05-26 14:38:33,593 | ERROR | [D0000|Reader(80000807)|T=DeviceIdentity|GET_MATCHED Participant DATA]DDS_DataReader_get_matched_publication_participant_data:ERROR: Failed to get discovered_participant_data | com.rti.dds | EventLoopHandler
2015-05-26 14:38:33,593 | WARN | Unable to get participant information for DeviceIdentity publication | org.mdpnp.apps.testapp.DeviceListModelImpl | EventLoopHandler
-----------------------------------------------

TimeSync BBB rev C with time server on local network.
How do I time sync my BBB with time server present on my local network.
At times, time also sets back to Mar 1 2015 after reboots.
Please advise.
Regards

Beaglebones Blacks do not have a real time clock and thus require time synchronization after each boot. We have taken several approaches to time synchronization over the years. The simplest approach is to give your Beaglebones access to the Internet, specifically pool.ntp.org. Our current approach is to use our Cisco router as a NTP time server. To do this, we had to configure DHCP Option 42 in the DHCP pool configuration to the address of the router and point the router to the US NTP pool. Neither of these options require edits to the Beaglebone's NTP configuration file at /etc/ntp.conf although your eventual solution may be different.
I would suggest searching Beaglebone or Linux forums for time synchronization options and setup assistance. I've copied a link below that might be a good place to start.
http://derekmolloy.ie/automatically-setting-the-beaglebone-black-time-using-ntp/
Thanks,
Jeff

artifactiory not accessibile
Hello,
I am trying to build the mdpn repo but it looks like https://build.openice.info/artifactory is down.
This are the error i get:
* What went wrong: A problem occurred evaluating project ':data-types:x73-idl-rti-dds'. > Could not resolve all dependencies for configuration ':data-types:x73-idl-rti-dds:rtiddsgen'. > Could not resolve org.anarres:cpp-bin:1.2.8-SNAPSHOT. Required by: org.mdpnp:x73-idl-rti-dds:0.6.3-SNAPSHOT > Unable to load Maven meta-data from https://build.openice.info/artifactory/libs-snapshot/org/anarres/cpp-bin/1.2.8-SNAPSHOT/maven-metadata.xml. > Could not GET 'https://build.openice.info/artifactory/libs-snapshot/org/anarres/cpp-bin/1.2.8-SNAPSHOT/maven-metadata.xml'. > peer not authenticated > Unable to load Maven meta-data from https://build.openice.info/artifactory/libs-release/org/anarres/cpp-bin/1.2.8-SNAPSHOT/maven-metadata.xml. > Could not GET 'https://build.openice.info/artifactory/libs-release/org/anarres/cpp-bin/1.2.8-SNAPSHOT/maven-metadata.xml'. > peer not authenticated > Unable to load Maven meta-data from https://build.openice.info/artifactory/remote-repos/org/anarres/cpp-bin/1.2.8-SNAPSHOT/maven-metadata.xml. > Could not GET 'https://build.openice.info/artifactory/remote-repos/org/anarres/cpp-bin/1.2.8-SNAPSHOT/maven-metadata.xml'. > peer not authenticated

Sorry for the inconvenience. Hopefully your issue has been solved. Those builds are hosted on a server in our lab, if you ever have an issue with it not building correctly due to an error like that, try waiting a little while and building again. Alternatively, if you've previously built the project you can run with the argument < --offline > (without the <>) and it will build with the files saved on your system.

Build OpenICE from source
We are trying to use openICE for integration with several different medical devices at the University of Pennsylvania and the surrounding hospitals. We are able to use the demo app that is pre-built but we are having trouble building the code from source.
We have tested this on Windows, Mac and Ubuntu and get to the same stage. We are able to import the project using the eclipse plugin for gradle but there are some bits that don't compile. In particular, the main problem is that the ice environment that is defined in a few idl files is not correctly recognized by the java files (so the most common error is "ice cannot be resolved to a type"). As far as I understand, some java code has to be generated by these specifications but we cannot get eclipse to do it.
Is there some other pluging that we need to install? Or do you think there is some other problem?
Thanks,
Rado

OpenICE can't get data from MX800
I have OpenICE working correctly with a Philips MP70, but I need it to work with the MX800.
Following the exact same process for connection with the MX800, I wind up with the unplugged "no data" indicator on my MX800 in the OpenICE devices list.
One thing that stands out to me is the difference between the MIB/RS232 port on the backs of the monitors. The MP70 has two separate ports, I assume one for input and the other for output. The OpenICE documentation suggests using the port with the arrow pointing out of the circle, like this:
O->
The MIB/RS232 port on the back of my MX800 only has one port, and it has a double arrow indicator, like this:
O<->
So I am wondering if this port is configurable as either input or output, and if that is possibly my problem. Does anyone here have any input on this issue?
Thanks.

Unable to connect BBB with philips MP70 with OpenICE
Hi,
I am trying to interface Philips IntelliVue MP70 with OpenICE using the steps given in https://www.openice.info/docs/4_device-adapter-setup.html. After everything is done the application is

Build OpenICE fom github failed
Hello,
When I build mdpnp source code form github, I encounter some issue.
It print some error, look like the artifactory files not exist?
A problem occurred evaluating project ':data-types:x73-idl-rti-dds'.
> Could not resolve all dependencies for configuration ':data-types:x73-idl-rti-dds:rtiddsgen'.
> Could not resolve org.anarres:cpp-bin:1.2.8-SNAPSHOT.
Required by:
org.mdpnp:x73-idl-rti-dds:0.6.3-SNAPSHOT
> Unable to load Maven meta-data from https://build.openice.info/artifactory/libs-snapshot/org/anarres/cpp-bin/1.2.8-SNAPSHOT/maven-metadata.xml.
> Could not GET 'https://build.openice.info/artifactory/libs-snapshot/org/anarres/cpp-bin/1.2.8-SNAPSHOT/maven-metadata.xml'.
> peer not authenticated
> Unable to load Maven meta-data from https://build.openice.info/artifactory/libs-release/org/anarres/cpp-bin/1.2.8-SNAPSHOT/maven-metadata.xml.
> Could not GET 'https://build.openice.info/artifactory/libs-release/org/anarres/cpp-bin/1.2.8-SNAPSHOT/maven-metadata.xml'.
> peer not authenticated
> Unable to load Maven meta-data from https://build.openice.info/artifactory/remote-repos/org/anarres/cpp-bin/1.2.8-SNAPSHOT/maven-metadata.xml.
> Could not GET 'https://build.openice.info/artifactory/remote-repos/org/anarres/cpp-bin/1.2.8-SNAPSHOT/maven-metadata.xml'.
> peer not authenticated
Please help me solve it. Thanks.
Hank

Connecting Evita 4 via serial DB9
Hi,
I am currently connecting Evita4 with laptop.
my connection is as follows:
evita->serial to usb connector ->laptop USB. I have crossed pin2 and 3(rx,tx) from evita.
Then i launch openice device configurator and add evita4 via serial. I tried all baudrates and parities. The device connector goes into endless connecting loop. However, I can use realterm to transmit basic commads and get replied.
Can you please provide steps to connect Evita 4.
Regards,
Tarun

Connecting to Philips IntellieVue over LAN: Stuck on Negotiating (Requesting association)
Hi
Firstly, thanks to the OpenICE community for supporting this amazing project.
I'm trying to use OpenICE (v0.6.3) to connect to Philips IntelliVue monitors over LAN. My computer (OSX 10.11.3) is connected to the same internal ICU LAN network the monitors are connected to. I have an IP address, and I can ping the monitors. However, when I connect to the monitor IP address, the connection status in OpenICE is stuck on "Negotiating (Requesting association)". This is true of any monitor I attempt to connect to in the unit. Just to be explicitly clear, I am not using serial/RJ45/RS232. Just LAN.
I am able to connect to the monitor just fine when the monitor is connected to an isolated network. I believe the issue may be that the monitors are already connected with the central Philips server. Can IntelliVue monitors connect to both the Philips server and OpenICE simultaneously? Is there any other reason that could explain this behaviour?
Kind regards
Luke Fletcher

supported devices
-Alistair MacDonald

Puritan Bennet 840 Serial Port connection
I'm having problems to connect PB 840 to a MacBook. I'm using a serial to USB cable. Despite I installed OpenICE and Java, the Device Adapter does not recognizes it, just shows bluetooth port of the Mac. I installed another app called "Serial" and it reads the serial port but I want realtime, high frecuency data to build waveforms and make lung mechanics analysis. What I'm doing wrong?

artifactiory not accessibile
Hello,
I am trying to build the mdpn repo but it looks like https://build.openice.info/artifactory is down.
This are the error i get:
* What went wrong:
A problem occurred evaluating project ':data-types:x73-idl-rti-dds'.
> Could not resolve all dependencies for configuration ':data-types:x73-idl-rti-dds:rtiddsgen'.
> Could not resolve org.anarres:cpp-bin:1.2.8-SNAPSHOT.
Required by:
org.mdpnp:x73-idl-rti-dds:0.6.3-SNAPSHOT
> Unable to load Maven meta-data from https://build.openice.info/artifactory/libs-snapshot/org/anarres/cpp-bin/1.2.8-SNAPSHOT/maven-metadata.xml.
> Could not GET 'https://build.openice.info/artifactory/libs-snapshot/org/anarres/cpp-bin/1.2.8-SNAPSHOT/maven-metadata.xml'.
> peer not authenticated
> Unable to load Maven meta-data from https://build.openice.info/artifactory/libs-release/org/anarres/cpp-bin/1.2.8-SNAPSHOT/maven-metadata.xml.
> Could not GET 'https://build.openice.info/artifactory/libs-release/org/anarres/cpp-bin/1.2.8-SNAPSHOT/maven-metadata.xml'.
> peer not authenticated
> Unable to load Maven meta-data from https://build.openice.info/artifactory/remote-repos/org/anarres/cpp-bin/1.2.8-SNAPSHOT/maven-metadata.xml.
> Could not GET 'https://build.openice.info/artifactory/remote-repos/org/anarres/cpp-bin/1.2.8-SNAPSHOT/maven-metadata.xml'.
> peer not authenticated

Research
My questions are more related to how you are interfacing with EMRs, and what format you're pushing that data? From a more technical perspective, are you exposing the data through an API? Or are you publishing that data directly to a system? Would love to get a quick overview, from a quasi-technical perspective.
Thanks.
JD
jdietrich@croocial.com

Thanks for your question! The short answer is that EMR communication/integration is done through HL7 (http://www.hl7.org/). Our preferred HL7 version is the development version of HL7 FHIR (http://hl7-fhir.github.io/). If you're interested in using HL7 FHIR and java (what OpenICE uses), a fantastic learning resource is the HAPI FHIR project (http://jamesagnew.github.io/hapi-fhir/).
We have only begun to experiment with EMR integrations, but our current state is best illustrated by the OpenICE Supervisor app 'HL7 Exporter'. You can use the app by installing OpenICE: http://mdpnp.sourceforge.net/. And you can check out the code here: https://sourceforge.net/p/mdpnp/code/ci/master/tree/interop-lab/demo-apps/src/main/java/org/mdpnp/apps/testapp/hl7/. The app will take data from the active patient and export it via HL7 at a user defined time interval.
Our HIMSS15 demo app illustrated some mock "auto-validation" of medical device data that was then exported using the HL7 export app to a fake EMR. That system is representative of some of our future development ideas that will be on our roadmap eventually. For now, there is still a lot of work to do in this area...
Feel free to continue the conversation. Thanks,
Jeff
Customer support service by UserEcho