Peripheral Devices

From OS.bee documentation
Revision as of 12:28, 22 August 2019 by Mollik (Talk | contribs) (STAR Printer and Cashdrawer (network connected))

Jump to: navigation, search

Cash Register Peripherals

Epson Printer and Cashdrawer

Here is a sample xml file for a typical Epson configuration: [Epson Sample Configuration Download]

If you want to work with Epson-Seiko cash register peripherals some extra steps are necessary:

  • Download and unzip the ADK from the following site: Epson Biz or from [OS.bee mirror of Epson Windows Driver and Setup Download]
  • You must pass a registration process on the Epson site
  • Install the ADK by starting the executable EPSON_JavaPOS_1.14.3.exe from the directory EPSON_JavaPOS_ADK_1143 and follow the instructions of the program.
  • From the start menu launch SetupPos and configure the physical hardware according to the Epson manuals

EpsonSetupPOS.png

  • Save the configuration and note the path to the configuration file. The name is not important, but must be entered in the preferences in OS.bee under "External Data" (see common section below).

The content of this xml file looks something like this:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE JposEntries PUBLIC "-//JavaPOS//DTD//EN"
                             "jpos/res/jcl.dtd">
<JposEntries>
<!--Saved by JavaPOS jpos.config/loader (JCL) version 2.2.0 on 26.04.17 16:15-->
    
    <JposEntry logicalName="CashDrawer">
        <creation factoryClass="jp.co.epson.uposcommon.creator.EpsonJposServiceInstanceFactory" serviceClass="jp.co.epson.upos.H6000IV.drw.StandardService"/>
        <vendor name="SEIKO EPSON" url="http://www.epson.com"/>
        <jpos category="CashDrawer" version="1.14"/>
        <product description="EPSON Standard CashDrawer Device Service" name="EPSON Services for JavaPOS(TM) Standard" url="http://www.epson.com"/>

        <!--Other non JavaPOS required property (mostly vendor properties and bus specific properties i.e. RS232 )-->
        <prop name="OutputTimeout" type="String" value="500"/>
        <prop name="epson.trace.file" type="String" value="trace.log"/>
        <prop name="OutputBufferSize" type="String" value="4096"/>
        <prop name="PinNumber" type="String" value="0"/>
        <prop name="OfflineExecutionDevice" type="String" value="1"/>
        <prop name="ConfigurationFile" type="String" value="epson/xml/Setting/TM-H6000IVSetting.xml"/>
        <prop name="WriteThreadInterval" type="String" value="-1"/>
        <prop name="TransmitRetryTime" type="String" value="100"/>
        <prop name="DeviceID" type="String" value="36"/>
        <prop name="SupportStatistics" type="String" value="1"/>
        <prop name="QueuingOfflineTimeout" type="String" value="1000"/>
        <prop name="MultiDrawerStatusSupport" type="String" value="0"/>
        <prop name="EPurasSupport" type="String" value="TRUE"/>
        <prop name="ReceiveRetryTime" type="String" value="25"/>
        <prop name="TransmitTimeout" type="String" value="5000"/>
        <prop name="Parity" type="String" value="0"/>
        <prop name="StopBits" type="String" value="0"/>
        <prop name="MemorySwitch" type="String" value="0"/>
        <prop name="FlowType" type="String" value="1"/>
        <prop name="InputTimeout" type="String" value="100"/>
        <prop name="PulseOFFTime" type="String" value="400"/>
        <prop name="LogicalPortName" type="String" value="ESDPRT001"/>
        <prop name="StatusThreadInterval" type="String" value="100"/>
        <prop name="DefaultSlpClampTime" type="String" value="0"/>
        <prop name="LogicalPortInterfaceName" type="String" value="EPuras"/>
        <prop name="OfflineRetryIntervalTime" type="String" value="25"/>
        <prop name="BitLength" type="String" value="8"/>
        <prop name="OfflineCount" type="String" value="2"/>
        <prop name="PortType" type="String" value="0"/>
        <prop name="InitializeThreadTime" type="String" value="1000"/>
        <prop name="PortInterfaceName" type="String" value="Serial"/>
        <prop name="PhysicalPrinterName" type="String" value="TM-H6000IV"/>
        <prop name="LogObject" type="String" value=""/>
        <prop name="PulseONTime" type="String" value="100"/>
        <prop name="ForceSend" type="String" value="0"/>
        <prop name="PulseStep" type="String" value="100"/>
        <prop name="DeviceDesc" type="String" value="EPSON Standard CashDrawer"/>
        <prop name="PortName" type="String" value="COM1"/>
        <prop name="OpenPulseLevel" type="String" value="0"/>
        <prop name="OpenWaitTimeout" type="String" value="5000"/>
        <prop name="ReceiveTimeout" type="String" value="1000"/>
        <prop name="InitializeResponseTimeout" type="String" value="1000"/>
        <prop name="InputBufferSize" type="String" value="84"/>
        <prop name="OfflineExecutionInitializeSetting" type="String" value="0"/>
        <prop name="PhysicalDevice" type="String" value="Standard"/>
        <prop name="Upos.Spec_c" type="String" value="false"/>
        <prop name="ReadThreadInterval" type="String" value="-1"/>
        <prop name="BaudRate" type="String" value="19200"/>
        <prop name="epson.tracing" type="String" value="false"/>
        <prop name="DeviceType" type="String" value="1"/>
        <prop name="epson.trace.max.size" type="String" value="1000"/>
        <prop name="Upos.USB_Serial" type="String" value="false"/>
