In this video I would like to show you a quick and dirty built inkjet printer in detail.
The machine originated from a collaboration with Theo Deutinger, who needs an extremely slow but continuously working printer for an art project.
A first approach to achieve this is to control a commercially available printhead via an Arduino UNO.
The functionality of the HP6602 printhead, a fairly old, monochrome model with only 12 nozzles that work according to the bubblejet process, is well documented on the Internet.
The ink drops are ejected by causing the solvent of the ink to evaporate via a heating element.
The advantage of the old printhead model is that one connection is made to the outside for each heating element.
A short current pulse must be sent through the respective heating element of a nozzle in order to heat it up and so to eject a drop of ink with the resulting vapor bubble.
The applied voltage and the duration of the pulse are critical.
If the electrical power is too low, the liquid does not evaporate and no drop is ejected.
If the power is too high, the heating element burns out immediately by what the nozzle is destroyed.
According to the source I found, which is linked on my pages, a pulse of 5 to 6 microseconds at a voltage of 20 to 21V is required.
I use the 12V line of a computer power supply as voltage source.
The 12V are raised via a boost converter to about 18V, which, according to my experiments is sufficient to activate the nozzles.
In my test setup, an Arduino UNO controls the timing of the pulses.
The 5V signals at the outputs of the Arduino are amplified to 18V via ULN2803 chips.
In order to be able to connect the GPIOs of the Arduino to the contacts of the nozzles, a printhead holder is required for the HP6602 - due to the tiny and closely spaced contacts its not recommended to make one by yourself.
The contacts are forwarded to the board via a Flexible Printed Cable and plugged into a Flat-Flex Connector.
For the first test, I have cut out such a connector from the board of an old printer - as you can see, it is intended for more than 16 contacts.
The pins of the connector are very close together, which makes soldering quite tricky.
After soldering, it is recommended to use a continuity tester to check whether there are any short circuits between close-by pins ...
... and whether there is a conductive connection to all contacts of the print head holder.
The electronics is attached to the mechanics of an old 3D printer.
From a total of 18 available outputs of the Arduino UNO, 6 remain for further control tasks of the printer.
I use four of them to control the stepper motors of the two axes.
The A4988 driver chips control the motors via step and direction inputs.
With this setup, I wrote a first software that can print bitmap files.
A line pattern is printed to check that all nozzles are working and that they are actuated in the correct order.
If all parameters are set up correctly, graphics can be put on paper.
As can be seen, the software for the first tests is not optimized to maximum speed - as already mentioned, extremely slow prints are required for the project.
It's nice to see how the graphic is built line by line.
Since the distance to the paper surface is relatively large - at around 5mm - a spray of small satellite droplets can be seen besides fine structures.
Furthermore, areas are not printed as deep black as they could be.
The reason for this is that the nozzles are arranged on a line and, due to their size, relatively large gaps remain between two openings.
To increase the dot density, an intermediate line is inserted when printing:
After the first pass, the paper is fed only half the distance between two nozzles and then this intermediate line is printed.
After this second pass, the paper is fed one full line and the game starts over again.
The resolution with this method is approximately 180 dots per inch.
The edges become smoother and the areas are darker than before.
That is the current state of my printer development.
As next steps, I will design a mechanism for printing on paper rolls and try further options for the print head.
In a previous video I had already shown a printhead based on a relay.
I would like to improve speed and resolution of this system because it is a very robust mechanism and a wide range of inks can be used.
In future videos I will show the progress of this project named "world printer".
According to the name, the world is printed here as a "Rorschach test".
The circuit diagrams, further information about the printer and the software I wrote are as always available on my pages.
Thanks for watching and: "I'll be back!"
