ESC \ POS Command - Setting User Settings - c#

First I'd like to say that long time reader of this site! Has saved me a lot from some problems that I've run in to while learning how to develop applications (specifically in c#).
Now on to the problem I am facing. I am currently developing an application that will set the speed and the power supply unit values on the EPSON TM-T88V to the values of 13 and 3 (speed and PSU). I have been using the provided commands located here on EPSON's Site. I am able to communicate with the printer by sending simple commands such as cut paper and line feed using hex in c# (using RawPrinterHelper), So I know I am able to connect to it. When I attempt to enter the user setup by using the values provided in their website, the printer seems to just "lock up". I have to rest the printer after about 2 minutes for me to be able to use it again. Thankfully, it doesn't seem like its writing anything at all to the printer, which is probably why it hasn't failed yet.
Does anyone have any experience changing settings to POS printer (specifically EPSON) who could help me with this? Usually there's a tool that will allow you to just send a .txt file with HEX values (like TPGs), but I cannot seem to find anything like that for EPSON POS printers. Any help would be greatly appreciated! Thank You

Try to reset a printer (ESC #) before start a user settings commands. It helped for me in the same case.

Related

Zebra s600 print script

This is my first try to create a c# script to print a label from a Zebra s600 printen. I have a really hard time finding a good guide on the internet about how this would work. The Zebra s600 is also a very old model. Right now I am using the SDK from Zebra:
https://www.zebra.com/gb/en/support-downloads/printer-software/link-os-multiplatform-sdk.html#text_f34a
But I found out that the s600 is not included in the support list. My script does activated a little greenlight on the printer the moment I run the script. But nothing else happens. I also have no idea how to search further for my issue. Every search is a dead end.
I did followed this tutorial because I could't find any example on the web:
https://www.youtube.com/watch?v=RvWG9_rE9rg
Seems like it still supports ZPL. Have you tried sending ~WC? Try opening a command prompt and doing echo ~WC > LPT1 or echo ~WC > COM1.
If that prints a config label, then you can either use the ZDesigner drivers to print to it as a normal windows printer. If you do not find a driver for the exact model of printer, just select one with the same DPI and PDL.
Or you can write ZPL directly to the printer. To figure out what ZPL to send, you can use ZebraDesigner. The free versions are sufficient. Avoid the XML functionality unless you find the printer to support it - it was introduced after that series, I think.

Implementing Avery Monarch 9416XL printer into C# project

has anyone had any dealings with the above mentioned printer or one like it? I have been handed the task of introducing this printer into our c# project and am not sure where to start. I have created a sample .lbl file using Averys recommended software to get all of the dimensions correct. (Nicelabel SE)
the printer is connected to the PC via Network.
here is a Sample Image of the project that I am trying to create, I have spoken to one of the engineers at Monarch and he is helping me with creating a base file to send to the printer, and having some of the data as a variable.
ideally it would be good if I could launch a dos program which would handle this for me, but I seem to really be pulling at straws here.. I have seen the Zebra SDK, but im not sure if this printer is compatible.
Thanks.
I have spoken to the Guys from Avery and they built a template for me to use, and with a variable section in the code I was able to put in my own settings to get the required output.
To send the file to the printer I was able to use the LPR Service in windows using a batch file.

ASP.Net Print PDF directly to Printer With Preferences

I'm working on a project that requires us to send PDFs to a printing press. We've previously done this with a desktop app and Acrobat, but I'd like to switch to an ASP.Net app to give us more flexibility on what device the end user is using (there will likely only be one user at any given time).
Following something similar to this MS KB article is working well for sending the PDFs - the printer prints the documents, decent quality, etc.
The only issue I've found though, is that our files may require different printer configurations - e.g. one may need to be booklet folded, while the next may not.
Previously we had set these up in preconfigured drivers (i.e. "MyPrinter1" is set to booklet folded, "MyPrinter2" is not - both point to the same physical printer).
Sending the raw data, however, seems to ignore these. I'm assuming it's due to some header data not being included, or something similar; but I haven't found any info on how to include it.
I'm open to other methods. I've tried GhostScript, but it threw errors about the files. PDFSharp seems to work fine locally or while logged in to the web server, but doesn't do anything when logged out (not even an error message; assuming this is Adobe more than PDFSharp).
I'm potentially open to a paid option, but would (obviously) prefer free.
It's been a while and I forgot I had asked this question, but what we wound up doing was:
PdfView4Net (http://www.o2sol.com/pdfview4net/overview.htm) for opening the PDF and managing the print job.
Setting up default printing preferences for each configuration on the print server.
Making sure all printer configurations were installed for the same user as the service.

Server side printing of PDF files over the network installed Printers

Gone through the already existing posts on this topic, but my requirement is some what bit different.
Print jobs over the Network installed printers, upon a action in client side browser. Web server has got all printers in it, based on the client data, we need to print with client given configuration straight away, sending the job to printer(may be a different locations - but this is not a problem since the printers are in same network). I have seen printing architecture, Win32_print Class, SNMP, System.drawing.Printing, System.Printing.... but couldn't find the way to achieve this.. (Asp.net,C#)
-Files are been already existed in a server folder, just I need to pick up and send to a printer with client Selected Configuration...
update:I have to use JDF approach because all the files are PDF files. I am able to create JDF files with the selected configuration but sending this JDF to printer(JDF enabled) making me tough... There is JMF which post the JDF to printer, but not sure how to implement it.. still finding the ways, will be great if some one helps in this.
Something I can answer! 8-) I'm actually working on a project that uses this, right now.
Do not use Acrobat Reader as any sort of server application. It has a User Interface that will pop up on a screen that doesn't exist, at an unexpected time and freeze your app, waiting for a click that will never happen.
Use Ghostscript. Ghostscript is free, Open Source and will work perfectly for what you want. Out-of-the-box it consists of a DLL and a command line inhterface, however there is an API and a ton of different interfaces including .Net, and versions for both Windows and Linux.
On a more "overview" type of note, the reason you can drag a PDF into a printer on your workstation is because Acrobat Reader contains the code and hooks to allow this. Windows doesn't actually contain native functionality to print PDFs.

Print a barcode to a Intermec PB20 via the LinePrinter API

Does anyone know how to print a barcode to the Intermec PB20 bluetooth printer from a Windows Compact Framework application? We are currently using the Intermec LinePrinter API but have been unable to find a way to print a barcode.
­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
Thank you all for your thoughts. Printing directly to the serial port is likely the most flexible method. In this case we didn't want to replicate all of the work that was already built into the Intermec dll for handling the port, printer errors, etc. We were able to get this working by sending the printer the appropriate codes to switch it into a different mode and then pass direct printer commands that way.
Here was our solution in case anyone else happens to encounter a similar issue working with Intermec Printers. The following code is a test case that doesn't catch printer errors and retry, etc. (See Intermec code examples.)
Intermec.Print.LinePrinter lp;
int escapeCharacter = int.Parse("1b", NumberStyles.HexNumber);
char[] toEzPrintMode = new char[] { Convert.ToChar(num2), 'E', 'Z' };
lp = new Intermec.Print.LinePrinter("Printer_Config.XML", "PrinterPB20_40COL");
lp.Open();
lp.Write(charArray2); //switch to ez print mode
string testBarcode = "{PRINT:#75,10:PD417,YDIM 6,XDIM 2,COLUMNS 2, SECURITY 3|ABCDEFGHIJKL|}";
lp.Write(testBarcode);
lp.Write("{LP}"); //switch from ez print mode back to line printer mode
lp.NewLine();
lp.Write("Test"); //verify line printer mode is working
There is a technical document on Intermec's support site called the "Technical Manual" that describes the code for directly controlling the printer. The section about Easy Print describes how to print a variety of barcodes.
Last time I had to print Barcode (despite the printer or framework) I resorted to use a True Type font with the Barcode I needed. (In my case was EAN-13 something), an european barcode.
There are fonts where you simply write numbers (and/or letters when supported) and you get a perfect barcode any scanner can read :)
Google is your friend. I don't know if there are free ones.
Thank you for your answer. There are free fonts available -- However, the PB20 is a handheld printer with a few built-in fonts. It has the capability to print barcodes and can be manipulated directly via the serial port. Intermec provides a .Net CF API to make printing "easy", and it is using this API that we have been unable to figure out how to tell the printer to print a barcode.
Ditch all API's and use a serial port API directly.
Talk the printers language and you can get decent results.
Every other approach leads to frustration.
Not so pretty, but that is the way my old factory worked.
4k print jobs per day, and none ever missed.
Free 3 of 9
This is 3 of 9 (sometimes called "code
39"), a widely used barcode standard
that includes capital letters,
numbers, and several symbols. This is
not the barcode for UPC's (universal
price codes) found on products at the
store. However, most kinds of barcode
scanners will recognize 3 of 9 just
fine.

Categories

Resources