Campbell COM320 Instruction Manual

INSTRUCTION MANUAL
COM320 Voice Phone Modem
Copyright © 2002- 2016
Revision: 6/16

Limited Warranty

“Products manufactured by CSI are warranted by CSI to be free from defects in materials and workmanship under normal use and service for twelve months from the date of shipment unless otherwise specified in the corresponding product manual. (Product manuals are available for review online at
www.campbellsci.com.) Products not manufactured by CSI, but that are resold
by CSI, are warranted only to the limits extended by the original manufacturer. Batteries, fine-wire thermocouples, desiccant, and other consumables have no warranty. CSI’s obligation under this warranty is limited to repairing or replacing (at CSI’s option) defective Products, which shall be the sole and exclusive remedy under this warranty. The Customer assumes all costs of removing, reinstalling, and shipping defective Products to CSI. CSI will return such Products by surface carrier prepaid within the continental United States of America. To all other locations, CSI will return such Products best way CIP (port of entry) per Incoterms ® 2010. This warranty shall not apply to any Products which have been subjected to modification, misuse, neglect, improper service, accidents of nature, or shipping damage. This warranty is in lieu of all other warranties, expressed or implied. The warranty for installation services performed by CSI such as programming to customer specifications, electrical connections to Products manufactured by CSI, and Product specific training, is part of CSI's product warranty. CSI EXPRESSLY DISCLAIMS AND
EXCLUDES ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. CSI hereby disclaims, to the fullest extent allowed by applicable law, any and all warranties and conditions with respect to the Products, whether express, implied or statutory, other than those expressly provided herein.

Assistance

Products may not be returned without prior authorization. The following contact information is for US and international customers residing in countries served by Campbell Scientific, Inc. directly. Affiliate companies handle repairs for customers within their territories. Please visit www.campbellsci.com to determine which Campbell Scientific company serves your country.
To obtain a Returned Materials Authorization (RMA), contact CAMPBELL SCIENTIFIC, INC., phone (435) 227-9000. Please write the issued RMA number clearly on the outside of the shipping container. Campbell Scientific’s shipping address is:
CAMPBELL SCIENTIFIC, INC. RMA#_____ 815 West 1800 North Logan, Utah 84321-1784
For all returns, the customer must fill out a “Statement of Product Cleanliness and Decontamination” form and comply with the requirements specified in it. The form is available from our website at www.campbellsci.com/repair. A completed form must be either emailed to repair@campbellsci.com or faxed to (435) 227-9106. Campbell Scientific is unable to process any returns until we receive this form. If the form is not received within three days of product receipt or is incomplete, the product will be returned to the customer at the customer’s expense. Campbell Scientific reserves the right to refuse service on products that were exposed to contaminants that may cause health or safety concerns for our employees.

Safety

DANGER — MANY HAZARDS ARE ASSOCIATED WITH INSTALLING, USING, MAINTAINING, AND WORKING ON OR AROUND
TRIPODS, TOWERS, AND ANY ATTACHMENTS TO TRIPODS AND TOWERS SUCH AS SENSORS, CROSSARMS, ENCLOSURES, ANTENNAS, ETC. FAILURE TO PROPERLY AND COMPLETELY ASSEMBLE, INSTALL, OPERATE, USE, AND MAINTAIN TRIPODS,
TOWERS, AND ATTACHMENTS, AND FAILURE TO HEED WARNINGS, INCREASES THE RISK OF DEATH, ACCIDENT, SERIOUS INJURY, PROPERTY DAMAGE, AND PRODUCT FAILURE. TAKE ALL REASONABLE PRECAUTIONS TO AVOID THESE HAZARDS. CHECK WITH YOUR ORGANIZATION'S SAFETY COORDINATOR (OR POLICY) FOR PROCEDURES AND REQUIRED PROTECTIVE EQUIPMENT PRIOR TO PERFORMING ANY WORK.
Use tripods, towers, and attachments to tripods and towers only for purposes for which they are designed. Do not exceed design limits. Be familiar and comply with all instructions provided in product manuals. Manuals are available at www.campbellsci.com or by telephoning (435) 227-9000 (USA). You are responsible for conformance with governing codes and regulations, including safety regulations, and the integrity and location of structures or land to which towers, tripods, and any attachments are attached. Installation sites should be evaluated and approved by a qualified engineer. If questions or concerns arise regarding installation, use, or maintenance of tripods, towers, attachments, or electrical connections, consult with a licensed and qualified engineer or electrician.
General
Prior to performing site or installation work, obtain required approvals and permits. Comply
with all governing structure-height regulations, such as those of the FAA in the USA.
Use only qualified personnel for installation, use, and maintenance of tripods and towers, and
any attachments to tripods and towers. The use of licensed and qualified contractors is highly recommended.
Read all applicable instructions carefully and understand procedures thoroughly before
beginning work.
Wear a hardhat and eye protection, and take other appropriate safety precautions while
working on or around tripods and towers.
Do not climb tripods or towers at any time, and prohibit climbing by other persons. Take
reasonable precautions to secure tripod and tower sites from trespassers.
Use only manufacturer recommended parts, materials, and tools.
Utility and Electrical
You can be killed or sustain serious bodily injury if the tripod, tower, or attachments you are
installing, constructing, using, or maintaining, or a tool, stake, or anchor, come in contact with overhead or underground utility lines.
Maintain a distance of at least one-and-one-half times structure height, 20 feet, or the distance
required by applicable law, whichever is greater, between overhead utility lines and the structure (tripod, tower, attachments, or tools).
Prior to performing site or installation work, inform all utility companies and have all
underground utilities marked.
Comply with all electrical codes. Electrical equipment and related grounding devices should be
installed by a licensed and qualified electrician.
Elevated Work and Weather
Exercise extreme caution when performing elevated work.
Use appropriate equipment and safety practices.
During installation and maintenance, keep tower and tripod sites clear of un-trained or non-
essential personnel. Take precautions to prevent elevated tools and objects from dropping.
Do not perform any work in inclement weather, including wind, rain, snow, lightning, etc.
Maintenance
Periodically (at least yearly) check for wear and damage, including corrosion, stress cracks,
frayed cables, loose cable clamps, cable tightness, etc. and take necessary corrective actions.
Periodically (at least yearly) check electrical ground connections.
WHILE EVERY ATTEMPT IS MADE TO EMBODY THE HIGHEST DEGREE OF SAFETY IN ALL CAMPBELL SCIENTIFIC PRODUCTS, THE CUSTOMER ASSUMES ALL RISK FROM ANY INJURY RESULTING FROM IMPROPER INSTALLATION, USE, OR MAINTENANCE OF TRIPODS, TOWERS, OR ATTACHMENTS TO TRIPODS AND TOWERS SUCH AS SENSORS, CROSSARMS, ENCLOSURES, ANTENNAS, ETC.

Table of Contents

