Hacking the HP45

Powder and inkjet printing
Post Reply
dae43
Posts: 2
Joined: Fri Feb 19, 2016 8:36 pm

Re: Hacking the HP45

Post by dae43 »

Hey everyone, thanks for the warm welcome!
We do hope that our tests will be able to provide some useful data for everyone.

And yeah, apologies for the awkward "we;" the we was referring to my group, which consists of a few people, and I am working as the primary interface for the forum. :D
dragonator wrote:Hello and welcome.

I (We?) indeed seem to be working on the same thing as you are. If you want to do the measurements, I would be extremely grateful. I am not yet at a point where I have give up with my experiments here, but getting a proper readout from an original HP45 printer would save me a huge amount of time. At this point I am fairly certain that the pinouts on the first page of this forum are correct, after this weekend I should be sure. That may help you narrow down what to connect to.

We are after the same thing, so I would be happy to collaborate. I am more of a mechanical man myself too, but I do have enough knowledge to make electronics if I completely know how the HP45 works. Even better is that most other people on this forum know much more than me about electronics and can probably do a lot better than me if they want to. And if all else fails I have the combined knowledge of the Tkkrlab (hackerspace Enschede) available. Electronics should be possible after the printhead is hacked.

How many channels do you plan to measure at once?
We are going to measure 8 different contacts 41, 43, 45, 47, 49, 51, 27, and 28, according to the map on the first page.
Our oscilloscope will be able to measure 4 channels at once. We plan to simultaneously measure corresponding primitives and grounds (e.g. Primitive 9, Ground 9) and an address contact. We will also test the Thermal Sense and Resistor contacts, but at this point I am not sure what combination of contacts will be tested simultaneously beyond the ground/primitive/address.

Also, right now we plan to run the tests on Friday, but depending on our different schedules, it may get pushed back (hoping not, though).
ezrec wrote:I would suggest that for your application, you focus on the ribbon cable to the printhead controller, personally, instead of the printhead itself.


I did some prior work for the HP F4480, which seems to use a similar controller, but my scope was not up to the job:


http://www.evillabs.net/index.php/Proje ... Controller
Thank you for your insight! On a past printer, we have tried to read directly from the ribbon cable, but it appeared that the output was a serial signal and we could not isolate individual control signals. At this point, since current printer's ribbon only has 20 pin and there are 104 contacts (52 for black, 52 for color), we figure this current printer sends a similar serial signal to its printhead.

Since we are looking for more isolated control signals, we think that for the time being, it will be more useful to go direct to the printhead, as the signals here have already been processed and isolated further by the printhead from the ribbon cable's outputs. Though, we may still look at the ribbon cable in the future depending on what our success is/what other data is necessary.
DigitalShadow wrote:Welcome to the project! looks like you will be able to get some great data with that :)

Something of note, if my understanding of the patent is correct, the address lines are connected to both the primitives, and an "identification circuit". This identification circuit gets its inputs from the address lines, and is also shared with the temperature sense lines in an effort to reduce pin count. It seems that low voltage is used to poll temperature queries, and high voltage is used to poll information regarding the current cartridge, such as manufacturing data and such (Confirmation of this is still required. Getting this infromation from this patent from the beginning of this thread, last few paragraphs)

Also, my PCB's arrived today. They look great :) Still waiting on the pogo pins and driver chips to arrive. I will likely focus on temperature control and monitering. Likely submerging the tip of the print head into an appropriate liquid solution and controlling the bath's temperature to a known value.
Thanks for your help, but sadly we're not very clear what you mean by the identification circuit. :(
Is there any chance you can explain further?

(I have an idea of what you might mean; on the theory page on the InkShield project, they describe the control theory they used to reduce their pin count since the arduino only has so many outputs. In the end they designed a system with a multiplexer that selected a nozzle via 4 different lines ABCD prior to sending the firing pulse. Is this perhaps similar to the identification circuit that you mentioned?)
User avatar
dragonator
Site Admin
Posts: 597
Joined: Fri Aug 14, 2015 4:48 pm
Location: The Nethelands
Contact:

Re: Hacking the HP45

Post by dragonator »

INK!!!

I got ink to eject!

