Add inkjet encoder monitoring to Arduino Mega+Ramps 1.4

Hey there!

I’m trying to combine an inkjet with a 3D printer to prototype a new kind 3D printer.

I have built several 3D printers over the years. I’ve also just recently built the tshirt printer and then began to modify that. As I imagine things, this can be applied to DIY inkjet-based UV material jetting, powder-based binder jetting, t-shirts and UV resin printing onto things.

I cannot proceed with opendtg code and board. What I need is the 3D printer z-axis feature and to suppress the x axis. I want the 3d printer y axis to be slaved to the inkjet.

The opendtg code already intercepts the inkjet encoder. As I need full 3D printer features, I believe I only need to wire the encoder somewhere on the RAMPS shield. I then need to know where to change the Marlin code.

I am willing to pay someone to guide me or to do this, but I don’t know where to post so I get relevant replies, except here, of course.



If you want paid assistance you should ask in the Gigs and Collaborations section.

I took a cheap inkjet printer apart and I was impressed by how incredibly fine the lines on the encoder strip and disk were printed. Assuming you are trying to detect the passage of those lines I wonder if a 16MHz Arduino would be fast enough - especially if it is also expected to do other things.

While I doubt that I have any advice to offer about your project your description is not at all clear. You are assuming the reader is already familiar with all the other stuff you have done.


Thanks for replying Robin2. I’ll post in the Gigs section, if I can’t make headway here and have to pay.

I’m not trying to monitor the x axis. That’s because the x axis has dedicated high speed circuitry. I’m planning to let the printer do it’s thing as much as possible.

Some inkjets list their resolutions as 2400 x 1200 or even 5760 x 1440. The y axis is less precise. That’s the case with the inkjet I’m using. I only want to monitor and react to the y axis motion. The setup proves the y axis is easily handled by Arduino. I’ll eventually go with a faster board and more y resolution, but not today.

I tried to filter out a lot. The encoder to the Ramps and the code modification to Marlin is what it really boils down to.


Referring to Reply #2, you are still assuming your reader knows all the same background stuff that you know.

You should work on the assumption that us readers know nothing about what you have been doing.