Our full technical support staff does not monitor this forum. If you need assistance from a member of our staff, please submit your question from the Ask a Question page.


Log in or register to post/reply in the forum.

Issues with getting HMP155E to work with CR1000Xe?


Benfxmth Jun 2, 2026 04:53 PM

Not long ago I bought the Vaisala HMP155E (purely RS485 output) directly from Vaisala (as opposed to the analog ones that are resold by Campbell Scientific) and I'm trying to get it to work with the CS CR1000Xe datalogger. But when I attempt to get serial output from it, nothing happens. I made sure to wire everything correctly according to the Vaisala manual and I also made sure to configure the ComPort (in my case, C5) for RS485 half-duplex transparent mode, 4800 baud serial rate.

What could be the problem here? 

Here's how I wired things (it's the cable provided by Vaisala therefore coloring differs from what's sold by CS);

Blue - Vcc - 12V

Red - power ground - G

Black - shield - G

Pink - RS485A- C5 

Brown - RS485B - C6

And the program (it's basically the downloadable HMP155A SDM-SIO1A example program, just modified slightly for my case);

 

'Declare Public Variables
Public NbytesReturned
Public SerialIndest As String * 26
Public RHArray(2) As String
  Alias RHArray(1)=RH
  Alias RHArray(2)=TempC
Public String_1 As String
Public String_2 As String
Const SensorPort=11
Const CRLF=CHR(13)+CHR(10) 

SequentialMode

'Define Data Tables
DataTable (FiveMin,1,-1)
  DataInterval (0,5,Min,10)
  Average (1,TempC,FP2,False)
  Sample (1,RH,FP2)
EndTable

'Main Program (for sensor configured for default settings of 4800 baud, E,7,1)
BeginProg
  SerialOpen (SensorPort,4800,26,0,53) 'buffer = 2*number of bytes + 1
  'Strings to start serial output
  String_1 = "SMODE RUN"+CRLF 'set SMODE to "RUN"
  String_2 = "R"+CRLF 'send "R" to start serial output
  SerialOut (SensorPort,String_1,"RUN",3,100)'send String_1, wait for ‘RUN’ response
  Delay (0,500,mSec)
  SerialOut (SensorPort,String_2,"RH",3,100) 'send String_2
  Scan (5,Sec,0,0)
    'Get serial string from sensor
    SerialInRecord (SensorPort,SerialIndest,00,24,&H0D0A,NbytesReturned,00) '&H0D0A = CRLF
    'Parse RH and temp from string
    RH=Mid (SerialIndest,5,4)
    SplitStr (RHArray(1),SerialIndest,"=",2,0)
    CallTable FiveMin
  NextScan
EndProg

 "NBytesReturned" is 0, and nor does opening the terminal emulator produce any serial output using the sniffer command (hangs here);

 

4: ComSDC7

5: ComSDC8

6: Com320

7: ComSDC10

8: ComSDC11

9: ComC1

10: ComC3

11: ComC5

12: ComC7

13: ComUSB

15: TCP/IP

16: SDM-SIO4

17: Ethernet

19: CS IO(1), (default NL200)

20: CS IO(2), (default NL240)

22: USB network

23: IP Trace

26: SDM

32..47: SDM-SIO1

Select: 11



ASCII (Y)? Y



opening 11

hit ESC to exit, any other key to renew timeout

What could I be doing wrong here? Any help would be much appreciated.  

Log in or register to post/reply in the forum.