Skip to content

Telemeter data from URI CPIES/PIES/IES

License

GPL-3.0, Unknown licenses found

Licenses found

GPL-3.0
LICENSE
Unknown
license.txt
Notifications You must be signed in to change notification settings

NOAA-AOML/iestelemetry

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

81 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

iestelemetry

A platform independent program to download data from URI CPIES/PIES/IES via acoustic telemetry.

This program has been tested on Windows, Mac OSX and Linux.

Disclaimer

This repository is a scientific product and is not official communication of the National Oceanic and Atmospheric Administration, or the United States Department of Commerce. All NOAA GitHub project code is provided on an ‘as is’ basis and the user assumes responsibility for its use. Any claims against the Department of Commerce or Department of Commerce bureaus stemming from the use of this GitHub project will be governed by all applicable Federal law. Any reference to specific commercial products, processes, or services by service mark, trademark, manufacturer, or otherwise, does not constitute or imply their endorsement, recommendation or favoring by the Department of Commerce. The Department of Commerce seal and logo, or the seal and logo of a DOC bureau, shall not be used in any manner to imply endorsement of any commercial product or activity by DOC or the United States Government.

Download executable and/or deb package

https://github.com/pedrolpena/iestelemetry/releases


Data Tab

IES Telemetry App Data Tab


Configuration Tab

IES Telemetry App Configuration Tab


RUNNING THE PROGRAM

The steps to get this program running are

-Compile the program
-Install a serial port
-Give the user permission to access the serial port
-Run the program

*Instructions to visually edit the forms with Netbeans are included at the end


COMPILING THE PROGRAM

Compiling is easy if you have apache ant installed. Just navigate to the iestelemetry folder and type ant. The program should compile. If you don't have ant follow the steps below.

To compile, make sure that a java sdk version of at least 1.6 is installed and that the jar archive tool is installed.

You can check by opening a terminal or command window and typing

javac -version

you should see something like

javac 1.6.0_65

Type

jar

and your screen should scroll with many jar options.

If the above fails, search for how to install the latest Java Development Kit or "JDK" for your operating system.

Oracle has binaries for all of the major platforms, however, linux users may want to use OpenJDK.

When you list the contents of the directory, you should see the following.

documents - directory containing place holders for equipment manuals and a help file
lib - directory containing libraries
librxtxSerial.jnilib - java serial library for OSX (here for convenience but may not work)
LICENSE - GNU GENERAL PUBLIC LICENSE version 3
makeit.bat - batch script to compile and archive the program
makeit.sh - bash script to compile and archive the program
manifest.txt - info that will be added to the manifest in the resulting jar file
README.md - description of the program
README.txt - this document
rxtxSerial.dll - java serial library for 32/64 bit Microsoft Windows (here for convenience but may not work)
src - directory with source files.

Under Windows

makeit.bat

Under linux/Mac OSX

chmod +x makeit.sh
./makeit.sh

When done compiling, the ftp program will be placed in the dist directory.


INSTALLING THE RXTX SERIAL LIBRARY

RXTX is a Java library, using a native implementation (via JNI), providing serial and parallel communication for the Java Development Toolkit (JDK). http://rxtx.qbang.org/ Without this library, the program will not be able to communicate with the serial port. RXTX is included in this propgram as a universal jar.


INSTALLING A SERIAL PORT

This program communicates with the deck boxes via an RS232 serial interface. You must first make sure that a serial port is available and functioning under your operating system before attempting to communicate with a deck box.

Serial ports are rarely included with computers these days but one can purchase inexpensive USB to RS232 serial adapters for this. Under linux most of these adapters work out of the box without the need to install drivers.

Under Windows and OSX, drivers must be installed.

Once installed you can verify that the operating system has mounted the usb to serial converter.

Under linux the device should be listed in the dev folder as something like this "/dev/ttyUSB0"

Under OSX the device should be listed in the dev folder as something like this "/dev/cu.usbserial"
"/dev/tty.usbserial"

