GeneXpert
Machine Integration with IBLIS –
Setup Guide
This document serves as a step-by-step guide for integrating the GeneXpert machine with the IBLIS system
using the GeneXpert driver. The driver enables automated fetching and submission of test results from
GeneXpert to IBLIS.
Pre-Configuration Requirements
• Ethernet Cable (together with/without USB to Ethernet Adapter): Required for establishing a
network connection between the GeneXpert machine computer and the IBLIS server.
• Node.js v18: Required to run the GeneXpert driver.
• Access to the GeneXpert software (on the computer controlling GeneXpert) and IBLIS server.
Step 1: Connect the GeneXpert Machine to the Network
Connect the GeneXpert machine’s controlling computer (laptop or desktop) to your facility’s network:
• Via Ethernet port, or
• Via an external Ethernet adapter (if the Ethernet port is in use).
If the GeneXpert machine is already connected to the GxAlert network, follow
these steps
A. Open Settings
B. Click on Network & Internet
C. Click on Status
D. Click “Change Adapter options. “
E. Right-click the network adapter you want to change the priority for and select its Properties:
F. Select Internet Protocol Version 4 (TCP/IPv4)
G. Click on the Properties button.
H. Click Advanced. In this section, uncheck the box that says Automatic metric and enter a number in
the Interface metric box.
The number you enter here is the priority of the network interface; the lower the number, the higher
the priority. A high number means low priority.
I. Click OK to save the current dialog and the subsequent one. These steps should be repeated for any
other network adapters that need configuration. In this case, the Wi-Fi adapter is given a higher
priority than the adapter used for the Internet. This configuration ensures that Windows attempts to
use the primary connection first to reach hosts and automatically switches to the secondary
connection if the primary one
NB: Set priority 1 to the GxAlert network adapter and set the network (EGPAF) adapter to 100 so that
GxAlert always has high priority.
Step 2: Verify Network Connectivity
1. Open Command Prompt (CMD) on the GeneXpert machine.
2. Ping the IBLIS server to check connectivity: ping <IBLIS_SERVER_IP>
• If successful, proceed to the next step.
• If unsuccessful, try another adapter or network port.
Tip: If the server is unreachable but another workstation (e.g., an All-in-One in the lab) is
reachable, you can use the reachable workstation.
Step 3: Install the GeneXpert Driver
1. Check Node.js Version:
node --version
If Node.js is not installed, use nvm to install it:
nvm install 18
nvm use 18
2. Clone the Driver Repository:
git clone
https://github.com/HISMalawi/mlab_drivers.git
cd mlab_drivers/GeneXpert_Machine_Driver
3. Install Dependencies:
npm install
TIP: (Alternatively, since the servers do not have internet, install dependencies on a working
machine, copy the node_modules folder into the driver folder on the server.)
4. Run the Driver:
node app.js
You should see: “Server is listening!”
Leave the driver running and proceed to the GeneXpert computer.
Step 4: Configure the GeneXpert Software
1. Log in to the GeneXpert software using:
• Username: genexpert
• Password: cepheid
2. Navigate to:
Setup → System Configuration → Host Communication Settings
3. In the Host Communication Settings:
• Enable Host Communication
• Enable Automatic Result Upload
• Under Communication Settings:
Protocol: ASTM
Run Host As: Server
Server IP Address: IP of the machine running the driver (either the server or All-inOne)
4. Ensure Check Status shows a green checkmark (✓).
Step 5: Configure Host Test Codes
For each enabled assay under Host Test Code, click Edit and update as follows:
• EID Assays (e.g., "HIV-1 Qual..."):
Set Result Test Code: EID
• Viral Load Assays:
Set Host Test Code: Viral Load or Viral Load 2 (if more than one exists)
• COVID-19 Assays:
Set Host Test Code: COV-2 or COV-2 2
• TB Assays (MTB-RIF):
Result Test Codes: MTB, Rif Resistance
Add suffix (e.g., MTB-RIF-1) if more than one is enabled
• HPV Assays:
Result Test Codes: HPV 16, HPV_18_45, OTHER HR HPV
After updating all assays, click OK to save changes.
Step 6: Edit Driver Configuration Files
Navigate to: cd
config/
1. settings.json
Update the following:
{
"lisPath": "http://<IBLIS_SERVER_IP>:8005/api/v1/interfacer",
"lisUser": "<IBLIS_USERNAME>",
"lisPassword": "<IBLIS_PASSWORD>",
"port": 3031
}
2. mapping.json
Match the measure names to their corresponding IDs from the IBLIS database: Inspect
the page by right-clicking and clicking select inspect, then click on the selector
Navigate to the GeneXpert result field and get the ID.
Get the ID and add it to the corresponding values in the mapping.json
Step 7: Run and Test Integration
Start the driver:
node app.js
From the GeneXpert machine, click on View Results, which brings up the most recent generated result,
then click on Upload test
Select a test that was entered from the IBLIS reception, whose barcode was scanned when creating a test in
the genexpert machine, then click Upload
Check the process for the GeneXpert driver. Then type pm2 log [Gene-Xpert id] obtained for the first
command
Example:
http://192.168.200.100:8005/api/v1/interfacer?specimen_id=123&measure_id=456&result=Detected&dec=0
Ensure that the correct test type and result appear in IBLIS.
Step 8: Set Up Auto-Start with PM2
To ensure the driver starts automatically on reboot:
npm install -g pm2
pm2 start app.js --name genexpert-driver
pm2 save
pm2 startup
Run the generated command from the pm2 startup output in the terminal.
User Orientation for Successful Integration
• Users must scan the IBLIS specimen label (Sample ID) during test registration in the GeneXpert
software.
• Ensure this is done at the point of creating a new test, where both the cartridge and sample ID are
scanned.
GeneXpert Integration with CIHEB EID/VL System via IBLIS
To enable bidirectional integration between IBLIS and the CIHEB EID/VL system through the
GeneXpert machine, follow the steps below.
1. Configure application.yml in mlab_api
Copy the ciheb_gex_subscription block from the application.yml.example to the application.yml and update the
values as required:
The ciheb_gex_subscription block is like this;
ciheb_gex_subscription:
ciheb_eid_vl_enpoint: "http://<eid_vl_server_ip>:<genexpert_port>/api/v1/subscribe/genexprt"
app_name: "IBLIS"
organization_name: "EGPAF"
iblis_result_endpoint: "/api/v1/interfacer/genexpert"
iblis_ip_address: "192.168.1.1"
iblis_backend_port: 8005
iblis_username: "YourUsername"
iblis_password: "YourPassword"
client_type: "other"
3. Update the following values:
A. ciheb_eid_vl_endpoint: Replace eid_vl_server_ip with the actual IP address of the EID/VL
server, and the port number, should be requested from CIHEB (Gift Malolo)
B. iblis_ip_address: Enter the IP address of the IBLIS server.
C. iblis_backend_port: Confirm that the backend (mlab_api) is running on port 8005. If different,
update accordingly.
D. iblis_username and iblis_password: Use valid IBLIS credentials (the same used for logging into
the system).
4. Subscribe IBLIS to the CIHEB EID/VL System
From within the mlab_api project directory, run the subscribe command provided, and it should not have
any errors: rake gex_sub:subscribe
This registers IBLIS with the CIHEB EID/VL system, enabling result synchronization.
5. Map Genexpert results sent through the subscription to CIHEB with IBLIS measures
• From mlab_api, tail this log: tail -f log/genexpert.log
• Try sending or uploading results from GenExpert, and the genexpert log should show this below:
Edit the mapping file: vim config/gx_mapping.json
{
“cov-2”:{
“id”: 190,
“aliases”:[]
}
}
• From the Genexpert log, locate the measure name under the processing data from CIHEB entry. Add
this measure name to the aliases field in the mapping file. Next, navigate to the Enter Results page
in IBLIS to identify the corresponding measure mapping ID and assign this value under the id
field in the mapping file (similar to the standard mapping process used with the machine driver).
Repeat this process for all possible test results generated by the Genexpert.
• Once the mapping updates are complete, restart the mlab_api service by running sudo systemctl
restart mlab_api.service
• For troubleshooting and validation, refer to the Genexpert log to monitor the processing of
incoming data.
Outcome
• Orders placed in IBLIS and tested on GeneXpert will have results automatically transmitted back to
IBLIS via the subscribe endpoint (/api/v1/interfacer/genexpert).
• Orders placed in the EID/VL system and tested on GeneXpert will likewise receive results
automatically, ensuring seamless integration and synchronization between both systems.
Testing the Integration
• Register a test in IBLIS
• Scan the Sample ID in GeneXpert during test setup
• Run the test and allow it to complete
• Check IBLIS to verify if the result has been correctly fetched and matched
No Comments