Drukarki na USB w C# - co pewien czas zanika komunikacja

0

Witam.
Mam pewien problem z wydrukami poprzez port USB na drukarkach. Wygląda to tak, że co jakiś czas drukarka przestaje odpowiadać na wysyłane komunikaty. Mam aplikację napisaną w C# .NET 4.0 i uruchamianą na Windowsach 7 i 10.
Czy ktoś może spotkał się z takim problemem?

0

Jest to "normalna" drukarka, drukarka etykietowa ZPL, EPL, emulacja RS232? Fiskalna? Cokolwiek więcej napisz ;) Może to drukarka na baterie i po jakimś czasie przechodzi w stan uśpienia, a nie sprawdzasz czy połączenie nadal aktywne?

0

W moim przypadku jest to drukarka fiskalna, która nie przechodzi w stan uśpienia (cały czas podłączona do sieci plus wbudowana bateria). Zwłaszcza że wspomniany efekt otrzymuje w różnych momentach wydruku. Wyłączyłem już usypianie portów USB w opcjach zasilania. Ale to nic nie pomogło.

A i podłączona poprzez usb z emulacją portu COM.

0

Czyli szeregowa komunikacja rs232. Posnet, elzab, datecs? No i jakim protokołem komunikacja idzie. Masz do tego liba czy sam ramki składasz i ślesz. Napisałem trochę softu do takich drukarek ale kuli szklanej nie mam.

0

Drukarki Posnet HD i XL po nowym protokole POSNET. Zarówno jak sam wysyłam ramki do portu com (poprzez obiekt SerialPort) jak i gdy używam biblioteki Posnetowej efekt jest taki sam. Co jakiś czas drukarka przestaje odpowiadać na wysłane zapytanie. Gdy wysyłam sam ramki to w tym momencie próbuję odczytać jej stan ale i na te zapytania nie dostaję odpowiedzi. Gdy drukarkę podłączam poprzez kabel COM nawet z przejściówką do tego samego portu USB to nie ma tego efektu.

0

Pokaz kod nadający, oczekujący na zakończenie requesta, sprawdzenie połączenia. Btw - masz apke demo od Posnetu? Wystaw nią kilka paragonów i sprawdź czy jest taki efekt. Btw ich linka zapisuje w logu błędy -co tam masz?

0

Btw - patrząc na drukarkę od złączy - to ka zawsze robiłem ma porcie com1(rj45) i do kompa przes przejściówkę do usb albo po ethernecie. Musisz mieć to w trybie usb? Jeśli tak to pokaz kod inicjujacy luba - tak musisz podać ze to usb.

0

Ja po prostu wysyłam komendę z opisu protokołu i nasłuchuję na porcie odpowiedzi drukarki. Jeżeli nie mam przez zadany czas odpowiedzi to wysyłam komendę "!sprn", która miała działać w każdym trybie drukarki. I też nasłuchuję odpowiedzi ale nic nie wraca.
Mam aplikację testową Posnetu ale zachowuje się identycznie. Po którejś komendzie potrafi zwrócić "timeout'a" a próba odczytu statusu z drukarki zwraca błąd "operacja w toku". Wysyłałem nawet logi do helpdesku Posnetu ale oni stwierdzili, że to musi być problem portu USB albo kable USB. Czasami wymiana kabla rzeczywiście pomaga ale nie zawsze.
Do tej pory zazwyczaj drukarki były podłączane przez port COM ale od pewnego czasu w komputerach stacjonarnych nie dodają portu RS232 a tylko same usb. A za przejściówkę nie każdy chce dopłacać.

0

I co robisz, żeby to naprawić? Reset drukarki albo kompa? Samo przechodzi po jakimś czasie?

0

Reset drukarki albo kompa. Pomaga też odpięcię kabla USB od kompa i wpięcie go z powrotem.

1 użytkowników online, w tym zalogowanych: 0, gości: 1