PDF viewers: These page numbers refer to the printed version of this document. Use the PDF reader bookmarks tab for links to specific sections.
1. Introduction ................................................................ 1
2. Specifications ............................................................. 2
3. QuickStart ................................................................... 2
3.1 CR1000 Example Program .................................................................. 6
3.2 Example Program Description ............................................................. 9
3.2.1 VoiceSetup() ................................................................................. 9
3.2.2 Voice Beg / EndVoice ................................................................ 10
3.2.3 CallInVoice Subroutine .............................................................. 10
3.2.4 CallOutVoice Subroutine ............................................................ 10
3.2.5 SlowSequence ............................................................................. 10
4. System Components ............................................... 10
4.1 COM320 Modem ............................................................................... 10
4.2 Surge Suppressor ............................................................................... 11
4.3 Voice Capable Dataloggers ................................................................ 11
4.4 Telephone ........................................................................................... 11
5. Datalogger Voice Programming .............................. 11
5.1 Features .............................................................................................. 11
5.1.1 Callback ...................................................................................... 12
5.1.1.1 Data Callback ................................................................... 12
5.1.1.2 Voice Callback ................................................................. 12
5.1.2 Voice Callin ................................................................................ 12
5.1.3 Voice Storage Data ..................................................................... 12
5.2 Voice Instructions .............................................................................. 13
5.2.1 VoiceBeg / EndVoice ................................................................. 13
5.2.2 VoiceSpeak ................................................................................. 13
5.2.3 VoiceKey .................................................................................... 13
5.2.4 VoiceNumber .............................................................................. 14
5.2.5 DialVoice .................................................................................... 14
5.2.6 VoiceHangup .............................................................................. 14
5.2.7 VoiceSetup .................................................................................. 14
5.2.8 VoicePhrases ............................................................................... 15
5.3 Data Callback ..................................................................................... 15
5.3.1 Example Data Callback Program ................................................ 15
5.3.2 Data Callback Instructions .......................................................... 16
5.4 Answer in Data Mode ........................................................................ 17
5.5 LoggerNet .......................................................................................... 17
6. Hardware Installation ............................................... 18
6.1 Site Requirements .............................................................................. 18
6.2 Powering the COM320 Modem ......................................................... 19
i
Table of Contents
Grounding the COM320 System ....................................................... 19
6.3
6.4 Telephone Service ............................................................................. 20
6.5 Connecting to a Surge Protector ........................................................ 21
7. Troubleshooting COM320 Voice Systems .............. 22
7.1 No Communications .......................................................................... 22
7.2 Communications Problems ................................................................ 23
Appendices
A. IC Information ......................................................... A-1
B. Updating and Configuring the COM320 ................ B-1
B.1 Removing the Cover to Access the USB Port ................................. B-1
B.2 COM320 USB Communications Cable ........................................... B-1
B.3 COM320 Driver Installation ........................................................... B-1
B.4 Downloading a New Operating System to the COM320 ................ B-2
B.5 Changing COM320 Settings ........................................................... B-3
B.6 Retrieving a Vocabulary List .......................................................... B-5
C. CS I/O 9 Pin Serial Port .......................................... C-1
D. COM320 Word List ................................................. D-1
D.1 COM320 Word List - Alphabetical Order ....................................... D-1
Figures
1-1. COM320 Voice Phone Modem ........................................................... 1
6-1. COM320 Hardware Connection Using Standard RJ11 Phone Jack .. 18 6-2. COM320 / CR1000 Using Surge Protection Device (where there’s
no available Standard RJ11 Connection) ....................................... 19
6-3. COM320 Grounding and Alternate 12Vdc Power ............................ 20
6-4. Top View of Surge Suppressor Wiring ............................................. 21
6-5. Side View of Surge Suppressor Wiring ............................................. 22
B-1. Send OS Screen in Device Configuration Utility ............................ B-3
B-2. Device Configuration Utility Screen ............................................... B-4
B-3. Device Configuration Utility Settings Editor .................................. B-4
C-1. COM320’s Male 9 Pin Connector ................................................... C-1
Tables
C-1. Pin Description ................................................................................ C-2
ii
COM320 Voice Communications Modem

1. Introduction

The COM320 is a voice-synthesized modem that supports the CR800, CR850, CR1000, and CR3000 dataloggers. The COM320 allows the datalogger to announce over the telephone specific variable data, present state of flags and/or control ports, and the ability to toggle flags and/or control ports. Dataloggers can also be programmed to call specific phone numbers with different messages when specific conditions are met.
Although the primary function of the COM320 is voice communications, the modem is also capable of data communications. In data mode, the COM320 supports standard datalogger functions including program send, data collection, and data callback.
This manual provides information regarding COM320 specifications, installation, and operation. Section 3, QuickStart CR1000 voice callback/callin program with descriptions of the code.
(p. 2), presents an example
Section 6.3, Grounding the COM320 System good earth ground connection to maximize protection of the COM320 against lightning and electro-static discharge.
(p. 19), explains how to make a
FIGURE 1-1. COM320 Voice Phone Modem
1
COM320 Voice Communications Modem
NOTE

2. Specifications

Standards: V.92, K56Flex, V.90, V.34, V.32bis, V.32,
Registration: FCC US: 3A4M508BSM2-T-W
Compliance: View the EU Declaration of Conformity at:
Datalogger interface: CS I/O, SDC9 (Only one device using SDC9
Operating voltage: 12 Vdc
Current drain: 100 μA quiescent; 35 mA active
Operation: Full-duplex over standard analog phone lines
Operating temperature: –25 to 50 °C standard, –55 to 85 °C optional
Dimensions: 16.5 x 2.5 x 6.6 cm (6.5 x 1.0 x 2.6 in)
V.23, V.22bis, V.22, V.21, B212, B103
IC 2377 A-SM2TW
www.campbellsci.com/com320
can be connected to the CS I/O port.)

3. QuickStart

Weight: 0.16 kg (0.35 lb)
This section presents Basic_Voice_2.cr1, an example voice callback/callin program written to demonstrate functions of the COM320. It can serve as a starting point from which to build an application program. Customize the voice code and merge your measurement sections with the voice code. Also test the auto-disconnect functionality (that is, the datalogger will automatically hang up after the specified number of seconds).
To demonstrate the example program, obtain the following items or their equivalent:
1) COM320 (COM320_OS.03 or later OS)
2) SC12 Cable
3) CR1000 datalogger
4) 3 inches of thermocouple wire
5) PS150 Power Supply
6) Phone modem for PC
7) LED in series with 1000 ohm resistor
8) Analog phone line
The COM320 cannot interface with office digital phone lines. Connect the COM320 to analog phone lines only, such as a fax line.
2
You will also need:
1) Windows compatible PC with available COM port.
2) LoggerNet 3.4.1 or later installed on PC.
The datalogger’s voice code is created along with the measurement program using the CRBasic editor. Finish and debug the voice portion of the program before adding the measurement code.
The example CR1000 voice callback/callin program supports the following functions:
Voice callin
Voice callback
Auto-disconnect
Auto-redial
Alarm reset
The following steps show how to build a station to demonstrate the example voice callback/callin program. The voice station can further serve to test/debug a custom voice program and merge it with an application program.

Step 1 – LoggerNet Setup

1) In LoggerNet Setup create the following device map:
COM320 Voice Communications Modem
2) Configure ComPort and PhoneBase for your PC’s phone modem.
3) Configure PhoneRemote to include the COM320’s analog phone number
followed by six commas and a 9.
4) Click on CR1000phone (renamed) and verify that the PakBus Address is 1.

Step 2 – Hardware Setup

1) Start with a CR1000 having factory settings. If unsure of settings, close
LoggerNet, connect SC12 cable from PC ComPort to CR1000 RS-232 port, run Device Configuration Utility, set Serial Port to match the PC ComPort, Connect and click on the Factory Defaults button, Apply settings and Disconnect.
2) Turn off PS150 if it isn’t already.
3) Connect CR1000 to PS150.
4) Connect SC12 cable from COM320 to CR1000 CS I/O port.
5) Connect analog phone line to COM320.
6) Turn on PS150.
7) Connect prepared thermocouple to CR1000’s DIFF 7 analog input.
3
COM320 Voice Communications Modem
8) Connect LED with 1000 ohm resistor connected to anode lead from C1 to
G (resister to C1).

Step 3 – Send BASIC_VOICE_2.CR1 to CR1000

1) Download BASIC_VOICE_2.CR1 from CSI web site under Support,
Downloads, Program | Examples, COM310 Examples to a folder on your hard drive. (The download from the website is a zip file containing both BASIC_VOICE_2.CR1 and Basic_Data_Clbk_1.CR1.)
2) From LoggerNet Toolbar run CRBasic Editor and open
BASIC_VOICE_2.CR1.
3) Change PHONE1 (a constant in SlowSequence near bottom of program) to
your office phone number to be used for callback. Save and Compile the change.
4) You can change PHONE2, etc. to nearby phone numbers for testing or
comment out those lines of code. NUMPHONES should equal the number of active phone numbers.
5) If the thermocouple at DIFF 7 isn’t Type T, change the program to match
your thermocouple type. Save and Compile.

Step 4 – Callin

Step 5 – Callback

