Watchport/P: Getting Device Type in VS.NET 2005

I am trying to use the VS.NET 2005 SerialPort object to talk with the Watchport/P. I can get the event to fire when the DSR changes but when I sent the “I” command to identify the sensor type, all I get back is a “W”. I am using the SerialPort.ReadExisting() method to retrieve the data but all I get is one character. I can send a “?” command and it reports back the temperature sensor commands. All of that data comes in fine. Any ideas on what is happening? Are there any sample programs available for VS.NET 2005 that use the SerialPort object?

Thanks,
Curtis

Hello Curtis,

Regarding the “I” command, I’d like you to open a connection to the Watchport/P COM port in HyperTerminal (or Tera Term Pro, etc.) and let me know what the return value is.

About the “?” command (responding with temperature and humidity commands), this is a bug. For reference, the only commands the Watchport/P should respond to are “I” and “?”.

We do not offer any sample programs for the Watchport Sensors. You are following the correct procedure for interacting with it by monitoring the DSR signal.

Check out this output from the VS 2005 serial port object’s DataReceived event. It shows that some of the data looks to be UNICODE while the temperature seems to be ASCII encoding. By the way, this is a distance sensor that says it is a proximity sensor. What’s up with that?

?inString.ToCharArray
{Length=74}
(0): "W"c
(1): Nothing
(2): "a"c
(3): Nothing
(4): "t"c
(5): Nothing
(6): "c"c
(7): Nothing
(8): "h"c
(9): Nothing
(10): "p"c
(11): Nothing
(12): "o"c
(13): Nothing
(14): "r"c
(15): Nothing
(16): "t"c
(17): Nothing
(18): "/"c
(19): Nothing
(20): "P"c
(21): Nothing
(22): "
"c
(23): "I"c
(24): "n"c
(25): "v"c
(26): "a"c
(27): "l"c
(28): "i"c
(29): "d"c
(30): " "c
(31): "C"c
(32): "o"c
(33): "m"c
(34): "m"c
(35): "a"c
(36): "n"c
(37): "d"c
(38): "
"c
(39): "6"c
(40): "6"c
(41): "c"c
(42): "m"c
(43): "
"c
(44): "6"c
(45): "5"c
(46): "c"c
(47): "m"c
(48): "
"c
(49): "6"c
(50): "5"c
(51): "c"c
(52): "m"c
(53): "
"c
(54): "6"c
(55): "6"c
(56): "c"c
(57): "m"c
(58): "
"c
(59): "6"c
(60): "6"c
(61): "c"c
(62): "m"c
(63): "
"c
(64): "6"c
(65): "6"c
(66): "c"c
(67): "m"c
(68): "
"c
(69): "6"c
(70): "6"c
(71): "c"c
(72): "m"c
(73): "
"c

With my Watchport/P, when I type “I” in HyperTerminal, I get:
“Watchport/P”.

When I type “?”, I get:
T or TC = Temperature (Celcius)
TF = Temperature (Fahrenheit)
H = Humidity
I = Watchport Identifier

  • = Repeat Last Command (eg TF+)

-Curtis

Hello,

I replied in your other, existing thread:

http://www.digi.com/support/forum/viewthread_thread,4932#15610