# Using POSper/Equipment Configuration

With new devices (and new features) coming up it's in the nature of this section that it is not as complete as it should. If you run into problems configuring a device or need advice before you buy a new device and don't find a solution here please refer to the POSper Help Forum on SourceForge https://sourceforge.net/projects/posper/forums/forum/606132

## POSper Hardware Requirements

CPU: Pentium or Compatible
RAM: At least 64MB >= 128MB is recommended if you are going to run a productive system and expect a growing number of transactions and/or a large number of articles and the DB is held on the same system.
Disk: JAVA and POSper and e.g. MySQL sum up to less than 1GB. Add what your OS requires. Given todays disk sizes you'll never run out of space.
Monitor: Although not necessarily required, a touchscreen is the device of choice.
Screen Resolution: At least 1024x768 Pcx

## Known working hardware

The following hardware has been tested and found to work. It is not a complete list, so if you don't find your hardware here it may or may not work.

### Receipt Printers

* Citizen CBM1000 and Citizen CBM1000-II
* Epson TM-T88II and Epson TM-T88III (Driver:Windows XP/2K)
* Epson TM-T88IV (Interface type:Serial | Driver:Windows XP/2K | OS:Ubuntu Linux, Windows XP)
* Epson TM-U220
* Epson TM-U230 (Interface type:Serial)
* Epson TM-T881V (Interface type:Parallel, Serial, or USB)
* Ithaca iTherm 280
* Ithaca 500 Ink Jet (Interface type:Parallel)
* Olivetti PR4RTII (Interface type:serial | Setting:Epson,file | Driver:Windows XP/2K | OS:Windows XP)
* Star TSP100 (Interface type:USB | OS:Windows XP)
* Star TSP600

### Barcode Scanners

* Any keyboard wedge scanner
* Any USB connected scanner as long as it behaves like a keyboard (they all do).

### Touchscreen

The touchscreen itself is not critical to POSper since POSper simply expects mouse action. The question is not 'does POSper support the touchscreen?' but 'does my system support the touchscreen?'.
A touchscreen normally has a RS232 or USB connector to emulate a mouse. There are two facts to check before you decide for a specific touch monitor:
* Does the screen needs an extra driver to be recognized as a mouse
by your system (normally not)
* Does the screen need a calibration program and is this program available for your system?
The latter depends on the touch technology. Resistive screens always need calibration, other technologies like APR or IntelliTouch do not.
The following is a incomplete list of screens reported by users.
* Epson SR-610
* Epson DM-LS121T
* LG L1730SF
* Partner PT-6212 all-in-one POS-system, with eGalaxTouch driver & ~calibration-tool, Ubuntu 10.04, PS/2
When you add a display to the list please add the following information:
* OS which the screen was tested with
* Touch technology
* Calibration needed?
* Calibration program available on OS?
* Interface for mouse emulation

## Receipt printer setup

Receipt printer setup depends on the interface being used and how the interface is configured on your system. We try to give some practical hints to get you printing without hassle.

#### USB

To Use a printer using a USB connector for TINAPOS. 1. Share the Printer 2. on cmd prompt. type net use lpt1 \\computerName\printerName /persistent:yes 3.to test
Under Windows:
echo "test" > LPT1
Under Linux
echo "test" > /dev/lp0
4. Try configuring the printer as "file" and type in lpt1 (or /dev/lp0 for linux).
http://en.wikibooks.org/wiki/Using_LibrePOS/Equipment_Configuration#USB

#### Parallel

Use the "file" printer option.

#### Serial

To install an Epson TM-T88 series or Olivetti PR4RTII on Windows XP.
* Download and extract the appropriate drivers for your printer.
* Click on the Start button, and then click on Settings, then Printers.
* Double click on the Add Printer icon.
* [Add Printer Wizard] will be displayed.
* Select [Local printer] and uncheck [Automatically detect and install my Plug and Play printer] box, and then click [Next>].
* Select the port(s) that you want to use for the printer, and then click on Next.
* Click the Have Disk button.
* Type in the pathname to the Win2000/xp folder or select Browse and find/open the folder. Then click on OK, then OK again.
* Select the your printer driver
* Select whether or not to print a test page, and then click on Finish,
* Click [Yes] on [Digital Signature Not Found] dialog box.
* When installation is finished, an icon with the name of the newly installed printer driver will appear in the Printers window.
* Open posper and login.
* Open the configuration panel.
* Under printer select Epson, File and the port you have the printer pluged into (Most likely if Serial: Com1 or Com2, Parallel: LPT1).
* You should now be able to print tickets in posper.
For serial printers you may use either java comm or the rxtx alternative. Instructions for installing RXTX
For problem with non Epson printers, try removing the line <image>Printer.Ticket.Logo</image> from printerticket.xml. The esc/pos standard varies a bit from different manufacturers. Some CBM printers cannot handle the image command.
Note: Some serial printers require a null modem cable or a standard serial cable+null modem adapter in order to work, please check your manual or contact the manufacturer.

#### CUPS

* a) open the application
* b) sign in as admin
* c) click "configuration"
* d) for any or all of the 3 printers that it lets you configure, select "printer" as the setting.
* e) it will now use cups.

