When my EPSON 830U decided not to work for me anymore (printing heads clogged) I thought I could make some use of the still working mechanics of the printer. It’s based on a couple of stepper motors for both axis of motion (print head and paper feed).
So I replaced the original power supply and drive electronics for an arduino board and an stepper motor driver from Adafruit industries. Now I could move the printhead
anywhere on a page. Next step was to add a laser on the printhead and to control it using a PWM output from arduino (so laser power could be modulated from the computer).
Though it only cut thin back color cardboard, it has may uses. I wrote a C program for arduino to control the stepper motors and laser. It receives data from the computer and
interfaces with the old printer guts.
Data format is very simple: each line contains a sequence of integer numbers separated by blank space. Each pair of numbers represents one XY coordinate. Line ends with a CR (0x0d) character (that also shuts down the laser to stop cutting). First coordinate of a line sets the starting point (before reaching that location the laser is off).
I wrote some software running on my iMac that reads a Inkscape SVG file (only straight lines are supported though, use Flatten Bezier on curves to get a sequence of straight line segments) and translates it to the desired data format for arduino and it shows a preview on the screen. Data is sent through a USB port to the arduino. iMac code was written using Processing language (Java-based) so it can run on Windows or Linux too.
If you have an old EPSON printer, you may want to give it a second thought before putting it to the trash.
Stop breadboarding and soldering – start making immediately! Adafruit’s Circuit Playground is jam-packed with LEDs, sensors, buttons, alligator clip pads and more. Build projects with Circuit Playground in a few minutes with the drag-and-drop MakeCode programming site, learn computer science using the CS Discoveries class on code.org, jump into CircuitPython to learn Python and hardware together, TinyGO, or even use the Arduino IDE. Circuit Playground Express is the newest and best Circuit Playground board, with support for CircuitPython, MakeCode, and Arduino. It has a powerful processor, 10 NeoPixels, mini speaker, InfraRed receive and transmit, two buttons, a switch, 14 alligator clip pads, and lots of sensors: capacitive touch, IR proximity, temperature, light, motion and sound. A whole wide world of electronics and coding is waiting for you, and it fits in the palm of your hand.