Software Set-Up
OpenDCS Overview
OpenDCS is a software built for the following purposes:
Retrieving data from NOAA GOES Satellite system
Processing data from NOAA GOES Satellite system to a more useful
Retrieving data from arbitrary systems
Processing of near real-time time series data
OpenDCS is currently used by:
U.S. Army Corps of Engineers
U.S. Bureau of Reclamation
U.S. National Oceanic and Atmospheric Administration
And Others
OpenDCS current and past contributors include:
U.S. Army Corps of Engineers
U.S. Bureau of Reclamation
U.S. Geological Survey
ILEX Engineering Incorporated
Sutron Corporation
Cove Software, LLC
Precision Water Resources Engineering
Xcellious Consulting
Resource Management Associates
What is OpenDCS?
OpenDCS is a software for retrieving and processing data from NOAA GOES Satellite system. OpenDCS is also used for retrieving data from arbitrary systems (ie ), and processing of time series data. The software is built to be compatible with the U.S. Army Corps of Engineers Corps Water Management System (CWMS) and with the U.S. Bureau of Reclamation Hydrologic Database (HDB).
OpenDCS includes a subset of tools for users, including the following applications:
DECODES
LRGS
Computation Processor
Screening
Once set-up, users can experience automated data and retrieval and processing from LRGS satellite data. Automatically triggered calculations can be set-up if data is being stored in CWMS or HDB systems.
In OpenDCS terms, this means that a user will have the tools to do the following (and more):
Create routing specs
Create algorithms and computations
Create and manage time series in database
OpenDCS is designed to operate with a database. A fast majority of the documentation here assumes that a database is already set up an running. Below is a high level schematic to conveys how a OpenDCS is typically set-up. The set-up and install directions below focus on a Windows PC set-up. Further documatation about server set-up and how to set up with OpenTSDB database can be found in the legacy documentation Additional Content on Installation
Where can I find more information?
Information about OpenDCS can be found on the github repository.
Where can I find this information in PDF format?
Previous versions of OpenDCS (before 7.0.0), included a doc folder in the install directory (ie C:\OPENDCS\doc), with PDFs, which were previously developer or advanced-user focused. Versions 7.0.0 and after include html code in the OPENDCS\doc folder. The content of the older PDFs is now contained in the html files.
What is the history of OpenDCS?
1999 - Java-based LRGS developed for USGS
2001 - Java-based DECODES developed for USGS and USACE (Database schem for XML and SQL)
2004 - DCP Monitor Tomcat Web App funded by USACE MVR (Also DECODES in-line Rating Computations)
2005 - Computation Processor Design funded by US Bureu of Reclamation and USGS
2007 - Computation Processor implemented for USBR Hydrologic Database (HBD)
2007 - Support LRIT (not HRIT) added to LRGS
2008 - Iridium support added to LRGS
2008 - CP ported to USACE CWMS
2012 - “OpenDCS” released with several improvement to GUI design
2014 - OpenTSBD (Time Series Database) - implemented in PostgreSQL
2015 and later - Improvements to all modules
How do I install OpenDCS?
Installing OpenDCS requires a few steps outlined below. The content below is catered towards users who wish to install OpenDCS on personal workstations.
Download the software package (opendcs-#.#.#.tar or opendcs-#.#.#.zip).
Unzip the contents.
Configure OpenDCS.
What do I need installed before getting started with OpenDCS?
Prior to installing OpenDCS, java 1.8 or a later version must be installed.
For windows users, check if java is installed and check if java is in the user environment path (or system environment path).
Run the following commands in a command prompt.
> where java
C:\Program Files (x86)\Common Files\Oracle\Java\javapath\java.exe
In the code block above java is installed in the path returned. The location may be different on your PC - this is OK. If nothing is returned (or a message like “”INFO: Could not find files for the given pattern(s).), check if java is installed somewhere on your PC. If it is installed, and if it is at least version 1.8, then add the location to the system or user environment path.
If a path is returned, run the following command to see what version is installed.
> java -version
java version "1.8.0_391"
If a java version (at least 1.8.##) is returned, then java is installed. Proceed with installing OpenDCS.
If nothing is returned or the version is older than 1.8, then install Java 1.8 or up to java 17.
OpenDCS is tested with Java releases from https://adoptium.net/temurin/releases/.
Other JREs should work but are not tested by the project.
Where can I find releases of OpenDCS?
The latest version releases of OpenDCS can be found online: https://github.com/opendcs/opendcs. From the main github site click on the header “Releases” in the image below.
Alternatively the following link goes straight to the releases page: https://github.com/opendcs/opendcs/releases For each release, there is a drop down menu “Assets”, and in that section download the (opendcs-installer-#.#.#.jar).
Once the archive file is downloaded. Install it by extracting the contents to an appropriate location.
How do I install the archive?
Linux
mkdir -p /opt/opendcs/main-nightly
cd /opt/opendcs/main-nightly
curl -O -L https://github.com/opendcs/opendcs/releases/download/main-nightly/opendcs-main-nightly.tar
tar -xf opendcs-main-nightly.tar
Windows
For windows: 1. Create an appropriate directory, such as C:programsopendcsmain-nightly 2. Extract the contents of the archive to this directory.
Warning
OpenDCS does not support or recommend “updates-in-place”. main-nightly is used here for convenience. If you will be regularly testing nightly builds either name the folder with the current date or simply delete the existing folder. Configuration is stored in the user directory, separate from the install directory.
What do I need to edit/configure for my set-up?
OpenDCS on the first start of any program will determine if you have an existing DCSTOOL_USERDIR environment variable set or Create the default directory for you.
If you have not set the variable OpenDCS will use it’s default $HOME/.opendcs on unix type machines and %AppData%.opendcs on Windows machines.
If that directory already exists, it is assumed valid. If it does not exist OpenDCS will copy the default decodes.properties to $DCSTOOL_USERDIRuser.properties and also copy the default XML database to $DCSTOOL_USERDIR/edit-db.
This allows new users to get started more quickly. Additionally if you are setting up a fresh SQL based database, the contents of $DCSTOOL_USERDIR/edit-db should be imported in, starting with the loading-app directory.
Note
We are currently in the process of improving how this required standard data is handled. We’ve provided this basic instruction to help users get started but would preferred not to write out detail documentation since we’ll be changing it soon. If you have further questions please use https://github.com/opendcs/opendcs/discussions for more clarity.
USACE and USBR users:
Copy the user.properties file from server to the $DCSTOOL_USERDIR directory.
Should should only have to do this once or if the contents change.
IF you will be connecting to multiple systems (such as a backup system) we suggest renaming to <Meaningful to you name>.profile
For more details about the decodes.properties see Starting and Configuring OPENDCS
How do I launch the software?
OpenDCS is a collection of applications and utilities that can be launched with the corresponding script (bash or batch file).
Each program is launched by executing the corresponding script in the bin directory. In Windows, this can be done by double clicking batch files.
When running form the command line, navigate to the bin directory and run the corresponding script. For example to launch the DECODES Database Editor, run the following command in a command prompt (windows) or terminal (linux).
> cd C:\OPENDCS\bin
> dbedit.bat
Warning
PowerShell may not behave the same as Command Prompt (cmd) when running batch files. If you encounter issues running OpenDCS .bat files via PowerShell, try using Command Prompt instead. One user found that using –% to before arguments allowed using PowerShell.
Or on linux:
$ cd /opt/opendcs/bin
$ ./dbedit
For example on windows double click: launcher_start.bat (in the C:\OPENDCSbin directory) to start the main menu.
And the following menu will pop up, when installed successfully:
Double click on a section, such as the DECODES Database Editor and a Database Login should pop up prompting the user for credentials.
USACE users:
USERNAME: Oracle User
PASSWORD: Oracle Password