Connecting to Campbell Scientific dataloggers

You can record data from the LI-710 on Campbell Scientific® dataloggers that support the SDI-12 protocol. This tutorial provides the steps and simple programs for connecting the LI-710 to a CR1000X, CR1000, CR300, CR6, or CR5000 datalogger. The programs described here will read data from the LI-710 only. If you want to add the LI-710 to an existing program, the task is more complicated. Campbell Scientific can provide the technical assistance that is required for modifying datalogger programs beyond what is described here.

Representation of a Campbell Scientific CR1000X datalogger. Representation of a Campbell Scientific CR1000 datalogger. Representation of a Campbell Scientific CR6 datalogger.
Figure 5‑1. The LI-710 is compatible with the CR1000X, CR1000, CR6, and other Campbell Scientific dataloggers that support the SDI-12 protocol.

Requirements for this tutorial

The following items are required to complete this tutorial.

  • LI-710 Evapotranspiration Sensor.
  • Datalogger programs for the logging LI-710 data to a Campbell Scientific datalogger from Some programs are for 1-minute data logging for testing. The others are for 30-minute data logging for deployment.
  • Personal Computer (Windows OS).
  • Campbell Scientific datalogger: CR1000X, CR1000, CR6, or CR5000.
  • PC400 software from Campbell Scientific, Inc. The software is available from This tutorial describes version 4.7.

Configuring the datalogger

Follow these steps to connect an LI-710 to the datalogger.

  1. Connect the LI-710 to the datalogger terminals.
  2. The terminals must provide power (12 VDC), ground, and a data connection. In this example, we use terminal C1, which is labeled on the logger and specified in the program as the SDI-12 terminal for this sensor.
  3. Figure 5‑2. The LI-710 connects to a 12 VDC power supply (brown), ground (black), and an SDI-12 terminal (blue to C1 in this example).
  4. Power on the datalogger.
  5. The datalogger will power on when power is supplied.
  6. Connect a communication cable between the datalogger and your computer.
  7. We use the USB connection on the CR1000X for this tutorial.
  8. You may need to use the serial or Ethernet connection with dataloggers that do not support USB. In any case, the steps are the same after you have established communication between your PC and the datalogger.
  9. Launch the PC400 application.
  10. If you've configured the connection already, just connect to the datalogger and go to the next step.
  11. If it is the first time you've connected, add a datalogger to the list and configure the settings.
    • Select the datalogger model and assign a name.
    • Select Direct Connection as the type.
    • Select a COM port number (if it is the first time connecting, install the device driver now).
    • Click through the remaining prompts, leaving the default settings as they are or making changes to suit yourself. You could send a program to the datalogger in the Wizard, but there are some other settings to check and configure before doing so.
  12. Consider the LI-710 SDI-12 address.
  13. Each LI-710 has an SDI-12 address of 0 by default. The sample programs use an address of 0 as well, and are compatible with the LI-710 in its default configuration. If you need to change the sensor address, we describe that in The PC400 terminal program. If you change the address, you must also modify the program as well (you can do this easily in a text editor).
  14. Click Send Program to send the program to the datalogger.
  15. For testing, we provide a program that records measurements every one minute. The program you use in deployments records measurements every 30 minutes; we provide those too.
  16. Click Yes to dismiss the warning; allow the logger to compile the program.
  17. The datalogger will restart; reconnect after it restarts.
  18. Click Monitor Data to view the latest results.

Retrieving logged data

The datalogger stores the readings to its internal memory. To copy the data to your computer:

  1. Click Start Data Collection to save the logged data to a file on your computer.
  2. Select an output file and click OK.
  3. The directory is indicated in the column called Output File Name.
  4. Click View File to see the records saved so far.

The PC400 terminal program

The PC400 has a built-in terminal emulator that you can use to communicate with the LI-710. To use it, connect with the datalogger as described earlier and follow these steps:

  1. In PC400, click Datalogger > Terminal Emulator.
  2. In the new window, click the Open Terminal button and then click in the terminal to bring focus to that window.
  3. Press Enter one or more times to get a response from the datalogger.
  4. The response will be something like CR1000X>.
  5. Type SDI12 and press Enter.
  6. When presented the menu, select the port (press 1 if your LI-710 is on terminal C1).
  7. Now you can query the LI-710 with the following commands:

Get the address

  • Command ?!
  • Reply: 0 (or whatever the address is)

Set the address

To change the address from 0 to 1

  • Command: 0A1!
  • Reply: 1

Note: If you change the address, you must modify the address in the program to match the sensor's address.

Get information

  • Command: 0I! (the number zero, the capital letter I for information, ending with an exclamation point).
  • Reply: 014LI-COR LI-7101.0ET100033 (identifying information for the sensor, including the device address, manufacturer, model, firmware version, and serial number).

Read current data from a group

The command to read data.

  • Command: 0R0!
  • Reply: 0+0.00+0.02+0.02+1.39+97.55+22.47+48.87+0
  • Command: 0R1!
  • Reply: 1+0.00+0.02+0.02+97.55+22.47+48.87+600+0

The two examples show data group 0 and data group 1. Enter 2 or 3 in place of the 0 or 1 to read those data groups.

Simple program with comments

The program in Listing 5‑1 is for a Campbell Scientific CR1000X, CR1000, CR5000, or CR6 Datalogger. This example includes comments to show you which parameters can be modified.

Listing 5‑1. A program for Campbell Scientific, Inc. CR1000X, CR1000, CR5000, or CR6 datalogger.

'LI-710 simple logger
'Rev: 0.1
'Date: May 23, 2023

Public LI710A(9) 'names an array and specifies that it has 9 variables
Alias LI710A(1)=et_l 'the first of 9
Units et_l=mm
Alias LI710A(2)=le_l
Units le_l=W/M^2
Alias LI710A(3)=h_l
Units h_l=W/M^2
Alias LI710A(4)=vpd_l
Units vpd_l=kPa
Alias LI710A(5)=pa_l
Units pa_l=kPa
Alias LI710A(6)=ta_l
Units ta_l=C
Alias LI710A(7)=rh_l
Units rh_l=%
Alias LI710A(8)=seq_l
Units seq_l=count
Alias LI710A(9)=diag_l
Units diag_l=Dimensionless

DataTable (LI710group0,True,-1) 'creates and names a data table
    DataInterval(0,30,Min,10) 'specifies the interval for writing to the table 

  Scan (30,Min,1,0) 'specifies the interval for scanning for new data
    SDI12Recorder(LI710A,C1,0,"XT!",1.0,0) 'instructs the SDI-12 device on terminal C1 to start sampling
    SDI12Recorder(LI710A,C1,0,"M0!",1.0,0) 'requests group 0 (M0) from the SDI-12 device on terminal C1
    CallTable LI710group0