SUSE Linux Point of Service IBM JavaPOS Integration in SLEPOS
Table of Contents
IBM JavaPOS for SLE11
Provide the Kernel Driver for SLE11
Starting IBM POS Subsystem for Linux
Provide the IBM JVM
Starting The IBM POS Control Center
Auto Detection of POS Devices
Save the jpos.xml file
More information about SLEPOS
About the Author
This document describes by way of example the integration of IBM JavaPOS for SLE11 (SUSE Linux Enterprise 11) using an IBM SurePOS 4800-722 cash register system and an IBM4610-T13 POS printer, connected through RS-485 interface. Furthermore it guides how to run and use the JavaPOS test program provided by IBM, the POS Control Center.
JavaPOS (short form “Java for Point of Sale Devices”), is a standard for interfacing Point of Sale (POS) software, written in Java, with specialized POS hardware peripherals typical used in retail or banking system environments. The advantages of JavaPOS are reduced costs for POS terminals, platform independence, and reduced administrative costs to manage the cash register systems. JavaPOS for SLEPOS11 is available for cash register systems from IBM, Wincor Nixdorf and NCR, for example.
SUSE LINUX Point of Service (SLEPOS), also previously known as Novell Point of Service (NLPOS) features the Enterprise POS solution from Novell. SLEPOS11 product is based on SLES11 the latest version of the SUSE Linux Enterprise server (SLES). Therefore this information and steps, how to integrate IBM JavaPOS, is similar and can be easily adapted using the products SLEPOS11, SLES11 or SLED11 (SUSE Linux Enterprise Desktop) for Kiosk systems.
The IBM JavaPOS version suitable for SUSE Linux Enterprise can be found here: http://www2.clearlake.ibm.com/store/support/html/driverss.html
The following IBM POS HW is supported on Linux:
The following installation instruction applies to the IBM JavaPOS version 1.12.0:
jposl1120ga.zip MD5 checksum: 1c3ed63bfe4366415d59779b545701fd
Getting started just unzip the downloaded jposl1120ga.zip file and define the IBM rpm packages as installation source for YaST2, for example as a RPM package directory. Afterwards the JavaPOS packages can be installed. The picture shows all the IBM RPMs and the IBM JavaPOS Repository.
Within the zip file, for further information the following IBM documentation can be found:
- IBM JavaPOS for Linux v112 Installation Instructions.pdf
- IBM UnifiedPOS Management Services v112.pdf
With the actual release IBM delivers only the source code for the kernel drivers. Therefore it must be build with the SLE11 kernel (126.96.36.199-5-pae) before it can be used. After the installation of the packages ibmposs-gcc43 and ibmpos-kernel the source code can be found at:
To build the drivers, run in both directories “make” from the command line. (Please note that “make” and some further Devel tools (gcc) must be installed via YaST, that you can run make.
Afterwards the loadable kernel drivers are available for SLE11:
geeko:/usr/src/kernel-modules/ibm # ls -l dcs/*.ko -rw-r--r-- 1 root root 137810 2009-06-25 09:33 dcs/aipbcd.ko -rw-r--r-- 1 root root 224176 2009-06-25 09:33 dcs/aipdcs.ko -rw-r--r-- 1 root root 134258 2009-06-25 09:33 dcs/aipmtn.ko -rw-r--r-- 1 root root 91857 2009-06-25 09:33 dcs/aipsocdkl.ko geeko:/usr/src/kernel-modules/ibm # ls -l kbd/*.ko -rw-r--r-- 1 root root 228106 2009-06-25 09:34 kbd/aipikbps.ko -rw-r--r-- 1 root root 176389 2009-06-25 09:34 kbd/aipsokbps.ko
Now the drivers are copied to the corresponding kernel driver directory on the SLE11 POS system:
Next step is, to solve all driver module dependencies by using the following command:
Last action is to modify the file: /etc/modprobe.d/unsupported-modules
allow_unsupported_modules 1 # changed for IBM javapos
To activate the drivers, the IBM POS Subysytem must be restarted:
4800722:~ # /etc/init.d/aipstart restart Stopping IBM Point of Sale Subsystem for Linux done Unloading IBM ANPOS Keyboard driver done Unloading IBM RS485 driver Starting IBM Point of Sale Subsystem for Linux: Loading IBM ANPOS Keyboard driverSERIO_PORT= Loading IBM RS485 driver done Starting aipctrl Process done
Together with the JavaPOS drivers, IBM provides a supported JVM 1.5.0 (/opt/ibm/java2-i386-50). To enable this JVM a symbolic Link must be set to “/usr/bin/java”:
ln -s /opt/ibm/java2-i386-50/jre/bin/java /usr/bin/java
Afterwards the call of “java -version” should output the following information:
java version "1.5.0" Java(TM) 2 Runtime Environment, Standard Edition (build pxi32dev-20081129 (SR9-0 )) IBM J9 VM (build 2.3, J2RE 1.5.0 IBM J9 2.3 Linux x86-32 j9vmxi3223-20081129 (JIT enabled) J9VM - 20081126_26240_lHdSMr JIT - 20081112_1511ifx1_r8 GC - 200811_07) JCL - 20081128
The IBM POS Control Center is a JavaPOS test programm, to check and test the detected JavaPOS peripherals from IBM.
Precondition: The IBM POS Subsystem for Linux was loaded.
/etc/init.d/aipstart <restart | status>
Programm start: /opt/ibm/javapos/bin/POSControlCenter
Within our test environment we assume, that at least one IBM POS printer is detected through the JavaPOS layer. Starting the POS Control Center the first time, the jpos.xml configuration file can be generated automatically.
The following screen dumps show the step by step procedure from the initial start until the POS printer is recognized with the status “Online and Configured”.
Auto Detection of POS Devices
Select the AutoDection Button …
Save the jpos.xml file
The generated jpos.xml file will be save within the “/opt/ibm/javapos” directory.
Afterwards the connected POS printer is marked as “online and configured” and we can run a printer test and device demo which leads to the following screen dump:
SLEPOS is based on SUSE LINUX Enterprise (SLE), so far the only Enterprise Linux for POS based on SUSE LINUX Enterprise Server and/or SUSE LINUX Enterprise Desktop.
- Novell’s online documentation on NLPOS9
- Novell’s online documentation on SLEPOS10
- Novell’s online documentation on SLEPOS11 (to be released in Q3, 2009)
- Novell’s product information for SLEPOS and available support offerings
- Novell’s cool solutions
search for “SLEPOS”
- SUSE Linux Enterprise Point of Service 10: What’s New?
NIC Bonding with Xen Virtualization “>/communities/conversations/nic-bonding-xen-virtualization”>NIC Bonding with Xen Virtualization
- IBM JavaPOS Support URL
About the Author
Axel Schmidt is working since 2001 for SUSE LINUX GmbH. In the current position as Enterprise Architect – POS Solutions, Axel is incorporated in the Novell Service division in EMEA.
For comments or any questions about SUSE LINUX for retail, banking or check out terminals please feel free to post a message to email@example.com
For further information about SLEPOS contact your local Novell Solution Provider, or request a Sales Call from Novell
or call (+1) 800-529-3400 U.S/Canada
(+1) 801-861-1349 Worldwide