namespace eval cryotel {} {
}

proc stdConfig::cryotel {} {  
#  controler uses std with send terminator "\r" 5sec comm.interval receive terminator "\n" and multi line replies will be separated by ","
  controller std "\r" 5 "\n" ","
# the {2} in addition to the command defines the number of expected return values
  prop startcmd "SERIAL{2}"
# driver for Sunpower stirling cooler CryoTel  
# serial interface is set to:
# Char Size/Stop Bits:         8/1    Input Speed:                4800
# Flow Ctrl:                  None    Output Speed:               4800
# Parity:                     None    Modem Control:               None


  obj cryo rd
   prop label Temperature
   prop readcmd "TC{2}"  
   prop readfmt "TC ,%f"
#cryotel::readT
  kids cryo {

    node setT wr
    prop label Setpoint
    prop writecmd "SET TTARGET=%.2f"
    prop readcmd "SET TTARGET{2}"
    prop readfmt "SET TTARGET ,%f"

    node power rd
    prop label Power
    prop readcmd "P{2}"
    prop readfmt "P ,%f"

    node cool wr
    prop label Cool
    prop enum on,off
    prop writecmd "SET SSTOP=%i"
    prop readcmd "SET SSTOP{2}"
    prop readfmt "SET SSTOP ,%i"
   
   

  }
  
}