6) Connect to CR1000phone and in Connect Screen, send
BASIC_VOICE_2.CR1 to CR1000phone.
7) Disconnect from CR1000phone.
8) Your CR1000 voice station is ready to demonstrate.
1) Using a touch-tone phone, dial the number of the analog phone line
connected to the COM320.
2) You should hear a ring or two, some faint clicking and then the voice
announcements:
CURRENT STATION DATA PRESS ONE TO HEAR THE BATTERY VOLTAGE PRESS TWO TO HEAR THE DATALOGGER TEMPERATURE PRESS THREE TO HEAR THE T C TEMPERATURE PRESS STAR TO DISCONNECT
3) Pressing 1, 2, 3, or * should produce the result indicated.
1) Grip the end of the thermocouple to raise its temperature above 85 °F
setting an alarm condition.
4
2) In a few seconds you should be able to detect the dial tones as a voice
callback proceeds. The first phone number in the program should ring. Picking up the phone you should hear:
COM320 Voice Communications Modem
PRESS POUND TO RESET ALARM, PRESS STAR TO DISCONNECT
Pressing the # key you should hear:
C R ONE THOUSAND STATION PRESS ONE TO HEAR A SENSOR VALUE PRESS TWO TO HEAR OR TOGGLE PORT PRESS THREE TO HEAR OR TOGGLE FLAG PRESS STAR TO DISCONNECT
3) Navigate through the menus to learn the program’s capabilities:
a) Press 2 to access the Ports Menu.
b) Press 1 to read the logic state of Control Port 1.
c) Press # to toggle the logic state of Control Port 1 (C1’s LED should
turn on).
d) Press # again (C1’s LED should turn off).
e) Press * to return to “C R ONE THOUSAND STATION” menu.
f) Press * to hang up.
4) Try hanging up the phone without pressing * (disorderly exit). The
modem should automatically hang up after a few seconds.
5) As you press the keys to navigate around in the menus, you will find that
occasionally you get an unexpected response. Phone connections are susceptible to noise and signal attenuation. Depending on your particular phone equipment, the phone lines, and equipment between you and the voice station, you may experience some of the following:
a) You press * and the voice station hangs up but doesn’t say,
“Goodbye.”
b) A voice callback rings your phone but you pick up to silence.
Certain phones are more of a problem due to low signal levels or switch bounce.
6) Helpful hints for pressing phone keys to control a voice station:
a) Press a key firmly (but not too long).
b) Allow a second between key presses.
c) Press the same key again if getting an incorrect response.
d) If no response, try pressing the same key again or press the # key to
recover.
e) If unresponsive, try rapidly pressing a series of five * keys to
disconnect station.
f) Worst case, hang up and allow 6 minutes for the voice station to reset
itself.
5
COM320 Voice Communications Modem

3.1 CR1000 Example Program

The BASIC_VOICE_2.CR1 example voice callback/callin program employing VoiceSetup() can be downloaded from CSI’s website under Support/Downloads/Program | Examples, COM310 Examples.
' CR1000
' BASIC_VOICE_2.CR1
' Program employs VoiceSetup instruction available in OS CR1000.Std.12 and later
' 1st phone number is called if Diff 7 TC temperature > 85F ' Program continues to call callback phone number list until someone answers and presses # key ‘ resetting alarm. ' Callback phone numbers are in constants in the SlowSequence at the bottom of the program.
' Key Press Functions: ' # resets alarm condition or toggles port/flag ' 1,2,3,4,5,6,7,8 select certain menu items ' * returns one menu level (returns from subroutine) or disconnects ' 0 is not used in this program ' 9 should be avoided since it will trigger an attempt to connect to a modem
' Timeouts (for key presses and for the total on line time) are constants listed below ' and can be adjusted.
Public Value(3) Alias Value(1) = BatteryV Alias Value(2) = PTemp Alias Value(3) = TCValue_F
Const KeyTimeout = 800 ' 8 second timeout waiting for key stroke before hangup Const SecsOnLine = 360 ' 6 minutes On Line Timeout Const STAR = 42 ' The * key (STAR) Const POUND = 35 ' The # key Const HangupIfKeyTimeout = TRUE ' Will hangup if times out waiting for a key Const RINGTIME = 20 ' Maximum time, in seconds, allowed for a phone to be picked up ' and # pressed
Public mykey As Long
' **** VOICE CODE executed when DL detects COM320 RING or when DialVoice() succeeds ****
Public CallingOut As Boolean ' Detects whether we are calling out or calling in
' STAR (*) key will be used to return from subroutines and to disconnect if not in a subroutine
VoiceSetup (STAR,STAR,0,SecsOnLine,HangupIfKeyTimeout,CallingOut)
VoiceBeg If CallingOut Then ' We are calling out triggered by DialVoice() Call CallOutVoice Else Call CallInVoice ' We are calling in EndIf EndVoice
' ***** Subroutines *****
' Called when calling in: Sub CallInVoice Do VoiceSpeak ("CURRENT STATION DATA 50MS 50MS", 0) VoiceSpeak ("PRESS ONE TO HEAR THE BATTERY VOLTAGE 50MS", 0) VoiceSpeak ("PRESS TWO TO HEAR THE DATALOGGER TEMPERATURE 50MS", 0) VoiceSpeak ("PRESS THREE TO HEAR THE T C TEMPERATURE 50MS", 0)
6
COM320 Voice Communications Modem
VoiceSpeak ("PRESS STAR TO DISCONNECT", 0) Select Case VoiceKey(keytimeout) Case 1 VoiceSpeak ("THE BATTERY VOLTAGE IS" + Value(1) + "VOLTS", 1) Case 2 VoiceSpeak ("THE REFERENCE IS" + Value(2) + "DEGREES", 1) Case 3 VoiceSpeak ("THE AIR TEMPERATURE IS" + Value(3) + "DEGREES", 0) EndSelect Loop ' Until timeout or STAR EndSub
' Called when calling out: Public Alarm As Boolean, ArmAlarm As Boolean, ManualAlarm As Boolean
Sub CallOutVoice ' Dial # reset to reset alarm = 0 Timer(1,Sec,2) ' Start timer Do VoiceSpeak("50MS PRESS POUND TO RESET ALARM 50MS PRESS STAR TO DISCONNECT", 0) mykey = VoiceKey(0) If Timer(1,Sec,4) >= RINGTIME Then ExitSub ' Max time to await pick up and # press Loop Until mykey = POUND ' Someone cleared the alarm, let them proceed and do other things Alarm = False Do ' Until timeout VoiceSpeak ("50MS C R ONE THOUSAND STATION 50MS 50MS", 0) VoiceSpeak ("PRESS ONE TO HEAR A SENSOR VALUE 50MS 50MS", 0) VoiceSpeak ("PRESS TWO TO HEAR OR TOGGLE PORT 50MS 50MS", 0) VoiceSpeak ("PRESS STAR TO DISCONNECT 50MS 50MS", 0) Select Case VoiceKey(KeyTimeout) Case 1 Call SubKey1 Case 2 Call SubKey2 Case 3 Call SubKey3 EndSelect Loop ' Until timeout EndSub
' Monitors a value Sub SubKey1 Do VoiceSpeak ("50MS PRESS SENSOR NUMBER 50MS PRESS STAR TO RETURN", 0) mykey = VoiceKey (KeyTimeout) If mykey = 1 Then VoiceSpeak ("50MS THE BATTERY VOLTAGE IS" + Value(1) + "VOLTS", 1) If (mykey = 2) Then VoiceSpeak ("50MS THE REFERENCE IS" + Value(2) + "DEGREES", 1) If (mykey = 3) Then VoiceSpeak ("50MS THE T C IS" + Value(3) + "DEGREES", 1) Loop ' Sensor value loop EndSub
' Read a port and possibly toggle Sub SubKey2 Do ' Until * or timeout Dim keybit,port As Long,state VoiceSpeak("50MS PRESS PORT NUMBER 50MS PRESS STAR TO RETURN", 0) port = VoiceKey(keyTimeout) If (port > 0) AND (port <= 8) Then keybit = 2^(port-1) ' Bit 0..7 is set in keybit. Keybit = 2^(port-1). Do ReadIO(state, &b11111111) VoiceSpeak("50MS C" + port + "IS",0) If state AND keybit Then VoiceSpeak("ON",0) Else VoiceSpeak("OFF",0) EndIf
7
COM320 Voice Communications Modem
VoiceSpeak("50MS PRESS POUND TO TOGGLE 50MS PRESS STAR TO RETURN", 0) If VoiceKey(KeyTimeout) = POUND Then ReadIO (state,&b11111111) If state AND keybit Then state = state AND (NOT keybit) Else state = state OR keybit EndIf WriteIO(&b11111111,state) ' Toggle control port EndIf Loop EndIf Loop EndSub
' Read a flag and possibly toggle Sub SubKey3 Const NUMBERFLAGS = 8 Public Flags(NUMBERFLAGS) Do ' Until * or timeout VoiceSpeak("50MS PRESS FLAG NUMBER 50MS PRESS STAR TO RETURN", 0) mykey = VoiceKey(keyTimeout) If (mykey > 0) AND (mykey <= NUMBERFLAGS) Then Do VoiceSpeak("50MS FLAG" + mykey + "IS",0) If Flags(mykey) Then VoiceSpeak("ON",0) Else VoiceSpeak("OFF",0) EndIf VoiceSpeak("50MS PRESS POUND TO TOGGLE 50MS PRESS STAR TO RETURN", 0) If VoiceKey(KeyTimeout) = POUND Then flags(mykey) = NOT flags(mykey) Else ExitDo EndIf Loop EndIf Loop ' Port loop EndSub
DataTable (Test,1,-1) DataInterval (0,0,Sec,10) Minimum (1,BatteryV,FP2,0,False) Sample (1,PTemp,FP2) Sample (1,TCvalue_F,FP2) EndTable
' <<<<<<<<<<<<<<<<<< MEASUREMENT PROGRAM >>>>>>>>>>>>>>>>>> BeginProg
Scan (1,Sec,3,0) Battery (BatteryV) PanelTemp (PTemp,250) TCDiff (TCvalue_F,1,mV2_5C,7,TypeT,PTemp,True,0,250,1.8,32)
' Add measurement code here *******************
CallTable Test
NextScan
' <<< VOICE CALLBACK CODE that executes when alarm conditions are met >>> SlowSequence ' Slow Sequence do loop forever possibly doing alarm call out Const NUMPHONES = 3 ' 3 phone numbers to try Const PHONE1 = "1112223333" Const PHONE2 = "1112224444"
8
COM320 Voice Communications Modem
NOTE
Const PHONE3 = "1112225555" Dim i,Phones(NUMPHONES) As String phones(1) = PHONE1 phones(2) = PHONE2 phones(3) = PHONE3
Alarm = FALSE ArmAlarm = TRUE Do ' Forever Delay(1,1,sec) If (TCvalue_F < 85) Then ArmAlarm = TRUE ElseIf (TCvalue_F > 85 AND ArmAlarm) OR ManualAlarm = TRUE Then ManualAlarm = False Alarm = TRUE' Do For i = 1 To NUMPHONES ' Call these numbers until the alarm is cleared If Alarm Then DialVoice(phones(i)) ' Calls only if alarm is set Next i If Alarm Then Delay(1,1,min) Loop Until Alarm = FALSE ArmAlarm = False EndIf Loop
EndProg

