Support Forums
Recording to serial sensor port

Hi,

I am trying to record a simple serial string to the serial sensor port at 4800 baud.

I can capture it in hyperterminal, so I know it is outputting correctly, and I am fairly confident the wiring (rx,tx, and gnd) are correct.

When I look at the value in the web interface, it says "20 State" instead of serial data.

Here is the configuration of the serial sensor port as a manual channel:

1Serial("$name" )
profile sersen_port bps=4800

and sending the command profile sersen_port gives me this:

DT80> profile sersen_port
[SERSEN_PORT]
*BPS = 4800
DATA_BITS = 8
STOP_BITS = 1
PARITY = NONE
FLOW = NONE
MODE = RS232
FUNCTION = SERIAL
DT80>

Hi, I am trying to record a simple serial string to the serial sensor port at 4800 baud. I can capture it in hyperterminal, so I know it is outputting correctly, and I am fairly confident the wiring (rx,tx, and gnd) are correct. When I look at the value in the web interface, it says "20 State" instead of serial data. Here is the configuration of the serial sensor port as a manual channel: 1Serial("$name" ) profile sersen_port bps=4800 and sending the command profile sersen_port gives me this: DT80> profile sersen_port [SERSEN_PORT] *BPS = 4800 DATA_BITS = 8 STOP_BITS = 1 PARITY = NONE FLOW = NONE MODE = RS232 FUNCTION = SERIAL DT80>

Good afternoon adeklerk,

The error you are getting is a time out error.
While you may have the communications set correctly you might not be parsing the string correctly.
What is your data string and how are you parsing each item in the string?

Cheers

Roger

Good afternoon adeklerk, The error you are getting is a time out error. While you may have the communications set correctly you might not be parsing the string correctly. What is your data string and how are you parsing each item in the string? Cheers Roger

Hi Roger,

Thanks for the response. Do I have to parse out each part of the string? Or is there a way to record the raw data? Here is an example of the data string:

20:52:04.500: $YXXDR,A,4.6,D,PTCH,A,7.3,D,ROLL5B
20:52:04.500: $GPGGA,205201,4703.6643,N,13952.0202,W,2,8,1.2,10.8,M,,,,
0D
20:52:04.500: $YXXDR,A,4.6,D,PTCH,A,7.2,D,ROLL5A
20:52:04.500: $WIMDA,30.6285,I,1.0372,B,12.3,C,,,,,,,184.5,T,167.2,M,14.6,N,7.5,M
1C
20:52:04.500: $YXXDR,A,5.1,D,PTCH,A,8.2,D,ROLL53
20:52:04.500: $WIMWD,184.4,T,167.1,M,14.8,N,7.6,M
6E
20:52:04.500: $YXXDR,A,5.4,D,PTCH,A,8.1,D,ROLL55
20:52:04.906: $YXXDR,A,5.6,D,PTCH,A,6.0,D,ROLL
58
20:52:04.906: $GPVTG,17.4,T,0.1,M,1.0,N,1.9,K,D1C
20:52:04.906: $HCHDG,118.7,0.0,E,17.3,E
78
20:52:04.906: $YXXDR,A,5.7,D,PTCH,A,5.7,D,ROLL5D
20:52:05.328: $YXXDR,A,6.2,D,PTCH,A,4.8,D,ROLL
55
20:52:05.328: $WIMDA,30.6285,I,1.0372,B,12.2,C,,,,,,,184.2,T,166.9,M,14.1,N,7.3,M*11

As you can see, there is a lot going on. I don't want to invest the time in programming the dt80 to parse out each part if I can record the raw data.

Thanks,

Alex

Hi Roger, Thanks for the response. Do I have to parse out each part of the string? Or is there a way to record the raw data? Here is an example of the data string: 20:52:04.500: $YXXDR,A,4.6,D,PTCH,A,7.3,D,ROLL*5B 20:52:04.500: $GPGGA,205201,4703.6643,N,13952.0202,W,2,8,1.2,10.8,M,,,,*0D 20:52:04.500: $YXXDR,A,4.6,D,PTCH,A,7.2,D,ROLL*5A 20:52:04.500: $WIMDA,30.6285,I,1.0372,B,12.3,C,,,,,,,184.5,T,167.2,M,14.6,N,7.5,M*1C 20:52:04.500: $YXXDR,A,5.1,D,PTCH,A,8.2,D,ROLL*53 20:52:04.500: $WIMWD,184.4,T,167.1,M,14.8,N,7.6,M*6E 20:52:04.500: $YXXDR,A,5.4,D,PTCH,A,8.1,D,ROLL*55 20:52:04.906: $YXXDR,A,5.6,D,PTCH,A,6.0,D,ROLL*58 20:52:04.906: $GPVTG,17.4,T,0.1,M,1.0,N,1.9,K,D*1C 20:52:04.906: $HCHDG,118.7,0.0,E,17.3,E*78 20:52:04.906: $YXXDR,A,5.7,D,PTCH,A,5.7,D,ROLL*5D 20:52:05.328: $YXXDR,A,6.2,D,PTCH,A,4.8,D,ROLL*55 20:52:05.328: $WIMDA,30.6285,I,1.0372,B,12.2,C,,,,,,,184.2,T,166.9,M,14.1,N,7.3,M*11 As you can see, there is a lot going on. I don't want to invest the time in programming the dt80 to parse out each part if I can record the raw data. Thanks, Alex

