Hacking cartridge HP 84/85

Powder and inkjet printing
MAsic12345
Posts: 116
Joined: Sat Aug 25, 2018 5:26 pm
Location: Poland

Re: Hacking cartridge HP 84/85

Post by MAsic12345 »

Looks cool don't forget when testing about load limitation 1 amp
if it is not possible, then the head will last 3 seconds then it will burn
MAsic12345
Posts: 116
Joined: Sat Aug 25, 2018 5:26 pm
Location: Poland

Re: Hacking cartridge HP 84/85

Post by MAsic12345 »

Pleasant viewing

myying
Posts: 17
Joined: Mon Dec 16, 2019 10:16 am
Location: Taipei

Re: Hacking cartridge HP 84/85

Post by myying »

Hi
A HP applied patent US 20050088473A1 mentioned the ink drop weight relation with temperature.
The fire duration and supplied voltage are “not” both fixed data for HP pen(HP like use it.)
HP has a named TTOE(thermal turn on energy) calibration technology which lists in US5418558、 US5428376、US5428376…and so on.

There is output pin TSR(thermal sensing resistor) in HP pen which measures pen temperature. and also there is a circumstance-temperature sensor at PCB, then a complicated calculation, maybe storing embedded chip or burned as ID at factory. Once the ink was replaced another HP owned, it would be a new setting.
edithai
Posts: 2
Joined: Wed Nov 27, 2024 7:28 am

Re: Hacking cartridge HP 84/85

Post by edithai »

Hi Im new here ,sorry if im in the wrong place, please guide me to the right place.
Im trying to port code made for teensy 3.5 (HP45 standalone V4 controller firmware)
onto teensy 4.1, ive changed pins wherever needed in the arduino software for the basics and since it uses DMA and i dont know anything of that, im entirely unsure about whether it will work, but the things that are causing issues compiling had names
GPIOC_PCOR
GPIOD_PDOR
arduino asked me if i was talking about
GPIO9_PSR
GPIO9_DR
respectively
so i changed them to what arduino suggested and it compiled but i have a feeling i did something wrong, can someone lead me on the right path,so i can try to fix it if its wrong with your guidance.
Thanks
Attachments
Screenshot 2024-11-27 130802.png
Screenshot 2024-11-27 130802.png (243.89 KiB) Viewed 1263 times
Screenshot 2024-11-27 130540.png
Screenshot 2024-11-27 130540.png (253.09 KiB) Viewed 1263 times
User avatar
dragonator
Site Admin
Posts: 608
Joined: Fri Aug 14, 2015 4:48 pm
Location: The Nethelands
Contact:

Re: Hacking cartridge HP 84/85

Post by dragonator »

Hello,

I think trying to get the V4 firmware to work on a Teensy 4.1 will actually be more difficult than getting the V3 firmware to run on the Teensy 4.1

The original Oasis printer uses the V3 controller, this has no fancy DMA trickery, just bitbanging the inkjet controls. This makes it a lot simpler to modify. It should be nothing more than changing the pin mapping, and changing the nozzle arrays (mostly for the addresses). https://hackaday.io/project/86954-oasis-3dp

If you want to modify the V4 firmware to run on a Teensy 4.1, you will need to use the OctoWS2811 library and modify it to run on the Teensy 4.1. This is how the original V4 firmware was made to use DMA on the Teensy 3.5, and why it was a project breaking problem that the Teensy 3.5 was no longer available. The firmware for the V4 is hardcoded for a Teensy 3.5, and the 4.1 is significantly different.

-Yvo
edithai
Posts: 2
Joined: Wed Nov 27, 2024 7:28 am

Re: Hacking cartridge HP 84/85

Post by edithai »

what do you mean by nozzle arrays, i didn't understand, are you referring to the pin definition in firmware?
HP45-standalone-V4-main_mod.zip
(48.26 KiB) Downloaded 71 times
this is the standalone controller changes for v4 firmware and gonna use the v4.02 pcb with teensy 4.1 mods to pinouts and changes to firmware to allow for those changes.
Also Ive modified firmware v3
HP45_Standalone_V3.00.00 mod.zip
(89.95 KiB) Downloaded 70 times
for teensy 4.0 and yes ive changed the pin mapping.
maybe ive changed the arrays you are talking about in firmware.
And also the pins on the pcb.
i wanted to use the cheaper teensy 4.0 for testing so if it breaks its kinda okay with the v3 firmware with the v3.x controller and driver board combo, OR
shall i use the newer v4.02board with teensy 4.1 and the v3 firmware,
these two options would work in an ideal world,
i feel the v4.02 board is much more compact and fixed so maybe ill use that and teensy 4.1 and mod another v3 firmware specially for that.
but i still want to work actively on modding the v4 firmware to allow the teensy 4.1 board.

another one is as you said v3 firmware for the v4.02 controller pcb .
.
Attachments
HP45_Standalone_V3.00.00 mod for teensy 4.1.zip
(90.71 KiB) Downloaded 69 times
User avatar
dragonator
Site Admin
Posts: 608
Joined: Fri Aug 14, 2015 4:48 pm
Location: The Nethelands
Contact:

Re: Hacking cartridge HP 84/85

Post by dragonator »

It is quite a complicated question, because there are quite a few ways to go about it. It is also quite challenging to talk about, because there are 4 different elements that exist right now, the V3 controller, the V3 firmware, the V4 controller and the V4 firmware.

As a start, using the V3 controller with a Teensy 4.0 will not work. The Teensy 3.2 that it was based on had many more pins at the back of the board, many of which are not optional. I don't think it is possible to get a V3 controller to work with just a Teensy 4.0. You would need to completely replace the controller board on that stack with one running the Teensy 4.1.

The V4 firmware is the most developed firmware, and I would advice using that, but it is hardcoded for the Teensy 3.5. It uses complex DMA functions that I have not been able to port to the Teeeny 4.1, so I gave up on that. It might be possible to do it, technically the Teensy 4.1 is capable of the same tricks as the Teensy 3.5, but I am not a good enough programmer for that.

That leaves us with the only simple option. The V4 controller, with a Teensy 4.1, running the V3 firmware. The V3 firmware controls the HP45 in a much simpler way, so this is the easiest port. Some of the newer functions of the V4 controller can be ignored, like the more advanced self testing functions.

For the text below, I am referencing the V3.00.xx firmware that is found on the Oasis page

Things like the timing, nozzle mapping and pin mapping will need to be changed. The timing is hardcoded in "Printhead.cpp", function "PrimitivePulse()" and "PrimitiveShortPulse()". The timings need to be about 1.8us and 0.6us respectively, which is achieved with the 'no operation' commands.

Pin mapping is the easiest to understand, the pins on the Teensy 4.1 will not exactly match those of the V3 firmware, made for the V3 controller and Teensy 3.2, so the correct pins need to be input.

The "nozzle arrays" are the 2 arrays called "nozzleTableAddress[]" and "nozzleTablePrimitive[]". The HP45 has a matrix of nozzles. Each address-primitive combination has access to a single nozzle, and the nozzle arrays tell which address and primitive is which nozzle. The primitive array should stay correct with you mapping the pins, but the address array will be wrong. You might just need to copy the array from the V4 firmware, but else the tab "NewNozzleTable" holds the function to generate a new nozzle table.

If you correct these things, the V4 controller should be able to eject ink. There might be other challenges, but these I know from memory and the few references I have.
Post Reply