3.2 Example Program Description

Bold text indicates a CRBasic instruction. Italic text indicates a subroutine.
Basic_Voice_2.cr1 has five main sections:
VoiceSetup() – handles auto-disconnect.
Voice Beg / EndVoice – routes execution to callin or callout subroutines.
CallInVoice Subroutine – executes when VoiceBeg detects a callin
CallOutVoice Subroutine – executes when VoiceBeg detects a dial-up. It looks
for a pound (#) key to reset “alarm” variable to false.
SlowSequence – continually looks for the “alarm” variable to be true, which if
it is, it dials a list of phone numbers until “alarm” is no longer true. It signals VoiceBeg when a callout dial-up is in progress.

3.2.1 VoiceSetup()

The VoiceSetup() instruction is used to control the hang up of the COM320 voice modem. It controls which key is used to exit a subroutine and which is used to continue to the next VoiceKey() instruction. It also determines how long the COM320 can be ‘off hook’ before the datalogger automatically hangs up (auto-disconnect). And it controls whether or not the modem hangs up after a VoiceKey() instruction timeout. The Callout parameter indicates that the modem has received a ‘call in’ or has dialed a ‘call out’.
9
COM320 Voice Communications Modem
WARNING
The VoiceSetup() SecsOnLine setting is important as it hangs up (auto-disconnects) the modem in case someone hangs up the phone or leaves the phone off­hook without pressing star keys for an orderly “good­bye” disconnect. Test the entire program in this regard before deployment to avoid possible lengthy off-hook states disallowing incoming calls, running up a phone bill and draining the station power supply.

3.2.2 Voice Beg / EndVoice

At call in, the VoiceBeg / EndVoice instruction pair enclose the code that is executed when the datalogger detects a ring from the COM320.

3.2.3 CallInVoice Subroutine

This subroutine contains the code pointed to by VoiceBeg / EndVoice that executes after a call in occurs. It consists mainly of VoiceSpeak() menu announcements followed by a VoiceKey() instruction prompting caller input and a Select Case statement choosing the program’s responses to various caller key presses.

3.2.4 CallOutVoice Subroutine

The CallOutVoice subroutine contains the code that executes when VoiceBeg / EndVoice detects that a call out phone number has been dialed. It prompts a
responding party to press the # key after which it announces the menu selections to hear: battery voltage, panel temperature, or thermocouple temperature (SubKey1); datalogger port status of C1 – C8 (SubKey2); or datalogger flag status of F(1) – F(8) (SubKey3). The state of the ports and flags can be toggled as well as heard.

3.2.5 SlowSequence

Contains code that continually executes looking for the Diff 7 thermocouple to exceed 85 °F forcing a call out (callback) because the “alarm” variable is “True.” It dials the first phone number on the list. If no answer after 20 seconds, the second number is dialed. The list of phone numbers is dialed repeatedly until someone picks up and presses the # key (monitored by the CallOutVoice subroutine) which resets “alarm” to “False” and allows the responding party to proceed throug the CallOutVoice menus.

4. System Components

4.1 COM320 Modem

Connecting a COM320 voice modem to a datalogger provides all COM220 supported functions plus the following:
10
Voice retrieval of data (user or datalogger initiated)
Reading / Toggling of datalogger control ports
Reading / Toggling of program Flags
The COM320 ships with an SC12 cable (9-pin to 9-pin) for connecting between the modem CS I/O port and datalogger CS I/O port.
The COM320’s communication port is designed to function with
NOTE
NOTE
a Campbell Scientific CS I/O port. This is not an RS-232 port.
Appendix C, CS I/O 9 Pin Serial Port (p. C-1), for the CS I/O
See port description.

4.2 Surge Suppressor

If the phone company does not provide surge protection at the datalogger site, you will need to install some. CSI offers surge protectors in two forms: pn 6362 is a surge protector with environmental enclosure mounting hardware and pn 4330 is the surge protector with no mounting hardware (see Section 6.5, Connecting to a Surge Protector

4.3 Voice Capable Dataloggers

The COM320 is compatible with the CR6, CR800, CR850, CR1000, and CR3000 dataloggers. They must have an operating system ≥ the following: CR800/CR850 version 7, CR1000 version 16, and CR3000 version 9. It is not compatible with CR200-series, CR5000, CR7, CR9000X, or any retired dataloggers.
The COM320 supports such functions as program send, data collection, clock check, voice callback, voice callin, and data callback.
COM320 Voice Communications Modem
(p. 21)).
The modem also supports concurrent communications. Dataloggers with multiple peripherals (COM320, RF450, RF401, MD485, NL115, CR1000KD, and SC32B) can communicate simultaneously via those peripherals.

4.4 Telephone

A touch-tone phone is normally used to call the COM320 modem. A rotary phone will work if the programmed voice announcements do not require you to navigate through the COM320’s menu system.
The COM320 must connect to an analog phone line. Some PBX phone lines are digital and don’t interface to an analog modem such as the COM320. Of course, any phone may be used to call in or receive callbacks from the COM320. A touch-tone phone is necessary for input.

5. Datalogger Voice Programming

The voice code for the datalogger is integrated with the main program. It is probably advantageous to complete and debug your custom voice program before adding the measurement code. The example voice callback/callin program in Section 3.1, CR1000 Example Program point for your program.
(p. 6), can provide a starting

5.1 Features

The voice instructions listed in Section 5.2, Voice Instructions (p. 13), are combined with standard CRBasic instructions to create the code needed for
11
COM320 Voice Communications Modem
telephone answering, dialing, voicing word strings, voicing data, receiving key presses from the remote phone, and acting upon those key presses.

5.1.1 Callback

Callback is the ability of a datalogger/COM320 station to initiate a phone call ‘back’ to a PC running LoggerNet (data mode) or to a telephone (voice mode). Data callback and voice callback code can be included in the same program. See the example CR1000 voice callback/callin program in Section 3.1, CR1000 Example Program
5.1.1.1 Data Callback
When specified conditions are met, a station can be programmed to do a data callback to a PC (with phone modem) running LoggerNet. Data callback causes LoggerNet to collect datalogger data marked for collection. You must enable Callback (sometimes in two places) in LoggerNet Setup.
The datalogger program uses a SendVariables() instruction to effect a data callback (see example data callback program in Section 5.3.1, Example Data Callback Program
5.1.1.2 Voice Callback
(p. 6), for details.
(p. 15)). No callback ID is used.
The COM320 gives you the ability to do voice callbacks. You can program a station to call one or more telephone numbers and announce an alarm message when conditions you specify are met. Using multiple phone numbers increases the probability that someone will receive the message.
Dataloggers accomplish voice callback with a combination of VoiceSetup(), VoiceKey(), VoiceSpeak(), and DialVoice() instructions (see example voice callback/callin program in Section 3.1, CR1000 Example Program

5.1.2 Voice Callin

Callin allows a station to accept a phone call and announce words and data. In some instances, access to menus may be allowed via key presses. All voice capable dataloggers support callin. The dataloggers require that callin code be added to the program (see example voice callback/callin program in Section
3.1, CR1000 Example Program

5.1.3 Voice Storage Data

The COM320 recites data stored in variables. You can also recite data stored in tables by setting a variable equal to Tablename.Fieldname (fieldname index, records back). You can get a specific field from the data table (for more information see Program Access to Data Tables section in the CR1000 manual).
The VoiceSpeak code might look like this:
(p. 6)).
(p. 6)).
12
TC_1 = Public.AirTemp(1,1)
VoiceSpeak ("THE AIR TEMPERATURE WAS" + TC_1 + "DEGREES", 0)

5.2 Voice Instructions

The example voice callback/callin program “BASIC_VOICE_2.CR1” in Section 3.1, CR1000 Example Program which to build the features you want.
Patterned after the example program in QuickStart, voice instructions can be combined in a variety of ways to provide phone access to datalogger data and for control of datalogger flags/output control ports.

5.2.1 VoiceBeg / EndVoice

This instruction pair contains the code executed when the datalogger detects a RING signal from the COM320 (a callin). It is placed in the declarations portion of the program before the BeginProg instruction. The EndVoice instruction hangs up the modem. VoiceHangup is not required unless you want to hang up the modem under certain conditions prior to the execution of the EndVoice instruction.
The VoiceKey() instruction is also used to add a delay before the EndVoice instruction is executed so that the datalogger will not end the VoiceSpeak() instruction before the spoken message is completed.
COM320 Voice Communications Modem
(p. 6), provides a starting point from

5.2.2 VoiceSpeak

5.2.3 VoiceKey

The VoiceSpeak() instruction defines the string spoken by the voice modem. The string is comprised of concatenated words and string variables. To ensure coded words are valid, CRBasic checks them against the voice.txt file, which mirrors the word list internal to the COM320. Voice.txt resides in the “C:\CAMPBELLSCI\LIB\COMPILER” folder.
To use VoiceSpeak(), select it from the instruction list in CRBasic Editor and click Insert. CRBasic Editor brings up a list of available words. Words can be inserted in any order. Words are enclosed with quotes and variables are concatenated with words using a plus sign. For example, "50MS THE BATTERY VOLTAGE IS" + Value(1) + "VOLTS" is a valid string. The word “50MS” inserts a 50 millisecond pause during the announcement. 50MS can be inserted multiple times in series to create a longer pause.
The VoiceKey() instruction is used to add a delay before the EndVoice instruction is executed so that the datalogger does not end the VoiceSpeak() command before the announcement is finished.
The VoiceKey() instruction Timeout parameter is used to add a delay (in 0.01 seconds) before EndVoice or Loop is executed. Multiple VoiceKey() instructions placed before an EndVoice or Loop instruction increase the delay. The VoiceKey() timeout provides silent time for a user to respond to the announced menu; however, the user can respond by pressing a key in the middle of an announcement.
When doing concurrent communications (via multiple communication peripherals) with your datalogger, it is recommended that the VoiceKey() timeout be extended to over 5 seconds.
13
COM320 Voice Communications Modem
The VoiceSetup() UseTimeout parameter determines whether or not the datalogger will hang up the COM320 after the timeout in the VoiceKey() instruction expires.

5.2.4 VoiceNumber

The VoiceNumber() instruction returns the accumulated touch tone digits that are received prior to the receipt of a # or * key. The example voice callback/callin program uses no VoiceNumber instructions; however, this instruction may be useful for phone transfer of long numbers such as for passwords, etc.

5.2.5 DialVoice

The DialVoice() instruction is used to define the dialing string for a COM320 voice modem, usually for voice callback. If the DialVoice() instruction is set equal to a variable, True will be returned if the communication attempt was successful or False will be returned if it failed. VoiceHangup is used after a communication attempt to hang up the voice modem. The DialString is the telephone number and any other codes used to dial the modem. The DialString can be a variable. A comma in the DialString inserts a 2 second pause.

5.2.6 VoiceHangup

5.2.7 VoiceSetup

The VoiceHangup instruction is used most often with the DialVoice() instruction to hang up the modem after communication. The VoiceHangup instruction is not needed if the voice commands are enclosed within the VoiceBeg / EndVoice instructions.
The VoiceSetup() instruction controls the hang up of the COM320 voice modem. It also allows you to specify certain handset key functions:
The HangUpKey parameter specifies the key that, when pressed, will disconnect the COM320.
The ExitSubKey parameter specifies the key that will exit a subroutine if the datalogger is running one. The ContinueKey parameter specifies the key that will begin announcing the next VoiceSpeak phrase.
The SecsOnLine parameter specifies the maximum number of seconds that the COM320 will be off-hook before it is hung up by the datalogger.
The UseTimeout parameter determines whether or not the datalogger will hang up the COM320 after the timeout in the VoiceKey() instruction expires. If this parameter is set to True, the timeout will be used. If False, the timeout will not be used.
The CallOut parameter is a Boolean value that indicates the COM320 mode. When the value returned in this parameter is True, the datalogger has called out. When the value is False, the datalogger has received an incoming call.
14
If the same ASCII character is used for HangUpKey and ExitSubKey, the datalogger will exit a subroutine if it is in one, otherwise, it will hang up the COM320. When the specified ContinueKey is pressed, the COM320 will skip
the current VoiceSpeak string and move to the next one. If any other key is pressed, the COM320 will skip to the next group of VoiceSpeak() instructions.

5.2.8 VoicePhrases

The VoicePhrases() instruction is used to provide a list of phrases for a VoiceSpeak() instruction. This instruction allows the VoiceSpeak()
instruction to output a string from a list of several strings, depending upon program conditions.

5.3 Data Callback

The COM320 can be put into data mode to accomplish data callback, instructing LoggerNet to do a collection of datalogger data.

5.3.1 Example Data Callback Program

The following program (downloadable from CSI web site under Support/Downloads/Program | Examples, COM310 Examples) does data callbacks to the phone number associated with the DialModem() instruction whenever the thermocouple temperature exceeds 85 °F. To complete the system, provide a PC running LoggerNet with a phone modem connected to the phone line dialed.
COM320 Voice Communications Modem
' CR1000 Series Datalogger
' BASIC_DATA_CLBK_1.CR1
' Program description: Does a DATA CALLBACK via COM320 when DIFF 7 TC temp > 85F
' LoggerNet Map: ' ComPort ' PhoneBase ' PhoneRemote ' PakBusPort ' CR1000 (PakBus Address matches remote DL)
' Use Type T thermocouple or change TCDiff instruction accordingly
Public batt_volt, Result Public PTemp, TCvalue_F, dummy Dim DialSuccess
DataTable (TestA,1,1000) DataInterval (0,0,Sec,10) Sample (1,PTemp,FP2) Sample (1,TCvalue_F,FP2) Sample (1,batt_volt,FP2) Sample (1,DialSuccess,FP2) Sample (1,Result,FP2) EndTable
DataTable (TestB,1,1000) DataInterval (0,0,Sec,10) Sample (1,PTemp,IEEE4) Sample (1,TCvalue_F,IEEE4) Average (1,TCvalue_F,IEEE4,False) Sample (1,batt_volt,FP2) Sample (1,DialSuccess,FP2) Sample (1,Result,FP2) EndTable
15
COM320 Voice Communications Modem
DialSequence (4094) DialSuccess = DialModem (COM320, 9600,"1112223333","") 'Phone number to call EndDialSequence (DialSuccess)
BeginProg Scan (30,Sec,0,0)
PanelTemp (PTemp,250) Battery (Batt_volt) dummy = 0
TCDiff (TCvalue_F,1,mV2_5C,7,TypeT,PTemp,True ,0,250,1.8,32)
If TCvalue_F > 85 then SendVariables (Result,COM320,4094,4094,0000,2500,"Public","Callback",dummy,1) Delay (1,15,Sec) 'Prevents too soon callback Endif
CallTable TestA CallTable TestB
NextScan EndProg
In the above data callback program, the phone number is dialed in the DialSequence()/EndDialSequence() using the DialModem() instruction. Any needed re-dials are handled by EndDialSequence(DialSuccess).
LoggerNet recognizes the incoming call as a data callback by the arrival of the “Public” and “Callback” strings sent by the SendVariables() instruction in the TableName and FieldName parameters (visible in low-level log for ComPort). Callback must be enabled in both the station and the ComPort screens.
The 25 second SendVariables() TimeOut (2500 hundredths of a second) allows the slow phone connection time to build.

5.3.2 Data Callback Instructions

The following instructions are used to program a data callback.
DialSequence/EndDialSequence
The DialSequence()/EndDialSequence() instructions are used to define the code necessary to route packets to a PakBus datalogger. Any time an instruction (SendVariables()) in the main program requires that communication be made with the remote PakBus device identified by the PakBusAddr parameter (LoggerNet server with PakBus address = 4094), the DialSequence code for that datalogger will be executed.
DialModem
The DialModem() instruction is used to send a modem dial string out one of the datalogger's ports. DialModem() can be used within DialSequence() / EndDialSequence() to specify a communication route to be used for a PakBus device.
16
The ResponseString is used to specify the response code expected back from the modem when a connection is made. When a null string is entered (""), the default is "1"+ CHR(13).
SendVariables
The SendVariables() instruction is used to send value(s) from a variable or variable array to a data table in a destination PakBus device.
In the example data callback program, the variable “dummy” is sent to LoggerNet as a signal for LoggerNet to begin collection of the datalogger.

5.4 Answer in Data Mode

In most applications, the COM320 will answer with voice prompts and phrases. If a phone modem was used in making the call, a series of commas followed by a “9” would be appended to the dialed phone number to switch the COM320 into a data mode.
Some applications may require the COM320 to answer in a data mode without the intervention of sending the “9”. This can be done via datalogger control by having a “#9” as the last or only word in a VoiceSpeak() instruction. Example: VoiceSpeak(“#9”,0).
The modem can be forced to hang-up using the word “#HANGUP” as the last or only word in the VoiceSpeak() instruction.
COM320 Voice Communications Modem

5.5 LoggerNet

By default, the COM320 operates in voice mode, enabling you to call a station and hear voice announcements or enabling the station to do a callback to you and announce an alarm. The COM320 also has the ability to function in data mode. In data mode, the COM320 supports data collection and other standard
LoggerNet functions.
LoggerNet can be configured to call and perform scheduled collections of
storage data or the datalogger can be programmed to do callbacks under specified conditions, at which time LoggerNet will collect the data.
For scheduled (or manual) collection, change the COM320 to data mode by including six commas and a “9” in LoggerNet’s dial script in the Setup Screen’s Hardware Tab for PhoneRemote.
For callback collection, the datalogger DialSequence() instruction changes the COM320 from default voice mode to data mode.
The commas create a delay so that the “9” is received by the COM320 during the voice announcement. When the COM320 detects the “9”, it disables voice communications and enables data mode for the remainder of that connection.
For example, in LoggerNet, if the phone number is "555-4321" then in order to call the COM320 and enable data mode, the dial script becomes:
"555-4321,,,,,,9"
In LoggerNet, a comma represents a 2 second delay. You may need to adjust the number of commas so that the “9” occurs during the voice announcement, depending upon the length of time required to establish the connection with the modem. The COM320 must be speaking when the “9” is sent.
17
COM320 Voice Communications Modem
NOTE
14-AWG Ground Wire

6. Hardware Installation

6.1 Site Requirements

Connection to telephone company provided COIN service (Central Office Implemented systems) is prohibited. Connection to party line service is subject to state tariffs.
The COM320 is compatible with standard (analog) telephone lines. It connects to the telephone line by means of a USOC RJ11 jack (standard modular telephone jack). Connect the cable from the telephone RJ11 jack to the modem as shown in FIGURE 6-1.
(green with yellow stripe)
FIGURE 6-1. COM320 Hardware Connection Using Standard RJ11
Phone Jack
18
COM320 Voice Communications Modem
WARNING
14-AWG Ground Wire
(green with yellow stripe)
FIGURE 6-2. COM320 / CR1000 Using Surge Protection Device
(where there’s no available Standard RJ11 Connection)

6.2 Powering the COM320 Modem

The datalogger provides 12 Vdc on the CS I/O connector’s pin 8 for powering peripherals such as the COM320.

6.3 Grounding the COM320 System

Connect the 14 AWG grounding wire (green with yellow stripe, provided with the COM320) to the GND terminal on the COM320 and to the station enclosure’s earth ground connection. The COM320 and datalogger must be connected directly to a high quality earth ground. Read the datalogger manual section on GROUNDING for details on creating such an earth ground.
A quality EARTH GROUND connection to the COM320 and datalogger maximizes protection against electro­static discharge! Follow carefully the EARTH GROUND scheme in gaps on the phone lines; however, they will be ineffective without quality earth grounding.
FIGURE 6-3. The COM320 employs spark
19
COM320 Voice Communications Modem
CAUTION
NOTE
14-AWG Ground Wire
(green with yellow stripe)
FIGURE 6-3. COM320 Grounding and Alternate 12Vdc Power

6.4 Telephone Service

Telephone companies occasionally make changes in their equipment, operations, or procedures. If you have any questions about your telephone line, such as how many pieces of equipment you can connect to it, contact the telephone company. If the telephone company requests information from you concerning the equipment connected to the telephone line, the COM320 label shows its FCC registration number and ringer equivalence number (REN). COM320 information pertaining to the FCC and Industry Canada is available in Section 2, Specifications
Remove any malfunctioning telephone equipment immediately to prevent damage to the telephone network.
If the telephone company notices a problem from their end, they may temporarily discontinue service. They should notify you in advance of disconnection and give you opportunity to correct the problem. If not feasible, they should notify you as soon as possible.
If the local phone company does not provide phone-line surge protection, a Campbell Scientific surge suppressor should be used. Refer to Section more information.
(p. 2), and Appendix A, IC Information (p. A-1).
6.5, Connecting to a Surge Protector (p. 21), for
20
COM320 Voice Communications Modem
NOTE
CAUTION
BURIED PHONE CABLE

6.5 Connecting to a Surge Protector

Campbell Scientific offers two surge protectors (pn 4330 and pn 6362). The 4330 and 6362 are essentially the same, except the 6362 has hardware for mounting to an enclosure backplate.
The 4330 is also known as the 2374-01.
The 4330 and 6362 have a protector element for each line that consists of a heavy-duty-rated, two-element gas tube, an external backup gap assembly, and a switch-grade shorting mechanism. The gas tubes (tip and ring) are sealed in a fire-resistant plastic body. DC Breakdown @ 100 V/sec is 300 to 500 volts; DC extinguishing @ 52 V, 135 V, and 150 V is less than 150 milliseconds.
FIGURE 6-4 and FIGURE 6-5 show the wiring for connecting the surge suppressor. Color coding of wires may vary. The important consideration is to follow TIP all the way through and RING all the way through. While no damage usually occurs from crossing wires, the phone line will not work until it is wired correctly.
Phone wires are live, typically with low voltage (30 to 50 Vdc). While not harmful in most situations, Campbell Scientific recommends installing the surge protector in dry weather only by qualified technicians.
FIGURE 6-4. Top View of Surge Suppressor Wiring
21
COM320 Voice Communications Modem
FIGURE 6-5. Side View of Surge Suppressor Wiring

7. Troubleshooting COM320 Voice Systems

Following are some possible reasons for your COM320 system not working or not working properly.

7.1 No Communications

Voice Mode — No voice announcements when you call the station
The COM320 is connected to a digital rather than an analog phone line.
The COM320 configuration was changed from its default factory settings
(see Appendix B, Updating and Configuring the COM320
Data Mode — Can’t connect to the station with LoggerNet software.
No commas and/or “9” added to the dial string in LoggerNet to
temporarily put the COM320 into data mode.
The “9” is being dialed before the COM320 ‘picks up’ and voices the
announcement (not enough commas).
No phone number in the LoggerNet dial string.
COM320 is connected to a digital rather than an analog phone line.
(p. B-1)).
22
LoggerNet Setup configured for the wrong PC modem.
LoggerNet configured for a baud rate the station cannot handle (try 9600).
COM320 configuration was changed from its default factory settings
(see Appendix B, Updating and Configuring the COM320
(p. B-1)).

7.2 Communications Problems

Voice Mode
1) Can’t get beyond the initial voice announcement
a) The security code was not received. Try pressing # again, then xxx#
again (where xxx = modem security code).
2) Pressing handset keys sometimes fails to produce the correct response.
a) Handset keys not being pressed long enough.
b) Key presses (especially # #) were not spaced far enough apart and the
station is waiting for the last key (#).
c) Phone line introducing excessive noise or signal attenuation.
d) Handset introducing excessive noise or producing too low signal
levels.
3) Station has become unresponsive (try the following in the order given).
COM320 Voice Communications Modem
a) Press # which will usually announce the current menu again;
b) Press five or more * (star) keys in rapid succession to recover;
c) Allow station to time out and disconnect (usually 15 – 40 seconds,
rarely 5 minutes), then call again.
4) Volume levels vary.
This is normal due to the PCM voice encoding compression scheme. Sometimes the modem will negotiate a higher volume for a given connection.
23
COM320 Voice Communications Modem
24
NOTE
“CAUTION

