Difference between revisions of "A4PaperDispenser"

From RevSpace
Jump to navigation Jump to search
 
(3 intermediate revisions by the same user not shown)
Line 14: Line 14:
  
 
The hardware consists of a former elevator button (1st floor) and an ESP8266 (Wemos D1 mini) with the button (active low) on pin D1.
 
The hardware consists of a former elevator button (1st floor) and an ESP8266 (Wemos D1 mini) with the button (active low) on pin D1.
 +
 
The software can be found [https://github.com/bertrik/paperplease on its github page].
 
The software can be found [https://github.com/bertrik/paperplease on its github page].
  
To compile and upload it, install platformio and run the following command
+
To compile and upload it, install platformio, enter the source directory and run the following commands
 
   pio run -t upload
 
   pio run -t upload
 +
  pio run -t uploadfs
 
or install the ESP8266 toolchain in the Arduino IDE and open the .ino file.
 
or install the ESP8266 toolchain in the Arduino IDE and open the .ino file.
 
There is some debug output on the serial port at 115200 bps.
 
There is some debug output on the serial port at 115200 bps.
Line 31: Line 33:
  
 
=== graph paper ===
 
=== graph paper ===
How about a button that dispenses graph paper (dutch: 'ruitjespapier')?
+
Graph paper (dutch: 'ruitjespapier') is dispensed by sending some postscript wrapped in PJL (printer job language). Some postscript examples:
 
+
* Jason pratt wrote [http://www.jasonpratt.org/software/graphpaper/ graphpaper] for producing graph paper, written in postscript.
The printer should be able to understand [https://nl.wikipedia.org/wiki/PostScript postscript], basically a programming language for printers to render graphics.
+
* http://www.trueelena.org/computers/scripts/graph_paper_in_postscript.html
Jason pratt wrote [http://www.jasonpratt.org/software/graphpaper/ graphpaper] for producing graph paper, written in postscript.
 
  
 
How to send postscript to a printer: encapsulate it in PJL (printer job language), see
 
How to send postscript to a printer: encapsulate it in PJL (printer job language), see
 
http://danieru.com/2013/06/06/what-is-port-9100-how-to-print-to-it/#comment-118801
 
http://danieru.com/2013/06/06/what-is-port-9100-how-to-print-to-it/#comment-118801
 
Experimental branch, see https://github.com/bertrik/paperplease/tree/postscript
 

Latest revision as of 02:09, 18 November 2018

Project A4PaperDispenser
A4PaperDispenser.jpg
Dispenses a sheet of A4 paper
Status Completed
Contact bertrik, Sebastius
Last Update 2018-11-18

What is it

This thing is basically a button that dispenses one sheet of A4 paper when pressed. You can press it multiple times to get more sheets. The button is mounted near the laser printer.

The hardware consists of a former elevator button (1st floor) and an ESP8266 (Wemos D1 mini) with the button (active low) on pin D1.

The software can be found on its github page.

To compile and upload it, install platformio, enter the source directory and run the following commands

 pio run -t upload
 pio run -t uploadfs

or install the ESP8266 toolchain in the Arduino IDE and open the .ino file. There is some debug output on the serial port at 115200 bps.

See also https://hacking-printers.net/wiki/index.php/Port_9100_printing

Future ideas

  • Revspace water mark?
  • Date/time header?

See also http://www.frankworsley.com/blog/2011/1/23/printing-directly-to-a-network-printer

graph paper

Graph paper (dutch: 'ruitjespapier') is dispensed by sending some postscript wrapped in PJL (printer job language). Some postscript examples:

How to send postscript to a printer: encapsulate it in PJL (printer job language), see http://danieru.com/2013/06/06/what-is-port-9100-how-to-print-to-it/#comment-118801