Good morning Alex,

You would be much better off parsing the items you need from the data string and saving those.
Take a look at the FAQ's http://www.thermofisher.com.au/show.aspx?page=/ContentAUS/Manufacturing-Processing/Industrial-Loggers/DataTaker/DataTaker-FAQ/Program-Code/DT80-Range-Code.html for an example.

Cheers

Roger

Good morning Alex, You would be much better off parsing the items you need from the data string and saving those. Take a look at the FAQ's http://www.thermofisher.com.au/show.aspx?page=/ContentAUS/Manufacturing-Processing/Industrial-Loggers/DataTaker/DataTaker-FAQ/Program-Code/DT80-Range-Code.html for an example. Cheers Roger

Hi Roger:

I have a question similar whith Alex . I had read FAQ's http://www.thermofisher.com.au/show.aspx?page=/ContentAUS/Manufacturing-Processing/Industrial-Loggers/DataTaker/DataTaker-FAQ/Program-Code/DT80-Range-Code.html example. This example only told me how to record one row.
Now I want record four different rows from one serial sensor,the data example like these:

$GPGGA,205201,4703.6643,N,13952.0202,W,2,8,1.2,10.8,M,,,,0D
$WIMDA,30.6285,I,1.0372,B,12.3,C,,,,,,,184.5,T,167.2,M,14.6,N,7.5,M
1C
$GPVTG,17.4,T,0.1,M,1.0,N,1.9,K,D1C
$HCHDG,118.7,0.0,E,17.3,E
78

how can I record all of them? thanks

Hi Roger: I have a question similar whith Alex . I had read FAQ's http://www.thermofisher.com.au/show.aspx?page=/ContentAUS/Manufacturing-Processing/Industrial-Loggers/DataTaker/DataTaker-FAQ/Program-Code/DT80-Range-Code.html example. This example only told me how to record one row. Now I want record four different rows from one serial sensor,the data example like these: $GPGGA,205201,4703.6643,N,13952.0202,W,2,8,1.2,10.8,M,,,,*0D $WIMDA,30.6285,I,1.0372,B,12.3,C,,,,,,,184.5,T,167.2,M,14.6,N,7.5,M*1C $GPVTG,17.4,T,0.1,M,1.0,N,1.9,K,D*1C $HCHDG,118.7,0.0,E,17.3,E*78 how can I record all of them? thanks

Hi Gavin,

You may detect the first NMEA string for your starting reference as schedule trigger.
Then use continuous parsing for the second to the fourth NMEA string.

Example:
RA1SERIAL"$GPGGA,"
1SERIAL("\m[$GPGGA,]%f[1CV]...." )
1SERIAL("\m[$WIMDA,]%f[11CV]...." )
1SERIAL("\m[$GPVTG,]%f[21CV]...." )
1SERIAL("\m[$HCHDG,]%f[31CV]...." )

However problem may arise if the sequence of NMEA string is not always the same.

Best regards,
Rudy Gunawan

Hi Gavin, You may detect the first NMEA string for your starting reference as schedule trigger. Then use continuous parsing for the second to the fourth NMEA string. Example: RA1SERIAL"$GPGGA," 1SERIAL("\m[$GPGGA,]%f[1CV]...." ) 1SERIAL("\m[$WIMDA,]%f[11CV]...." ) 1SERIAL("\m[$GPVTG,]%f[21CV]...." ) 1SERIAL("\m[$HCHDG,]%f[31CV]...." ) However problem may arise if the sequence of NMEA string is not always the same. Best regards, Rudy Gunawan
43
6
4
live preview
enter atleast 10 characters
WARNING: You mentioned %MENTIONS%, but they cannot see this message and will not be notified
Saving...
Saved
With selected deselect posts show selected posts
All posts under this topic will be deleted ?
Pending draft ... Click to resume editing
Discard draft