Appendix A. IC Information

Industry Canada (IC) was formerly known as DOC.

CP-01, Issue 8, Part I Section 14.1

“NOTICE: The Industry Canada label identifies certified equipment. This certification means that the equipment meets certain telecommunications network protective, operational and safety requirements as prescribed in the appropriate Terminal Equipment Technical Requirements document(s). The Department does not guarantee the equipment will operate to the user’s satisfaction.
“Before installing this equipment, users should ensure that it is permissible to be connected to the facilities of the local telecommunications company. The equipment must also be installed using an acceptable method of connection. The customer should be aware that compliance with the above conditions may not prevent degradation of service in some situations.
“Repairs to certified equipment should be coordinated by a representative designated by the supplier. Any repairs or alterations made by the user to this equipment, or equipment malfunctions, may give the telecommunications company cause to request the user to disconnect the equipment.
“Users should ensure for their own protection that the electrical ground connections of the power utility, telephone lines and internal metallic water pipe system, if present, are connected together. This precaution may be particularly important in rural areas.
Users should not attempt to make such connections themselves, but should contact the appropriate electric inspection authority, or electrician, as appropriate.”

CP-01, Issue 8, Part I Section 14.2

“NOTICE: The Ringer Equivalence Number (REN) assigned to each terminal device provides an indication of the maximum number of terminals allowed to be connected to a telephone interface. The termination on an interface may consist of any combination of devices subject only to the requirement that the sum of the Ringer Equivalence Numbers of all the devices does not exceed 5.”
A-1
NOTE

