How to connect
NextRad Workstation to your PACS.
Written for the PACS administrator. Every statement about what the Workstation does was taken from its source; where another vendor's screens differ, the generic step is given and marked. Facts as of Workstation 2.5.0.
For the PACS administrator or IT person who sets up NextRad Workstation 2.5 (Windows 10/11, Windows 7/8 legacy build, macOS, Linux) against an existing PACS — Orthanc, dcm4chee, Conquest, Horos/OsiriX, or a vendor PACS (GE, Siemens, Philips, Fuji Synapse, Carestream, Sectra, Agfa …). Basic DICOM knowledge (AE title, C-ECHO, C-STORE, C-FIND, C-MOVE) is assumed.
Where vendor user interfaces differ, this guide gives the generic step ("add a DICOM node") — the menu names vary by product and version. Anything not taken from the Workstation's code is marked "(verify)".
1. What you need from each side
The Workstation is one DICOM application entity: one AE title, one TCP port, and it listens on every network address of the PC. Everything is in Settings — tray icon → Settings…, or http://127.0.0.1:8130/settings on the PC itself (the page only answers on the PC; if 8130 was taken the Workstation uses 8131–8139 and the page header shows the port in use).
| The Workstation's side | Default | Where to read it |
|---|---|---|
| AE title | NEXTRAD | Settings → DICOM receiver → AE title |
| Port | 11112 | Settings → DICOM receiver → Port |
| IP address(es) | — | Settings → Query / retrieve server → "Other nodes reach this workstation as: AE title … · port … · ip or ip" (every non-loopback IPv4 of the PC) |
The same AE title and port serve receiving (C-STORE), the Q/R server (C-FIND/C-MOVE/C-GET) and C-ECHO. Changing the AE title or port restarts the receiver (Save and restart receiver). Port 104 needs the app to run as administrator on Windows; 11112 does not.
| The PACS's side | Ask your PACS administrator for |
|---|---|
| AE title | the PACS's own called AE title (the one it answers to) |
| Host | its IP address or DNS name |
| Port | its DICOM listening port (often 104, 4242 or 11112) |
| Retrieve method | whether it supports C-GET, or C-MOVE only (most are C-MOVE only) |
2. Direction A — modalities and the PACS send studies TO the Workstation
Register the Workstation on the sender. On the modality or PACS, add a destination / DICOM node / remote AE with the three Workstation values: AE title NEXTRAD (or what you set), the PC's IP, port 11112. The Workstation does not check the called AE title: a sender configured with a wrong called AET still gets its images stored, and the log notes the mismatch.
What the receiver accepts. C-ECHO always. C-STORE for every storage SOP class (the whole 1.2.840.10008.5.1.4.1.1.* tree) and private SOP classes; files are stored as received, with no transcoding. Accepted transfer syntaxes: Explicit VR LE, Implicit VR LE, Explicit VR BE, Deflated Explicit VR LE (inflated to Explicit VR LE on arrival), JPEG Baseline, JPEG Extended, JPEG Lossless (Process 14 and 14/SV1), JPEG-LS lossless and near-lossless, JPEG 2000 lossless and lossy, RLE. A sender that offers none of these for a SOP class gets that presentation context refused ("transfer syntaxes not supported") and the refusal is logged. The Workstation answers as implementation version NEXTRAD_WS_2_0.
Calling-AE allow-list. Settings → DICOM receiver → Allowed calling AE titles: empty (the default) accepts every calling AE title. When filled (comma-separated, case-insensitive), any other caller is rejected at the association with reason "calling AE title not recognised", and the log says rejected <AET>@<ip>: not in the allowed list. Leave it empty unless you must lock the Workstation to named modalities. Remember that a PACS delivering a C-MOVE (section 3) is also a caller: if the list is on, the PACS's AE title must be in it.
Windows Firewall. The installer (both the Windows 10/11 and the Windows 7/8 legacy installer) adds an inbound rule named "NextRad Workstation (DICOM server)": allow, program = <install folder>\NextRad Workstation.exe, profile = any (domain, private and public). It is matched by program, not by port, so a port changed later in Settings keeps working. The uninstaller removes the rule. The per-machine install runs elevated, which netsh needs.
If a third-party firewall or a corporate policy blocks inbound connections, or the rule is missing: add an inbound allow rule for that program (or for TCP port 11112) yourself. The same inbound opening is needed for C-MOVE retrieves in section 3 — the images come back on a new connection from the PACS to the Workstation's port. A quick check from the PACS side is a C-ECHO to the Workstation (below): "connection refused" or a timeout with the receiver running is a firewall.
macOS / Linux. The Workstation does nothing to the firewall on these platforms. If the macOS Application Firewall is on, allow incoming connections for NextRad Workstation when macOS asks on the first inbound connection, or add it under System Settings → Network → Firewall → Options (verify). On Linux, if a host firewall is active, allow inbound TCP on the port — e.g. ufw allow 11112/tcp or a firewall-cmd --add-port=11112/tcp --permanent rule, depending on the distribution (verify).
Test.
- From the PACS (or a modality's service menu), C-ECHO the Workstation. The Status row in Settings must read
receiving as NEXTRAD on port 11112; if it saysreceiver stopped: …fix that first (section 8). - Send one study. It appears in the viewer's study list (tray → Open viewer) within seconds; the tray tooltip and the Settings Status row count it (
N studies · M images). Sending the same study again replaces the files — no duplicates. - If the counters rise but nothing shows, see "Studies arrive but do not show" in section 8.
3. Direction B — the Workstation queries and retrieves FROM the PACS
Add the PACS as a DICOM node. Two places, same list:
- Settings → DICOM nodes (query / retrieve) → Add node: Name, AE title, Host / IP, Port (the dialog proposes 104), Retrieve method C-MOVE (default) or C-GET, and a Test query field.
- In the viewer: study list → the gear button (Servers & settings) → the "Servers — PACS & Cloud" dialog → under the NextRad Workstation card, DICOM nodes (classic AE title / IP / port) → Add node → Add & test. Nodes added here are saved at once (no Save needed), default to C-MOVE, and are C-ECHOed immediately. The retrieve method can only be changed on the Settings page.
Test (C-ECHO). The dialog's Test (C-ECHO) reports <AET> answered C-ECHO in N ms, or one of: cannot connect to <host>:<port> (no answer in 5 s) — is the PACS on, and the port right? (wrong host/port, PACS down, firewall); association rejected (calling AE title not recognised) — check the AE titles (the PACS does not know the Workstation's AET, or the called AET is wrong); associated, but no C-ECHO answer within 10 s.
Find (test query). Runs a Study Root C-FIND at STUDY level with the patient-name pattern (* by default, wildcards allowed), stops after 25 answers (C-CANCEL) and lists patient, ID, date, modality, description and image count. The Workstation queries Study Root only; a Patient-Root-only PACS is reported as does not accept Study Root queries.
C-MOVE vs C-GET. The settings page says it in one line:
C-MOVE needs this workstation registered on the remote PACS as AET NEXTRAD at
<ip>:11112(or<ip>, …, same port). C-GET needs nothing there, but not every PACS offers it.
- C-MOVE (default) works with every PACS, but the PACS must have the Workstation configured as a destination with the exact AE title, IP and port (section 2). The PACS opens a new connection to the Workstation's receiver to deliver the images — so the receiver must be running, the port must be open inbound, and if the calling-AE allow-list is on, the PACS's AE title must be in it. Before a C-MOVE the Workstation checks the last two itself and refuses with a plain message instead of asking the PACS.
- C-GET pulls the images back over the Workstation's own connection: nothing to register on the PACS, nothing inbound to open. It proposes every accepted transfer syntax so the PACS can send its compressed files as they are. Many PACS do not implement C-GET; if the node is set to C-GET and the PACS refuses the service, the Workstation says so and retries that retrieve by C-MOVE once (the node's setting is left as it is).
Querying from the viewer. Study list → Q/R tab → pick the PACS (listed as "<name> (DICOM node)") → Test (C-ECHO) → fill Patient name, Patient ID, Study date (YYYYMMDD or a YYYYMMDD-YYYYMMDD range), Accession, Modality → Search. A query that takes more than 60 s is cancelled ("narrow the search"). Retrieve & open retrieves the study into the Workstation's own store (C-MOVE to the Workstation's own AE title, or C-GET per the node) and opens it in a new viewer tab from that store. From then on it is a local study: it is listed in the study list, served to the viewer, and can be sent on (section 4). The Add PACS → "DICOMweb (URL + login)" choice on the Q/R tab is Orthanc-only and does not work inside the Workstation (it answers 404 Not Found); for DICOMweb use section 6.
The retrieve's own messages name the fix: <PACS> does not know the AE title NEXTRAD (status A801). Register this workstation on that PACS as NEXTRAD at <ip>:<port>, then try again. — <PACS> accepted the C-MOVE but could not deliver the images to this workstation (status A702). On <PACS> check that AET NEXTRAD points at this PC (<ip>:<port>) and that the port is open in the firewall. — <PACS> sent no images (N failed sub-operations …).
4. Sending a study from the Workstation to a PACS
In the study list (the Workstation's own studies, not the Local tab) each row has Send…; in the viewer the same Send to… dialog can offer one series instead of the whole study. The dialog lists the configured DICOM nodes (section 3) with a Send button each. Composites built in the viewer (a stitch, a crop) exist only in the page and are not offered.
What happens: the Workstation itself opens a C-STORE association to the node and sends the files as stored — per SOP class it offers the file's own transfer syntax plus Explicit VR LE (Implicit VR LE is also on the context). Implicit ↔ Explicit VR LE re-encoding is done when needed; a compressed file whose syntax the PACS refuses is not decompressed — it counts as one failed instance with the reason (<AET> accepts SOP class … only as …; the file is … and is not transcoded) and the rest of the study still goes. A SOP class the PACS refuses outright is reported the same way. Sends to the same node run one at a time (a second one waits as Pending). A very mixed study (more than ~100 SOP class / syntax pairs) is split over several associations automatically.
Progress: a bar and a status line per job (Starting → Pending → Running → Success or Failure, with sent / failed counts), polled every second. The job runs in the Workstation — closing the dialog does not stop it, and reopening it shows where it got to. Association failures use the same words as the node tests (Could not associate with <AET> at <host>:<port>. Check the node is on and the AE title, host and port are correct., rejected the association (…) — check the AE titles.). A job with any failed instance ends as Failure with N of M instances not sent to <AET> — <reason>. One summary line per send is written to workstation.log (tray → Open log).
On the PACS side the Workstation is the calling AE: if the PACS only accepts C-STORE from known nodes, register the Workstation there first (section 2).
5. The PACS also querying the Workstation
Settings → Query / retrieve server → Allow other nodes to query and retrieve (default ON; takes effect from the next association, no restart). The hint on the page:
Other PACS and workstations can search this workstation (C-FIND) and pull studies from it (C-GET, or C-MOVE to a node listed under DICOM nodes). The allowed calling AE titles above still apply.
What it answers, on the same AE title and port:
- C-FIND, Study Root and Patient Root, at PATIENT / STUDY / SERIES / IMAGE level: single values,
*/?wildcards, date/time ranges, UID lists, empty return keys; patient names are matched case-insensitively. Query identifiers are accepted in Explicit VR LE, Implicit VR LE or Explicit VR BE. - C-GET: the images go back over the caller's own association, as stored.
- C-MOVE: the destination AE title must match a node listed under DICOM nodes (case-insensitive) — that is the only way the Workstation knows the destination's host and port. Any other destination is refused with A801 (move destination unknown). A listed node that cannot be reached gets A702; individual refused images give B000 with the failed SOP instance UIDs. So for "PACS pulls from Workstation by C-MOVE", add the PACS (the destination) as a DICOM node even if you never query it.
With the toggle OFF the Q/R presentation contexts are refused; receiving still works. The allow-list of section 2 applies to these callers as well.
6. Connecting over DICOMweb instead
If the PACS exposes QIDO-RS / WADO-RS (Orthanc with the dicom-web plugin, dcm4chee-arc-light, most modern vendor PACS), the viewer can browse and open studies from it directly, with no AE titles and nothing inbound:
Study list → gear (Servers & settings) → Add server: Name, Server URL (e.g. https://pacs.example.com), Username, Password → Sign in & test → Save. The DICOMweb roots are derived from the URL: <origin>/dicom-web unless the URL already ends in /dicom-web; Advanced lets you set the QIDO-RS root, WADO-RS root, an Orthanc REST root (for classic Q/R through that Orthanc), or a raw token / header (Bearer …). Sign in & test probes <origin>/api/user/login: a NextRad PACS answers with a token (Bearer / JWT); a plain DICOMweb server with no login service (404/405) is used with HTTP Basic from the username and password; 401/403 means wrong credentials; "Couldn't reach <origin>" means the URL, network, TLS or CORS blocked the request. Credentials are kept in the viewer's local storage on that PC (Basic auth is base64, not encryption).
Studies from a DICOMweb server are viewed from that server and are not copied into the Workstation's store, so Send… does not apply to them. The viewer page is served from http://127.0.0.1:<port>, so the remote server must accept cross-origin (CORS) requests from that origin and should be reachable over HTTPS from the PC; the Workstation does not configure either side of that (verify on your server). Prefer DICOMweb when the PACS is behind NAT or a firewall you cannot open, or when no AE registration is possible; prefer the DICOM node (section 3) when the study must land in the Workstation's own store.
7. Worked examples
Values below use AET NEXTRAD, PC address 192.168.1.50, port 11112.
Orthanc. In orthanc.json, add the Workstation to DicomModalities (name, AET, host, port) and restart Orthanc:
"DicomModalities" : {
"nextrad" : [ "NEXTRAD", "192.168.1.50", 11112 ]
}
Orthanc then accepts C-FIND / C-MOVE from it and can C-MOVE to it. In the Workstation add a node: AE title = Orthanc's DicomAet (default ORTHANC), Host = the Orthanc server, Port = its DicomPort (default 4242), Retrieve = C-MOVE (C-GET also works on recent Orthanc versions — verify). The same entry can be made in Orthanc Explorer / the REST API instead of the file (verify).
dcm4chee-arc-light. In the archive UI, under AE management / device configuration, add a remote Application Entity (or a device with one AE) for the Workstation: AE title NEXTRAD, hostname 192.168.1.50, port 11112 (verify the exact pages). In the Workstation add a node with the archive's AE title (default DCM4CHEE), host and DICOM port (default 11112) (verify defaults), Retrieve = C-MOVE (dcm4chee also offers C-GET — verify).
Conquest. Add a line to acrnema.map (AE title IP port compression):
NEXTRAD 192.168.1.50 11112 un
and restart or reload Conquest (verify). Node in the Workstation: Conquest's MyACRNema AE title, host, TCPPort, Retrieve = C-MOVE.
Horos / OsiriX. Preferences → Locations → add a DICOM node: AE title NEXTRAD, address 192.168.1.50, port 11112, and allow retrieves to it (verify). Node in the Workstation: the AE title and port from Horos's Listener preferences, host = the Mac's IP, Retrieve = C-MOVE.
Vendor PACS (GE, Siemens, Philips, Fuji Synapse, Carestream, Sectra, Agfa). Send the PACS team this request:
Please add a DICOM node / remote AE: AE title NEXTRAD, IP 192.168.1.50, port 11112, and allow C-ECHO, C-STORE, C-FIND and C-MOVE from this AE, with C-MOVE retrieves to it. Please send back the PACS's AE title, IP and port, and whether C-GET is supported.
Then add the PACS as a node in the Workstation with the three values they return, Test (C-ECHO), Find (test query), and retrieve one small study.
8. Troubleshooting
- No answer to C-ECHO (
cannot connect to host:port): wrong host or port, the PACS is off, or a firewall between them. Ping the host, confirm the DICOM port with the PACS admin. - Association rejected / "calling AE title not recognised": from the Workstation's test — the PACS does not know AET
NEXTRAD(or the called AET you typed is wrong); register the Workstation there. From a modality sending to the Workstation — the Workstation's allow-list is on and does not contain that AET (rejected X@ip: not in the allowed listin the log). - C-FIND works but C-MOVE returns nothing / A801 / A702: the PACS does not know the Workstation's AET, or has a different IP or port for it, or the Workstation's port is closed inbound, or the allow-list refuses the PACS. Compare the PACS's entry with Settings → "Other nodes reach this workstation as", and check the receiver is running. Or switch the node to C-GET if the PACS supports it.
- C-GET refused (
does not offer C-GET): the PACS has no C-GET — set the node to C-MOVE and register the Workstation on the PACS. (The Workstation already retries that one retrieve by C-MOVE when it can.) - Studies arrive but do not show: check the counters (tray tooltip, Settings Status) — if they rise, press Rebuild index and reload the viewer; make sure the study list is on the NextRad Workstation card, not the Local tab or another server. If they do not rise, set Log detail to
debugand look inworkstation.logforparse error storing …(the sender was answered C000) ordisk error …(A700: disk full or permissions on the store folder). - Several IP addresses on the PC (Wi-Fi + Ethernet + VPN): Settings lists them all; give the PACS the one on its own LAN. A DHCP address that changes breaks C-MOVE later — use a fixed IP or a DHCP reservation for the PC.
- Port in use (
receiver stopped: … EADDRINUSE): another DICOM application on the PC listens on that port — stop it or change the Workstation's port (and update every sender).EACCESon port 104 means the app is not running as administrator; use 11112. - Send fails for some images only: the PACS refused the SOP class or the compressed transfer syntax; the job's error names it. The Workstation does not decompress — ask the PACS admin to accept that syntax, or have the modality send uncompressed to the Workstation.
9. Quick checklist
- Settings → Status shows
receiving as <AET> on port <port>. - Noted the Workstation's AE title, port and the IP on the PACS's LAN.
- Workstation registered on the PACS as a DICOM node with those three values.
- Firewall rule "NextRad Workstation (DICOM server)" present (Windows), or the port opened by hand.
- C-ECHO from the PACS to the Workstation succeeds.
- One study sent to the Workstation appears in the study list.
- PACS added as a DICOM node in the Workstation; Test (C-ECHO) green.
- Find (test query) returns studies; retrieve method set (C-MOVE registered, or C-GET supported).
- Retrieve & open from the Q/R tab lands one study in the Workstation.
- Send… of one study reaches the PACS with 0 failed; "Allow other nodes to query and retrieve" set as the site wants.
Facts in this guide were taken from the NextRad Workstation 2.5.0 source on 2026-10-02.