Micro Dual Serial motor controller, no activity at all

Hey guys. I just received my order of two uDSMC’s, and I can’t get either of them to do anything. I’ve followed the instructions carefully as far as wiring and serial protocol, and I’ve tested both controllers on both my Arduino and my Basic Stamp Homework Board, and I can’t get any activity out of either one, in any setup. Logic power (pin 3) is coming from the board’s +5V Vcc, I’ve tested with various motor power setups (one 9V battery, three 1.2V NiMH AAA’s). I have a common ground between the motor batteries and the board. I’m turning the enable pin on and waiting at least a full second before sending commands (and I’ve also tested wiring the enable pin to logic positive with a 4.7k resistor). The serial baud rate I’m using is 9600 baud on both the Arduino and the Basic Stamp.

I’ve tested with an analog voltmeter – When the program is running, with a 9V battery for motor power, I’ve got +9V from pin 2 (ground) to pin 1 (motor positive), and +5V from pin 2 to pin 3 (logic positive), and +5V from pin 2 to pin 4 (serial in), with occasional burbles when it sends data. I have +5V from pin 2 to pin 5 (reset). But no matter what commands I send, I see absolutely no voltage in either direction across pins 6-7 or 8-9. I tried hooking up an actual motor too, a Solarbotics GM3, in case load was required, but no action there either.

To be clear, here’s how I have everything connected right now:

Pin 1 to 9V positive
Pin 2 to 9V negative and Basic Stamp Vss (ground)
Pin 3 to Basic Stamp Vdd (+5v)
Pin 4 to Basic Stamp pin 0 for serial tx
Pin 5 to Basic Stamp pin 1 for reset
Pin 6 to voltmeter positive lead
Pin 7 to voltmeter negative lead
Pin 8 no connection
Pin 9 no connection

Here’s my very simple Basic Stamp code, just trying to get the output pins to do SOMETHING. I’ve exaggerated the delays between each command, but I originally tried it with short delays and saw no change.

' {$STAMP BS2}
' {$PBASIC 2.5}

' pin 0 is serial TX
' pin 1 is reset

DEBUG "Resetting controller...", CR
PAUSE 2000
PAUSE 2000
PAUSE 2000

   DEBUG "Sending forward cmd...", CR
   SEROUT 0, 84, [$80, 0, 1, 127]
   PAUSE 5000

   DEBUG "Sending reverse cmd...", CR
   SEROUT 0, 84, [$80, 0, 0, 127]
   PAUSE 5000

At this point I’d normally assume that the controller was bad, but as I mentioned, I have two, and can’t get either one to work. I’d be really surprised if BOTH were bad. Please tell me I’m just missing something obvious, I’d love to just slap my forehead, twiddle a byte or two, and be done with this :slight_smile: Any ideas?

Hah! I am an idiot! I tested all the pins with a voltmeter again, just to be sure what I had posted was true, only this time I didn’t stop at pin 7. I was surprised to find voltage on pins 8 and 9! A quick glance back to the manual shows that motor 0 is pins 8 and 9, and motor 1 is pins 6 and 7. Connected my motor to pins 8 and 9, and I’ve got motion. I guess no matter how sure you are that you’ve followed all the instructions correctly… :slight_smile: