Posts Tagged ‘electronic’

DIY Printer P7: Printing for the first time!

Monday, April 13th, 2015

It actually works! Well, its first ever print-out could certainly do with some improvements, but to be honest, I’m happy it’s even intelligible at all! Part 7 in my super-basic, Arduino-controlled printer project.

[Watch in HD]

It should be better when I at least have a stable and level tray for the paper (or whatever) to sit on. I have an idea for an alternative to a heavy sheet of steel, which you should be able to see in the next video. Perhaps the PSU fan will have arrived by then, too… <_<

Also, enjoy the in-sync 50 FPS if you can! That pen flicks back and forth at stupid speeds, so a high frame rate is actually useful here.

DIY Printer P6: A servo joins the party!

Friday, April 10th, 2015

Time for some real progress this time! The sixth part in this series where I make a super-basic printer with an Arduino.

[Watch in HD]

It’s pretty much ready to print – just a little hot glue and a sheet of paper and it’s all set! But unfortunately, this video is already ~8 minutes long, so that’ll have to wait.

After trying out solenoids and ruling out floppy drive motors because of speed, I looked at servos as a way of moving the pen up and down. I settled on Hitec’s second-fastest micro servo, which is digital (means it’s not limited to 50 Hz update intervals) and has metal gears (means it won’t destroy itself quickly). It’s designed for use in R/C helicopters, so I’m hoping this will handle the fast motions over a small range of travel, with a light load, well. I’m certainly impressed by it so far.

DIY Printer P5: Downdate (and 50FPS test)

Saturday, March 14th, 2015

The most boring video in this series of me making a super-basic, Arduino-controlled printer. I made it at 50 FPS to try to make it more interesting to people who can play that, but that ended up making it out-of-sync at times. *Sigh*

[Watch in HD]

This is what happens when I don’t plan everything through before I start making something (i.e. all the time). Sorry. Stuff will actually happen in the next one, I promise!

Clock Overclock

Sunday, February 1st, 2015

The circuit board inside this clock died, so I replaced it with my laptop. You could say that the clock speed is about 70x the standard speed (this is the fastest the mechanism can handle before it just oscillates) – I’m impressed it can handle this.

[Watch in HD]

The headphone output is connected directly to the coil in the clock movement and driven with a square wave. The coil is 250 ohms – some headphones are much lower than this, so there’s no need to worry about damaging the laptop’s headphone output, either! The gears, on the other hand, may wear out a little quicker than usual. =P

<p style=”text-align: center;”><object classid=”clsid:d27cdb6e-ae6d-11cf-96b8-444553540000″ width=”480″ height=”295″ codebase=”,0,40,0″><param name=”src” value=”;fmt=22″ /><embed type=”application/x-shockwave-flash” width=”480″ height=”295″ src=”;fmt=22″></embed></object>

DIY Printer P4: Proof-of-concept with an LED

Wednesday, November 19th, 2014

Part four in this series of “making of” videos where I make a super-basic printer controlled by an Arduino.

There’s still no pen, so I stuck an LED where the pen will go and made it turn on when the pen should be drawing, as a test. Then, I took a long-exposure photo while it “printed” with the LED, pointing the camera upwards slightly after it finished each row. What I ended up with was a photo of the image that it tried to print, with inverted colours and stretched a bit because I didn’t move the camera at the right speed.

[Watch in HD]

It can also now print bidirectionally, and it’s much faster to receive the data for the next row of pixels, because they’re no longer sent one at a time.

Illustrations are by とんぐ (Tongu) and CAFFEIN (blog / Pixiv).

DIY Printer P3: A first look at the software

Monday, November 17th, 2014

Part three in this series of “making of” videos where I make a super-basic printer controlled by an Arduino.

Although it still doesn’t look like a printer, I’ve been working on the software. Here, you can see the first stages of having the printer be controlled by the computer. The image data is actually being sent, but very slowly (think of it as a “compatibility mode”) – I wanted to make sure I had two-way communication working perfectly before making things faster. As such, there are still debugging messages being displayed on the Arduino’s LCD, too, left over from me trying to get things to work.

[Watch in HD]

The next stage will be to prove that the Arduino is really receiving the image data correctly, even though there’s no mechanism to move a pen yet!

Illustration is by CAFFEIN (blog / Pixiv).

P.S. This video editor is bloody awful.

DIY Printer P2: Sliders and calibration

Thursday, November 13th, 2014

Part two in this series of “making of” videos where I make a super-basic printer controlled by an Arduino.

[Watch in HD]

Sorry for being really lazy about uploading this. Also, the upload itself finished a little quicker than I thought it would, so yay, the date at the end is in the future.

Dot matrix printer interface: Software (feature demo / IRC)

Saturday, October 4th, 2014

The printer is a new, colour Epson LQ-300+II this time. Sorry in advance – I was tired after spending the whole night coding. Here’s the program I made to send Epson’s ESC/P 2 commands to a compatible printer and do fancy stuff such as change effects, colour, size, and even send non-ASCII characters as graphics in the middle of ASCII text. It’s still a long way from a usable text editor, though.

The program can also monitor plain-text log files and print new lines of text as they are saved. Here, it prints off live chat logs from 4 IRC channels. I optimised it a little for IRC logs, so that it can print different parts in different colours. I considered making it monitor my web server’s log file, but visiting certain pages on my site can add dozens of lines at once to the log file, which would waste a whole sheet of paper in seconds.

[Watch in HD]

My program uses a USB interface, which I made with an Arduino, to communicate with the printer. The Arduino passes printer status info to the laptop, such as “error” or “paper out”, and forwards data from the laptop to the printer’s parallel port if the printer is ready.

I’m using a different, brand-new printer this time because it turns out that the other, second-hand printer had a bad head with 2 or 3 dead pins, causing blank lines in the print-out. I actually recorded several videos on the progress of cleaning the printer and its head, and was able to fix one of the pins, but 1 or 2 never came back to life, so it’d make a bit of an anticlimactic video that I might not upload. By the way, I recorded the pins firing in slow-motion, and one was very slow while the other didn’t move at all. I uploaded the video here.


Dot matrix printer interface: Hardware (building/proof-of-concept)

Saturday, October 4th, 2014

The printer is an old Epson LQ-300+. I want to be able to send my own commands to it, but modern computers don’t have parallel ports, so I decided to make my own USB interface. I thought I might as well, if I’m going to be writing the software anyway.

[Watch in HD]

This interface (Arduino) goes between the printer and the laptop, appearing as a serial port to a program of mine which will be running on the laptop. In this video, for testing that I can communicate with the printer, the Arduino itself is sending the data, instead of my laptop. In the next video, the Arduino will be playing a simpler role and mainly just forwarding data from my laptop to the printer.

NEXT PART: Software

Fast open inkjet printer (HP Photosmart C4780 @ draft quality)

Friday, October 3rd, 2014

I had to open this printer to fix it for someone recently, and was impressed with its speed, so I recorded this quick and dirty video. I guess I should re-record it (making it print multiple pages), but I’m lazy. Maybe some day.

[Watch in HD]

The printer is an HP scanner/printer combination (Photosmart C4780). I’m impressed by the fact that it can still run with its scanner board disconnected.