Appendix B. Updating and Configuring the COM320

The COM320 has an internal USB port for connecting the mode to a computer. Connection to a computer is required to install the drivers, download an operating system, change COM320 settings, and retrieve a vocabulary list.
The COM320’s case must be removed to access the USB port (see Appendix B.1, Removing the Cover to Access the USB Port (p. B-1)).

B.1 Removing the Cover to Access the USB Port

1) Use a Philips screwdriver to remove the five screws on the sides of the
COM320.
2) Lift off the case.

B.2 COM320 USB Communications Cable

The COM320 uses a USB Type-A Male to Type-B Male cable (pn 17648) for updating firmware, vocabulary and configuration. This is a common USB cable used with USB connected printers and scanners.

B.3 COM320 Driver Installation

If this is the first time a COM320 has been plugged into your computer, it will be necessary to install the drivers to enable communication with the COM320:
1) Remove the cover of the COM320 to access the USB port (see Appendix
B.1, Removing the Cover to Access the USB Port
2) Connect a USB cable between the COM320's USB port and one of your
computer's USB ports.
3) Power the modem by connecting the modem’s green 12V and G terminals
to a 12 Vdc power source or by connecting the modem to the CS I/O port of a datalogger.
4) Open the Device Configuration Utility. Under Device Type, select Phone
Modem | COM320. Click the install the USB driver for the COM320 link and follow the prompts.
(p. B-1)).
B-1
Appendix B. Updating and Configuring the COM320
CAUTION
CAUTION
B.4 Downloading a New Operating System to the
COM320
To download a new operating system to the COM320, follow these steps:
1) You must remove the top cover of the modem to expose the USB port.
This is done by first removing the five Phillips head screws on the sides of the COM320.
2) You must also provide a power source (+12Vdc) for the modem. This can
be done by applying power on the green 12Vand G terminals on the device or plugging the modem into the CS I/O port of a datalogger.
3) Connect the COM320 USB port to one of the USB ports on your computer
and wait for the computer operating system to load its device drivers. If this is the first time a COM320 has been plugged into your computer, you may need to install the device driver for the COM320. See Appendix B.3, COM320 Driver Installation
4) Run Device Configuration Utility ver 1.12 or newer.
(p. B-1), for device driver installation.
5) Select COM320 from the Device Configuration Utility menu and select the
Send OS tab at the top (FIGURE B-1).
6) Once the device drivers have been successfully loaded, you should be able
to see the serial port name allocated for the modem in the PC Serial Port field when you click on the browse button.
7) Click the Start button.
8) In the resulting file open dialog box, select the file that should be sent as
the modem’s operating system.
Do not attempt to load any operating system other than that designed for the COM320 modem.
9) The program should now send the operating system to the modem.
Interrupting this process may corrupt the modem operating system.
B-2
Appendix B. Updating and Configuring the COM320
FIGURE B-1. Send OS Screen in Device Configuration Utility

