1 25 1. Objetivo O objetivo deste documento é apresentar os procedimentos básicos para uso das seguintes impressoras não-fiscais: Bematech! IZ95 : MP 20 TH e MP 2000 TH MP 20 MI MP 4000 TH MP 4200 TH (*) CIS! comunicação direta comandos ESC/POS! usando biblioteca de alto nível do fabricante! IZ91 : PR 3000 (*) (somente conexão serial padrão RS-232C)! IZ98 : PR 3000 (*) (sistema operacional Windows e conexões serial padrão RS-232C e USB) Daruma! IZ93 : DR 700 M DR 700 H (*) DR 800 H (*) Datecs! IZ97 : DPP 350BT (*) (sistema operacional Windows 8.1 Pro e somente conexão bluetooth) Elgin! IZ91 i9 (*) (conexão serial padrão RS-232C e USB com conversor interno usb/serial Prolific PL2303) Epson! IZ92 : TM H6000 IV (*) TM T20 (*) TM T88 V (*) Toshiba! IZ94 : TGCS SureMark 4610 1NR (*) TGCS SureMark 4610 2CR (*) (*) Impressoras não-fiscais testadas e homologadas com o programa aplicativo fiscal da Zanthus Zeus Frente de Loja. Estas impressoras não-fiscais serão usadas em conjunto com a solução Zanthus Zeus Frente de Loja de recebimento (executável w_receb.exe, para Windows e lnx_receb, para Linux). IMPORTANTE: Este documento não descreve os procedimentos para fabricação do ECF virtual.
2 25 2. Restrições O uso destas impressoras e de suas bibliotecas de controle (ou APIs) ou drivers fornecidos pelos fabricantes está restrito aos sistemas operacionais Microsoft Windows XP (32 bits), Microsoft Windows 7 (32 e 64 bits), Microsoft Windows 10 (64 bits) e Ubuntu Linux 9.04 ou superior. IMPORTANTE: - Para conexões USBs, no SETUP da máquina (microcomputador) as portas USB estejam habilitadas; - No Linux, USB padrão 2.0 e que a distribuição Linux usada tenha suporte as versões 1.0 da libusb (libusb-1.0) e compatibilidade com a versão 0.1 (libusb-0.1). - No Linux, as impressoras não-fiscais da Bematech e impressoras não-fiscais da Toshiba requerem Ubuntu Linux 12.04 ou superior. Além destas, existem as restrições relacionadas aos mecanismos (e as respectivas bibliotecas de controle ou APIs) em questão, a saber: Modelos de impressoras não fiscais Autenticação Cheque CMC-7 Gaveta Bematech MP 20 TH X MP 20 MI X MP 4000 TH X MP 4200 TH X CIS PR 3000 X Daruma DR 700 M X DR 700 H X DR 800 H X Datecs DPP 350BT Elgin i9 X Epson TM H6000 IV X X X X TM T20 X TM T88 V X Toshiba TGCS SureMark 4610 1NR X TGCS SureMark 4610 2CR X X X X
3 25 3. Procedimento para instalar e configurar as impressoras não-fiscais 3.1. Bematech As impressoras não-fiscais Bematech correspondem, para a solução Zanthus Zeus Frente de Loja, como a impressora Zanthus IZ95. As etapas dos procedimentos abaixo deverão ser seguidas na ordem descrita. Os arquivos, bibliotecas e drivers mencionados aqui poderão ser encontrados no FTP da Zanthus (ftp://ftp.zanthus.com.br/pub/zeus_frente_de_loja/_complementares/terceiros/impressorasnaofisca is). 3.1.1. Instalação 3.1.1.1. Bibliotecas de alto nível da Bematech no Windows 3.1.1.1.1. Bibliotecas de alto nível da Bematech no Windows 32 bits No diretório de sistema do Windows: a-) se Windows 95, 98 ou ME diretório \Windows\System ; b-) se Windows 2000, NT ou XP diretório \WinNT\System32 ou \Windows\System32. Copiar os seguintes arquivos: mp2032.dll SiUSBXp.dll 3.1.1.1.2. Bibliotecas de alto nível da Bematech no Windows 64 bits No diretório de sistema do Windows, diretório \Windows\SysWOW64 : Copiar os seguintes arquivos: mp2032.dll SiUSBXp.dll 3.1.1.1.3. Instalação da porta USB para comunicação através da biblioteca de alto nível para Windows 32 bits e para Windows 64 bits Nos modelos de impressoras não-fiscais Bematech que possuem interface USB para comunicação do aplicativo comercial, a mp2032.dll permite que o aplicativo realize as operações com a impressora não fiscal (através de suas funções), via USB, sem a necessidade de modificações, totalmente transparente. Basta instalar a porta USB através do driver disponível no pacote da DLL. Instalando a porta USB Ao conectar a impressora não-fiscal na USB, o Windows irá detectá-la automaticamente, porém exibirá na bandeja (relógio) uma mensagem de que houve problemas durante a instalação do hardware, devido a não existir na base do Windows o driver correspondente, sendo este procedimento absolutamente normal.
4 25 Então, é necessário selecionar o driver USB correspondente para a impressora não-fiscal e instalá-lo, seguindo os passos descritos abaixo: Acesse o "Gerenciador de dispositivos" do Windows: - Clique com o botão direito do mouse sobre o item "Suporte de impressão USB" que está destacado com um símbolo de exclamação e escolha a opção "Atualizar driver". - Escolha a opção "Não, não agora" e clique em "Avançar". - Escolha "Instalar de uma lista ou local específico (avançado)" e clique em "Avançar". - Escolha a opção "Não pesquisar. Escolherei o driver a ser instalado" e clique em "Avançar". - Clique em "Com disco" e procure pela pasta onde foi descompactado ou copiado o pacote da DLL contendo os arquivos "LciLR3USB.inf " e "LciLR3USB.cat ". Selecione a pasta e clique em "OK". - Temos o nome do driver a ser instalado. Clique em "Avançar". O driver entra em processo de instalação. - Ao terminar, basta clicar em "Concluir" para finalizar o processo de instalação. Será exibida na lista de dispositivos a porta "MP 4200 TH Virtual COM (COMn)", efetivando a instalação. A letra n em COMn, corresponde ao número da porta serial onde o dispositivo foi atachado. IMPORTANTE: Para ter certeza de que a instalação foi bem sucedida, ao desligar a impressora o dispositivo "MP 4200 TH Virtual COM (COMn)" irá sumir da lista e ao ligar a impressora ele irá surgir. 3.1.1.2. Bibliotecas de alto nível da Bematech no Linux Ubuntu 12.04 (ou superior) No diretório de bibliotecas da solução Zanthus Zeus Frente de Loja, /Zanthus/Zeus/lib, copiar o seguinte arquivo: libmp2032.so 3.1.1.2.1. Instalação da porta USB para comunicação através da biblioteca de alto nível Instalando a porta USB Ao conectar a impressora não fiscal na USB, devemos verificar em qual porta está conectado este dispositivo executando o comando dmesg e verificando se existem linhas parecidas como abaixo: usb 2-1.1: new full-speed USB device number 5 using ehci_hcd cdc_acm 2-1.1:1.0: This device cannot do calls on its own. It is not a modem. cdc_acm 2-1.1:1.0: ttyacm1: USB ACM device IMPORTANTE: No meu ambiente de testes também tenho conectado um PIN PAD criptografado da Gertec modelo PPC900 LCM12 1 SAM SBLT USB GR, este PIN PAD também faz uso do driver cdc_acm, se os dois dispositivos, quando o sistema operacional entrar no ar, estiverem ligados, fica
5 25 difícil identificar em qual device (/dev/ttyacmn) o dispositivo foi atachado, por isso, no meu ambiente de testes adotei o seguinte critério: a-) sistema operacional entra no ar com o PIN PAD Gertec modelo PPC900 LCM12 1 SAM SBLT USB GR conectado a porta USB, isto faz com que este dispositivo seja atachado no device /dev/ttyacm0 ; b-) antes de executarmos a solução Zeus Frente de Loja PDV, ligamos a impressora não-fiscal Bematech modelo MP-4200 TH, isto faz com que este dispositivo seja atachado no device /dev/ttyacm1. Desta forma, explico a informação cdc_acm 2-1.1:1.0: ttyacm1: USB ACM device, extraída do comando dmesg, no meu ambiente. A API da Bematech não tem suporte para USB, conforme informado no trecho abaixo, destacado do manual de programação: Currently the Linux API driver does not fully support USB. Please check out Bematech s Web site from time to time and watch out Bematech s Developer Newsletter for a new release supporting USB in the near future. Então, para fazermos uso deste dispositivo com interface USB faremos uso da mesma técnica empregada nos conversores ou adaptadores USB/Serial, com base nas informações extraídas do meu ambiente de teste criarei um link simbólico fazendo com que este dispositivo, para o programa aplicativo fiscal, esteja conectado na COM3: mv /dev/ttys2 /dev/ttys102 ln sf /dev/ttyacm1 /dev/ttys2 Desta forma, no arquivo ECF9.CFG irei informar que o número da porta serial onde está conectada a impressora não-fiscal é 3 (porta_if=3). 3.1.2. Arquivo de configuração ECF9.CFG 3.1.2.1. Porta de comunicação onde está conectada a impressora não fiscal PORTA_IF=n Número da porta serial onde está conectada a impressora não-fiscal, conforme definido na lista de dispositivo (item 3.1.2). Se omitido assumirá 1 (COM1). 3.1.3. Arquivo de configuração EMUL.INI 3.1.3.1. Tipo de letra No arquivo EMUL.INI é possível alterar para comprimido ou condensado o tipo de letra ou modo de impressão dos textos enviados para a impressora: FW_IMPRIME_CONDENSADO Quando nada for definido o tipo de letra ou modo de impressão dos textos será normal, ou seja, sem formatação comprimido ou condensado.
6 25 3.1.3.2. Gaveta Apresentam status de gaveta aberta, mesmo quando esta não está conectada à impressora nãofiscal, no arquivo EMUL.INI é possível alterar a lógica do status de Gaveta incluindo o parâmetro abaixo: FW_INVERTE_GAVETA Quando nada for definido o status da gaveta será de gaveta aberta, neste caso o parâmetro GAVETA do arquivo (0) de parametrização deverá estar configurado com 1. O modelo de gaveta para as impressoras não-fiscais Bematech Gaveta Horizontal Padrão com código Zanthus: 0037 0000 0029-4. 3.1.3.3. Modelo da impressora não-fiscal Bematech FW_MODELO_IMPRESSORA=n Define o modelo da impressora não-fiscal, conforme a tabela abaixo: 0 = MP 20 TH e MP 2000 TH 1 = MP 20 MI 5 = MP 4000 TH 7 = MP 4200 TH 3.1.3.4. Velocidade de comunicação com a impressora não-fiscal FW_VELOC_SERIAL=n Define a velocidade de comunicação (115200 57600 38400 19200 9600) com a impressora não-fiscal (normalmente não é necessário seu uso). Se omitido assumirá 9600bps (FW_VELOC_SERIAL=9600).
7 25 3.2. CIS (comunicação direta (comandos ESC/POS) conexões via portas seriais padrão RS-232C) As impressoras não-fiscais da CIS Eletrônica da Amazônia Ltda. correspondem, para a solução Zanthus Zeus Frente de Loja, como a impressora Zanthus IZ91. 3.2.1. Pré-requisitos da impressora não-fiscal da CIS Eletrônica da Amazônia Ltda. modelo PR 3000 Version: 1.4BN(UTP)Q Command mode: EPSON(ESC/POS)E-S Interface: USB & Serial 19200, none, 8, 1 & Ethernet(10Base/100Base) Protocols: TCP/IP (C1) (9100 4000) Cutter: Yes Beeper: Yes Chinese character mode: No Cutter with drawer: No Character per line: 48-fontA/64-fontB Print Density: Light Default code page: Page 0 Black mark mode: No Paper end copy mode: Yes Near PE sensor enable: No Vertical motion units: 0.5 USB number is fixed: Yes Print Speed: 300mm/s(Max) Modify date: 2016/05/18 Resident Character: Alphanumeric DIP 8 Function ON OFF SW 1 Select cutter No Yes SW 2 Select beeper Yes No SW 3 Select print density Dark Light SW 4 Two-byte character code No Yes SW 5 Character per line 42 48 SW 6 Cutter with cash drawer Yes No SW 7 Select baudrate SW 8 Select baudrate SW 7 SW 8 Baudrate ON ON 38400 OFF ON 115200 ON OFF 9600 OFF OFF 19200 3.2.2. Arquivo de configuração ECF9.CFG 3.2.2.1. Porta de comunicação onde está conectada a impressora não fiscal PORTA_IF=n Número da porta serial onde está conectada a impressora não-fiscal. Se omitido assumirá 1 (COM1).
8 25 3.2.3. Arquivo de configuração EMUL.INI 3.2.3.1. Velocidade de comunicação com a impressora não-fiscal (a partir da versão 1.13.8 da biblioteca de controle Zanthus para impressoras nãofiscais IZ91) FW_VELOC_SERIAL=n Define a velocidade de comunicação (115200 57600 38400 19200 9600) com a impressora não-fiscal. As impressoras não-fiscais da CIS Eletrônica da Amazônia Ltda. saem de fábrica com 19200bps. Se omitido assumirá 9600bps (FW_VELOC_SERIAL=9600). FW_VELOC_SERIAL=19200
9 25 3.3. CIS (usando biblioteca de alto nível do fabricante sistema operacional Windows e conexões via portas seriais padrão RS-232C ou USBs) As impressoras não-fiscais da CIS Eletrônica da Amazônia Ltda., quando fazemos uso da biblioteca de alto nível do fabricante (miniimpressorascis.dll), correspondem, para a solução Zanthus Zeus Frente de Loja, como a impressora Zanthus IZ98. As etapas dos procedimentos abaixo deverão ser seguidas na ordem descrita. Os arquivos, bibliotecas e drivers mencionados aqui poderão ser encontrados no FTP da Zanthus (ftp://ftp.zanthus.com.br/pub/zeus_frente_de_loja/_complementares/terceiros/impressorasnaofisca is). 3.3.1. Pré-requisitos da impressora não-fiscal da CIS Eletrônica da Amazônia Ltda. modelo PR 3000 Version: 1.4BN(UTP)Q Command mode: EPSON(ESC/POS)E-S Interface: USB & Serial 19200, none, 8, 1 & Ethernet(10Base/100Base) Protocols: TCP/IP (C1) (9100 4000) Cutter: Yes Beeper: Yes Chinese character mode: No Cutter with drawer: No Character per line: 48-fontA/64-fontB Print Density: Light Default code page: Page 0 Black mark mode: No Paper end copy mode: Yes Near PE sensor enable: No Vertical motion units: 0.5 USB number is fixed: Yes Print Speed: 300mm/s(Max) Modify date: 2016/05/18 Resident Character: Alphanumeric DIP 8 Function ON OFF SW 1 Select cutter No Yes SW 2 Select beeper Yes No SW 3 Select print density Dark Light SW 4 Two-byte character code No Yes SW 5 Character per line 42 48 SW 6 Cutter with cash drawer Yes No SW 7 Select baudrate SW 8 Select baudrate SW 7 SW 8 Baudrate ON ON 38400 OFF ON 115200 ON OFF 9600 OFF OFF 19200
10 25 3.3.2. Instalação 3.3.2.1. Biblioteca de alto nível da CIS no Windows 3.3.2.1.1. Biblioteca de alto nível da CIS no Windows 32 bits/ 64 bits No diretório de bibliotecas da solução Zanthus Zeus Frente de Loja, C:\Zanthus\Zeus\dll, copiar o seguinte arquivo: miniimpressorascis.dll 3.3.2.1.2. Biblioteca de controle da Zanthus no Windows 32 bits/ 64 bits No diretório de bibliotecas da solução Zanthus Zeus Frente de Loja, C:\Zanthus\Zeus\dll, copiar o seguinte arquivo: ecfreceb.dll (referente a impressora Zanthus IZ98) 3.3.2.1.3. Instalação da porta USB para comunicação através da biblioteca de alto nível para Windows 32 bits e para Windows 64 bits Nos modelos de impressoras não-fiscais CIS que possuem interface USB para comunicação do aplicativo comercial, a miniimpressoracis.dll permite que o aplicativo realize as operações com a impressora não-fiscal (através de suas funções), via USB, sem a necessidade de modificações, totalmente transparente. Basta instalar a porta USB através do driver disponível no pacote da DLL. Instalando a porta USB Ao conectar a impressora não-fiscal na USB, o Windows irá detectá-la automaticamente, é necessário instalar o driver CIS para tratamento das portas USB, a documentação do fabricante para a instalação, bem como os pacotes necessários, encontram-se disponíveis no FTP da Zanthus (ftp://ftp.zanthus.com.br/pub/zeus_frente_de_loja/_complementares/terceiros/impressorasnaofisca is/cis/windows/driver). 3.3.3. Arquivo de configuração ECF9.CFG 3.3.3.1. Porta de comunicação onde está conectada a impressora não fiscal PORTA_IF=n Número da porta serial onde está conectada a impressora não-fiscal. Se omitido assumirá 1 (COM1). 3.3.4. Arquivo de configuração EMUL.INI 3.3.4.1. Gaveta Apresentam status de gaveta aberta, mesmo quando esta não está conectada à impressora nãofiscal, no arquivo EMUL.INI é possível alterar a lógica do status de Gaveta incluindo o parâmetro abaixo:
11 25 FW_INVERTE_GAVETA Quando nada for definido o status da gaveta será de gaveta aberta, neste caso o parâmetro GAVETA do arquivo (0) de parametrização deverá estar configurado com 1. O modelo de gaveta para as impressoras não-fiscais Bematech Gaveta Horizontal Padrão com código Zanthus: 0037 0000 0029-4. 3.3.4.2. Velocidade de comunicação com a impressora não-fiscal FW_VELOC_SERIAL=n Define a velocidade de comunicação (115200 57600 38400 19200 9600) com a impressora não-fiscal. As impressoras não-fiscais da CIS Eletrônica da Amazônia Ltda. saem de fábrica com 19200bps. Se omitido assumirá 9600bps (FW_VELOC_SERIAL=9600). FW_VELOC_SERIAL=19200
12 25 3.4. Daruma As impressoras não-fiscais Daruma correspondem, para a solução Zanthus Zeus Frente de Loja, como a impressora Zanthus IZ93. As etapas dos procedimentos abaixo deverão ser seguidas na ordem descrita. Os arquivos, bibliotecas e drivers mencionados aqui poderão ser encontrados no FTP da Zanthus (ftp://ftp.zanthus.com.br/pub/zeus_frente_de_loja/_complementares/terceiros/impressorasnaofisca is). 3.4.1. Instalação 3.4.1.1. Biblioteca de alto nível da Daruma no Windows 3.4.1.1.1. Biblioteca de alto nível da Daruma no Windows 32 bits/ 64 bits No diretório do programa aplicativo fiscal da solução Zanthus Zeus Frente de Loja, que muito provavelmente poderá ser em C:\Zanthus\Zeus\pdvJava, copiar o seguinte arquivo: DarumaFrameWork.dll (versão 09.00.18 ou superior) 3.4.1.1.2. Biblioteca de controle da Zanthus no Windows 32 bits/ 64 bits No diretório de bibliotecas da solução Zanthus Zeus Frente de Loja, C:\Zanthus\Zeus\dll, copiar o seguinte arquivo: ecfreceb.dll (referente a impressora Zanthus IZ93) 3.4.1.1.3. Instalação da porta USB para comunicação através da biblioteca de alto nível para Windows 32 bits e para Windows 64 bits Na impressora não-fiscal Daruma modelo DR800 H com interface USB para comunicação com o aplicativo comercial, a DarumaFrameWork.dll permite que o aplicativo realize as operações com a impressora não-fiscal (através de suas funções), via USB, sem a necessidade de modificações, totalmente transparente. Basta instalar a porta USB (conversor USB/Serial) através do driver disponível no pacote da DLL. Instalando a porta USB Ao conectar a impressora não-fiscal na USB, o Windows irá detectá-la automaticamente, é necessário instalar o driver Daruma para tratamento das portas USB, este se encontra no pacote Driver_DR800.exe. IMPORTANTE: A biblioteca de alto nível Daruma (DarumaFramework) encontra a porta de comunicação em que a impressora não-fiscal Daruma está conectada. Este processo de busca pode levar alguns minutos.
13 25 3.4.1.2. Biblioteca de alto nível da Daruma no Linux 3.4.1.2.1. Biblioteca de alto nível da Daruma no Linux Ubuntu 9.04 (ou superior) 3.4.1.2.1.1. Criação do local onde serão depositadas as informações geradas pelas bibliotecas de alto-nivel da Daruma: Como superusuário (root) criar a pasta DarumaFramework em /usr/local/share: cd / mkdir /usr/local/share/darumaframework 3.4.1.2.1.2. No diretório de bibliotecas da solução Zanthus Zeus Frente de Loja, /Zanthus/Zeus/lib, copiar os seguintes arquivos: libdarumaframework.so 3.4.1.2.1.3. Como superusuário, no diretório do programa aplicativo fiscal da solução Zanthus Zeus Frente de Loja, /Zanthus/Zeus/pdvJava, criar o link simbólico, conforme sintaxe abaixo: cd /Zanthus/Zeus/pdvJava ln sf /Zanthus/Zeus/lib/libDarumaFramework.so libdarumaframework.so Executar o comando ldconfig. 3.4.1.2.2. Biblioteca de controle da Zanthus no Linux Ubuntu 9.04 (ou superior) No diretório de bibliotecas da solução Zanthus Zeus Frente de Loja, /Zanthus/Zeus/lib, copiar o seguinte arquivo: lib3ecfreceb_r93.so.x.y.z.rh9 (versão 1.12.7 (X.Y.Z) ou superior referente a impressora Zanthus IZ93) IMPORTANTE: A biblioteca de alto nível Daruma (DarumaFramework) encontra a porta de comunicação em que a impressora não-fiscal Daruma está conectada. Este processo de busca pode levar alguns minutos. 3.4.2. Arquivo de configuração EMUL.INI 3.4.2.1. Gaveta Apresentam status de gaveta aberta, mesmo quando esta não está conectada à impressora nãofiscal, no arquivo EMUL.INI é possível alterar a lógica do status de Gaveta incluindo o parâmetro abaixo: FW_INVERTE_GAVETA Quando nada for definido o status da gaveta será de gaveta aberta, neste caso o parâmetro GAVETA do arquivo (0) de parametrização deverá estar configurado com 1.
14 25 O modelo de gaveta para as impressoras não-fiscais Bematech Gaveta Horizontal Padrão com código Zanthus: 0037 0000 0029-4. 3.4.2.2. Modelo da impressora não-fiscal Daruma FW_MODELO_IMPRESSORA=n Define o modelo da impressora não-fiscal, conforme a tabela abaixo: 0 = DR700 1 = DR800
15 25 3.5. Datecs As impressoras não-fiscais Datecs com conexão bluetooth correspondem, para a solução Zanthus Zeus Frente de Loja, como a impressora Zanthus IZ97. As etapas dos procedimentos abaixo deverão ser seguidas na ordem descrita. Os arquivos, bibliotecas e drivers mencionados aqui poderão ser encontrados no FTP da Zanthus (ftp://ftp.zanthus.com.br/pub/zeus_frente_de_loja/_complementares/terceiros/impressorasnaofisca is). 3.5.1. Instalação 3.5.1.1. Biblioteca de alto nível da Datecs no Windows 32 bits/ 64 bits No diretório de bibliotecas da solução Zanthus Zeus Frente de Loja, C:\Zanthus\Zeus\dll, copiar os seguintes arquivos: ecfreceb.dll (referente a impressora Zanthus IZ97) Printing.dll (versão 2.2.6.1 ou superior) 3.5.2. Arquivo de configuração ECF9.CFG 3.5.2.1. Porta (serial) de comunicação onde está conectada a impressora nãofiscal PORTA_IF=n Número da porta serial onde está conectada a impressora não-fiscal, conforme definido na lista de Configurações de Bluetooth do Windows (porta COM da Direção: Saída e Nome: DDP-350 Bluetooth Serial Port ). 3.5.3. Arquivo de configuração EMUL.INI 3.5.3.1. Velocidade de comunicação com a impressora não fiscal FW_VELOC_SERIAL=n Define a velocidade de comunicação (115200 57600 38400 19200 9600) com a impressora não-fiscal (normalmente não é necessário seu uso). Se omitido assumirá 115200bps (FW_VELOC_SERIAL=115200). Esta informação será obtida pela leitura do HARWARE SETUP BAUD RATE das impressoras nãofiscais da Datecs. IMPORTANTE: No HARDWARE SETUP das impressoras não-fiscais da Datecs alterar a configuração AUTO OFF TIME para Never.
16 25 3.6. Elgin A impressora não-fiscal Elgin modelo i9 corresponde, para a solução Zanthus Zeus Frente de Loja, como a impressora Zanthus IZ91. As etapas dos procedimentos abaixo deverão ser seguidas na ordem descrita. Os arquivos, bibliotecas e drivers mencionados aqui poderão ser encontrados no FTP da Zanthus (ftp://ftp.zanthus.com.br/pub/zeus_frente_de_loja/_complementares/terceiros/impressorasnaofisca is). 3.6.1. Pré-requisitos da impressora não-fiscal da Elgin modelo i9 Versão do firmware CV1.03.24: a partir desta versão é disponibilizado o uso do conversor usb/serial (Prolific PL2303). Abaixo seguem as configurações realizadas na impressora não-fiscal da Elgin modelo i9: Modelo: MODELO ELGIN I9 Versão do Firmware: CV1.03.24 N/S: 15001938 Interface Serial BaudRate: 9600bps Data bits: 8 bits Stop bits: 1 bit Controle de fluxo: DTR/DSR Paridade: Nenhum Erro de recepção: impressões '?' Tamanho do Buffer de 48Kbytes Character Residente Alfanumérico Codepage: Page3, PC860 (portuguese) Densidade de impressão: 2 Velocidade de impressão: 260mm/s Largura do papel: 80mm BM sensor: Disable DIP Switch1: 1 OFF 2 OFF 3 OFF 4 OFF 5 OFF 6 OFF 7 ON 8 OFF DIP Switch2: 1 ON 2 OFF 3 OFF 4 OFF 5 OFF 6 OFF 7 OFF 8 OFF
17 25 3.6.2. Procedimento para configurar a impressora não-fiscal da Elgin modelo i9 com conexão USB no Linux IMPORTANTE: Os resultados abaixo foram extraídos dos ambientes de testes disponíveis em nossos laboratórios. O comando dmesg será usado para verificar em qual porta a impressora não-fiscal da Elgin modelo i9 está conectada, veja um exemplo abaixo: [89729.712437] usb 1-1.2: new full-speed USB device number 8 using ehci_hcd [89730.171679] usbcore: registered new interface driver usbserial [89730.171689] USB Serial support registered for generic [89730.171719] usbcore: registered new interface driver usbserial_generic [89730.171720] usbserial: USB Serial Driver core [89730.172237] USB Serial support registered for pl2303 [89730.172250] pl2303 1-1.2:1.0: pl2303 converter detected [89730.173904] usb 1-1.2: pl2303 converter now attached to ttyusb0 [89730.173912] usbcore: registered new interface driver pl2303 [89730.173913] pl2303: Prolific PL2303 USB to serial adaptor driver A linha, usb 3-1: usb 1-1.2: pl2303 converter now attached to ttyusb0, nos informa que o equipamento que faz uso do driver Prolific (PL2303) está conectado ao dispositivo (device) /dev/ttyusb0. No meu ambiente de teste farei com que /dev/ttyusb0 aponte para uma porta serial disponível, por exemplo, /dev/ttys2 que é equivalente à COM3, sendo assim o parâmetro porta_if= deverá estar com 3, ou seja: porta_if=3 mv /dev/ttys2 /dev/ttys100 ln sv /dev/ttyusb0 /dev/ttys2 Para ficar automático, no arquivo /etc/rc.local inserir as seguintes linhas de comando: echo e \naguarde. Configurando as portas seriais. mv /dev/ttys2 /dev/ttys100 ln sv /dev/ttyusb0 /dev/ttys2 echo e \nconfiguracao das portas seriais realizada com sucesso. IMPORTANTE: Antes de realizar as configurações das portas seriais no /etc/rc.local, verificar, usando o comando dmesg, se o dispositivo /dev/ttyusb0 existe. 3.6.3. Procedimento para configurar a impressora não-fiscal da Elgin modelo i9 com conexão USB no Windows IMPORTANTE: Os resultados abaixo foram extraídos dos ambientes de testes disponíveis em nossos laboratórios. No Windows não foi necessário instalar o driver (ou device driver) disponibilizado pelo fabricante (ELGINi9_Driver_v-1.5.3.exe), o próprio "Update do Windows" realizou a instalação e configuração: Prolific USB-to-Serial Comm Port (COM3), no meu ambiente de teste apontarei para a porta serial disponibilizada, COM3, sendo assim o parâmetro porta_if= deverá estar com 3, ou seja: porta_if=3 IMPORTANTE: Após realizar a instalação/configuração da porta serial no Windows, recomenda-se desligar a impressora não-fiscal e ligá-la novamente.
18 25 3.7. Epson As impressoras não-fiscais Epson correspondem, para a solução Zanthus Zeus Frente de Loja, como a impressora Zanthus IZ92. As etapas dos procedimentos abaixo deverão ser seguidas na ordem descrita. Os arquivos, bibliotecas e drivers mencionados aqui poderão ser encontrados no FTP da Zanthus (ftp://ftp.zanthus.com.br/pub/zeus_frente_de_loja/_complementares/terceiros/impressorasnaofisca is). 3.7.1. Instalação 3.7.1.1. Biblioteca de alto nível da Epson no Windows 3.7.1.1.1. Biblioteca de alto nível da Epson no Windows 32 bits/ 64 bits No diretório de bibliotecas da solução Zanthus Zeus Frente de Loja, C:\Zanthus\Zeus\dll, copiar o seguinte arquivo: InterfaceEpsonNF.dll (versão 1.7.0 ou superior) 3.7.1.1.2. Biblioteca de controle da Zanthus no Windows 32 bits/ 64 bits No diretório de bibliotecas da solução Zanthus Zeus Frente de Loja, C:\Zanthus\Zeus\dll, copiar o seguinte arquivo: ecfreceb.dll (referente a impressora Zanthus IZ92) 3.7.1.1.3. Instalação da porta USB para comunicação através da biblioteca de alto nível para Windows 32 bits e para Windows 64 bits Nos modelos de impressoras não-fiscais Epson que possuem interface USB para comunicação do aplicativo comercial, a InterfaceEpsonNF.dll permite que o aplicativo realize as operações com a impressora não-fiscal (através de suas funções), via USB, sem a necessidade de modificações, totalmente transparente. Basta instalar a porta USB através do driver disponível no pacote da DLL. Instalando a porta USB Ao conectar a impressora não-fiscal na USB, o Windows irá detectá-la automaticamente, é necessário instalar o driver Epson para tratamento das portas USB, este se encontra no pacote TMUS400c.zip. 3.7.1.2. Biblioteca de alto nível da Epson no Linux 3.7.1.2.1. Biblioteca de alto nível da Epson no Linux Ubuntu 9.04 (ou superior) No diretório de bibliotecas da solução Zanthus Zeus Frente de Loja, /Zanthus/Zeus/lib, copiar o seguinte arquivo:
19 25 libinterfaceepsonnf.so.1.7.0 (ou versão superior) 3.7.1.2.2. Biblioteca de controle da Zanthus no Linux Ubuntu 9.04 (ou superior) No diretório de bibliotecas da solução Zanthus Zeus Frente de Loja, /Zanthus/Zeus/lib, copiar o seguinte arquivo: lib3ecfreceb_r92.so.x.y.z.rh9 (versão 1.12.7 (X.Y.Z) ou superior referente a impressora Zanthus IZ92) 3.7.2. Arquivo de configuração ECF9.CFG 3.7.2.1. Porta (serial) de comunicação onde está conectada a impressora nãofiscal PORTA_IF=n Número da porta serial onde está conectada a impressora não-fiscal, conforme definido na lista de dispositivo (item 3.3.2). Se omitido assumirá 1 (COM1). 3.7.3. Arquivo de configuração EMUL.INI 3.7.3.1. Conexão USB Caso a impressora não-fiscal esteja conectada a uma porta serial o parâmetro abaixo deverá estar comentado ou ser removido do arquivo EMUL.INI e deveremos adotar o procedimento descrito no item 3.3.2.1. Quando a impressora não-fiscal estiver conectada a uma porta USB, no arquivo EMUL.INI devemos incluir o parâmetro abaixo: FW_ PORTA_COMUNIC=USB 3.7.3.2. Gaveta Apresentam status de gaveta aberta, mesmo quando esta não está conectada à impressora não fiscal, no arquivo EMUL.INI é possível alterar a lógica do status de Gaveta incluindo o parâmetro abaixo: FW_INVERTE_GAVETA Quando nada for definido o status da gaveta será de gaveta aberta, neste caso o parâmetro GAVETA do arquivo (0) de parametrização deverá estar configurado com 1. O modelo de gaveta para as impressoras não-fiscais Epson Gaveta Horizontal Padrão com código Zanthus: 0037 0000 0029-4. 3.7.3.3. Velocidade de comunicação com a impressora não fiscal
20 25 FW_VELOC_SERIAL=n Define a velocidade de comunicação (115200 57600 38400 19200 9600) com a impressora não-fiscal (normalmente não é necessário seu uso). Se omitido assumirá 9600bps (FW_VELOC_SERIAL=9600). 3.7.3.4. Modo de verificação do papel No arquivo EMUL.INI é possível alterar o modo de verificação do status de papel incluindo o parâmetro abaixo: FW_PAPEL=N N = 1 assume que a impressora não-fiscal verifica o status de pouco papel e sem papel. Quando algum destes sensores for ativado será retornada a mensagem de PAPEL NO FIM. 3.7.4. Arquivo de configurações da API Epson (InterfaceEpsonNF) InterfaceEpsonNF.xml Nos modelos de impressoras não-fiscais que tenham suporte a impressão da folha de cheque, leitura do código CMC-7 e autenticação é necessário a existência ou a presença do arquivo de configuração da biblioteca, InterfaceEpsonNF.xml, na pasta onde o programa aplicativo fiscal está sendo executado, com, no mínimo, o conteúdo abaixo: Exemplo de arquivo: <EPSON> <NAO_FISCAL> <CHEQUES> <TIMEOUT>25</TIMEOUT> <MOEDA> <SINGULAR>REAL</SINGULAR> <PLURAL>REAIS</PLURAL> <CENTAVOS>S</CENTAVOS> </MOEDA> <CHEQUE> <CODIGO>1</CODIGO> <DESCRICAO>BANCO DO BRASIL</DESCRICAO> <VALOR> <HORIZONTAL>55</HORIZONTAL> <VERTICAL>65</VERTICAL> </VALOR> <EXTENSO> <HORIZONTAL>145</HORIZONTAL> <VERTICAL>60</VERTICAL> </EXTENSO> <PARA> <HORIZONTAL>165</HORIZONTAL> <VERTICAL>50</VERTICAL> </PARA> <CIDADE> <HORIZONTAL>95</HORIZONTAL> <VERTICAL>43</VERTICAL> </CIDADE>
21 25 <DIA> <HORIZONTAL>60</HORIZONTAL> <VERTICAL>43</VERTICAL> </DIA> <MES> <HORIZONTAL>49</HORIZONTAL> <VERTICAL>43</VERTICAL> </MES> <ANO> <HORIZONTAL>19</HORIZONTAL> <VERTICAL>43</VERTICAL> </ANO> <ADICIONAL> <HORIZONTAL>160</HORIZONTAL> <VERTICAL>10</VERTICAL> </ADICIONAL> </CHEQUE> </CHEQUES> <MICR> <TIMEOUT>25</TIMEOUT> <TIPO>0</TIPO> </MICR> </NAO_FISCAL> </EPSON> IMPORTANTE: O documento a ser autenticado (impressão avulsa) tem que ter tamanho igual ou superior a 154mm, caso contrário este documento terá que ser passado novamente para que a impressora não-fiscal saia do estado de SLIP.
22 25 3.8. Toshiba As impressoras não-fiscais Toshiba correspondem, para a solução Zanthus Zeus Frente de Loja, como a impressora Zanthus IZ94. As etapas dos procedimentos abaixo deverão ser seguidas na ordem descrita. Os arquivos, bibliotecas e drivers mencionados aqui poderão ser encontrados no FTP da Zanthus (ftp://ftp.zanthus.com.br/pub/zeus_frente_de_loja/_complementares/terceiros/impressorasnaofisca is). 3.8.1. Instalação 3.8.1.1. Biblioteca de alto nível da Toshiba no Windows A biblioteca de comunicação, TGCSSureMark.dll, é compatível com as seguintes (e somente estas) versões do Windows: Windows XP com Service Pack 3 32 bits Windows 7 com Service Pack 1 32 bits 3.8.1.1.1. Biblioteca de alto nível da Toshiba no Windows 32 bits No diretório de bibliotecas da solução Zanthus Zeus Frente de Loja, C:\Zanthus\Zeus\dll, copiar o seguinte arquivo: TGCSSureMark.dll (versão 1.3.6.0 ou superior) 3.8.1.1.2. Biblioteca de controle da Zanthus no Windows 32 bits No diretório de bibliotecas da solução Zanthus Zeus Frente de Loja, C:\Zanthus\Zeus\dll, copiar o seguinte arquivo: ecfreceb.dll (referente a impressora Zanthus IZ94) 3.8.1.2. Biblioteca de alto nível da Toshiba no Linux 3.8.1.2.1. Biblioteca de alto nível da Toshiba no Linux Ubuntu 12.04 (ou superior) 3.8.1.2.1.1. No diretório de bibliotecas da solução Zanthus Zeus Frente de Loja, /Zanthus/Zeus/lib, copiar o seguinte arquivo: libtgcssuremark.so.1.3.6.0 Como superusuário, no diretório de bibliotecas da solução Zanthus Zeus Frente de Loja, /Zanthus/Zeus/lib, criar o link simbólico, conforme sintaxe abaixo: cd /Zanthus/Zeus/lib ln sf libtgcssuremark.so.1.3.6.0 libtgcssuremark.so
23 25 Executar o comando ldconfig. 3.8.1.2.2. Biblioteca de controle da Zanthus no Linux Ubuntu 12.04 (ou superior) No diretório de bibliotecas da solução Zanthus Zeus Frente de Loja, /Zanthus/Zeus/lib, copiar o seguinte arquivo: lib3ecfreceb_r94.so.x.y.z.rh9 (versão 1.13.4 (X.Y.Z) ou superior referente a impressora Zanthus IZ94) 3.8.1.3. Arquivo de configuração TGCSSureMarkConf.ini Exemplo de arquivo: numerogaveta=0 tempoativacaogaveta=0 tempodesativacaogaveta=200 tempoesperainsercaodocumento=17 tempoesperaretiradadocumento=17 tamanhoarquivolog=5000000 nivellog=0 portaserial=/dev/ttys0 velocidadeserial=115200 Onde: numerogaveta: número de identificação da gaveta; tempoativacaogaveta: tempo de ativação da gaveta em milisegundos (tempo máximo 255); tempodesativacaogaveta: tempo de desativação da gaveta em milisegundos (tempo máximo 255); tempoesperainsercaodocumento: tempo que o comando posicionardocumento() irá esperar para receber documento; tempoesperaretiradadocumento: tempo que o comando autenticardocumento() irá manter o documento livre (após esse tempo será preciso usar o comando ejetardocumento() ou os botões da impressora para liberar o documento); tamanhoarquivolog: tamanho máximo do arquivo de LOG (em bytes). O maior valor suportado é 4GB (4000000000); nivellog: nível de LOG desejado (0 não gera LOG; 1 gera LOG somente de erros e retornos; 2 gera LOG máximo com erros, retornos, entradas, saídas e LOG de bytes); diretoriolog: local onde o arquivo de LOG será criado. Pode ser um caminho relativo ou absoluto e deve estar de acordo com as regras de endereço do sistema operacional em uso. Caso o diretório não exista ou o caminho esteja incorreto, a biblioteca criará o LOG na pasta corrente; portaserial: nome da porta utilizada para comunicação (exemplo: COM1 no Windows e /dev/ttys0 no Linux); velocidadeserial: velocidade de comunicação (115200 bps). IMPORTANTE: A velocidade configurada na impressora deverá ser a mesma presente na linha velocidadeserial presente no arquivo TGCSSureMarkConf.ini, preferencialmente 115200 bps. O protocolo de comunicação a ser adotado deve ser o DTR/DSR.
24 25 3.8.1.4. Arquivo de configuração checklayouts.xml Nos modelos de impressoras não-fiscais que tenham suporte a impressão da folha de cheque, leitura do código CMC-7 e autenticação é necessário a existência ou a presença do arquivo de configuração da biblioteca, checklayouts..xml, na pasta onde o programa aplicativo fiscal está sendo executado, com, no mínimo, o conteúdo abaixo:. Exemplo de arquivo: <coordenadas> <banco nome="default" codigo="000"> <valor x="23" y="243" tam="10"/> <extenso1 x="86" y="207" tam="80"/> <extenso2 x="86" y="176" tam="70"/> <favorecido x="86" y="144" tam="70"/> <localdata x="70" y="110" tam="34"/> <mes x="30" y="110" tam="10"/> <ano x="7" y="110" tam="4"/> <infoadic1frente x="86" y="15" tam="80"/> <infoadic1verso x="86" y="210" tam="80"/> <infoadic2frente x="86" y="1" tam="80"/> <infoadic2verso x="86" y="190" tam="80"/> <infoadic3frente x="86" y="1" tam="80"/> <infoadic3verso x="86" y="170" tam="80"/> </banco> <banco nome="banco do Brasil" codigo="001"> <valor x="23" y="243" tam="10"/> <extenso1 x="86" y="207" tam="80"/> <extenso2 x="86" y="176" tam="70"/> <favorecido x="86" y="144" tam="70"/> <localdata x="70" y="110" tam="34"/> <mes x="30" y="110" tam="10"/> <ano x="7" y="110" tam="4"/> <infoadic1frente x="86" y="15" tam="80"/> <infoadic1verso x="86" y="210" tam="80"/> <infoadic2frente x="86" y="1" tam="80"/> <infoadic2verso x="86" y="190" tam="80"/> <infoadic3frente x="86" y="1" tam="80"/> <infoadic3verso x="86" y="170" tam="80"/> </banco> </coordenadas> 3.8.2. Arquivo de configuração EMUL.INI 3.8.2.1. Gaveta Apresentam status de gaveta aberta, mesmo quando esta não está conectada à impressora não fiscal, no arquivo EMUL.INI é possível alterar a lógica do status de Gaveta incluindo o parâmetro abaixo: FW_INVERTE_GAVETA Quando nada for definido o status da gaveta será de gaveta aberta, neste caso o parâmetro GAVETA do arquivo (0) de parametrização deverá estar configurado com 1.
25 25 O modelo de gaveta para as impressoras não-fiscais Toshiba Gaveta Horizontal Padrão com código Zanthus: 0037 0000 0029-4. 3.8.2.2. Impressão no verso da folha do cheque (alternativa para a autenticação) A autenticação do documento avulso apresentou alguns problemas como: demora na execução do comando e em determinados momentos permite a autenticação por cima e outros não. A impressão no verso da folha do cheque pode ser ativada como alternativa ao comando de autenticação, incluindo o parâmetro abaixo: FW_ IMPRIME_VERSO_CHEQUE