</JposEntry>
    
    
    <JposEntry logicalName="LineDisplay">
        <creation factoryClass="jp.co.epson.uposcommon.creator.EpsonJposServiceInstanceFactory" serviceClass="jp.co.epson.upos.H6000IV.disp.DMD110Service"/>
        <vendor name="SEIKO EPSON" url="http://www.epson.com"/>
        <jpos category="LineDisplay" version="1.14"/>
        <product description="Unknown Product Description" name="EPSON Services for JavaPOS(TM) Standard" url="http://www.epson.com"/>

        <!--Other non JavaPOS required property (mostly vendor properties and bus specific properties i.e. RS232 )-->
        <prop name="OutputTimeout" type="String" value="500"/>
        <prop name="epson.trace.file" type="String" value="trace.log"/>
        <prop name="OutputBufferSize" type="String" value="4096"/>
        <prop name="OfflineExecutionDevice" type="String" value="1"/>
        <prop name="ConfigurationFile" type="String" value="epson/xml/Setting/DM-D110(v1_14_0001)Setting.xml"/>
        <prop name="WriteThreadInterval" type="String" value="-1"/>
        <prop name="TransmitRetryTime" type="String" value="100"/>
        <prop name="DeviceID" type="String" value="36"/>
        <prop name="SupportStatistics" type="String" value="1"/>
        <prop name="QueuingOfflineTimeout" type="String" value="1000"/>
        <prop name="EPurasSupport" type="String" value="TRUE"/>
        <prop name="ReceiveRetryTime" type="String" value="25"/>
        <prop name="TransmitTimeout" type="String" value="5000"/>
        <prop name="Parity" type="String" value="0"/>
        <prop name="StopBits" type="String" value="0"/>
        <prop name="MemorySwitch" type="String" value="0"/>
        <prop name="FlowType" type="String" value="1"/>
        <prop name="InputTimeout" type="String" value="100"/>
        <prop name="CharacterMode" type="String" value="0"/>
        <prop name="LogicalPortName" type="String" value="ESDPRT001"/>
        <prop name="StatusThreadInterval" type="String" value="100"/>
        <prop name="DefaultSlpClampTime" type="String" value="0"/>
        <prop name="LogicalPortInterfaceName" type="String" value="EPuras"/>
        <prop name="OfflineRetryIntervalTime" type="String" value="25"/>
        <prop name="BitLength" type="String" value="8"/>
        <prop name="OfflineCount" type="String" value="2"/>
        <prop name="PortType" type="String" value="0"/>
        <prop name="InitializeThreadTime" type="String" value="1000"/>
        <prop name="ConnectionType" type="String" value="1"/>
        <prop name="GraphicWindowLogicalArea" type="String" value="0"/>
        <prop name="PortInterfaceName" type="String" value="Serial"/>
        <prop name="PhysicalPrinterName" type="String" value="TM-H6000IV"/>
        <prop name="LogObject" type="String" value=""/>
        <prop name="DirectIOEventTimeout" type="String" value="5000"/>
        <prop name="DeviceDesc" type="String" value="EPSON DM-D110 LineDisplay"/>
        <prop name="PortName" type="String" value="COM1"/>
        <prop name="ReceiveTimeout" type="String" value="1000"/>
        <prop name="InitializeResponseTimeout" type="String" value="1000"/>
        <prop name="InputBufferSize" type="String" value="84"/>
        <prop name="TwoByteCharacter" type="String" value="0"/>
        <prop name="OfflineExecutionInitializeSetting" type="String" value="0"/>
        <prop name="PhysicalDevice" type="String" value="DM-D110"/>
        <prop name="Upos.Spec_c" type="String" value="false"/>
        <prop name="ReadThreadInterval" type="String" value="-1"/>
        <prop name="BaudRate" type="String" value="19200"/>
        <prop name="epson.tracing" type="String" value="false"/>
        <prop name="DeviceType" type="String" value="2"/>
        <prop name="epson.trace.max.size" type="String" value="1000"/>
        <prop name="Upos.USB_Serial" type="String" value="false"/>
        <prop name="PrinterConfigurationFile" type="String" value="epson/xml/Setting/TM-H6000IVSetting.xml"/>
