Professional Documents
Culture Documents
VF DOC ADC 1301 VF Service Release Notes Rev.A17
VF DOC ADC 1301 VF Service Release Notes Rev.A17
1301
Page 1 / 25
Guide No.1301
Revision History
Rev. Date Author Change Description
A03 Jun-16, 2021 Simon Liu New release of version 3.6.2.5 which fixed from
3.6.2
A11 Sep-24, 2021 Simon Liu New Release 3.10.6 from 3.10.5
A12 Nov-5, 2021 Simon Liu Release Hotfix 3.10.3.1 from 3.10.3.
A13 Nov-22, 2021 Simon Liu New Release 3.11.0 from 3.10.6.
A15 Dec-20, 2021 Simon Liu New Release 3.11.1 from 3.11.0
A16 Jan-17, 2021 Simon Liu New Release 3.11.2 from 3.11.1
Page 2 / 25
Guide No.1301
Table of contents
Page 3 / 25
Guide No.1301
Page 4 / 25
Guide No.1301
1. Introduction
The guide is released on Teams channel Published, so, you could find the latest
NOTES:
And Version 2.x will be frozen by the end of this year (2021).
Page 5 / 25
Guide No.1301
About EMV workflow, Tags and Values, there is another guide No.1102 about the details.
You could find Guide no.1102 from teams channel X990 Public Projects/VF-Service, folder Published
2.2 Others
2.2.1. ROM
Both Android 5 and Android 7 are support. Usually, there is no require on the ROM version.
And supports Android 10 from Version 3.10.5.
The Security Driver to handle / manage the device about the transaction, such as card readers, printer, etc.
Also crypto is included in the security driver.
Page 6 / 25
Guide No.1301
3.1.1. Teams
https://teams.microsoft.com/l/channel/19%3a01451b8e9c3240e899a63057ffa03f45%40thread.tacv2/VF-
Service?groupId=e19f5c97-3f19-4dfe-b745-fb2172cd3d27&tenantId=611a22d6-8c40-4958-84e3-
ce47d8205d98
3.1.2. Confluence
https://confluence.verifone.com:8443/display/ASPACPM/SDK+for+X990+and+Demos
Updated to version 3.6.2 & 2.22.3 and stop update more due to development team cannot edit / access the
package due to restrict permission was launched.
3.1.3. Redmine
https://redmine.verifone.cn/redmine/projects/devhome/wiki/2-Develop-SDK
Version updated to 3.6.4 & 2.23.3
VF-Service released without signed, So, need you signed the APK with your USB Key before installing it to
production terminals.
For Debug terminal, APK without signed can be install by using the adb command.
Page 7 / 25
Guide No.1301
#2, Fixed the issue that cannot get the correct card type while using
ISmartCardReaderEx::search(). And fixed the issue that failed on write(). And fixed the issue
that powerUp() cannot tell the correct status. And fixed the issue about card cannot be
used after removed the card before powerDown().
#3, Fixed the issue that API ISerialPort::close() return false always.
#5, Fixed the issue about printer cannot work as expected while calling startPrint()
continuous without waiting print finished. The second startPrint will be blocking and not
be started until the first one finished.
Enhancements:
#1, Supports change 9F15 while onConfirmCardInfo().
Page 8 / 25
Guide No.1301
Enhancements:
N/A
#2, Fixed the issue that VF-Service takes much storage in case of calling API
UpdateAID() or UpdateRID() from multi-threads parallelly.
#3, Fixed the issue that API getFirmwareVersion() cannot tell the Firmware correctly
on X990 V4 (Android 10).
New Features:
#1, New API Bundle getDeviceInfoEx(in Bundle extrend) from IDeviceInfo to read the
BootVersion (Aboot version)
Page 9 / 25
Guide No.1301
#2, Fixed the issue that crash happened while calling updateRID / updateAID in EMV
working follow.
New Features:
#1, Supports keep disable taskbar even after power cycle once call the API
setSystemFunction with STATUSBARKEY=false for single time. In another words, the
configuration will be kept by the ROM till there’s a new configuration be set.
#4, Supports change the TAC for Contact Card. Please using the same way to set it as
for Contactless Card.
Page 10 / 25
Guide No.1301
Page 11 / 25
Guide No.1301
NOTES:
This is the version ready for Android 10.
Known issue on Android 10:
1#, IDeviceInfo.getDeviceInfo() takes more time on some sample Android 10 units due to some model doesn’t
have MEID. The issue will be fixed on next version.
NOTE:
This is a hotfix version for Brazil partner.
Version 3.10.3.1 from 3.10.3
Release date Nov-5, 2021
Page 12 / 25
Guide No.1301
Revision #1. Fixed the issue that crash happened while calling UpdateRID() in EMV callback
onConfirmCardInfo()
Comment
Download link Verifone access:
X990Service_PermissionOn_3.10.3.1_211105_BR.7z
Page 13 / 25
Guide No.1301
4.10Version 3.10.1
Version 3.10.1 from 3.10.0.0004, merge new features & fixed on 3.6.2.5
Release date Jun-25, 2021
Revision #1. New feature to load XML to select/change the EMV Kernel.
#2, Fixed the issue that get incorrect KSN when K21 was updated from 192 to 2.04 or
higher.
#3. Fixed that getting card number error when swipe 19 digits card on K21 2.0.4
#4, Add error message (0xFF, Other error) while using PinPad but Pin Key is not
injected.
#5, Supports X990 V2 2nd source component.
#6, New API to get the EMV Kernel version. getCtlsSpecVer defined in IEMV.aidl
#7, New feature supports Ultra-Light card, IUltraLightCard for more details.
#8, New feature support RSA, IRSA for more details.
Comment
More about #1,
Save and copy the following file to /sdcard/verifone/VFService/CTLSKernelCfg.xml
<?xml version="1.0" encoding="utf-8"?>
<CTLSKernel>
<!-- (Master) 0 - 3.1 ver(default), 1 - 3.1.2 ver -->
<MASTER>0</MASTER>
<!-- (AMEX) 0 - 3.1 ver (default), 1 - 4.0.2 ver -->
<AMEX>1</AMEX>
<!-- (JCB) 0 - 1.3 ver(default), 1 - 1.4 ver -->
<JCB>0</JCB>
</CTLSKernel>
4.11Version 3.6.2.5
Page 14 / 25
Guide No.1301
Revision #1. Compatibility of DUKPT key, fix KSN get incorrect when K21 update from 192 to
2.04 or higher.
#2. Fixed that getting card number error when swipe 19 digits card on K21 2.0.4
#3. Add an error message when POS doesn’t exist PIN key
Comment
4.12Version 3.10.0.0004
4.13Version 3.6.4
Page 15 / 25
Guide No.1301
You could config the file to Verifone.zip and use the installer to install it.
4.14Version 3.6.2
Version 3.6.2
Release date Mar-10, 2021
Revision #1.Fixed key loss caused by upgrading Service
Comment
Compatibility issue was fixed on K21 2.04, So, while using ROM 2019, please
upgrade the K21 to 2.04 or higher.
There's the packages archived the K21 version 2.04 in the shared folder
X990Service_PermissionOff_3.6.2-With-K21-2.04.7z
X990Service_PermissionOn_3.6.2-With-K21-2.04.7z.7z
4.15Version 3.5.2
Version 3.5.2
Page 16 / 25
Guide No.1301
4.16Version 3.1.0
Version 3.1.0
Release date Dec-16, 2020
Revision #1. Scanner, add API to support custom UI function
#2. Fixed the issue about serial RS232 that reading or writing failed in case of
connect/disconnect for many times
Comment & or custom UI of the scanner, pleaser refer the development guide for more details,
Notes
void com.vfi.smartpos.deviceservice.aidl.IScanner.scannerInit ( in Bundle param )
Custom UI by customers.
Parameters
param
customUI(boolean) default value is false
x1(int) vertex coordinates x1, default is 0
y1(int) vertex coordinates y1, default is 0
width(int) if customUI is true, default is full screen
height(int) if customUI is true, default is full screen
Download link
4.17Version 3.0.2
Version 3.0.2
Release date Dec-11, 2020
Revision #1. Add get vrksn interface
#2. Dukpt slots up to 100 -- K21 should upgrade to version 2.0.4 or higher
Page 17 / 25
Guide No.1301
getDeviceInfo()
Bundle com.vfi.smartpos.deviceservice.aidl.IDeviceInfo.getDeviceInfo ( )
Get all of infomation about device.
Returns
bundle
SN(String) Serial No
PN(String) Product No
IMSI(String) International Mobile Subscriber Identity
IMEI(String) International Mobile Equipment Identity
MEID(String) Mobile Equipment Identifier
manufacture(String) get manufature message
deviceModel(String) get device model
androidOsVer(String) get android OS version
androidKernalVer(String) get android kernel version
romVer(String) get rom version
firmwareVer(String) get firmware version
hardwareVer(String) get hardware version
k21Ver(String) get k21 version
VFSerivceVer(String) get VFService version
VRKSn(String) get VRK sn
SponsorID(String) get sponsor id
Download link
Page 18 / 25
Guide No.1301
NOTES:
Page 19 / 25
Guide No.1301
Version 2.23.3
Release date Apr-30, 2021
Revision #1. fix the problem of printing on x990-T. Printing is very light while using the previous
version.
Comment
Download link Verifone access:
X990Service_PermissionOff_2.23.3_210430.zip
Redmine,
Version 2.23.2
Release date Apr-22, 2021
Revision 1.EMV parameter add interface UpdateGroupParam
2. Add UseMaxResolution and StartPreview
3. Support bypass all PIN (if there are two off-line pins, if the first one is passed, then
the second one will bypass),SetIsByPassAllPin (), getIsByPassAllPin ()
4. PinPad add parameter PinFormatType which supports Format1, 2, 3 algorithms
5. Support for selecting the kernel spec version
Comment
Download link Redmine
Page 20 / 25
Guide No.1301
Version 2.22.3
Release date Jan-21, 2021
Revision #1. Fixed the problem of getting KSN all 0 after modifying pinpad encryption
#2. Modifying dukpt to get internal logic of KSN
Comment
Download link
Version 2.21.0
Release date Now-25, 2020
Revision #1. Fixed the issue that in some case Debug version no EMV log dumped
#2. Update the official SDK version
#3. Merge the screenshot printing function branch
#4. Fixed the issue that receive serial port data timeout happend while data be found
#5. Update open source serial port library AAR driver to support more RS232 devices
#6. Fixed the issue of dukpt keyId hard code to 1 when get dukptKSN.
Comment Once the security driver (K21) upgrade to upgrade 193 & 046, need upgrade the VF-
Service to the version 2.21.0 or higher.
Download link
Version 2.20.6
Release date Nov-16, 2020
Revision #1. fix the cache to print
Comment
Download link
Version 2.20.5
Page 21 / 25
Guide No.1301
5.10Version 2.20.3
Version 2.20.3
Release date Sep-4, 2020
Revision #1. EMV check card add M1 card error type: M1_CARD_UNSUPPORT_EMV_ERROR(7)
in CheckCardListener onError
#2. Serial port supports more usb2rs232 device, refer getSerialPort for more details
#3. Support India RuPay kernel,
#4. Scanner supports Honeywell library, but need you charge of the feature.
"SmartEMV", "v0.0.1.0"
"Visa", "v0.0.1.0"
"MasterCard", "v0.0.1.1"
"JCB", "v0.0.2.0"
"AMEX", "v0.0.2.0"
"Discover", "v0.0.1.0"
"QuickPass", "v0.0.1.0"
"GemaltoPure", "v0.0.1.0"
"RuPay", "v0.0.1.0"
-----
"SmartEMV", "v1.0.0"
"Visa", "v1.00"
"MasterCard", "v1.0"
"JCB", "v1.00"
"AMEX", "v1.0.0"
"Discover", "v1.0.1"
"QuickPass", "EMV4.3e-V1.0.0"
"GemaltoPure", "2.1.8"
Page 22 / 25
Guide No.1301
Download link
5.11More version
Page 24 / 25
Guide No.1301
Annex A. FAQ
For the Permission Off package, application can use all the devices provided by the VF-Service.
But for the Permission On package; application needs to be signed with the USB key assigned a permission
description list file.
So, one app signed with permission printer or other devices described in AIDL file can only use the signed-
device and cannot use the other devices.
Other apps need to be signed with all devices in case the app needs to use all devices.
Page 25 / 25