Main Site Documentation

Panda drive current vs. Arduino


#1

I’m wondering how the Panda’s current drive compares to an Arduino. I’m trying to drive an X10 Firecracker similar to the project here: http://www.arduino.cc/playground/X10/CM17A but I’m not having any luck. It could well be my code, but I’ve gone over it quite a bit and used a parallel port logic analyzer app to confirm the patterns are what I expect, and the logic seems to match what I find in the Arduino (and other) implementations. I’m using pins 9 and 10 for the RTS and DTR signals. I’m thinking I may need to shove a MAX232 in there to help out, although I’ve found several examples of driving the Firecracker directly off an Arduino.

Assuming the code is correct, any ideas of things to try? Do some Panda outputs have higher capacity than others that I should try? Or just throw in a MAX232 (or other buffering) and be done with it?

Thanks!

PS - if anyone is interested in the code I’m happy to share it. I may well be overlooking something obvious there.


#2

Yes, please share your code.

Can you also tell me what parallel port logic analyzer app you are using? got a link?

Eric


#3

I’ll post the code on my blog later tonight. As for the logic analyzer app I tried a couple, both for Windows:

http://www.codeproject.com/KB/system/17ChannelLogicAnalyzer.aspx

http://tfla-01.berlios.de/

Neither is perfect, but between them they work pretty well. It’s recommended that you add some buffering (e.g. 74HC541) but it isn’t strictly required. I didn’t use any.


#4

It looks very interesting project.

Do you have a datasheet for this device? We might discover some electrical specs to match with FEZ panda’s. Is it an RS232 interface? then I thin you will need the MAX232 converter. Would the RS232 shield help?


#5

Here’s a link to the X10 knowledgebase page about it. http://kbase.x10.com/wiki/CM17A Most of the info is in the text file describing the protocol linked from that page.

It’s interesting in that it doesn’t use the data lines for communication. It’s a one-way device in that you can’t read from it, and you communicate with it by flipping the RTS and DTR lines. All of the standard 9 pins pass straight through and it taps into RTS, DTR, and ground. It’s built around a PIC 12C508A (which X10 seems to use in a number of devices.)

I signed up on the Wiki - if it’s OK I’ll start a page on this project there and post the code I have so far.


#6

For anyone interested, I started a project page for this here:

(link removed)


#7

If it is based on 12C508A so I guess it requires 5 Volts at least to power on the micro-controller.

FEZ Panda (LPC2387 chip) provides 3.3Volts on its outputs. So I guess you will nee the MAX232 anyway no matter the required current.


#8

Doh! Now how did I miss that? :wall: I think I let myself get stuck in the idea if the Arduino could run it directly, the Panda should too. Plus I had misplaced my VOM after working on a vehicle early and couldn’t find it for a week.

Thanks! :clap:


#9

:dance: Success at last! I finally got the parts I needed (MAX232 mainly) and the time to play around. Had to tweak my driver to invert the outputs due to the 232 inversion. But otherwise it just worked. I’ll update the project page with new code, etc. tomorrow. Thanks for the help guys! :clap:


#10

good 8)