</JposEntry>
    
    
    <JposEntry logicalName="POSPrinter">
        <creation factoryClass="jp.co.epson.uposcommon.creator.EpsonJposServiceInstanceFactory" serviceClass="jp.co.epson.upos.H6000IV.pntr.H6000IVService"/>
        <vendor name="SEIKO EPSON" url="http://www.epson.com"/>
        <jpos category="POSPrinter" version="1.14"/>
        <product description="EPSON TM-H6000IV Printer Device Service" name="EPSON Services for JavaPOS(TM) Standard" url="http://www.epson.com"/>

        <!--Other non JavaPOS required property (mostly vendor properties and bus specific properties i.e. RS232 )-->
        <prop name="FlowType" type="String" value="1"/>
        <prop name="Halftone" type="String" value="0"/>
        <prop name="PhysicalPrinterName" type="String" value="TM-H6000IV"/>
        <prop name="NVRAMControlLevel" type="String" value="1"/>
        <prop name="LogicalPortName" type="String" value="ESDPRT001"/>
        <prop name="Stamp" type="String" value="0"/>
        <prop name="OutputCompleteType" type="String" value="2"/>
        <prop name="StatusThreadInterval" type="String" value="100"/>
        <prop name="OutputTimeout" type="String" value="500"/>
        <prop name="PortType" type="String" value="0"/>
        <prop name="epson.trace.detail.file" type="String" value="detail.log"/>
        <prop name="OutputBufferSize" type="String" value="4096"/>
        <prop name="UsedNVRAM" type="String" value="0"/>
        <prop name="FirmRecordLog" type="String" value="1"/>
        <prop name="ReceiveTimeout" type="String" value="1000"/>
        <prop name="SlpReverseEject" type="String" value="0"/>
        <prop name="PortName" type="String" value="COM1"/>
        <prop name="OfflineRetryIntervalTime" type="String" value="25"/>
        <prop name="Upos.USB_Serial" type="String" value="false"/>
        <prop name="DefaultSlpClampTime" type="String" value="500"/>
        <prop name="OfflineExecutionDevice" type="String" value="1"/>
        <prop name="epson.trace.file" type="String" value="trace.log"/>
        <prop name="StopBits" type="String" value="0"/>
        <prop name="AsyncProcessingSize" type="String" value="2"/>
        <prop name="RecCharactersPerLine" type="String" value="42"/>
        <prop name="KanjiTwoWaysPrint" type="String" value="0"/>
        <prop name="PulseStep" type="String" value="100"/>
        <prop name="PortInterfaceName" type="String" value="Serial"/>
        <prop name="GradationMethod" type="String" value="0"/>
        <prop name="OfflineExecutionInitializeSetting" type="String" value="0"/>
        <prop name="U375Compatible" type="String" value="0"/>
        <prop name="BitLength" type="String" value="8"/>
        <prop name="Parity" type="String" value="0"/>
        <prop name="preCutterFunction" type="String" value="0"/>
        <prop name="epson.tracing" type="String" value="false"/>
        <prop name="epson.trace.max.size" type="String" value="1000"/>
        <prop name="RecPaperSize" type="String" value="80"/>
        <prop name="DeviceDesc" type="String" value="EPSON TM-H6000IV POSPrinter"/>
        <prop name="PageModeExt" type="String" value="0"/>
        <prop name="RecLineSpacing" type="String" value="30"/>
        <prop name="SupportStatistics" type="String" value="1"/>
        <prop name="FirmProgressRange" type="String" value="10"/>
        <prop name="OutputErrorOption" type="String" value="0"/>
        <prop name="EndorseLineSpacing" type="String" value="10"/>
        <prop name="SupportFirmware" type="String" value="0"/>
        <prop name="DeviceID" type="String" value="36"/>
        <prop name="SlipPaperType" type="String" value="2"/>
        <prop name="InputTimeout" type="String" value="100"/>
        <prop name="SlipCharactersPerLine" type="String" value="45"/>
        <prop name="AutoPowerOff" type="String" value="0"/>
        <prop name="SlpMoreColumns" type="String" value="0"/>
        <prop name="RecPaperType" type="String" value="0"/>
        <prop name="MemorySwitch" type="String" value="0"/>
        <prop name="ReadThreadInterval" type="String" value="-1"/>
        <prop name="QueuingOfflineTimeout" type="String" value="1000"/>
        <prop name="InitializeThreadTime" type="String" value="1000"/>
        <prop name="TwoColor" type="String" value="0"/>
        <prop name="BaudRate" type="String" value="19200"/>
        <prop name="TwoByteCharacter" type="String" value="0"/>
        <prop name="FirmLogFileSize" type="String" value="1000"/>
        <prop name="Peeler" type="String" value="0"/>
        <prop name="DefaultCodePage" type="String" value="997"/>
        <prop name="epson.trace.detail.max.size" type="String" value="0"/>
        <prop name="ConfigurationFile" type="String" value="epson/xml/Setting/TM-H6000IVSetting.xml"/>
        <prop name="DeviceType" type="String" value="1"/>
        <prop name="Custom1Color" type="String" value="0xFF0000"/>
        <prop name="preEndorseFunction" type="String" value="0"/>
        <prop name="Upos.Spec_c" type="String" value="false"/>
        <prop name="LogicalPortInterfaceName" type="String" value="EPuras"/>
        <prop name="FirmNotifyAllProgressEvents" type="String" value="0"/>
        <prop name="InitializeResponseTimeout" type="String" value="1000"/>
        <prop name="ReceiveRetryTime" type="String" value="25"/>
        <prop name="UsedInterCharacterSet" type="String" value="0"/>
        <prop name="PrinterTransmitTimeout" type="String" value="30000"/>
        <prop name="RecMoreColumns" type="String" value="0"/>
        <prop name="EndorseFontMode" type="String" value="1"/>
        <prop name="WriteThreadInterval" type="String" value="-1"/>
        <prop name="preORCBFunction" type="String" value="0"/>
        <prop name="EndorseCharactersPerLine" type="String" value="40"/>
        <prop name="RecNearEndSensor" type="String" value="1"/>
        <prop name="LogObject" type="String" value=""/>
        <prop name="Cutter" type="String" value="1"/>
        <prop name="PhysicalDevice" type="String" value="TM-H6000IV"/>
        <prop name="UsedPeeler" type="String" value="0"/>
        <prop name="FirmLogFileName" type="String" value="Firmware.log"/>
        <prop name="InputBufferSize" type="String" value="84"/>
        <prop name="TransmitTimeout" type="String" value="5000"/>
        <prop name="SlipLineSpacing" type="String" value="12"/>
        <prop name="EPurasSupport" type="String" value="TRUE"/>
        <prop name="OfflineCount" type="String" value="2"/>
        <prop name="TransmitRetryTime" type="String" value="100"/>
        <prop name="DirectIOEventTimeout" type="String" value="5000"/>
        <prop name="epson.trace.detail.info" type="String" value="0"/>
