IP Library Granted Patent US 9,483,420
Granted Patent B2
US 9,483,420 · App. 14/193,668 · Granted Nov 1, 2016

Self-service terminal (SST) device driver

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,483,420
App. No.
14/193,668
Granted
Nov 1, 2016
Kind
B2
Abstract

Methods for extensible device drivers and an extensible device driver Self-Service Terminal (SST) are provided. A SST includes an operating system (OS) having a communication port and an application having low-level commands that are specific to a hardware device, which is coupled to the SST; the low-level commands directly capable of being executed by the device. The communication port is operable to relay information and commands (including the low-level commands) between the device and the application. The application directly controls the device, with the low-level commands, and the low-level commands unrecognized by the OS.

Claims (22)

1. A method, comprising:

detecting, on an operating system (OS) processing on a Self-Service Terminal (SST), a presence of a newly coupled device to the SST;

notifying, by the OS, an application of the presence;

establishing, by the OS, a connection between the application and the device in response to a connection command received from the application;

providing, by the OS, to the application an OS communication port Application Programming Interface (API) for communication with the device during the connection, wherein the application uses the connection to the device to act as a soft device driver for the device and issues device-specific commands to the device, the device-specific commands attached or embedded in an OS communication port API command, wherein the application bypasses the OS in issuing the device-specific commands to the device and the device-specific commands are unrecognized by OS; and ignoring, by the OS, the presence when the application is not actively processing on the SST.

2. The method of claim 1 further comprising, updating, by the OS, the application, the update resulting in an update to the device-specific commands.

3. The method of claim 1 , wherein detecting further includes detecting, by the OS, the presence on a Universal Serial Bus (USB) communication port interface that is monitored by the OS.

4. The method of claim 3 , wherein notifying further includes providing, by the OS, the presence to the application as a USB device attached notification.

5. The method of claim 1 , wherein establishing further includes providing, by the OS, the connection as a tunnel between the application and a communication port of the SST to which the device is coupled.

6. The method of claim 1 , wherein establishing further includes terminating, by the OS, the connection when the device is decoupled from a communication port of the SST.

7. The method of claim 1 , wherein establishing further includes terminating, by the OS, the connection when one of: the application is terminated within the OS and the application issues an end connection command.

8. A Self-Service Terminal (SST), comprising:

a processor configured with an application operable to: (i) execute within an operating system (OS) on the SST, (ii) connect to a communication port of the SST to which a hardware device is coupled, (iii) issue device-specific commands to the hardware device during the connection through a communication port Application Programming Interface provided by the OS to direct the device-specific commands from the application to the communication port, wherein the application bypasses the OS in issuing the device-specific commands to the communication port, the device-specific commands are unrecognized by the OS and the device-specific commands are recognized by and processed on the hardware device, and wherein the OS ignores issuing the commands when the application is not actively processing on the SST.

9. The SST of claim 8 , wherein the application is further operable to (iv) process as a soft device driver for the hardware device though the device-specific commands and (v) process as an interface to managing, controlling, and accessing the hardware device through a user Application Programming Interface (API) accessible from the user-application layer of the OS.

10. The SST of claim 8 , wherein the hardware device is inaccessible outside an execution space associated with the application within the OS.

11. The SST of claim 8 , wherein the SST is an Automated Teller Machine (ATM) and the hardware device is media dispenser coupled to the ATM via a Universal Serial Bus (USB) communication port.

12. A method, comprising:

detecting, on an operating system (OS) processing on a Self-Service Terminal (SST), a presence of a newly coupled device to the SST;

notifying, by the OS, an application of the presence;

establishing, by the OS, a connection between the application and the device in response to a connection command received from the application;

providing, by the OS, to the application an OS communication port Application Programming Interface (API) for communication with the device during the connection, wherein the application uses the connection to the device to act as a soft device driver for the device and issues device-specific commands to the device, the device-specific commands attached or embedded in an OS communication port API command, wherein the device-specific commands are unrecognized by OS; and

ignoring, by the OS, the presence when the application is not actively processing on the SST.

Assignments (9)
CORRECTIVE ASSIGNMENT TO CORRECT THE THE PROPERTIES SECTION BY INCLUDING IT WITH TEN PREVIOUSLY OMITTED PROPERTY NUMBERS PREVIOUSLY RECORDED ON REEL 65346 FRAME 367. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Aug 13, 2025
From: NCR ATLEOS CORPORATION; CARDTRONICS USA, LLC
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 072445/0072 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 30, 2024
From: NCR VOYIX CORPORATION
To: NCR ATLEOS CORPORATION
Reel/Frame 067590/0109 →
CHANGE OF NAME Recorded May 30, 2024
From: NCR CORPORATION
To: NCR VOYIX CORPORATION
Reel/Frame 067578/0417 →
CORRECTIVE ASSIGNMENT TO CORRECT THE DOCUMENT DATE AND REMOVE THE OATH/DECLARATION (37 CFR 1.63) PREVIOUSLY RECORDED AT REEL: 065331 FRAME: 0297. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Oct 31, 2023
From: NCR ATLEOS CORPORATION
To: CITIBANK, N.A.
Reel/Frame 065627/0332 →
RELEASE OF PATENT SECURITY INTEREST Recorded Oct 25, 2023
From: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
To: NCR VOYIX CORPORATION
Reel/Frame 065346/0531 →
SECURITY INTEREST Recorded Oct 25, 2023
From: NCR ATLEOS CORPORATION; CARDTRONICS USA, LLC
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 065346/0367 →
SECURITY INTEREST Recorded Oct 24, 2023
From: NCR ATLEOS CORPORATION
To: CITIBANK, N.A.
Reel/Frame 065331/0297 →
SECURITY AGREEMENT Recorded Apr 18, 2016
From: NCR CORPORATION; NCR INTERNATIONAL, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 038646/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 12, 2016
From: HAN, RICHARD; MONAGHAN, ANDREW
To: NCR CORPORATION
Reel/Frame 038413/0223 →