-1

I have a Datecs DPP-450 ESC POS thermal printer, which comes with an API.

I can successfully print over Bluetooth, since the API provides simple codes for connecting, printing texts and borders, but I am unable to set page height bigger than 2000+ ( dots I think ). I am printing invoices and I need height bigger than 2000. I have search on the internet and found :

ESC W xL xH yL yH dxL dxH dyL dyH.

Set printing area in page mode

[Range] 0≤ xL xH yL yH dxL dxH dyL dyH ≤255 (except dxL=dxH=0 or dyL=dyH=0 )

[Description] The horizontal starting position, vertical starting position, printing area width, and printing area height are defined as x0, y0, dx, dy, respectively. Each setting for the printable area is calculated as follow:

x0 = [(xL + xH x 256) x (horizontal motion unit)]

y0 = [(yL + yH x 256) x (vertical motion unit)]

dx = [(dxL + dxH x 256) x (horizontal motion unit)]

dy = [(dyL + dyH x 256) x (vertical motion unit)]

, but can't manage to make it work.

Not much code to show, I have tried :

printer.reset();
printer.write(new byte[]{0x1B});
printer.write(new byte[]{0x57});
printer.write(new byte[]{0});  OR new byte[]{0x30}
printer.write(new byte[]{0});  OR new byte[]{0x30}
printer.write(new byte[]{0});  OR new byte[]{0x30}
printer.write(new byte[]{0});  OR new byte[]{0x30}
printer.write(new byte[]{64}); OR new byte[]{0x36, 0x34}
printer.write(new byte[]{3});  OR new byte[]{0x33}
printer.write(new byte[]{96}); OR new byte[]{0x39, 0x36}
printer.write(new byte[]{11}); OR new byte[]{0x31, 0x31}
printer.selectPageMode();  // make printer enter PAGE MODE

Any ideas of correct way to get a height around 5000 ? As a workaround I can print piece by piece but I'm sure there is a better way.

Alex
  • 13
  • 5
  • What programming language are you using? What does printer.write(new byte[]{0}); OR new byte[]{0x30} mean? Does it send 0x00 or 0x30 to the printer? Please be more precise.... – Marc Balmer Jan 29 '17 at 21:21

1 Answers1

0

Alex,

Maximum size for printing in Page Mode is 832x1732 dots (47th command explanation) acording documentation: dpp450.pdf

Im working in a DPP-450 project too, some advanced things are really hard to discover, the API does not cover everything, if you need something more advanced you will need to use "byte-to-byte" commands, I guess.

  • I have returned the printer. I asked for support for setting a bigger height in page mode and to personalize character size. With small text it was unreadable, medium made invoices have 0.5m height. Have you managed to set a different height and character size ? – Alex Feb 23 '17 at 22:01
  • With basic configuration I can print text around 1 cm height, it depends what font you used. Fonts can be "uploaded" to printer, I did not try it yet, because I need an cable usb 10 pin <> serial I guess. Im using this printer to print labels with 50mm height, I dont have the same problem of you...If you want I can send to you by email some examples of android apps for this printer, I got with brazilian vendor this week. Im using the printer API with Ionic, I am not using native android development, but functions calls are the same since the API is written in java... – Rafael Pedrini Feb 25 '17 at 00:10
  • let me know your email to send the files. – Rafael Pedrini Feb 25 '17 at 00:11
  • I have the documentation. But in examples by default I can use printTaggedText (if I remember the correct function) which has parameters {s} - small, nothing - normal, {h} - high, {w} - wide. I would need a character size between {s} and normal to print invoices. With small text, older people would have problems reading it. With normal text, a 20 position invoice would exceed 0.5 meters. I have returned the printer and won't use it again because I was dissapointed by the support team. I am not developing something expensive on products that do not offer support. – Alex Feb 26 '17 at 06:47