problems with serial using br@dy terminal

I have a problem with receiving a serial line using Br@dys terminal program.

I have had it working before, but if I send a command from the macro it works fine, but if I type the same command into the send line, it adds extra data, and the display unit that it feeds does not display.

I have attached a screenshot, the top trace is when I send #2 from the second macro, and the bottom trace is when I type it in and send.

My actual command line is #002#032123456#003 which is supposed to be start of message, space, data , and end of message.

If I send that from the macro, everything works, and it tells me that I sent |123456| ( where the pipes there are actually a thick vertical line )

If I send it from the typed line it says I sent #002#032123456#003 and the display doesnt respond ( the data sent is also twice as long as the working one )

Can some one explain it please ?

Image from Original Post. See Image Guide

9b960bde9b2323f69a372d4da0d428dd62ee3841.jpg

…R

Boffin1: using Br@dys terminal program.

What is that?

Post a link to its datasheet or documentation

...R

Its actually Br@ys terminal, it is one of the terminal programs like Termite, but I managed to understand it last time

https://sites.google.com/site/terminalbpp/

From the page you linked here

In macros you can use all characters from keyboard and any ASCII char if you use $xx or #xxx. Where $xx is hex and #xxx dec format of ascii code. If you want to use # or $ char in macro you should type it twice ($$=$ and ##=#).

When your sending #2 as a macro your sending just a single ascii character 2 but when you type #2 to send your actually sending ascii characters 35 & 50. You may also be sending CR & LF characters as well (ascii 13 & 10)

Thanks, I think I will have another look at my parsing, hopefully the user is going to bring the unit and the display for me to test.

I think you would do this (#002#032123456#003) on the Arduino using…

Serial.write(2);  // SOT
Serial.write(32); // SPACE
Serial.print("123456"); // Message
Serial.write(3); // EOT

The problem is that I havn’t seen what the unit ( which is a scale ) pushes out.

So I just used Terminal to simulate it, so it looks like I must look for the ascii characters, thanks for your input.