
Magic Printer Cartridge Paintbrush - discreditable
http://spritesmods.com/?art=magicbrush
======
userbinator
_I have no idea why HP decided to use such a convoluted scheme to clock in the
data to the nozzles. I 'd say something obvious like a shift register would
also have worked fine here._

They _are_ shift registers, and the data fed to each nozzle is essentially a
serial data stream, but multiple lanes are used to increase the bandwidth and
allow higher printhead speeds.

The signals are not all that different from those used for driving LCDs and
EPDs[1], if you step back to a higher level of abstraction and look at how
they all "print" information --- there's clocks, serial data inputs, and latch
signals.

This is a resistive heater "bubblejet" type printhead, the other major inkjet
technology is piezoelectric which is widely encountered in Epson printers and
also the majority of industrial ones due to their better robustness and
ability to handle a wide range of inks. The piezoelectric heads use an even
higher driving voltage (~40V) and are usually driven with a trapezoidal
waveform, which can be timed with the firing pulse to obtain different drop
sizes.

[1] Trademark "eInk", he also has another page on driving those:
[http://spritesmods.com/?art=einkdisplay](http://spritesmods.com/?art=einkdisplay)

~~~
Sprite_tm
True, however, a 'normal' implementation would just the one clock signal to
clock in the three data lines; to lower the clock frequency you could use the
rising edges to clock in the even bits and falling edges to clock in the odd
bits. That's not what they do here, though: they use the rising edge of the
clock to clock in the even bits, as you'd expect, but the S1-S5 lines to clock
in the odd bits. That is unexpected. Same with the existence of the S1-S5
lines all by itself: you could also have fixed that with a counter clocked by
the existing clock line and a separate reset line; that'd simplify the
connections between printer and cart. I'm still not sure why they didn't do
that.

------
StavrosK
This is serendipitous, I just saw a cartridge I had lying around and thought
"I should look up how those work, they look interesting." Thanks for this!

------
WhiteNoiz3
That's really clever. I wonder if you could rig something up that lets you
draw patterns or rainbows etc.

~~~
nrp
Yep! I used InkShield, a project that was I think originally based on
sprite_tm’s cartridge reverse engineering to make arbitrary drawings:

[https://eclecti.cc/hardware/semi-automatic-
paintbrush](https://eclecti.cc/hardware/semi-automatic-paintbrush)

~~~
WhiteNoiz3
Nice!

------
Kaibeezy
Enjoyed the presentation. Suspenseful, with a satisfying conclusion. Good
Xmas/Festivus carb/tryptophan zone-out. Happy holidays, all.