B.5 Changing COM320 Settings

There are two items that can be configured in the COM320: the number of rings before the COM320 answers and the country code. Use the Device Configuration Utility ver 1.12 or newer and a USB Type-A male to Type-B male cable to change these settings.
1) You must remove the top cover of the modem to expose the USB port.
This is done by first removing the five Phillips head screws on the sides of the COM320.
2) You must also provide a power source (+12Vdc) for the modem. This can
be done by applying power on the green 12Vand G terminals on the device or plugging the modem into the CS I/O port of a datalogger.
3) Connect the COM320 USB port to one of the USB ports on your computer
and wait for the computer operating system to load its device drivers. If this is the first time a COM320 has been plugged into your computer, you may need to install the device driver for the COM320. See Appendix B.3, COM320 Driver Installation
4) Run Device Configuration Utility ver 1.12 or newer.
(p. B-1), for device driver installation.
5) Select COM320 from the Device Configuration Utility menu and select the
COM320 tab at the top (FIGURE B-2).
6) Once the device drivers have been successfully loaded, you should be able
to see the serial port name allocated for the modem in the PC Serial Port field when you click on the browse button.
B-3
Appendix B. Updating and Configuring the COM320
FIGURE B-2. Device Configuration Utility Screen
7) Click on the Connect button to connect to the COM320 and enter the
settings editor (FIGURE B-3).
B-4
FIGURE B-3. Device Configuration Utility Settings Editor
Appendix B. Updating and Configuring the COM320
CAUTION
When doing datalogger to datalogger communications with the COM320, if more than six rings are specified, the datalogger may time out before the modem answers; communication will never be established! Be sure to try the set up locally before installing at a remote location.

B.6 Retrieving a Vocabulary List

The COM320’s current vocabulary list can be retrieved from the modem. You will need a USB cable, the Device Configuration Utility or terminal program, a +12 volt power supply, and the COM320 drivers installed on your computer as described in the section entitled COM320 driver installation instructions.
With the above requirements taken care of do the following:
1) Connect the USB cable between the computer and the COM320.
2) Apply +12 volts to the modem via the CS I/O port from a datalogger or the
+12 volt and ground terminals.
3) Launch the Device Configuration Utility and select device type Unknown,
the correct PC serial port connected to the COM320, a baud rate of 9600 and press the connect button.
4) By pressing the “V” key you should see a list of words scroll by in the
Device Configuration Utility terminal window.
If you want to save this list to a file, select the Start Export button and enter a name for the file it will create. Now press the “V” key and wait until the words stop scrolling and press the End Export button to create the file. This new file is a complete vocabulary list from the COM320 voice modem.
Start with the CRBasic Editor version 3.1 you can select multiple vocabulary files from the VoiceSpeak vocabulary window if the file name begins with voice and ends with .txt (for example, VoiceTestWords.txt). The file needs to be located in the directory where the CRBasic Editor looks for its compilers (default location is C:\Campbellsci\Lib\Compilers).
B-5
Appendix B. Updating and Configuring the COM320
B-6
CS I/O
NOTE

Appendix C. CS I/O 9 Pin Serial Port

The COM320’s CS I/O port is not a standard RS-232 connection.

Pin Description