I went to the Ulti evening last night (https://ultimaker.com/en/community/1957 ... ruary-22nd). It was neat to see the technology again, and I got to see Aad van der Geest again, the guy that has made powder printers since the first inkjet printers came out.

He was there to interest people into powder printing and to introduce this: http://www.spitstec.nl/colorpod. It is an inkjet attachment for FDM printers. It is full color and uses the HP45 and HP23. It is not yet for sale, but it is really neat.

While there, I asked a few questions that were bugging me. I first asked about how to get ink to eject. It turns out that getting this head to start is quite tricky. It needs to heat up and the channel needs to be filled with ink. I also asked about the color head, the HP23. It works almost the same as the HP45. The pinout is slightly different, but knowing what I do now, I can measure and find all pins. The heaters in the color cartridge are a whole lot more sensitive, so they need to be handled with even more care. More than 2us, and the resistors in the color head are gone. Also, in principle the HP45 should be capable of ejecting a droplet of ink every pulse, but Aad never got this to work.

With this knowledge in mind, I whiped the head with a wet paper towel, suspended the head over a cup of hot water, and ran a program that triggered a single nozzle. I first got a spray, but a while later, I got tiny droplets. I am not yet convinced that I am triggering every 3rd pulse, but ink is coming out. It is a big step forward. I am convinced that when I trigger the whole head, that it will work better.

I still want to do a few more tests. I want to open an address and measure a nozzle with a multimeter. I also want to try and see if the resistance changes when I heat the head, both in common ground and common anode. Maybe the printhead can be tested for temperature during printing. I want to measure the gate capacitance, and see what the minimum voltage is for the gate of the address to open.

After that I want to start tests with multi primitive and multi address, and see how it improves. This project is moving again. Below a piece of paper I had laying around with tiny black ink spots on it.
2016-02-23 18.39.57.jpg
2016-02-23 18.39.57.jpg (280.49 KiB) Viewed 43641 times
DigitalShadow
Posts: 20
Joined: Sat Jan 30, 2016 1:49 am

Re: Hacking the HP45

Post by DigitalShadow »

Excellent news! good job, glad to see progress :)
ezrec
Posts: 112
Joined: Sat Aug 15, 2015 1:31 pm

Re: Hacking the HP45

Post by ezrec »

Thanks for the link to the 'sandbox' printer.

I have a powder handling subsystem from an old laser printer (used to move toner to a waste bin) that I could use for a similar design - very inspiring!
DigitalShadow
Posts: 20
Joined: Sat Jan 30, 2016 1:49 am

Re: Hacking the HP45

Post by DigitalShadow »

Fyi I just got my hands on an old HP deskjet 710 C. It contains an HP45 black and an HP23 Tricolor Head. I'll probably scavenge the carriage and wiring for now until I get a custom one going. I have a feeling for my purposes that I will need to be able to rotate the printhead along the vertical axis if I intend to print along any horizontal vector other than back and forth along the X axis. After I get the casing off I will see if I can get anything useful out of the control circuit
DigitalShadow
Posts: 20
Joined: Sat Jan 30, 2016 1:49 am

Re: Hacking the HP45

Post by DigitalShadow »

Fyi I just got my hands on an old HP deskjet 710 C. It contains an HP45 black and an HP23 Tricolor Head. I'll probably scavenge the carriage and wiring for now until I get a custom one going. I have a feeling for my purposes that I will need to be able to rotate the printhead along the vertical axis if I intend to print along any horizontal vector other than back and forth along the X axis. After I get the casing off I will see if I can get anything useful out of the control circuit
DigitalShadow
Posts: 20
Joined: Sat Jan 30, 2016 1:49 am

Re: Hacking the HP45

Post by DigitalShadow »

So far what I have come up with is that the high voltage driver circuitry is located on the carriage itself, which receives multiplexed logic input from the printer. Both the 45 and the 23 appear to have identical pin outs, though I believe I read up on how they multiplex tricolor signals slightly differently, I will have to go back to the patents to confirm. It appears the primitives are going from their driver chip to a digital variable resistor to modulate voltage, likely in a feedback loop with temp
User avatar
dragonator
Site Admin
Posts: 597
Joined: Fri Aug 14, 2015 4:48 pm
Location: The Nethelands
Contact:

Re: Hacking the HP45

Post by dragonator »

From what I heard, the HP23 is basically the same, but with 96(?) nozzles for every color. This means no different multiplexing from the HP45. The swatch size on color is considerably smaller than on black. The voltage driver circuit sounds interesting. I wonder how much the voltage (and temperature) vary during printing.

I have not worked on the HP45 this week, but I hope to find time next week to do some more tests with multiple primitives and addresses. I am going to order 26 pin boxed headers to connect the printhead to a bigger breadboard so I can do the bigger tests.
User avatar
dragonator
Site Admin
Posts: 597
Joined: Fri Aug 14, 2015 4:48 pm
Location: The Nethelands
Contact:

Re: Hacking the HP45

Post by dragonator »

I ordered 26 pins flat cable with headers to connect with the printhead. I had too few male to female jumper wires, but I have plenty of male to male wires. Also, I can now start on making a test circuit on a prototype board (once I know enough from testing on a breadboard). For the final controller, I want all high voltage electronics on the same PCB as the pogo pins are, but for now, a small length of flat cable will (hopefully be acceptable).

I also had a thought while thinking about how to wire this thing up. A few posts back I mentioned that I missed energy in the pulses. I have yet to measure the printhead resistance directly, but maybe part of the problem is me not having connected all of the ground planes to ground. There are 14 of them, and maybe for a good reason. I hope to make some time for HP45 hacking this weekend. If so, I will probably find out whether it makes a difference or not this weekend.
2016-03-09 19.38.59.jpg
2016-03-09 19.38.59.jpg (294.29 KiB) Viewed 43241 times
2016-03-09 19.41.30.jpg
2016-03-09 19.41.30.jpg (331.43 KiB) Viewed 43241 times
ezrec
Posts: 112
Joined: Sat Aug 15, 2015 1:31 pm

Re: Hacking the HP45

Post by ezrec »

Nice progress!
Post Reply