Converting ESC/P2 output for modern printing

Anything QL Software or Programming Related.
RWAP
RWAP Master
Posts: 2834
Joined: Sun Nov 28, 2010 4:51 pm
Location: Stone, United Kingdom
Contact:

Re: Raspberry Pi - A commercial use?

Post by RWAP »

Dave wrote:What parts of the Pi do you use? As this is the quintessential embedded use, you might save a lot of production costs and gain a lot more control of the physical box you sell this thing by redesigning your board to accept a Pi 3 compute module then only implementing the ports you're using. This makes the unit smaller, either cheaper or the same price, and more dedicated to that single purpose. I mean, you could literally have a card with just parallel, USB and a solid 3v3 power supply section. Then you could just use any 1A or so USB PSU.

Right now the RPi compute module is quite expensive as it is so new, but in time I expect it to fall nearer to Raspberry Pi Zero prices. That gets you to where you could potentially fit the entire computer in the parallel connector case.
The reason we use the full Raspberry Pi is so that a user can easily use it to install CUPs printer drivers to support printers over USB, Network or Wifi (or even bluetooth I guess if they wish). The Retro-Printer module will sell for around £75, so that brings the total outlay to around £100 including the Raspberry Pi. We will not be supplying the Raspberry Pi because of VAT reasons mainly, as we expect many customers to be outside of the EU and even the UK after 2019, and therefore they can buy the Raspberry Pi from their local supplier, or internationally without paying the VAT.

The longer I can avoid having to register for VAT the better as it is just a hell of a lot of paperwork for no benefit to my business nor my customers (well at least until 2019).

If the compute module comes down in price and has the same GPIO as the Raspberry Pi (1, 2 or 3), then users might decide to use this themselves.


User avatar
Dave
SandySuperQDave
Posts: 2765
Joined: Sat Jan 22, 2011 6:52 am
Location: Austin, TX
Contact:

Re: Raspberry Pi - A commercial use?

Post by Dave »

The Pi Compute Module is completely new. It's basically a Pi with no interfaces on a laptop memory card. The catch is all the supporting electronics is there, so you just make your board with the interfaces you wants. The difference is on the Pi only some of the devices are brought out, but on the compute module, ALL the available IC features are brought out so you have a bunch of extra features that can never be added to the Pi.

So if the PCM comes down in price to near the mini Pi, it makes a lot of sense to you, even considering taxes.

If you're worried about making too much money, how about changing SellMyRetro to flat fees for sales? And free for items that sell for under $20 or so. That way, you'll drive a LOT more traffic to your site ;) :P


User avatar
Peter
QL Wafer Drive
Posts: 1953
Joined: Sat Jan 22, 2011 8:47 am

Re: Raspberry Pi - A commercial use?

Post by Peter »

RWAP wrote:Ah - good point - I have added dir.c
How about adding "font.raw" also? Seems pretty useless without that.


RWAP
RWAP Master
Posts: 2834
Joined: Sun Nov 28, 2010 4:51 pm
Location: Stone, United Kingdom
Contact:

Re: Raspberry Pi - A commercial use?

Post by RWAP »

We have not actually used a font.raw - I have added SIEMENS.C16 (a 16 bit font which seems the best match we can find).

Bear in mind that the creation of the GITHUB repository was just a quick extraction from our development files - I have not actually done anything with the code in that repository yet, as I was waiting for some feedback and people showing an interest :D


User avatar
Peter
QL Wafer Drive
Posts: 1953
Joined: Sat Jan 22, 2011 8:47 am

Re: Raspberry Pi - A commercial use?

Post by Peter »

Could you also provide a sample input file, so it is easier to do a quick test?


RWAP
RWAP Master
Posts: 2834
Joined: Sun Nov 28, 2010 4:51 pm
Location: Stone, United Kingdom
Contact:

Re: Raspberry Pi - A commercial use?

Post by RWAP »

I attach some printer output created in LineDesign - it is the same print of the labels for QL Genealogist, in monochrom 180dpi, 360dpi colour and 720 dpi colour

I simply printed these to a file from within LineDesign.

Hopefully they should work !
Attachments
Epson Printer Files.zip
(52.73 KiB) Downloaded 113 times


User avatar
Peter
QL Wafer Drive
Posts: 1953
Joined: Sat Jan 22, 2011 8:47 am

Re: Raspberry Pi - A commercial use?

Post by Peter »

I see an undefined reference to `initialize', another file missing?


RWAP
RWAP Master
Posts: 2834
Joined: Sun Nov 28, 2010 4:51 pm
Location: Stone, United Kingdom
Contact:

Re: Raspberry Pi - A commercial use?

Post by RWAP »

Nope - it is actually an unused function in this version of the code - I have now added it however as an empty function - it might be used for opening the input file or port for reading :D


RWAP
RWAP Master
Posts: 2834
Joined: Sun Nov 28, 2010 4:51 pm
Location: Stone, United Kingdom
Contact:

Re: Raspberry Pi - A commercial use?

Post by RWAP »

I have now been testing and bug-fixing the public domain version of the conversion routines. Remember the latest version is always at https://github.com/RWAP/PrinterToPDF

The sample files I sent were output from LineDesign and I forgot that they all used delta row compression now .... so that was not working.

However, it is now fixed (there are still some bugs in the delta row compression to be tracked down), and normal image dumps are also successful - see http://www.retroprinter.com/first-test- ... -routines/

It is quite easy to use print to file on QPC2 from LineDesign or Quill for example to create test files.


User avatar
XorA
Site Admin
Posts: 1359
Joined: Thu Jun 02, 2011 11:31 am
Location: Shotts, North Lanarkshire, Scotland, UK

Re: Raspberry Pi - A commercial use?

Post by XorA »

Looked at your code and there is an obvious bug

Code: Select all

int isNthBitSet (unsigned char c, int n) {
  return (c >> n);
}
Doesn't do what the name claims.

It would need to be written

Code: Select all

int isNthBitSet (unsigned char c, int n) {
  return (c >> n) & 1;
}


Post Reply