Serial communication (Full Duplex Serial) no longer works from my Mac ???????
I am guessing/hoping that this is something ridiculously simple that I am missing... but.....
I can load code onto my development board..... and I know it is working by using leds as status.....
but serial (aka Full Duplex Serial) communication refuses to work.... either in SimpleIDE or PropellerIDE....
If I use the print function in C.... not via serial comm.... it actually prints to the terminal window..... but serial comm won't......
So I thought maybe I messed up ports 30 & 31 on the chip.... so I tried another board..... same thing....
So frustrated..... I have reinstalled Mac VCP drivers.... done a SMC reset on the Mac.... nothing changes....
TJ
I can load code onto my development board..... and I know it is working by using leds as status.....
but serial (aka Full Duplex Serial) communication refuses to work.... either in SimpleIDE or PropellerIDE....
If I use the print function in C.... not via serial comm.... it actually prints to the terminal window..... but serial comm won't......
So I thought maybe I messed up ports 30 & 31 on the chip.... so I tried another board..... same thing....
So frustrated..... I have reinstalled Mac VCP drivers.... done a SMC reset on the Mac.... nothing changes....
TJ

Comments
In SimpleIDE..... the following works.....
#include "simpletools.h" // Include simple tools #include "fdserial.h" int main() // Main function { print("Hello\n"); //fdserial *term; //term = fdserial_open(31, 30, 0, 115200); //fdserial_txChar(term, "H"); //fdserial_close(term); while(1) { } } }but this does not..... in fact, this won't even print the Hello....
#include "simpletools.h" // Include simple tools #include "fdserial.h" int main() // Main function { print("Hello\n"); fdserial *term; term = fdserial_open(31, 30, 0, 115200); fdserial_txChar(term, "H"); fdserial_close(term); while(1) { } }Have you tried the exact same conditions ( program and hardware ) on another mac? Does that work?
http://youtu.be/SQhkdx0z7E4
I though the same thing... maybe 2 cogs ... or maybe the "print" was doing half-duplex.... but nope
TJ
At least, I think that is it
Good thought... but didn't change the outcome.... even if I don't use simple term... i.e. taking the print() statement out... fdserial still will not work.
so... I put fdserial back to using pins 30/31.... (using no simple_term) and it now works there too......
So I don't know what was wrong.... with the day I had, it very well could be user error... or just a combination of other things I was running on my Mac during the work day (pesky job).... it would be hard to blame it on the propeller dev boards.... unless they got a case of gremlins....
Thanks everyone for the attempted help and ideas.... I am going to mark this as solved.... with no apparent knowledge of how.
TJ
Glad it was a simple fix to solve the problem!
Untested example:
#include "simpletools.h" // Include simple tools #include "fdserial.h" int main() // Main function { fdserial *term; term = fdserial_open(31, 30, 0, 115200); // launch an fdserial in a new cog //simpleterm_close(); // I'm pretty sure simpleterm_set calls this for you simpleterm_set(term); // set the fdserial to be the default terminal print("Hello World!"); // your fdserial replaces the old term, // so print now works through the fdserial while(1) { } fdserial_close(term); }