The COM320 modem connects to the datalogger using an SC12 cable connected to the datalogger’s CS I/O port. The COM320’s connector configuration is shown in FIGURE C-1. TABLE C-1 shows the I/O pin configuration, and gives a brief description of the function of each pin.
FIGURE C-1. COM320’s Male 9 Pin Connector
C-1
Appendix C. CS I/O 9 Pin Serial Port
TABLE C-1. Pin Description
9
ABR = Abbreviation for the function name.
PIN = Pin number.
O = Signal Out of the datalogger to a peripheral.
I = Signal Into the datalogger from a peripheral.
PIN ABR I/O Description
1 5V I 5 Vdc supply (not used for COM320).
2 SG Signal Ground: Provides a power return for pin 1
(5V), and is used as a reference for voltage levels.
3 RING O Ring: Raised by the modem to put the datalogger
in the telecommunications mode.
4 RXD O Receive Data: Serial data transmitted by the
modem are transmitted on pin 4.
5 ME I Modem Enable: A logic high internally switches
power to the modem. A logic low internally powers down the modem.
6 SDE I Synchronous Device Enable: A logic high
disables communication with the modem, without removing power or changing the modem’s mode.
8 TE I +12 Vdc power supply.
TXD
Transmit Data: Serial data are transmitted from
I
the datalogger to the modem on pin 9; logic low marking (0V) logic high spacing (5V) standard asynchronous ASCII, 8 data bits, no parity, 1 start bit, 1 stop bit, 300, 1200, 9600, 76,800 baud (user selectable).
C-2

Appendix D. COM320 Word List

D.1 COM320 Word List - Alphabetical Order

500MS 50MS A A-M ABOVE ACCUMULATE ACKNOWLEDGE ACRE ADDITION ADDITIONAL AGAIN AGO AIR ALARM ALL AMMONIUM AND APPROACH ARE AREA AT AUTOMATION AVAILABLE AVERAGE B BACK-UP BAROMETRIC BARS BATTERY BAY BE BEAVER BEDS BEEN BEHIND BELOW BIG BILLION BLAST BOILER BUILDING BY C C-O CALCIUM CALIBRATE CALL CALLBACK CALLS CAMPBELL
CAN CANAL CELSIUS CEMENT CENTI CENTRAL CHECK CHILL CHILLER CHLORIDE CHLORINE CLOSED CODE COMPUTED CONDITIONS CONDUCTIVITY CONTACT CORRECTED CREEK CROSSING CUBIC CURRENT CYCLES D D-O DAM DATA DATALOGGER DAY DAYS DEGREES DELTA DEPTH DEVIATION DEW DING DIRECTION DISCHARGE DISCONNECT DISTRICT DIVERSION DOCK DOOR DOWN DRAW DURING E E-T-O E08'S EAST
EASTERN EFFLUENT EIGHT EIGHTEEN EIGHTY ELECTRON ELEVATION ELEVEN EMPTIED ENGINE ENTER EPROM EQUAL ERROR EVENT EXCEEDS EXTERNAL F FAHRENHEIT FAILED FAILURE FALL FALLING FEET FIFTEEN FIFTY FIRST FISH FIVE FLAG FLAGS FLOW FLUORIDE FOLLOWING FORTY FOUR FOURTEEN FREEZER FREQUENCY FRIDAY FROM FUEL G GALLONS GAS GATE GAUGE GENERATOR GOING GOOD
D-1
Appendix D. COM320 Word List
GOODBYE GRADIENT GRAM GRASS GROUND H H-2-S HAD HARDNESS HAS HASH HAVE HEAD HEAR HEAT HELLO HERTZ HIGH HOLD HOT HOUR HOURS HUMIDITY HUNDRED HYDROLOGIC I IN INCHES INDEX INF ING INPUT INTAKE INTERNAL INTRUDER IRRADIANT IRRIGATION IS IT J K KEY KILO KILOBYTES KNOTS L LAKE LAST LAYER LEVEL LINE LISTEN LISTENING LITER LOAD LOCATED
LOCATION LOCATIONS LOGAN LOW M M-R-P MANAGEMENT MAXIMUM MEMORY MENDON MENU MERCURY MESSAGE METER METERS MICRO MID MID-MOUNTAIN MIDNIGHT MILES MILLI MILLION MINIMUM MINUS MINUTE MINUTES MODEM MOISTURE MONDAY MONITOR MONTH MOUNT MOUNTAIN MULTIPLIER N N-T-U NAN NEEDS NETWORK NEW NEXT NINE NINETEEN NINETY NITRATE NITROGEN NO NOON NORTH NOT NUMBER O OF OFF OFFSET OK
ON ONE OPEN OR OUT OVERFLOW OVERRUNS OZONE P P-H P-M P-S-I PACIFIC PARAMETER PARTS PAST PEAK PENDING PER PERCENT PHONE PLANT PLEASE POINT POND POOL PORT PORTS POTASSIUM POUND POWDER POWER PRECIPITATION PREHEAT PRESS PRESSURE PREVIOUS PROBE PRODUCT PROGRAM PROGRESS PUMP Q QUALITY QUIT R R-P-M RACE RADIAL RADIATION RAIN RANGE RATE REACHED READING RECEIVED
D-2
Appendix D. COM320 Word List
REFERENCE RELATIVE RESERVOIR RESET RESIDUAL RETURN REVISION RISING RIVER ROAD ROOM RUN RUNOFF S S-O-2 SAMPLE SATURDAY SCIENTIFIC SECOND SECONDS SECURITY SEDIMENT SELECTED SELECTION SENSOR SENSORS SET SEVEN SEVENTEEN SEVENTY SHAFT SIEMENS SIGNATURE SINCE SITE SIX SIXTEEN SIXTY SKIING SMOG SNOW SODIUM SOIL SOLAR SONAR SOUTH SPEED SPILL SQUARED STAGE STANDARD STAR STATES STATION STATUS STORM
STREAM STREAMBED SUMMIT SUMP SUNBURN SUNDAY SURFACE SURFACTANCE SYSTEM T TABLE TAIL TANK TEMPERATURE TEN TESTING THANK THAT THE THERE THIRTEEN THIRTY THIS THOUSAND THREE THRESHOLD THRU THURSDAY TIME TING TO TODAY TODAYS TOGGLE TOTAL TRIGGERED TUESDAY TURBIDITY TWELVE TWENTY TWO U ULTRAVIOLET UNITS UP V V-O-C VALUE VELOCITY VERSION VERTICAL VIA VOLTAGE VOLTS W WARNING
WAS WATER WATTS WE WEATHER WEDNESDAY WELCOME WELL WEST WHAT WIND WITH X Y YEAR YESTERDAY YOU YOUR Z ZERO
D-3
Appendix D. COM320 Word List
D-4

Campbell Scientific Companies

Campbell Scientific, Inc.
815 West 1800 North
Logan, Utah 84321
UNITED STATES
www.campbellsci.com info@campbellsci.com
Campbell Scientific Africa Pty. Ltd.
PO Box 2450
Somerset West 7129
SOUTH AFRICA
www.campbellsci.co.za cleroux@csafrica.co.za
Campbell Scientific Southeast Asia Co., Ltd.
877/22 Nirvana@Work, Rama 9 Road
Suan Luang Subdistrict, Suan Luang District
Bangkok 10250
THAILAND
www.campbellsci.asia info@campbellsci.asia
Campbell Scientific Australia Pty. Ltd.
PO Box 8108
Garbutt Post Shop QLD 4814
AUSTRALIA
www.campbellsci.com.au info@campbellsci.com.au
Campbell Scientific (Beijing) Co., Ltd.
8B16, Floor 8 Tower B, Hanwei Plaza
7 Guanghua Road
Chaoyang, Beijing 100004
P.R. CHINA
www.campbellsci.com • info@campbellsci.com.cn
Campbell Scientific do Brasil Ltda.
Rua Apinagés, nbr. 2018 ─ Perdizes
CEP: 01258-00 ─ São Paulo ─ SP
BRASIL
www.campbellsci.com.br vendas@campbellsci.com.br
Please visit www.campbellsci.com to obtain contact information for your local US or international representative.
Campbell Scientific Canada Corp.
14532 – 131 Avenue NW
Edmonton AB T5L 4X4
CANADA
www.campbellsci.ca dataloggers@campbellsci.ca
Campbell Scientific Centro Caribe S.A.
300 N Cementerio, Edificio Breller
Santo Domingo, Heredia 40305
COSTA RICA
www.campbellsci.cc • info@campbellsci.cc
Campbell Scientific Ltd.
Campbell Park
80 Hathern Road
Shepshed, Loughborough LE12 9GX
UNITED KINGDOM
www.campbellsci.co.uk sales@campbellsci.co.uk
Campbell Scientific Ltd.
3 Avenue de la Division Leclerc
92160 ANTONY
FRANCE
www.campbellsci.fr info@campbellsci.fr
Campbell Scientific Ltd.
Fahrenheitstraße 13
28359 Bremen
GERMANY
www.campbellsci.de • info@campbellsci.de
Campbell Scientific Spain, S. L.
Avda. Pompeu Fabra 7-9, local 1
08024 Barcelona
SPAIN
www.campbellsci.es info@campbellsci.es
Loading...