Table of Contents
- Overview
- Comm Type
- Port
- Baud Rate
- Model Name
- Serial Number
- VCOM/USB Drivers
- Configuring the Payment Device SDK Server config file
- Common Errors
- How To Access Maintenance Mode
Overview
The following article is to assist in setting up the Ingenico iSelf with NMI's Payment Device SDK, and how to fill in the various Payment Device SDK Server settings when connecting via serial or VCOM/USB.
Comm Type
The iSelf can be set-up to connect via a number of connection methods, notably RS-232 (serial), and VCOM/USB. For a successful connection, the iSelf will have to be set to the correct connection method, and can be carried out in the following manner:
RAM:
- Enter Maintenance Mode
- Select RA1
- Enter device password
- Select the correct comm. method (RS-232 or VCOM/USB).
RBA:
- Enter Maintenance Mode
- Select TDA
- Select Configuration
- Select Communication
- Select the correct comm. method (RS-232 or USB<>Serial Conv).
After you have setup the device for the correct comm. method, you will then need to modify the Payment Device SDK Server config Protocol section to the following:<Protocol>serial<Protocol>
Port
To initiate a connection to the device via Serial, VCOM, or USB, you will need to specify what port the host machine has assigned to the device.
Serial:
VCOM/USB:
After you have confirmed what port the device has been assigned, you will need to modify the Payment Device SDK Server config Port section. In the example below, we're basing the COM10 port on the VCOM/USB connection above:<Port>COM10</Port>
Baud Rate
This is only relevant to serial connections, and not VCOM/USB. The baud rate of the device should be set to the highest recommended by the device distributor or manufacturer. Once confirmed, you can set the baud rate on the device in the following manner:
RAM:
- Enter Maintenance Mode
- Select RA1
- Enter device password
- Select the correct comm. speed.
RBA:
- Enter Maintenance Mode
- Select TDA
- Select Configuration
- Select Communication
- Select Serial Settings
- Select Baud Rate
- Select the correct comm. speed.
Once the device comm. speed has been set on the device, you will need to modify the Payment Device SDK Server config Baud section to match. As an example, if the device is set to 115200, you would set the Payment Device SDK config to the following:<Baudrate>115200</Baudrate>
Model Name
NMI support three variants of the Ingenico iSelf:
- Ingenico iSelf RAM for European markets.
- Ingenico iSelf RBA for American markets.
- Ingenico iSelf CPX for Canadian markets.
Please note that as of the release of the Ingenico iSelf V4 there are now additional model strings for RBA variants, as noted below by the addition of LE
in the model name.
If you are unsure which model of iSelf you have, it is always best to check with your device distributor, who will be able to confirm the exact model you have received.
Once you have confirmed the iSelf model you are using, you will need to modify the Payment Device SDK Server config Model section to one of the following:<Model>Ingenico-iSelf-RAM</Model>
<Model>Ingenico-iSelf-RBA</Model>
<Model>Ingenico-iSelfLE-RBA</Model>
<Model>Ingenico-iSelf-CPX</Model>
Serial Number
Checking the serial number differs for each iSelf model, and will need to be obtained and set within the Payment Device SDK Server config before the device is able to connect. You can find the serial number in the following locations on the specified models:
The RAM variant of the iSelf's serial number can be seen on the idle information screen when the device first starts up:
In this instance, the Id section of the Payment Device SDK Server config file would read the following:<Id>0080071442</Id>
The RBA variant serial number can be found on the rear of the device on a separate sticker:
In this instance, the Id section of the Payment Device SDK Server config file would read the following:<Id>7315006UN070053</Id>
If the RBA device has not been injected with keys, the device serial number can be found on the rear of the device on the Ingenico certified sticker:
In this instance, the Id section of the Payment Device SDK Server config file would read the following:<Id>20044432</Id>
VCOM/USB Drivers
If you are connecting the iSelf via VCOM/USB on Windows, you will need to install the Ingenico USB device drivers. NMI cannot provide these drivers, and we would always recommend getting in contact with your device distributor or the device manufacturer to ensure you have the most recent and correct drivers for your device.
VCOM/USB support on Linux is heavily dependant on your chosen Linux distro's driver support, as Ingenico does not supply a Linux driver. It is typically recommended to use an RS-232 (serial) or Ethernet connection when using an iSelf with Linux if driver support is unknown on your chosen distro.
Configuring the Payment Device SDK Server config file
Please take note of the following changes within the Payment Device SDK config file:
Model
tag needs to be updated to correctly reflect the Ingenico iSelf model in-use:
Ingenico-iSelf-RBA
Ingenico-iSelf-RAM
- Add the
ID
of the Ingenico iSelf (serial number) as documented in the Integration Guide. Protocol
tag needs to be set to serial.Port
tag needs to be set to the value that matches the COM port assignment.Baudrate
tag needs to be set to the highest recommended value by the device manufacturer.Parity
tag should be left as default unless otherwise instructed by NMI support.Stopbits
tag should be left as default unless otherwise instructed by NMI support.Databits
tag should be left as default unless otherwise instructed by NMI support.- If you are changing the config file over from Ethernet to Serial or VCOM/USB, the following tags are not needed:
Address
. - Save the file.
Example config:
<?xml version="1.0" encoding="utf-8"?> <ChipDnaServer version="1.0.0"> ... <Terminals> <Terminal> ... <PaymentDevices> <PaymentDevice> <Model>Ingenico-iSelf-Model</Model> <Id>012345678</Id> <Protocol>serial</Protocol> <Port>COM10</Port> <Baudrate>115200</Baudrate> <Parity>none</Parity> <Stopbits>1</Stopbits> <Databits>8</Databits> <StandbyMessage>ChipDNA</StandbyMessage> </PaymentDevice> </PaymentDevices> </Terminal> </Terminals> ... </ChipDnaServer>
Common Errors
The following connection-related errors are normally an indicator that either the Ingenico iSelf or the Payment Device SDK Server config file has not been setup correctly. If you see these errors within the Payment Device SDK Server console window or log files, please review your Payment Device SDK Server config and device settings, and if the issues persist, please get in contact with our support team.
Date Time INFO ChipDNA [Ingenico-iSelf-Model, SerialNumber] [Disconnected] HeartBeatLoop Connection
Date Time INFO ChipDNA [Ingenico-iSelf-Model, SerialNumber] [#ggb, #yk] Connecting
Date Time WARN ChipDNA [Ingenico-iSelf-Model, SerialNumber] Connection Error: Error Code: UNABLE_TO_OPEN_CONNECTION
Date Time INFO ChipDNA [Ingenico-iSelf-Model, SerialNumber] [DeviceIngenico, #yk] Connecting
Date Time INFO ChipDNA [Ingenico-iSelf-Model, SerialNumber] [DeviceIngenico, #Fab] Sending command
Date Time INFO ChipDNA [Ingenico-iSelf-Model, SerialNumber] [DeviceIngenico, #C9] Link setup required
Date Time WARN ChipDNA [Ingenico-iSelf-Model, SerialNumber] [DeviceIngenico, #C9] Link setup NO ACK
Date Time WARN ChipDNA [Ingenico-iSelf-Model, SerialNumber] [DeviceIngenico, #C9] Link setup NO ACK
Date Time WARN ChipDNA [Ingenico-iSelf-Model, SerialNumber] [DeviceIngenico, #C9] Link setup NO ACK
Date Time WARN ChipDNA [Ingenico-iSelf-Model, SerialNumber] [DeviceIngenico, #C9] Link setup timeout
Date Time INFO ChipDNA #lc.#kc: PaymentDeviceAvailabilityChangeEvent -> Parameters:
[ Key: PAYMENT_DEVICE_MODEL, Value: Ingenico-iSelf-RAM ],
[ Key: PAYMENT_DEVICE_IDENTIFIER, Value: WrongSerialNumber ],
[ Key: IS_AVAILABLE, Value: False ],
[ Key: AVAILABILITY_ERROR, Value: DeviceIdMismatch ]