Anth's Computer Cave Projects

Canon MP780 Teardown

I felt like I had won the lottery driving home yesterday with a large Canon multi-function printer I found on a nature strip in the rain. The MP780 looks like something a small business would use, with an auto-feed scanner on top and about thirty buttons on the front. It seemed to weigh about eight to ten kilos.



I was not overly worried that it was wet. I was hoping for a few motors and maybe some gears, and I hoped they would be dry. I ended up with a lot more than I expected.

This is the entire haul.

I was surprised how easy it was to get at the insides of this unit. There were a few easily located screws then both sides were open, and eight more screws removed the entire lid and scanning unit. By then I could already see most of the goodies. I counted four strong-looking motors in the main unit and I knew there should be another two in the scanning unit. It was already a good day.

Gears were literally falling out of this thing as I worked. Glorious gears! Gears attached to beautifully machined stainless steel shafts. Gears that swiveled and activated other gears. Gears operated by magnetic servos. What can I say - There were gears!

There were sensors, oodles of sensors. Sensors previously unknown to me, now the subject of hours and hours of Google searching to tap into their secrets.

There were many pieces of structural steel and plastic to squirrel away for later projects along with a hundred screws and a pile of springs.

I had planned to take a heap of pics and notes during the teardown to share with the readers, but I became caught up in the moment, swept away by the potential robot oportunities. About three hours later I had a pile of parts and almost no memory of the glutinous pillaging process. Sorry about that.

What I do have for you is pictures of the spoils.

The motors

There were four brushed DC motors, three large units for turning shafts and one extra-large unit for moving the print head. I am not aware of what voltage they usually run, but they seem pretty snappy running on my twelve volt drill battery. The print head could nearly break your hand. Two of the motors have rotary encoders attached.

A rotary encoder. Picture: Anthony Hartup
A rotary encoder to measure the rotation of a motor.

The print head motor has a heavy-duty toothed belt and slide system.

The print head motor(pictured above) is huge!

The scanning assembly contained two stepper motors, one of unknown voltage, the other a decent 24 volts. One is built into the scanner head and drives an awesome toothed belt with a sliding range of about 400mm.

The sensors

The haul included several rotary encoder sensors, a linear encoder sensor, a few photo-interrupter sensors and a couple of switches. These relay positional information about moving parts, and they are a must for any robot design. I have previously been using stepper motors and distance measuring sensors to achieve these goals but I will be building these sensors into my next version of AAIMI.

The Gears

Your imagination is the only limit when it comes to gears, and this is a great assortment. Many of them lock onto the metal and plastic shafts, providing a ready made solution for some future applications.

Other goodies

The front button panel is awesome, but I doubt I can use it in its original form. One day I might make a new circuit board and re-use all the buttons to make my own control panel for something.

The screen looks handy. It has a DSI(Display Serial Interface) which can physically connect to my Raspberry Pi, but I am unsure if the Pi has the firmware to run it.

I am also fascinated by these belt-driven sliding assemblies.The possibilities are endless. One thing I have in mind is a small robotic router that I can program to manufacture parts for projects. It would require two heavy-duty slide units for the gantry rails and another slide unit running perpendicular between them to hold the cutter. I need more printers before I can realistically attempt this.

Where to from here?

Now I have the parts I need to figure out how to use them. The problem with re-using proprietary parts is the lack of documentation available. Usually I power up a device at intervals during the teardown to gain some understanding. This can sometimes allow you to re-use the control boards and wiring in their existing form. In this case, because the printer had been in the rain, that was not an option.

I will update this section of the page each time I make progress.

The DC motors are simple enough to hack, and the two that are attached to the metal plates and sensors will drive the next robot I make. The stepping motors should be easy to figure out with a suitable motor controller (I've already ordered this one).

The sensors are a different story.

I would not mind destroying a couple of sensors in the process, but they need to connect to my Raspberry Pi, and I can't risk destroying that. I plan to take great care on this.

Update:

I have the large rotary encoder from the side of the print head assemble working. After a few more recent teardowns and reading the service manuals for each I had learned enough to return to this printer and trace the wires back to the control board. Sure enough I was now able to interpret the labellings on the board. Now I have this one figured out I can hack the other unlabelled sensors by comparing them to this one.

Stay tuned for a tutorial on using rotary encoders.


Update:

I connected the print head assembly up to AAIMI and wrote a Python program to control the print head position using the distance sensor. This works really well, I just need to find a use for it. I think I might be able to use it for a height-adjustable sensor mast for the next version of AAIMI to use with 3D mapping.

Tutorial coming soon.

Summary

All in all, this was a truly worthwhile way to spend a morning. The motors alone would run into $30 if I had to buy them, and the two sliding assemblies are priceless.

One issue with things like this is waste. Some of the left-over plastic will come in handy, but the rest is just junk. I should be able to smash any leftovers to bits and fit them in a small shopping bag and that will be the only landfill this project creates.

Stay tuned for my next teardown, a cheap and nasty HP printer. See you then.

Cheers

Anth


Previous:

Next: Teardown: CRT TV


_____________________________________________

Comments

Leave a comment on this article



About the Author

Anthony Hartup, creator of AAIMI, Estimcad and Anth's Computer Cave.
Anthony Hartup runs the AAIMI Project, a Python machine-interface platform.
He also codes for the Estimcad Project and ControlCadGUI.


Search the Cave with AaimiClip