starjavapos_win32-linux-macosx
---------------------------------------
Description:
StarJavaPOS is an implimentation of JavaPOS
providing POSPrinter and CashDrawer services for all
Star printer products. This software provides a Java
class framework through which your applications
can easily interface with Star printers. StarJavaPOS
has been designed for use on Linux, Windows, and Mac
OS X, delivering true cross-platform compatibility all
the way through to the device level!
Who should be using this software?
StarJavaPOS is often used in 2 differnt scenarios:
1. New Java / POS - Retail application development
If you are writing a new Java based application that
has a need to interface with printer products, then
StarJavaPOS will get you up and running quickly.
Because StarJavaPOS provides a completely finished
high-level framework for POS printers, you will be
free to concentrate on the details of your software
rather then on the details of your Star printer.
2. JavaPOS based application deployment / integration
There are many exisiting retail / POS application on
the market today that use the JavaPOS platform for
device control. StarJavaPOS is compatible with any
JavaPOS based application. If you are deploying a
new solution that has the ability to interface with
JavaPOS enabled device then StarJavaPOS is the
solution.
Package Contents:
. starjavapos.jar
. jpos17-controls.jar
. jcl.jar
. xercesImpl.jar
. xml-apis.jar
. jpos.xml
. StarReceiptTest.java
. StarDirectIOTest.java
. StarCashDrawerTest.java
. star.gif
. readme.txt
. /java web start
Installation:
1. Uncompress this package
2. Copy the entire starjavapos_win32-linux-macosx
directory to a preferred location on your computer.
Any location will do.
Configuration - jpos.xml:
StarJavaPOS uses the JCL - Java Configuration Loader
system for configuring the provided services. The file
jpos.xml contained in this package has been initialized
with device entries for Star's newest printer products.
The following is a list of the POSPrinter device entries
contained in this file as indexed by their logicalName
field:
. SP500-tearbar-linux-serial
. SP500-tearbar-windows-serial
. SP500-tearbar-linux-parallel
. SP500-tearbar-windows-parallel
. SP500-cutter-linux-serial
. SP500-cutter-windows-serial
. SP500-cutter-linux-parallel
. SP500-cutter-windows-parallel
. TSP600-tearbar-ethernet
. TSP600-tearbar-mac-usb
. TSP600-tearbar-linux-usb
. TSP600-tearbar-windows-usb
. TSP600-tearbar-linux-serial
. TSP600-tearbar-windows-serial
. TSP600-tearbar-linux-parallel
. TSP600-tearbar-windows-parallel
. TSP600-cutter-ethernet
. TSP600-cutter-mac-usb
. TSP600-cutter-linux-usb
. TSP600-cutter-windows-usb
. TSP600-cutter-linux-serial
. TSP600-cutter-windows-serial
. TSP600-cutter-linux-parallel
. TSP600-cutter-windows-parallel
. TSP700-ethernet
. TSP700-mac-usb
. TSP700-linux-usb
. TSP700-windows-usb
. TSP700-linux-serial
. TSP700-windows-serial
. TSP700-linux-parallel
. TSP700-windows-parallel
. TSP800-ethernet
. TSP800-mac-usb
. TSP800-linux-usb
. TSP800-windows-usb
. TSP800-linux-serial
. TSP800-windows-serial
. TSP800-linux-parallel
. TSP800-windows-parallel
. TSP1000-ethernet
. TSP1000-mac-usb
. TSP1000-linux-usb
. TSP1000-windows-usb
. TSP1000-linux-serial
. TSP1000-windows-serial
. TSP1000-linux-parallel
. TSP1000-windows-parallel
. TUP900-ethernet
. TUP900-mac-usb
. TUP900-linux-usb
. TUP900-windows-usb
. TUP900-linux-serial
. TUP900-windows-serial
. TUP900-linux-parallel
. TUP900-windows-parallel
These names are passed to the POSPrinter.open method,
and are then used by the JCL system to link the JavaPOS
control objects with the StarJavaPOS provided service
objects. For example, to open your Star printer, your
application would contain a statement like:
printer.open("TSP700-linux-serial");
The following is a list of the CashDrawer device entries
contained in this file as indexed by their logicalName
field:
. SP500-tearbar-cashdrawer-linux-serial
. SP500-tearbar-cashdrawer-windows-serial
. SP500-tearbar-cashdrawer-linux-parallel
. SP500-tearbar-cashdrawer-windows-parallel
. SP500-cutter-cashdrawer-linux-serial
. SP500-cutter-cashdrawer-windows-serial
. SP500-cutter-cashdrawer-linux-parallel
. SP500-cutter-cashdrawer-windows-parallel
. TSP600-tearbar-cashdrawer-ethernet
. TSP600-tearbar-cashdrawer-mac-usb
. TSP600-tearbar-cashdrawer-linux-usb
. TSP600-tearbar-cashdrawer-windows-usb
. TSP600-tearbar-cashdrawer-linux-serial
. TSP600-tearbar-cashdrawer-windows-serial
. TSP600-tearbar-cashdrawer-linux-parallel
. TSP600-tearbar-cashdrawer-windows-parallel
. TSP600-cutter-cashdrawer-ethernet
. TSP600-cutter-cashdrawer-mac-usb
. TSP600-cutter-cashdrawer-linux-usb
. TSP600-cutter-cashdrawer-windows-usb
. TSP600-cutter-cashdrawer-linux-serial
. TSP600-cutter-cashdrawer-windows-serial
. TSP600-cutter-cashdrawer-linux-parallel
. TSP600-cutter-cashdrawer-windows-parallel
. TSP700-cashdrawer-ethernet
. TSP700-cashdrawer-mac-usb
. TSP700-cashdrawer-linux-usb
. TSP700-cashdrawer-windows-usb
. TSP700-cashdrawer-linux-serial
. TSP700-cashdrawer-windows-serial
. TSP700-cashdrawer-linux-parallel
. TSP700-cashdrawer-windows-parallel
. TSP800-cashdrawer-ethernet
. TSP800-cashdrawer-mac-usb
. TSP800-cashdrawer-linux-usb
. TSP800-cashdrawer-windows-usb
. TSP800-cashdrawer-linux-serial
. TSP800-cashdrawer-windows-serial
. TSP800-cashdrawer-linux-parallel
. TSP800-cashdrawer-windows-parallel
. TSP1000-cashdrawer-ethernet
. TSP1000-cashdrawer-mac-usb
. TSP1000-cashdrawer-linux-usb
. TSP1000-cashdrawer-windows-usb
. TSP1000-cashdrawer-linux-serial
. TSP1000-cashdrawer-windows-serial
. TSP1000-cashdrawer-linux-parallel
. TSP1000-cashdrawer-windows-parallel
These names are passed to the CashDrawer.open method,
and are then used by the JCL system to link the JavaPOS
control objects with the StarJavaPOS provided service
objects. For example, to open your Star printer
controlled cash drawer, your application would contain
a statement like:
cashDrawer.open("TSP700-cashdrawer-linux-serial");
You are free to change any entry's logicalName field to
suite your needs, but do not change any other fields.
Operating system / port notes:
Please follow the following usage notes pertaining to the
usage of your serial, parallel, USB, or ethernet printer
on Linux, Windows, or Mac.
* Serial - Hardware Level Reset
StarJavaPOS uses hardware level reset functionality to
ensure consistent printing even after fault occurences.
This functionality is available on all models except
the SP500.
To enable hardware level reset functionality on your
serial printer, do this:
1. Change printer DIP switches
Remove the printer's serial interface card and set
DSW1-7 and DSW1-8 to the ON position.
* Serial Port Settings:
All serial entries contain a the following string
in their portSettings field:
"9600,none,8,1,hdwr"
This comma seperated list contains the following fields:
1. Baud rate (38400, 19200, 9600)
2. Parity (none, even, odd)
3. Data bits (8)
4. Stop bits (7)
5. Flow control (hdwr, none, xonxoff)
Star printer come configured in the 9600,none,8,1,hdwr
state. If you change the configuration of your Star
printer, please modify the portSettings field.
It is recommended that you configure your printer for
38400 baud with hardware flow control. This will
result in significantly faster printing.
On all models except the SP500, configure
38400 baud by first removing the printer's serial
interface card. Turn the card's dip switches 1 and 2
OFF, and reinstall the card.
On the SP500 product, configure 38400 baud by first
locating the dip switch access panel under the printer.
Open this panel and set dip switches 5 and 6 OFF.
* Ethernet
The entry TSP???-ethernet configures StarJavaPOS for
use with the printer product through the Ethernet port.
All TSP???-ethernet entries in the jpos.xml file have
a field named portName that is initialized to
SOCKET:192.168.32.72. You must change the 192.168.32.72
portion of this entry to match the static IP address of
your printer. StarJavaPOS supports Star's Ethernet card
firmware 2.01 and above only.
NOTE: YOU MUST TURN OFF DIP SWITCH 4 OF THE ETHERNET
CARD IN ORDER FOR IT TO BE ACCESSIBLE.
Because all JREs support the java.net.Socket class,
usage of the TSP???-ethernet entries does not require
specification of the platform OS nor the use of a JNI
based shared library.
* Mac / USB
The entry TSP???-mac-usb configures StarJavaPOS for
use with the TSP product on Mac OS X through the USB
port. This requires:
1. The printer be in the Vendor class mode.
Configure this by turning DIP switch DSW1-5 off
2. The printer be in the NSB status back mode.
Configure this by turning DIP switch DSW1-8 off.
* Linux / USB
The entry TSP???-linux-usb configures StarJavaPOS for
use with the TSP product on Linux through the USB
port. This requires:
1. The printer be in the Vendor class mode.
Configure this by turning DIP switch DSW1-5 off.
2. The printer be in the NSB status back mode.
Configure this by turning DIP switch DSW1-8 off
3. libusb be available on your system
(most current Linux ditros contain this, if
your's does not, get it from
http://sourceforge.net/projects/libusb/)
NOTE: libusb LIMITS ACCESS TO USB DEVICES TO THE
ROOT USER AND SUPER-USER ONLY. OTHER USERS
DO NOT (BY DEFAULT) HAVE ACCESS TO THE USB
DEVICES SERVED BY libusb. YOU MUST RUN
StarJavaPOS AND YOUR APPLICATION WITH SUPER-
USER RIGHTS. libusb CAN BE CONFIGURED TO
GIVE ACCESS RIGHTS TO OTHER USERS, SEE THE
libusb DOCUMENTATION FOR DETAILS ON THIS.
* Linux / Serial
The entry TSP???-linux-serial confirgures StarJavaPOS
for use with the TSP product on Linux through the
/dev/ttyS0 serial port. StarJavaPOS communicates with
serial devices on Linux via the /dev/ttyS0 or /dev/ttyS1
or /dev/ttySn ports. If your printer is connected to
a serial port other then /dev/ttyS0 then modify the
portName field.
* Linux / Parallel
The entry TSP???-linux-parallel configures StarJavaPOS
for use with the TSP product on Linux through the
/dev/parport0 parallel port. StarJavaPOS communicates
with parallel devices on Linux via the /dev/parport0 or
/dev/parport1 or /dev/parportn ports. If your printer
is connected to a parallel port other then /dev/parport0
then modify the portName field. This requires:
1. The printer be in the NSB status back mode.
Configure this by turning DIP switch DSW1-8 off
NOTE: SOME LINUX DISTRIBUTIONS DO NOT LOAD THE
PARPORT DRIVER BY DEFAULT. IF THE
/dev/parport0 DEVNODE IS NOT CONTAINED IN THE
/dev DIRECTORY THEN DO THIS:
1. edit /etc/modules.conf - add the following
alias /dev/parport0 ppdev
2. edit /etc/modules - add the following
ppdev
ONCE THIS IS DONE, REBOOT AND VERIFY THAT THE
PORTS ARE NOW AVAILABLE.
* Windows / USB
The entry TSP???-windows-usb configures StarJavaPOS for
use witht he TSP product on Windows through the USB
port. This requires:
1. The printer be in the Vendor class mode.
Configure this by turning DIP switch DSW1-5 off.
2. The Star Vendor Class USB Driver be installed.
This can be downloaded from www.starmicronics.com
Once you have installed the Star Vendor Class Driver a
new COM port will be made available. This will most
likely be COM4, but can be COM5 or COMn depending on the
computer. Determing which COM port was created for your
USB printer and then modify the portName field to match.
This requires:
1. The printer be in the NSB status back mode.
Configure this by turning DIP switch DSW1-8 off
* Windows / Serial
The entry TSP???-windows-serial confirgures StarJavaPOS
for use with the TSP product on Windows through the
COM1 serial port. StarJavaPOS communicates with
serial devices on Windows via the COM1 or COM2 or COMn
ports. If your printer is connected to a serial port
other then COM1 then modify the portName field.
NOTE: DO NOT INSTALL ANY WINDOWS PRINTER QUEUES
ON THE PORT BEING USED BY STARJAVAPOS.
* Windows / Parallel
The entry TSP???-windows-parallel configures StarJavaPOS
for use with the TSP product on Windows through the
LPT1 parallel port. StarJavaPOS communicates
with parallel devices on Windows via the LPT1 or LPT2 or
LPTn ports. If your printer is connected to a parallel
port other then LPT1 then modify the portName field.
This requires:
1. The printer be in the ASB status back mode.
Configure this by turning DIP switch DSW1-7 off
2. The printer be in the NSB status back mode.
Configure this by turning DIP switch DSW1-8 off
NOTE: DO NOT INSTALL ANY WINDOWS PRINTER QUEUES
ON THE PORT BEING USED BY STARJAVAPOS.
Usage - POSPrinterExcerciser test application:
starjavapos.jar contains a built-in test application
you can use to verify that the POSPrinter service is
working correctly on your system.
To use this test application, do this:
1. Go to the starjavapos_win32-linux-macosx directory
on your computer
2. From the command prompt (shell) execute the command:
java -jar starjavapos.jar
3. Enter the logicalName of the device and hit the Open
button.
4. Enter some text into the printData field and hit the
PrintNormal button.
Usage - CashDrawerExcerciser test application:
starjavapos.jar contains a built-in test application
you can use to verify that the CashDrawer service is
working correctly on your system.
To use this test application, do this:
1. Go to the starjavapos_win32-linux-macosx directory
on your computer
2. From the command prompt (shell) execute the command:
java -classpath starjavapos.jar com.starmicronics.
javapos.CashDrawerExcerciser
[NOTE: the above command should be entered on 1 line]
3. Enter the logicalName of the device and hit the Open
button.
4. Hit the openDrawer button and verify that your cash
drawer opens.
Usage - New application development
The files StarReceiptTest.java and StarCashDrawerTest
.java are provided as a means to jumpstart your
development with StarJavaPOS. To compile and run these,
do this:
1. Go to the starjavapos_win32-linux-macosx directory
on your computer.
2. Open StarReceiptTest and locate the printer.open
statement. You will find that there are several
lines containing this same statement, and that all
but one are commented out. Uncomment the line that
corresponds to your usage scenario and comment all
others. For example, if you are using a TSP700 on
Windows connected to the parallel port, uncomment the
line:
printer.open("TSP700-windows-parallel)
3. From the command prompt (shell) execute the commands:
javac -classpath jpos.jar StarReceiptTest.java
java -classpath starjavapos.jar StarReceiptTest
4. Repeat the above steps 2 and 3 for the file
StarCashDrawerTest.java
Now that you are comforatable compiling and running
JavaPOS application, take a look at the code contained
in these files and begin to integrate the JavaPOS
specfication into your application. Please keep in mind
that the JavaPOS specification contains much more
functionality then is used in this example, and you are
encouraged to try all of its easy to use aspects.
Usage - Integration into existing JavaPOS based software
To use StarJavaPOS in an existing JavaPOS based software
package, do this:
1. Add starjavapos.jar to your JVM's classpath
i.e. java -classpath starjavapos.jar:yourstuff.jar
2. Add the required entry from this distribution's
jpos.xml file to your jpos.xml file. Be sure to copy
the entire entry - from the <JposEntry> tag through
to the </JposEntry> tag. Also mind that the
logicalName field of the entry is as required by the
application.
Where are the native libraries? .dll - .so - .jnilib
StarJavaPOS contains all required native libraries
within the starjavapos.jar component. These native
libraries are automatically installed when StarJavaPOS
is first used. The following are the install locations:
. Mac - <user.home>/Libraries/Java/Extensions
. Linux - <user.home>/.starjavapos (hidden directory)
. Windows - /windows/system32 (Windows XP)
/winnt/system32 (Windows 2000 & NT4)
/windows/system (Windows 98 & ME)
Trouble shooting:
. Linux
On Linux problems can occur as a result of running
StarJavaPOS under a user account that does not have
read and write permissions for the communications
port that the printer is connected to. For all port
types, serial - parallel - USB, read and write
permissions are required.
On most Linux distributions, serial and parallel ports
(/dev/ttyS and /dev/parport) are available for reading
and writing under all user accounts - no problem.
StarJavaPOS uses the libusb module to access Star USB
printers. The libusb module, by default, provides
read and write access to USB devices only for root and
superuser accounts / processes. The libusb module can
be configured to grant IO permissions to any arbitrary
user, please see the libusb documentation for details
on how to do this:
access http://sourceforge.net/projects/libusb/
. Windows
When using StarJavaPOS on Windows with your USB printer,
you must install the Star USB Vendor Class Driver first.
Once you install this driver, when you connect your USB
printer, a new COM port will be created automatically.
Use the Windows Device Manager to determine which COM
port was created for your printer and then update the
"portName" field of the jpos.xml entry for your printer
correspondingly.
i.e. <prop name="portName" type="String" value="USB:COM4"/>
NOTE: DO NOT INSTALL ANY WINDOWS PRINTER QUEUES
ON THE PORT BEING USED BY STARJAVAPOS.
Notes:
1. Firmware Version Matching
StarJavaPOS has the ability to match the firmware
version installed into a printer and fail the
POSPrinter.open method if the required firmware
version is not present.
To enable this function, add the following property
to the device's entry in the jpos.xml file:
<prop name="firmwareNameToMatch" type="String" value="TSP700Ver4.0"/>
Change the value="TSP700Ver4.0" to match the
required firmware version. This string can be
generated by looking at the first line of the
printer's self-test print out.
For example, if the print out is:
*** TSP800 Ver5.0 -b2.0
Then the value string should be:
TSP800Ver5.0
Specifically, remove the leading ***, remove all
' ' space characters, and exclude everthing after
(and including) the '-' character.
Currently, the TSP600, TSP700, and TSP800 products
support this functionality.
2. Memory Switch Auto Configuration
StarJavaPOS has the ability to automatically
configure the printer's memory switches according
to a setting contained in the jpos.xml record.
Star printers have a wide reange of configurable
features. Memory switches are used to turn these
on and off.
If you want to use your Star printer in a particular
configuration, use the following procedure to
have StarJavaPOS auto-configure the printer.
Add the following property to the device's entry in
the jpos.xml file:
<prop name="memorySwitchSetting" type="String" value=":1,0010"/>
When present, StarJavaPOS will use the value field
to auto-configure the printer. The format of the
value field is as follows:
:B,nnnn:B,nnnn
In this format, B is the bank number and nnnn are the
hexadecimal values for that bank. In the above example,
:1,0010 causes bank 1 to be configured to 0010 (on most
Star printers this effects a slashed zero).
Include as many bank settings as required in the field.
Each bank setting should begin with a : character.
The auto-configuration process is implemented internally
by first checking the current device configuration. If
the current configuration is different from the desired
configuration then the setting commands are outputted.
Following this the device is hardware reset. This
internal process garantees consistent configuration.
Support Contact:
Please contact me, Albert Kennis at:
albert@star-m.jp
Provided to you by: AK INNOVATION
Download Driver Pack
After your driver has been downloaded, follow these simple steps to install it.
Expand the archive file (if the download file is in zip or rar format).
If the expanded file has an .exe extension, double click it and follow the installation instructions.
Otherwise, open Device Manager by right-clicking the Start menu and selecting Device Manager.
Find the device and model you want to update in the device list.
Double-click on it to open the Properties dialog box.
From the Properties dialog box, select the Driver tab.
Click the Update Driver button, then follow the instructions.
Very important: You must reboot your system to ensure that any driver updates have taken effect.
For more help, visit our Driver Support section for step-by-step videos on how to install drivers for every file type.