Sunday, June 16, 2019

Troubleshooting communication with the Sea-Bird CTD

Communication problems

Usually, if you just started using a CTD, your device will not let you enjoy an easy ride, faults will happen and communication problems are the most common.

The easiest way to fix communication problems requires that you use a program called SeaTerm (we actually prefer using SeaTermV2). SeaTerm is a terminal software that communicates with the CTD device and is designated for programming the CTD (see the list of important SeaTerm features in another post).

Before you start SeaTerm, you should know that serial ports, as opposed to USB can not be connected to two programs simultaneously, so be sure to close all other SeaSoft software before you start SeaTerm.

When you open SeaTermV2, you will be prompted for the type of device. Once you selected a device (here we assume you are using SBE19PlusV2) you will be getting the list of Command for your CTD (left) and the terminal itself (right). On the top bar, press communication>configure. Here two types of communication problems can be figured out:

Port: Check the device manager again to make sure that the port you use for communication is the correct one, and then switch the CTD to "on" using the magnetic switch, if you don't see a stream of characters on the terminal screen, you have some physical problem with your cable or the serial to USB converter.

If you see a stream of characters that are not letters, you probably have the wrong baud rate.

Baud: The Baud is the symbol rate, or more to the point the CTD to PC communication speed. if you press the drop-down menu, you can see that your device can operate in many Baud rates. If your CTD's Baud is different than the Baud the PC expects, the symbol stream will look very incoherent, once the correct Baud rate is used, the character stream will only include hex characters (0-9 and A-F).

Once you have established communication it's advised to switch off the CTD disconnect and reconnect and then check the CTD by sending it the get system status command (just type GetSD on the terminal window and read the results). Once you are done with the terminal, make sure to close the program.

Scan length error 

Scan length errors occurs when there is an incompatibility between The CTD device definitions (conducted using SeaTerm) and the instrument configuration file which is stored on the PC and defines how to translate the device output.
To save memory and battery power, the user can define the number and types of sensors used by the CTD. A small number of devices require less power and less memory (and also means  narrower communication band to the PC). If the PC configuration file defines different number (or types) of sensors than the number physically defined on the CTD the communication bands are inconsistent and a scan length error is received.
To fix the error you will have to understand how sensors are numbered on the device and in the configuration file.
On the CTD device, Sensors have no real meaning, all we have are voltages (volt1-volt6), each voltage is a communication port on the CTD you can open (using the volt 0...5=Y in SeaTerm which makes the number of characters in the CTD output longer) or close (using the volt0...5=N). Only after opening a voltage on the CTD, you can mount a sensor on that port and the data will be saved internally or transmitted to the .hex file on the PC.
Image 1: location and number of ports.
On the PC, when translating CTD output (electric current readings (V)) to sensor readings (such as temperature) and the number of sensors is defined on the top of the configuration file under "External voltage channels".
The CTD output is cut into pieces, each piece is related to a specific sensor and translated to measured quantities (eg. Oxygen concentration) using the sensor definitions on the configuration file. To properly cut the CTD output, you have to correctly define the position the sensor on the CTD. This is done by correctly positioning the sensor on the list of sensors in the configuration file (image 2).
Image 2: instrument configuration file (.xmlcon)


AND here is the catch.  Although the sensors are related as voltages the numbering is different. Here a sensor number is numbered by the voltags position when only counting voltages which are open on the CTD.
Example:
We have a CTD device where we open voltages 1,3,5 and an Oxygen sensor is mounted in the top port (image 1). The oxygen sensor should be defined in the .con file under the volt 3 line.  


Low battery

If your CTD runs out of battery power while sampling it will switch off to prevent for inaccurate measurements. As a user you will experience communication because the PC will lose communication while sampling.
To verify this, you can check the battery status using the DS command on Seaterm. If you batteries (Vmain on the command output) voltage is less than 9.7, This is probably the case and you should change batteries before you continue sampling. SeaBird produced a clip describing how to change batteries. Also, when communication fails due to CTD shutting down, you will see a comment "power off" at the end of the hex file produced while sampling.

2 comments: