3
\$\begingroup\$

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

\$\endgroup\$
2
  • 1
    \$\begingroup\$ Did you try probing the wires with a 'scope (or multimeter) whilst it was still connected to the rest of the calculator? That would tell you what voltages, currents, pwm etc are required for the motor(s) and what the outputs of the sense wires look like. \$\endgroup\$ Sep 21, 2013 at 11:15
  • \$\begingroup\$ That's actually a great suggestion. Unfortunately I already totally frankensteined the rest of the calculator and am not able to do that now. \$\endgroup\$
    – bgp
    Sep 21, 2013 at 11:20

4 Answers 4

4
\$\begingroup\$

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.
\$\endgroup\$
1
  • \$\begingroup\$ Thanks - makes sense. I probably just need to hit the books more and read up on how motor control is normally done - at which point I'll probably be able to decipher the remaining details myself. Doesn't seem to be an easier solution. But your bullet points were very helpful to give me a feel for what I'm looking for. \$\endgroup\$
    – bgp
    Sep 21, 2013 at 11:26
3
\$\begingroup\$

Here's my suggested course of action

  1. Check the number and type of battery in the calculator. Work out it's max operating voltage. e.g. 4 x AA = 6V.

  2. In the top photo assume connections are

    • 1&2 shorted when rotor at 0-5 degrees position
    • 3&4 shorted when rotor at 360/14 degree positions (next line print position?)
    • 5&6 motor drive +/- <=6V
    • 7&8 shorted when print head hits left end.

I'd use a multimeter to test these assumptions.

\$\endgroup\$
3
\$\begingroup\$

So, I started playing around with one of these. It is not a dot matrix printer and it only has 14 glyphs because it comes from a calculator (0-9, some other characters).

Controlling it is fairly straightforward: there's a clutch and a motor. If you watch the output from the index wheel, you can see when to activate the clutch to stamp the characters to the page

Another answer here links to a German page, but it contains everything you'll need to control the printer including circuit diagrams and AVR assembly program so you can send the text to print over serial.

Throw this into a translator and it will give you everything: http://elektronik-kompendium.de/public/arnerossius/bastel/m31a.htm

\$\endgroup\$
-2
\$\begingroup\$

here is what you're looking for http://www.elektronik-kompendium.de/public/arnerossius/bastel/m31a.htm

\$\endgroup\$
1
  • 1
    \$\begingroup\$ Can you add a bit of a summary of that page into your answer? Link-only answers are discouraged because they may become useless in the future if the link dies. \$\endgroup\$
    – PeterJ
    Nov 29, 2014 at 0:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.