</JposEntry>
    
</JposEntries>

STAR Printer and Cashdrawer (network connected)

At the time beeing, STAR printers are supported with Ethernet connections only.

The javaPos configuration looks like

  <JposEntry logicalName="POSPrinter">
    <creation factoryClass="com.starmicronics.starjavapos.ServiceInstanceFactory" serviceClass="com.starmicronics.starjavapos.POSPrinterService" />
    <vendor name="Star Micronics" url="www.star-m.jp/eng/index.htm" />
    <jpos category="POSPrinter" version="1.13" />
    <product description="Star receipt printer" name="Star Micronics POSPrinter controller" url="www.star-m.jp/eng/index.htm" />
    <prop name="model" type="String" value="SP700" />
    <prop name="portName" type="String" value="tcp:10.1.15.20" />
    <prop name="portSettings" type="String" value="" />
    <prop name="ioTimeoutMillis" type="Integer" value="5000" />
    <prop name="doCheckedBlockPrinting" type="Boolean" value="True" />
    <prop name="useNVBitImage" type="Boolean" value="False" />
  </JposEntry>


  <JposEntry logicalName="CashDrawer">
    <creation factoryClass="com.starmicronics.starjavapos.ServiceInstanceFactory" serviceClass="com.starmicronics.starjavapos.CashDrawerService" />
    <vendor name="Star Micronics" url="www.star-m.jp/eng/index.htm" />
    <jpos category="CashDrawer" version="1.13" />
    <product description="Printer controlled cash drawer" name="Star Micronics cash drawer controller" url="www.star-m.jp/eng/index.htm" />
    <prop name="portName" type="String" value="tcp:10.1.15.20" />
    <prop name="portSettings" type="String" value="" />
    <prop name="ioTimeoutMillis" type="Integer" value="5000" />
    <prop name="controlPrimaryDrawer" type="Boolean" value="True" />
    <prop name="firePulseWidth" type="Long" value="200" />
    <prop name="sleepPulseWidth" type="Long" value="200" />
    <prop name="capStatus" type="Boolean" value="True" />
    <prop name="signalLevelHighWhenDrawerOpen" type="Boolean" value="True" />
  </JposEntry>

Common settings for all JavaPos peripherals

  • In Eclipse open Window->Preferences->OSBP Application Configuration
  • Select the product to be configured in the field Product Configuration

ProductConfiguration1.png

  • In the tab External Data Sources put the noted path in the field JavaPOS Configuration

ProductConfiguration2.png