## POSper Printer configuration with rawprinter

This section describes how to configure printer queues on Linux and Windows and over the network.

### Print queue for TM88/IV as raw printer
#### POSper

configure your printer as usual:
* choose the device, e.g. epson
* choose rawprinter as mode
* enter an unambiguous part of the name of your print service queue as port

#### Linux

* make sure the printer is recognized and creates a usb port like /dev/usb/lp0
* CUPS does not work well with Java. Either uninstall or disable cups or simply make sure that your lpd printer queue is not defined in cups.
* make sure lpd is installed and working
* insert the following entry into /etc/printcap (e.g. TM88/IV on /dev/usb/lp0)
* configuring a network printer (e.g. Bixolon Ethernet Interface) printer must be configured with config tool under windows (static ip or dhcp).
The Ethernet interface supports the socket API with port 9100. Test with:
Insert the following entry into /etc/printcap (tested with lprng)
* create the directory e.g. /var/spool/lpd/TM88IV and chown lp TM88IV; chmod g+w TM88IV
* restart lpd with
or

### Providing the queue over the network

* make sure samba is installed and you have your login and password registered in samba
* create a printer share named after your lpd queue
* choose 'printing=bsd'
* you can use testparm to check the samba configuration file and insert necessary default values
* smb.conf sample entry (should work for the configuration above):

### Printing on Windows
#### Direct printing

* install Standard - Generic / Text Only
* configure e.g. 'epson', 'rawprinter', 'Generic / Text Only'

#### Network printer

* connect to network printer, e.g. \\hostname\TM88IV
* choose Standard - Generic / Text Only as printer driver
* configure e.g. 'epson', 'rawprinter', '<part-of-printer-name>'

#### EPSON TM88-IV driver

This driver appears to work with the rawprinter setting. Use this driver to connect to USB on Windows systems.

### CUPS printing

Should CUPS work with Java at some time you can try to use it. The following worked for remote printing, although cups denied to recognize local print jobs:
* to enable file URI add
to /etc/cups/cupsd.conf
* open http://<host>:631 for the CUPS admin interface
* add the printer using
* Samba see CUPS-SAMBA

### Printers Metapace T1 and T2

Both printers work fine with the USB interface.
The ethernet interface was tested with T2 but there's no doubt that it will work with T1, too.
The interface board must be configured to the printer type: set the switch to ON for T2, OFF for T1.

## Cash drawer

In most cases a cash drawer is connected to the receipt printer and controlled through the printer interface, i.e. you MUST choose 'Not defined' in 'Settings -> Devices' for the cash drawer. To control the cashdrawer the <opendrawer> command is used in the printer template.

### Cashdrawer extensions

This paragraph shall shed some light on controlling a cashdrawer.
The following parameters can be used in the <opendrawer> tag:
* printer="n", to choose the printer the drawer is attached to, default is 1.
* drawer="n" where n is the drawer number when there are more than one drawers attached, and
* job="true" which allows to trigger a print job immediately when the opendrawer command is issued and the drawer is attached to a queued printer. Otherwise the cut command triggers the job.
This is needed in Ticket.Opendrawer where no cut command is present.
"n" in drawer="n" can either be 1 or 2 or 48 or 49.
When the external drawer is chosen in config as the default, numbers 1 and 2 are used for drawer 1 and 2 at the external adapter while numbers 48 and 49 are mapped to 1 and 2 accordingly for the printer attached drawer.
Otherwise 1 and 2 go to printer attached and 48 and 49 go to external (mapped as 1 and 2)

### Cash drawers directly attached to a serial interface

If you are going to use a serial cash drawer you must install Java comm 2.0 or greater or the rxtx alternative.
Instructions for installing RXTX
Windows installation instructions:
* Copy win32com.dll to your <JRE>\bin directory
* Copy comm.jar to your <JRE>\lib\ext directory.
* Copy javax.comm.properties to your <JRE>\lib directory.
Other Notes: https://sourceforge.net/forum/message.php?msg_id=3381792

## Barcode scanner

By Randall Perry
Bar code scanners come in many flavors from wands to handhelds to flat beds. Scanners also have a variety of ways to attach to your PC terminal: USB, Serial, PS/2, BUS, Bluetooth.
The easiest to get working are the PS/2 model handhelds. They require NO software or configuration (typically). They plug into a keyboard port and 'key in' the UPC barcode (and usually a carraige return).
This is NOT just for adding inventory, but works to key in orders...Just like any other store does.
You can pickup used barcode scanners for $5 to $50. These are adequate for reading UPC barcodes. While laser scanners support data matrix, 2D, PDF417 and other formats...why spend the money for this? If you are only working retail, you will typically be using just plain vanilla UPC barcodes. Save your money for a decent receipt printer.
The CueCat USB Port scanner works with zero configuration on Linux Fedora Core 6. The usbhid driver auto-detects and magically converts the data to numbers. Simply click in the barcode field and run the scanner over a barcode. I could not believe it was so easy. The cord is a good 6 feet lond too. And, of course, the price is right when buying used.