Code in ReadASCIIString tutorial doesn't work?

johnwasser:
Do you have Serial Monitor set to send a newline at then end of each line you send? The example code is expecting the newline.

I think step one for any serial debugging is to use a real terminal program. The Arduino serial monitor is seriously broken.

It doesn't support ANSI codes or simple codes (like ctrl-l) to clear the screen and it doesn't support carriage returns.

For example, try to write a program that constantly updates the SAME line by sending a CR only, then re-writing it... can't do that with the Arduino serial monitor.

It also is unreliable at 115K baud (and I know it's not my machine because I can do reliable 460800 baud with Minicom (linux) or Hyperterminal (Windows)).

I learned to hate the Arduino serial monitor when I tried to use it debugging a simple menu program. I couldn't clear the screen and write a new page. I thought I was making mistakes. I wasted almost a week searching Google and (re)reading printf formatting codes to figure out what "I" was doing wrong.

Then I tried Minicom (Linux) and it all worked fine.

I've since ditched the Arduino IDE altogether and simply compile my code (I mean "sketches") with AVR-GCC and a "universal" makefile.

Much easier... and I don't need that foolish "setup" and "loop" thing either.