Under Windows, the serial port should be listed in device manager under Ports(COM & LPT) as something like this

"Communications Port (COM1)"


PERMISSIONS TO ACCESS THE SERIAL PORT


UNDER WINDOWS

The serial ports should already be available for use by the user.


UNDER LINUX

-Ubuntu 14.04- On ubuntu and other distributions, the user running the program will not have access to serial ports unless the user is part of the "dialout" group.

For example, to add user aardvark to the dialout group, open a terminal and type sudo usermod -a -G dialout aardvark (replace aardvark with the username) or issue this command for the current user (easier)

sudo usermod -a -G dialout $USER

logout and log back in.

To list groups the current user is part of, type

groups

dialout should be in the list.

-Fedora 22-

sudo usermod -a -G dialout,lock aardvark (replace aardvark with the username)

log out, log in. open a terminal and type

groups

the dialout and lock groups should be in the list.


UNDER OSX

Access to the serial port is a little more complicated under OSX as it changes across several different versions. The user needs to be part of the uucp group

These instructions worked under OSX Leopard 10.5

sudo mkdir /var/lock 
sudo chmod 775 /var/lock
sudo dscl . -append /groups/_uucp GroupMembership aardvark

(replace aardvark with the username)

These instructions worked under a later version of OSX

sudo mkdir /var/lock 
sudo chmod 777 /var/lock
sudo dseditgroup -o edit -a aardvark -t user uucp

(replace aardvark with the username

Reboot the computer

rxtx uses the /var/lock directory to create lock files for a serial port when in use. This prevents other programs from trying to use the serial port when in use. You will likely have trouble at this point. If you have trouble and you figure it out, please include what you did in this document.

peruse "http://rxtx.qbang.org/wiki/index.php/Trouble_shooting#Mac_OS_X_users" for hints.

If you can't figure it out, you can run the program as the super user by preceding the command by "sudo"

sudo java -jar IESTelemetry.jar

This will work but all the files created by the program will belong to root and you will have to change the permissions of the created files to access them.


RUNNING THE PROGRAM

To run the program enter the dist directory and type.

java -jar IESTelemetry.jar

If your Operating system assosciates the jar files with the java virtual machine, you may be able to just double click on "IESTelemetry.jar" to execute it.

Keep the IESTelemetry.jar file and the lib folder together. You can create a directory like "dist" and copy IESTelemetry.jar and the lib folder into it.


Modifying the code with Netbeans

You may encounter an error when first opening the project. The IDE complains about not having swing application framework support and will ask if you want to download and install it. You must install this to be able to edit the program. This is different than the Swing Aplication Framework form editor which is discussed below.

This program was originally written using the Swing Aplication Framework(SAF) under Netbeans 7.01.
Netbeans has since removed support for the SAF and you will not be able to modify the forms with any stock version of Netbeans after version 7.01.
To enable SAF modifications, you must install the "Swing Application Framework Support for Form Editor" plugin. The file is included in this repo in the event it can't be downloaded anymore.
The filename is "1341985500_org-netbeans-modules-swingapp.nbm"

The plugin can be downoaded from the following location.

http://plugins.netbeans.org/plugin/43853/swing-application-framework-support

To install the plugin
Click on "Tools"-->"plugins"
Click on "Downloaded" tab
Click on "Add Plugins..." button
Click on "Istall"

Once installed restart the IDE

This plugin works with the Netbeans 8.2


java.lang.NullPointerException thrown while loading gnu.io.RXTXCommDriver

On newer versions of java sometimes an exception is thrown and no serial ports are listed.

java.lang.NullPointerException thrown while loading gnu.io.RXTXCommDriver

You can start the program with

java -Djava.ext.dirs -jar IESTelemetry.jar

About

Telemeter data from URI CPIES/PIES/IES

Resources

License

GPL-3.0, Unknown licenses found

Licenses found

GPL-3.0
LICENSE
Unknown
license.txt

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 52.9%
  • HTML 45.1%
  • Makefile 1.6%
  • Other 0.4%