Unfortunately the answer is NO. Meanwhile, I also directly connected the TX of the router to the RX of the ssc-32. In that configuration the LED goes out, the motor starts to work and shows that everything is ok. My Max3232 is brand new and measuring its output also shows a working state. I really can’t figure it out what may be the problem, and unfortunately I don’t have an oscilloscope to bring more exact data out
Can you go into more detail as to how it doesn’t work?
I don’t understand this question. It just don’t work: it has the indicator on, and no changes in the light when wrt and ssc-32 are connected via max3232.
The LED on the SSC-32 is not a power light, but a status indicator. Its job is to turn on when powered up, then to go out when it has received serial data, and blink when it’s receiving data. The data can be the wrong baud rate, formatted incorrectly, and complete total jibberish. The LED will still go out. If your LED is not going out then NOTHING is being received by the SSC-32.
This is “what”, my quesion is “why”.
It is obvious that it is not receiving anything! Could you please give some idea, may be a new test I could to to figure it out why no data is flowing (considering that max3232 and router ports and ssc-32 are all healthy there)?
Shouldn’t pin 14 on the MAX3232 (t1out) goto the RxD pin on on the SSC-32 DB9 connector?
And alternatively, then shouldn’t the DB9 pin for TxD on the SSC-32 goto r1in (pin 13) on the MAX3232?
I see Tx from the router going to Tx on the SSC-32 in the MAX3232 wiring diagram. There seems to be a similar problem with Rx going to Rx…
Man I’m getting rusty. It’s clearly indicated in the schematic that the output of the 232 chip is going to the TX on the SSC-32. djsfantasi’s right, there’s your problem.
I’m no comm guru, but I’m pretty sure when you ask for data from the SSC-32 it’s getting sent long before you type something into a terminal to read it. I.e. there is no delay, well there is a very short delay, then the data is sent. If your not ready on the Rx end you missed it.
FIRST, in one of them I issue “cat < /dev/tts/0”
this command as you know, redirects input from serial (which is truly connected on tts/0 and tested). Just after I issue it, Linux starts to “wait” for input.
NEXT, in the second one, I issue: “echo ‘#0p2000’ > /dev/tts/0”, and then “echo ‘Q’ > /dev/tts/0”, to query the movement.
I get no result. Also, if I query “echo ‘A’ > /dev/tts/0” again no result. When I “short” serial of the router to itself, with the above setup I get the right result, i.e. anything I echo in one window, I have it at once in the other window. So logically there must be a different kind of problem? Well, I am confused because I even can’t think of a test to approach to the essence of the problem
First, issue “cat < /dev/tts/0” in a console window. You say Windows XP and but use Linux commands; I assume you are running cygwin or similar. For example, are you executing the cygwin echo command or the windows echo command? Windows echoes the single quotes in the command while Linux does not.
Assuming the syntax is correct in your situation, then in a second console window, issue “echo ‘VER’ > /dev/tts/0”. This will request the SSC-32 to send several bytes indicating the release of the firmware.
Did the green LED flash when you issue the VER command via echo? Did you get a response?
Windows echoes the single quotes in the command while Linux does not.
Consider that “I successfully run my motor connected to #0” when I “directly” connect TX of router to RX of ssc-32.
issue “echo ‘VER’ > /dev/tts/0”
Did the green LED flash when you issue the VER command via echo?
Did you get a response?
Well ‘VER’ didn’t return anything. I suspected if the serial data is being sent as it is. I did this test:
CONFIG> TX of the router to RX of ssc-32 "directly", RX of the router to TX of ssc-32 "via max3232"
TEST> issued: "echo '#0p2400' > /dev/tts/0"
RESULT> LED went off, and the motor worked correctly.
CONFIG> TX of the router to RX of ssc-32 "via max3232", RX of the router to TX of ssc-32 "via max3232"
TEST> issued: "echo '#0p2400' > /dev/tts/0"
RESULT> LED went off, BUT the motor DIDN'T worke correctly!
CONFIG> TX of the router to RX of ssc-32 "DIRECTLY", BUT, RX of the router to TX of ssc-32 "via max3232"
TEST> issued: "echo 'VER' > /dev/tts/0"
RESULT> LED went off, AND I HAVE OUTPUT ON CONSOLE! But this output is @xgg, where x is a triangle sign!
CONFIG> same
TEST> issued: "echo 'Q' > /dev/tts/0"
RESULT> LED went off, AND I HAVE OUTPUT ON CONSOLE: '4'.
One interesting issue is that it sometimes gives output and sometimes after a restart it won’t give any output for any kind of query!
So, I get some data but not clear! why this happens? Any idea?
Yes! the C/R is there! Consider that my commands to run the motor actually work! I use the same commanding pattern to query the ssc-32. The issue is 99% in level shifting, as the message is sent to ssc-32 via max3232, but with some unwanted data conversion, may be due to error in voltage.
I am NOT bothering with max232, but max3232, because my router won’t work with neither TTL nor rs232.
Well it’s not the router, but I am very busy connecting actually 2 ssc-32, arduino and the router! To find the problem with the router, yes you found it, I am doing just the same thing with arduino, but the same result. I can’t use arduino to control my motors because they are going to be around 20 on this robot. So, arduino here is to fix the problem with the serial.
Yes I did this too, and the test FAILED! I had two brand new max3232, so I just replaced the original one, and the test failed with the second one too.
I also measures the outputs of max3232, they give around 5.7v and 3.38v at the right place.
I suspect that the router serial port is somehow involved in this problem, but I can’t figure out, what is that test that reveals the real problem! (considering that I don’t have access to any oscilloscope!).
**Edit: I just repeated the test and it PASSED OK!
It is working logically. When I echo ‘A’, it receives ‘A’ but C/R characters are both sent too automatically.
Going out on a limb here. Don’t attack me… The MAX 232 chip is an inverter. Is it possible the data is arriving at the SSC-32 inverted? The SSC-32 LED will blink when receiving data even if it is complete jiberish. It can’t be the baud rate as the direct connect works perfectly. One other thing. The MAX 232 chip should provide positive and negative voltages on the DB9.