Electronic – Calculator Printer Control (how to drive Epson dot matrix printer)

motorstepper motor

I have small dot matrix printing device that I'm trying to control (i.e. print to) with a Parallax Propeller board. (See images below.) It's the printer from this: http://shop.usa.canon.com/shop/en/catalog/calculators/palm-printing-calculators/p23-dhv

Is anyone familiar with how one of these things works? I don't see any chips or other electronics on it, so I assume it's just stepping motor control. It seems like I can get specs on the large silver motor from here: http://www.standardmotor.net/sc_webcat/ecat/product_browse_list.php?lang=1&cat=205 but don't know on the rest.

It would be great if there were some sort of "driver" for this for use from Propeller Spin code, but I realize that most likely doesn't exist. If I could at least find some specifications that would describe what I need to send to it, I'd be happy. (Trying to guess what I need to send to each individual motor to get the right output sounds like a rather difficult way of approaching the problem, was hoping there was some sort of documentation or standardized "protocol" that might exist for the overall unit. Definitely have googled a lot to no avail.)

Just looking for some help to point me in the right direction here. I am familiar with the Propeller chip, software development (my main gig), and basic electronics concepts. Never tried to do motor control before.

top view
bottom view
side panel

Best Answer

I haven't used anything similar but these are my observations based on the photo:

  • It appears to be a standard DC motor not a stepper motor. So to get it to move left and right you'd need to reverse power to the motor.

  • On the first photo I'm guessing the wires going to the left are to indicate the end of travel on that end, although the mechanism isn't clear from the photo.

  • The right hand side appears to be for the print head. It's hard to make out when assembled what contacts would touch each other on the last photo, but I guess the two inner pins make continual contact with the inner PCB trace, and the right-most make continual contact with the outer trace so that would be power for the print head.

  • The left-most pin appears in the same area appears to be for position feedback by making contact with the 'spokes' on the PCB as it turns around.

You'd need to determine the voltage everything requires, for the motor you could just turn up the voltage until it appeared to be moving at a reasonable rate. For the print head you could do the same until it appeared to be leaving a solid line as the motor moves.

I'm not sure how much effort you're prepared to put into it but the other steps I can think of you'd need to perform are:

  • Design an H bridge to allow the motor to be moved in each direction.
  • Use a FET to drive the print head.
  • Connect the two position feedback lines to inputs.
  • Write software to keep track of where everything is and get the timing right.
  • Find or make font tables to be able to print text using the device.
  • Make a suitable paper feeder as this doesn't appear to have one.