03.31.2007 10:28

WHOI to install instruments on oil and gas complex

Woods Hole Group Awarded BPTT Contract
Woods Hole Group, Inc. of Falmouth, Massachusetts has been contracted
by BP Trinidad and Tobago, LLC (bpTT) to design, build and install a
meteorological and oceanographic measurement system on the bpTT Cassia
oil and gas production complex, offshore eastern Trinidad. Woods Hole
Group, Inc. will provide system design, integration, installation, and
real time data display along with monthly data monitoring and
archiving during the 24-month project.
.
Measurement of the predominant and spurious currents and waves along
with their impact in this environment is important for the continued
safe and efficient operation of bpTT's production platforms off the
east coast of Trinidad. Winds and waves in this area are predominantly
from the northeast and east, while the stronger currents, associated
with large anti-cyclonic rings that have detached from the North
Brazil Current, tend to come from the south.
...
Anyone have a link to info on the Integrated Real Time System (IRMS)?

Update: Gyro Integrated Marine Monitoring System For the Ocean Baroness [whgrp.com]

Posted by Kurt | Permalink

03.31.2007 09:36

noaadata-0.23 released

Lots of changes as I work up to my US Hydro 2007 paper...
  • noaadata-0.23.tar.bz2 - 2007-Mar-30
  • Fixed the broken build that ended up in forever calling epydoc
  • Now builds the IMO water level message
  • ITU message 22 should now build, but needs descriptions
  • Started cleaning up the SLS messages. Now all compile
  • Added a number of "do_not_mangle_name" to cleanup include-structs
  • Added ris subdir to ais
  • Added a makefile to sls subdir
  • Added latex output to aisxmlbinmsg2py.py
  • Added __init__.py files to sls and ris subdirs so they import
  • Many improvements to epydoc format docs. No more warnings
  • removed prototype.py. Don't need this anymore
  • Added a msg 8 header to structs-inc.xml

Posted by Kurt | Permalink

03.29.2007 16:04

Created Wikipedia page on MISLE

I just did my second edit on wikipedia, which was also my first time creating a new wikipedia page. I created an entry for the USCG MISLE database and the associated Marine Casualty and Pollution Database that is a subset of the MISLE database. It has been challenging to find public information about MISLE. If you know more, please edit the page.

http://en.wikipedia.org/wiki/MISLE


Posted by Kurt | Permalink

03.28.2007 11:24

nagios on mac osx

I made it past step one. I compiled and installed Nagios on my laptop. Nagios is formally known as NetSaint. Back in 2000, ACD showed me how awesome this program is for monitoring computers. I definitely need to get Nagios running now that we are starting to deploy data logging boxes out in the field. This first install was just a quick hack and I realized that I needed to install apache2 when I was off the net. Here is where I am at. First I snagged nagios-2.7.tar.gz from nagios.org, but I later realized that I should have also grabbed nagios-plugins-1.4.6.tar.gz and nagiosmib-1.0.0.tar.gz.
  cd ~/Desktop
  tar xf Downloads/nagios-2.7.tar.gz
  cd nagios-2.7
  ./configure --prefix=$HOME/nagios --with-nagios-user=$USER --with-nagios-group=staff
  make all
  make install
  make install-config
  cd ~/nagios
  cd etc
  cp commands.cfg-sample commands.cfg
  cp resource.cfg-sample resource.cfg
  cp localhost.cfg-sample localhost.cfg
  cp nagios.cfg-sample nagios
  cd ~/Desktop
  tar xf Downloads/nagios-plugins-1.4.6.tar.gz
  ./configure --prefix=/Users/schwehr/nagios 
  make
  make install
  # 
  cd ~/nagios
  ./bin/nagios -v  etc/nagios.cfg
  ./bin/nagios etc/nagios.cfg
Got that?
Nagios 2.7
Copyright (c) 1999-2007 Ethan Galstad (http://www.nagios.org)
Last Modified: 01-19-2007
License: GPL
And some status check...
~/nagios/bin/nagiostats 
.
Nagios Stats 2.7
Copyright (c) 2003-2007 Ethan Galstad (www.nagios.org)
Last Modified: 01-19-2007
License: GPL
.
CURRENT STATUS DATA

Posted by Kurt | Permalink

03.27.2007 15:04

License granted for LNG Deepwater Port off of MA

First Offshore LNG Project on the U.S. East Cost Granted License
BOSTON, March 26 /PRNewswire-FirstCall/ -- SUEZ Energy North America's
subsidiary, Neptune LNG LLC, announced today that the Neptune offshore
LNG facility has received its Deepwater Port License. Neptune is the
first offshore LNG project on the United States' East Coast to reach
this milestone. The license will allow Neptune LNG LLC to build, own,
and operate the Neptune offshore LNG delivery system in Massachusetts
Bay.
...
The Neptune port will use specially designed LNG ships equipped to
store, transport, and vaporize LNG into natural gas that can be sent
to customers using the existing HubLine(SM) sub-sea pipeline. The LNG
carriers will be moored at the deepwater port by means of a submerged
unloading buoy system consisting of two buoys. An LNG ship will
typically be moored for four to eight days while unloading its LNG
cargo, depending on market demand. The two separate buoys will ensure
that natural gas can be delivered in a continuous flow by having a
brief overlap between arriving and departing LNG carriers.
.
The estimated cost for the project ... is approximately $1 billion.
...

Posted by Kurt | Permalink

03.27.2007 09:31

LaTeX output for AIS message definitions

My next release of my noaadata.ais code will have LaTeX output for the message definitions. For example:
ais_msg_22.py --latex
gives
./ais_msg_22.py --latex


\begin{table}%[htb] \centering \begin{tabular}{|l|c|l|} \hline Parameter & Number of bits & Description \\ \hline\hline MessageID & 6 & AIS message number. Must be 22 \\ \hline RepeatIndicator & 2 & Indicated how many times a message has been repeated \\ \hline UserID & 30 & Unique ship identification number (MMSI) \\ \hline Spare & 2 & Not used. Should be set to zero. \\ \hline ChanA & 12 & Channel number from ITU-R M.1084 Annex 4 \\ \hline ChanB & 12 & Channel number from ITU-R M.1084 Annex 4 \\ \hline TxRxMode & 4 & FIX: find the description \\ \hline power & 1 & FIX: put in a description \\ \hline corner1_lon & 18 & north-east corner of area for assignment longitude of corner \\ \hline corner1_lat & 17 & north-east corner of area for assignment latitude of corner \\ \hline corner2_lon & 18 & south-west corner of area for assignment longitude of corner \\ \hline corner2_lat & 17 & south-west corner of area for assignment latitude of corner \\ \hline IndicatorType & 1 & FIX: put in a description \\ \hline ChanABandwidth & 1 & FIX: put in a description \\ \hline ChanBBandwidth & 1 & FIX: put in a description \\ \hline TransZoneSize & 3 & FIX: put in a description \\ \hline Spare & 23 & Not used. Should be set to zero.\\ \hline \end{tabular} \caption{AIS message number 22: Base station report - F} \label{tab:ChanMngmt} \end{table}
The result looks like this:



Maybe this should be a XML Stylesheet transform, but it was pretty easy in python. I leave it as an excercise for the reader to make the SLT additions to emit latex from the AIS XML definitions.

Posted by Kurt | Permalink

03.26.2007 09:05

LNG in Boston Harbor

Oregon talking about LNG in Boston: Opinion - Letter: More fears
...
There may have been flights overhead and traffic on the bridge when our
visitors were on the LNG tanker, but a report in The Boston Globe
(Dec. 21, 2004) indicates that this may well have been an anomaly: "In
Boston, flights are halted while (an LNG) ship moves through the
harbor, as is traffic on the Tobin Bridge.
.
The Coast Guard boards the vessels and escorts them in, not allowing
other ships to come near. Local law enforcement and emergency
responders are given advance notice to coordinate their own stepped-up
patrols and preparations."
...

Posted by Kurt | Permalink

03.26.2007 08:47

Ship Simulator Pro

This system looks interesting. Game technology for electronic navigation training. Ship Simulator Pro by VSTEP.



Briana pointed tme to the press release which has some words about AIS:
Ship Simulator Professional builds on the success of Ship Simulator
2006, a game which allows users to navigate various vessel types
through major global ports and waterways. Through Ship Simulator
Professional players can follow the vessel's position, direction and
speed on an electronic chart. Ship Simulator Professional outputs NMEA
signals, which can be picked up by any NMEA compliant device, like
ECDIS (Electronic Chart Display and Information Systems).
.
Professional users, such as nautical colleges, can use Ship Simulator
Professional to teach students the principles of electronic
navigation. Handling ECDIS is becoming a standard component of modern
navigation and can now be trained in a low-cost classroom
environment. Other ships in the game are seen as AIS objects, allowing
Ship Simulator Professional to also be used for AIS training.
.
The realistic graphics of Ship Simulator make it a perfect tool for
equipment manufacturers to demonstrate the working of navigation
equipment. Running the electronic chart on a second monitor,
consumer-players use Ship Simulator Professional to intensify their
simulation experience.

Posted by Kurt | Permalink

03.26.2007 07:37

SpaceNavigator/SpaceMouse Mac SDK coming soon

3Dconnexion Announces New SDK for Use with 3D Design and Visualization Applications
...
3Dconnexion's COM-based SDK for Windows is currently available at
http://www.3dconnexion.com. Program instructions, samples and support
information are available to registered participants at
www.3dconnexion.com/sdk. The new 3Dconnexion SDK for Macintosh® OS
will be available on March 30, 2007. 3Dconnexion currently provides an
SDK for Linux, which is available at
http://www.3dconnexion.com/support.
...

Posted by Kurt | Permalink

03.25.2007 08:18

Paleomag software, MagICVirtual Observatories in Geoscience

There has been a flurry of emails on the gpmag-l mailing list (a listserv for paleo and rock magnetics researchers) started by a post from Ken Verosub and Gary Acton about upgrading software on their magnetometer with an NSF grant that they received for that purpose. The system uses software called 2G LongCore which is written in LabView. I have never seen the software and it does not seem to be available on the web anywhere that I can find.

In contrast, Jeff Gee and Lisa Tauxe have made most of the instrument and processing software from the SIO Paleomagnetic library open and on the web.

I suggested that they use the NSF money to open up the software to allow for other people add data export formats that they need. Cathy Constable followed up with the example of the MagIC database. I was also thinking about local postgres/postgis and mysql databases that people might use for working up the data until they are comfortable releasing the data to the master NSF database.

The most recent post by Charles Barton mentioned Virtual Observatories. I had no idea what that means. Was this a similation of an observatory? Apparently, it means "a database full of data". I had to ask wikipedia:
Virtual Observatories
There are now a number of initiatives aimed at providing improved
access to the ever expanding astronomical data resources available
on-line. A virtual observatory is a collection of interoperating data
archives and software tools which utilize the internet to form a
scientific research environment in which astronomical research
programs can be conducted. In much the same way as a real observatory
consists of telescopes, each with a collection of unique astronomical
instruments, the VO consists of a collection of data centres each with
unique collections of astronomical data, software systems and
processing capabilities.
.
A main goal is to allow transparent and distributed access to data
available worldwide. This allows scientist to discover, access,
analyze, and combine nature and lab data from heterogeneous data
collections in a user-friendly manner. The Virtual Observatory (VO)
used in Astronomy, allowing astronomers to seamlessly search, access,
analyze, and combine astronomical data for research.
And there is a conference about this: VOiG And respectfully to Joe Kirschvink, in my oppinion, flat ASCII should only be used as a temporary file format these days. (uh oh! That is what I am doing for one of my data loggers... shame on me)

Posted by Kurt | Permalink

03.24.2007 23:23

Institute of Contemporary Art/Boston

A couple of use headed down to Boston today and checked out the institute of Contemporary Art/Boston. Here a a couple pics from the trip.






Posted by Kurt | Permalink

03.23.2007 13:15

Wild FPGA systems

This stuff is pretty wild. Thanks to Brian C. for pointing me at these.

For the large rackable system (when you have 60TB of RAM)... SGI RASC - 4 FPGAs with 20GB of DDR2 SDRAM with NUMAlink ports.



When you want your FPGA to be so small that you keep loosing it... Pico E-12 Compact Flash format


Posted by Kurt | Permalink

03.23.2007 06:51

Crazy drug running boat - 70 MPH

Not your typical pleasure craft. This thing was used to run drugs in Europe. 2,000 HP Drug Running Inflatable [CaptainsCorner]


Posted by Kurt | Permalink

03.22.2007 08:36

PAWSS - Ports And Waterways Safety System

System Description
.
The VTS system at each port has a Vessel Traffic Center that receives
vessel movement data from the Automatic Identification System (AIS),
surveillance sensors, other sources, or directly from
vessels. Meteorological and hydrographic data is also received at the
vessel traffic center and disseminate as needed. A major goal of the
PAWSS VTS is to use AIS and other technologies that enable information
gathering and dissemination in ways that add no additional operational
burden to the mariner. The VTS adds value, improves safety and
efficiency, but is not laborious to vessel operators.
.
AIS technology relies upon global navigational positioning systems
(GPS), navigation sensors, and digital communication equipment
operating according to standardized protocols (AIS transponders) that
permit the voiceless exchange of navigation information between
vessels and shore-side vessel traffic centers. AIS transponders can
broadcast vessel information such as name or call sign, dimensions,
type, GPS position, course, speed, and navigation status. This
information is continually updated and received by all AIS-equipped
vessels in its vicinity. An AIS-based VTS reduces the need for voice
interactions, enhances mariners' ability to navigate, improves their
situational awareness, and assists them in the performance of their
duties thus reducing the risk of collisions.
.
The Coast Guard recognized the importance of AIS and has led the way
on various international fronts for acceptance and adoption of this
technology. The Coast Guard permits certain variations of AIS in VTS
Prince William Sound and has conducted or participated in extensive
operational tests of several Universal AIS (ITU-R M.1371)
precursors. The most comprehensive test bed has been on the Lower
Mississippi River.

Posted by Kurt | Permalink

03.21.2007 21:51

GeoZui4D runs on the Mac again

Early last year I did a port of GeoZui4D to Mac OSX. It worked for a while and then stopped. Today, Roland got it working again, but this time with SCons doing the building. Go Roland! I only contributed a couple little things to the process.


Posted by Kurt | Permalink

03.21.2007 09:03

Oregon LNG terminal article

Coast Guard Releases Report on LNG Ships [marinelink.com]
The Coast Guard has completed a review of the Waterway Suitability
Assessment for the Bradwood Landing Liquified Natural Gas (LNG)
Terminal project submitted by Northern Star Natural Gas, LLC. The
Captain of the Port (COTP) Sector Portland has recommended to the
Federal Energy Regulatory Commission (FERC) that in order to make the
Columbia River suitable for the type and frequency of LNG marine
traffic, additional measures will be necessary to manage the
navigation, safety and security risks responsibly. Northern Star is
proposing to build an LNG terminal at the old mill site of Bradwood on
the Columbia River at approximately river mile 38, about 15 miles west
of Clatskanie, and opposite the west end of Puget Island. The specific
measures and the resources needed are documented in a Waterway
Suitability Report submitted to the FERC. 500-Yard Zone Set Chief
among the navigational measures is the requirement for a moving safety
security zone established around the LNG vessel extending 500 yards
around the vessel ending at the shoreline. No vessel may enter the
safety security zone without first obtaining permission from the Coast
Guard Captain of the Port (COTP). The expectation is that the COPT's
representative will work with the pilots and patrol assets to control
traffic, and will routinely allow vessels to transit the safety
security zone based on a case-by-case assessment conducted on
scene. Escort vessels will be used to contact and control vessel
movements such that the LNG carrier is protected.
Also of interest: LNG Law Blog by Sutherland, Asbill, and Brennan (I know nothing about this group). And to give a graphic, here is a safety image from Bradwood's website:


Posted by Kurt | Permalink

03.21.2007 08:16

CCOM Annual Report for 2006

The ccom annual report for 2006 is now out: PDF

The fish cages near the Isle of Shoals:


Posted by Kurt | Permalink

03.19.2007 18:30

pycheesecake

This might be useful for those looking to model there code after successful python project. I am always looking at python code and seeing what it does that I might learn from.

pycheescake


Posted by Kurt | Permalink

03.19.2007 09:05

NOAA Reviews Marine Mammal Protection for LNG in New England

NOAA REVIEWS COMPANY MEASURES TO PROTECT MARINE MAMMALS WHILE CONSTRUCTING NATURAL GAS TERMINAL, COMMENTS SOUGHT

First the application and summary documents:

The press release:
NOAA Fisheries Service is seeking comments now through April 12, on a
plan by Northeast Gateway Energy Bridge LLC, to protect marine mammals
as it constructs and operates a liquefied natural gas port in federal
waters off Massachusetts. The agency has preliminarily determined the
activities would have a negligible impact on marine mammals and is
prepared to issue a permit allowing the company to incidentally
disrupt animal behavior, but it is soliciting public comment
beforehand.
.
Northeast Gateway is proposing to construct, own and operate the
Northeast Gateway Deepwater Port to import LNG into the New England
region. The port will be located in Massachusetts Bay, and will
consist of a submerged buoy system to dock specifically designed LNG
carriers approximately 13 miles off of Massachusetts in federal
waters.
.
This facility will deliver regasified LNG to onshore markets through
new and existing pipeline facilities owned and operated by
Algonquin. The noise generated by construction of the port and
pipeline, and continuing operations during unloading LNG at the
facility has the potential to disrupt the behavior patterns of marine
mammals in the vicinity of the port. Because of this, an Incidental
Harassment Authorization under the Marine Mammal Protection Act is
warranted.
.
To reduce impacts on marine mammals, Northeast Gateway proposes to:
(1) cease any construction vessel movement and/or stop any noise
emitting activities that exceed 120 dB, if a North Atlantic right
whale comes within 500 yards of any operating construction vessel, or
if other marine mammals come within 100 yards of any operating
construction vessel; (2) comply with standard reporting requirements
while within the North Atlantic Right Whale Mandatory Ship Reporting
Area; (3) use trained marine mammal/sea turtle observers onboard
construction vessels; (4) train personnel onboard EBRVs on marine
mammal sighting and reporting and vessel strike avoidance procedures;
and (5) take appropriate actions to minimize the risk of striking
whales, including reducing speeds to 10 knots or less in certain
areas.
.
NOAA Fisheries Service will accept comments on the application and
proposed authorization through April 12, 2007. Comments should be
addressed to: Michael Payne, Chief, Permits, Conservation and
Education Division, Office of Protected Resources, NOAA Fisheries
Service, 1315 East-West Highway, Silver Spring, MD 20910.
.
A copy of the application and Federal Register notice may be obtained
by contacting the same office, or online at:
http://www.nmfs.noaa.gov/pr/permits/incidental.htm

Posted by Kurt | Permalink

03.19.2007 08:22

Fixing Acrobat Pro 7.0

I have Acrobat 7 pro on my mac. I thought I was being clever and ran a program that removes unused foreign languages. Everything was fine accept acrobat pro which refused to run. The program would only pop up a message asking for me to reinstall. Mounting the install media and running the installer only got me a message saying that the software is already installed. I really did not feel like mucking about in the /Library/Receipts area to remove the record of the install. My solution, walk down the hall to another Mac that also has CS2 installed. I zipped /Applications/Adobe Acrobat 7.0 Professional and copied it back to my machine. I nuked the old Acrobat 7 folder and put the copy in its place. Now when I start acrobat pro 7 it works fine and finds my license.

Posted by Kurt | Permalink

03.18.2007 18:54

dodgeball - why would I use this social networking tool?

When I first saw this, I thought "a great tool for stalkers." But now that I think about it Dodgeball by Google might be a great tool in areas like spacecraft mission operations. When I worked on MER, I was frequently running all over the place trying to physically track people down to coordinate operations. I had two cell phones going plus a laptop and looked like a real geek. Having something like dodgeball that would let me decide when to notifiy people where I am could be really useful. This could have some serious downsides, but if used right, I might use it for short time periods with specific projects.

see also: twitter.com

BTW, I have yet to actually use dodgeball or twitter.


Posted by Kurt | Permalink

03.18.2007 10:22

ice climber

This little guy came up to my roof to check out what I was up to. The squirrels and jays are out in force today. All that pretty snow out there now has a nice hard layer of ice over it.


Posted by Kurt | Permalink

03.17.2007 08:37

R/V Coastal Surveyor up out of the water

Michelle W. took a great picture of the R/V Coastal Surveyor up out of the water.


Posted by Kurt | Permalink

03.17.2007 08:03

ArcGIS 9.3 to get Postgres/PostGIS support

What are the plans for supporting the PostgreSQL database with ArcGIS Server (ArcSDE technology) and when will this functionality be available? [esri.com]
ArcGIS Server (ArcSDE technology) will support the PostgreSQL database
at the ArcGIS 9.3 release. This will further enhance ESRI's commitment
to make its technology compatible and integrated with Open Source
software technologies. The enterprise geodatabase and all of its
standard capabilities will be fully supported. It will be OGC/ISO
compliant and the PostGIS geometry type will be supported. In
addition, ESRI will also provide its own spatial type for storing
geometries in PostgreSQL.
I agree with what Paul Ramsey says. I am not not excited about their additional spatial type:
No, it is not embrace, extend, extinguish, it's just a mistake. The
ST_GEOMETRY type in Oracle has hardly been a raging success, and I
don't imagine the one in PostgreSQL will be any different. What it
*will* be is confusing to ArcSDE users, and eventually a waste of
effort for developers who have to support a whole new type in order to
interoperate directly against the database layer.

Posted by Kurt | Permalink

03.15.2007 13:47

WAVE - Wireless Access in Vehicular Environment - IEEE 1609

Val pointed me to the IEEE 1609 standard called Wireless Access in Heicular Environment (WAVE). This is of interest to all of us who work with AIS for ships.

IEEE OKAYS START OF BASE 'WAVE' RADIO COMMUNICATION STANDARD [ieee.org]

Standards for Car Talk [theinstitute.ieee.org]
A new family of four IEEE standards is bringing that day closer, by
ensuring that car and roadside infrastructures can communicate with
each other. These standards could do for cars and vehicular
transportation what the popular IEEE 802.11 wireless standards have
done for laptops and networking.
.
The IEEE 1609 suite of WAVE Communications standards, developed for
the U.S. Department of Transportation (DOT), covers the underlying
architecture for WAVE (Wireless Access in Vehicular Environments). The
WAVE protocol uses the dedicated short-range communications band, at
5.9 gigahertz. Three of the standards in the suite have been approved
for trial use, and one is pending.
.
The first, IEEE Std. 1609.2, approved in June, covers methods of
securing WAVE messages against eavesdropping, spoofing, and other
attacks. The second, IEEE Std. 1609.1, released in October, deals with
managing multiple simultaneous data streams, memory, and other system
resources. The third, IEEE Std. 1609.4, approved in November,
primarily covers how multiple channels-including control and service
channels-should operate.

Posted by Kurt | Permalink

03.15.2007 13:33

Another python class

I now have this week's VisLab python class power point and examples up on the web...

2007Mar13-python2 covers: That is an enormous amount of material to cover and we made it to the beginning of command line argument parsing with an hour and 15 minutes. NOTE: epydoc from the command line is much easier than using GUI.


Posted by Kurt | Permalink

03.15.2007 09:54

What is RSS?

This has come up several times in the the last week: "What is this RSS thing that you keep talking about?!?!?" (or something to that extent...) Both Briana and I have been asked this, so here is my attempt to answer the question. If you are already reading my blog via a RSS feed, read no further, as you already know what I am going to say.
RSS == Really Simple Syndication
What does that mean? RSS is a way for web pages to provide a list of "news" articles or updates that other programs can read. This way a program can "aggregate" or pull together a bunch of news feeds together to give you a list of new articles that you might care to read. It is kind of like building your own news paper, but you get to decide what authors contribute to your newspaper. And... with two clicks of a mouse button, you are able to remove any writer from your personal paper.

What is the point you ask? This is a way to track a large number of websites that you might normally read without having to remember to always go to that page. What if a website only updates sporadically every couple of weeks? Are you going to remember to go back to that page and check for new articles?

RSS readers go get you the list of the latest articles and then you can use the space bar to skip through them very quickly. For me, I scan through about 400-500 articles a day in my news reader in just a few minutes. Out of those articles, I usually only find a couple that I care to read. I end up saving what would have been quite a lot of web surfing.

There are quite a few ways to read RSS feeds. I use NetNewsWire Lite (the free version) on my Macs. Others put the feeds into their Google or Yahoo home pages. A quick look at VersionTracker for RSS gives a couple news readers (none of which I have used): Jyte, SharpReader, Blog Navigator, Active Web Reader, etc.

Here are a couple RSS article feeds that you can put into a news reader to get started with: If that is not enough info on RSS for you, give a read of the Wikipedia article on RSS.


Posted by Kurt | Permalink

03.14.2007 11:09

Mac OSX 10.4.8 to 10.4.9 diff

I saved system profiles before and after the update to 10.4.9 on my PPC G5 desktop. I've never tried this before. Most of the changes were in the fonts section which is not really interesting, but here are a couple sections of the diff that I did find interesting. I saved the files from the System Profile application (just do a save).

NOTE: This update fixed the continual 2007-02 update bug where the patch kept trying to install itself.
<  <string>'Darwin 8.8.0</string>'
>'  <string>'Darwin 8.9.0</string>'
<  <string>'Mac OS X 10.4.8 (8L127)</string>'
>'  <string>'Mac OS X 10.4.9 (8P135)</string>'
<  <string>'iChat version 3.1.6, <C2>'<A9>' Copyright 2002-2006, Apple Computer Inc.</string>'
>'  <string>'iChat 3.1.8, Copyright <C2>'<A9>' 2000-2007 Apple Inc.  All Rights Reserved.</string>'
<  <string>'iSync 2.3, <C2>'<A9>' 2003-2006 Apple Computer, Inc. All rights reserved.</string>'
>'  <string>'iSync 2.4, <C2>'<A9>' 2003-2007 Apple Inc. All Rights Reserved.</string>'

Posted by Kurt | Permalink

03.13.2007 21:45

Fledermaus forum

Erin just pointed me today to the IVS Forum [ivsforum.com] where people can ask question, discuss features, etc. It looks pretty cool and uses the Simply Machines Forum (SMF) software. I've never used SMF before, but it looks to be a solid system for hosting forums.


Posted by Kurt | Permalink

03.12.2007 21:08

underwater geopositioning methods and apparatus

Underwater geopositioning methods and apparatus
A method and apparatus for determining the geophysical position of an
autonomous underwater system utilizing underwater acoustic modems that
exchange broadband underwater acoustic signals. The method of the
invention includes the steps of initiating an exchange of broadband
acoustic signals between the autonomous system of unknown geophysical
position and a base system of known geophysical position wherein the
depths of both systems is known. A bearing calculation is made on one
of the signals transmitted between the systems, preferably through the
use of an array of hydrophones placed closely together at
predetermined locations on either the autonomous or base system. Also,
the range between the two systems is determined by measuring the time
of travel of at least one signal. By the acoustic transmission and
sharing of information, as needed, about the known depths of the
systems, the known geophysical position of the base system, and the
range between the systems, sufficient data is gathered at one or both
systems and used to determine the geophysical position of the
autonomous system.
I only read the first half, but I fail to see how there is not prior art of this kind of thing. It seems very similiar to some COTS systems that have been in use for 10 years. If someone has an analysis that shows this is indeed novel, please send it my way!

Posted by Kurt | Permalink

03.12.2007 10:15

GSA NE Google Earth Session - Part 1

The first half of the Google Earth session has been enjoyable. The talks have primarily been applications of Google Earth and tie-ins to other data products. It warms my heart to see cores in Google Earth. I had fun following along with the talks on my laptop, throwing lat/lon pairs in the GE search window.

Declan did a quick sketchup demo, but I have to point out that there is also a plugin that lets you pull georeferenced data from Google Earth into Sketchup.

A link from the talks: Declan's web page

Note: Please talk to me or email me if you are interested in meeting at Liby's in Durham this evening at 6:30PM. kurt _at_ ccom dot unh.edu

Posted by Kurt | Permalink

03.09.2007 18:35

photo assignment

I gave myself the assignment of photographing a tree in my back yard. Here is what I got:




Posted by Kurt | Permalink

03.09.2007 16:43

DepthX on wired.com

We just had Peter Coppin from CMU speak here at CCOM and today one of the projects that he is involved with made it onto wired.com:

DepthX Scours Ocean Floor
A completely untethered, autonomous deep-sea diving robot launches a
mission this week to collect samples from a 400-foot-deep geothermal
sinkhole in Mexico.
.
In a departure from other submersibles that manuever by commands
received from the mother ship, this robot will be on its own from time
it dives into the water until it returns to the surface. Using onboard
mapping intelligence, the robot will navigate the La Pilita sinkhole,
which leads to a network of flooded caves. Scientists behind the
NASA-funded DepthX, (for Deep Phreatic Thermal eXplorer) hope the
vehicle, which measures 8 feet in diameter and weighs 2,860 pounds,
will collect samples of organisms that can survive the sinkhole's
extreme environment.
.
"We know that there are bacteria and other life forms that survive via
photosynthesis near the surface of La Pilita," said David Wettergreen,
associate research professor at the Robotics Institute at Carnegie
Mellon University, who led the team responsible for developing the
robot's autonomous navigation software. "But as we get deeper down
into this warm, chemically-enriched water, we're interested in finding
out which organisms survive there."
...

Posted by Kurt | Permalink

03.09.2007 13:45

GSA Google Earth Science **MONDAY**

Thanks to Janice for pointing this out. I totally should have known about this and didn't. I should really have submitted something. Doh!

8:15 AM-12:00 PM, University of New Hampshire: Holloway Commons, Squamscott T25. Google Earth Science: Geological Applications of Interactive Web-Based Maps

Posted by Kurt | Permalink

03.09.2007 13:18

Finding duplicate files with python

We all know the problem. As you go about working on data on your computer, you often end up with many copies of the same file, but in different places and those files might not have the same name. I probably have a good 10-20 GB on my desktop that I could ditch. (Hmmm... This morning, Val was talking to me about techniques for organizing file systems for data processing. Point taken!)

Here is fugly bit of python to chug through my disk. It is going to go pretty slow, but it will get the job done. Here is how you might call it:
locate `echo ~` | grep "^`echo ~`" | findcopies.py | sort -n


How does it work? It takes a list of file names on stdin and calculates a checksum. I used the aldler32 checksum in zlib as I've read that it is reasonably fast. I use that checksum as a key in a dictionary. For that key, I build a list of keys with that checksum. This gets me a list of files that are probably all the same.

The danger is that there might be a collision. I use md5 as a second checksum to make sure that the files are really unique. The code then prints out the filenames for each unique md5 on the list of files that all the sample adler32. Before each group of files, I stat the file and get the number of bytes. By making the filesize be the first number, it is then easy to sort by filesize.

The code does not check for multiple hard links on the same file. That could be done by comparing inode values and only printing one file name per uniqe inode. That might not work on MS-Windows. Is there an inode function on windows and what does it return?

The code:
#!/usr/bin/env python
'''
@see: http://www.peterbe.com/plog/using-md5-to-check-equality-between-files
'''
import sys, zlib, md5, os, stat
files={} # Dictionary with the key being the adler 32 checksum
for filename in sys.stdin:
    if filename[-1]=='\n':
        filename = filename[:-1]
    mode = os.lstat(filename)[stat.ST_MODE]
    if not stat.S_ISREG(mode):
        continue
    try:
        a = zlib.adler32(file(filename).read())
    except:
        continue
    if a not in files:
        files[a] = [filename]
        continue
    files[a].append(filename)
multiples={}
for key in files:
    if len(files[key])<2: continue
    md5s=[]
    filenames = files[key]
    for filename in filenames:
       md5s.append(md5.new(file(filename).read()).hexdigest())
    s = set(md5s) # Unique list of checksums
    for sum in s:
        filesize=False
        for i in range(len(filenames)):
            if sum==md5s[i]:
                if not filesize:
                    filesize=True
                    print os.stat(filenames[i]).st_size,
                print filenames[i],
        print
# FIX: Drop multiple hard links
# os.stat('zzz')[stat.ST_INO] inode

Posted by Kurt | Permalink

03.09.2007 11:54

onegeology.org

onegeology.org
The objective: The project's aim is to create dynamic digital
geological map data for the world!
.
The target scale is 1:1 million. But the project will be pragmatic and
accept a range of scales and the best available data.
.
The geological map data will be made available as a distributed web
service, using the latest web feature mapping approach.
.
Geological Surveys will dynamically 'serve' the data for their
territories to a web portal. The plan is to make it available through
Google Earth and other dynamic map browsers.

Posted by Kurt | Permalink

03.09.2007 11:47

DHS Small Vessel Security Summit

Coast Guard to Participate in Small Vessel Security Summit [marinelink.com]
The U.S. Coast Guard announced today it will participate in the
first-ever Department of Homeland Security-sponsored small vessel
security summit to be held in June to discuss ideas for improving
security for vessels not covered by the Maritime Transportation
Security Act of 2002. Secretary of Homeland Security Michael Chertoff
is expected to deliver the keynote address. Details on the location,
dates and time of the summit will be announced once finalized. We want
to hear ideas from the people who regularly use our ports and
waterways to determine how we can better structure new safety and
security regimes that will have a minimal impact on those who rely on
our waterways for their livelihood as well as recreation," said
Adm. Thad Allen, commandant of the Coast Guard.
.
DHS will invite representatives from recreational boating
organizations, operators of small commercial and fishing vessels, and
other stakeholders to a two-day meeting in the Washington area to
discuss options for improving maritime security. Other federal
agencies expected to participate in the summit include Customs and
Border Protection, the Transportation Security Administration, the
Domestic Nuclear Detection Office, the FBI and others with an interest
in security in the port environment. "We are continually looking for
ways to improve maritime security, and consultation and collaboration
with our stakeholders is an essential part of the process. We want to
work together, consider all possibilities, and have those that will be
affected by proposed solutions participate in the entire process,"
said Allen.
...

Posted by Kurt | Permalink

03.08.2007 15:26

noaadata 0.21

I have finally been able to talk to a base station and have it send a binary message. I have yet to work through decoding, but that comes next. This release has a bunch of work on the NMEA strings to talk to the base station. The base station I have is not responding to some of the required messages, so I am not sure what is going on. I may have a bug or two (or twenty).
  • Added ais/ais.xsl to the MANIFEST.in so that people can actually get the stylesheet.
  • Fixed manifest to include Makefiles and doc/*
  • Added to ais/nmea.py: encodeQuery, acaEncode, bcfEncode/Decode
  • Fixed the socket_send program to actually work
  • Fixed minor bug in message 14.
  • More doctests in ais/nmea.py
Here is an example of talking to the base station:
./socket_send.py '!xxBBM,1,1,0,0,14,D5CDP=5CC175,0*49' -v -r -t 2
connecting to 10.1.1.29:5505
Using DOS EOL style: True
sending: !xxBBM,1,1,0,0,14,D5CDP=5CC175,0*49 (dos newline)
!AIVDO,1,1,,B,452HH<h000Httt>>GPK<7<701T00,0*45
$AIABK,,,14,0,3*6A
!AIVDO,1,1,,B,>52HH<i@E=B0lE=<4LD,2*17

Posted by Kurt | Permalink

03.08.2007 10:35

ImmersionPresents.org - Mud Volcanoe in the Gulf of Mexico

Watching this stuff live (as I mentioned before) was just awesome. Now I have a link to some pictures thanks to Brian Calder.

immersionpresents.org or more specifically: http://www.immersionpresents.org/photos/thumbnails.php?album=107

I wish I had a little youtube clip that I could link to so you could see the motion.




Posted by Kurt | Permalink

03.07.2007 12:01

g3d graphics system

Daniel Keefe, who is speaking here at UNH today, said that he uses g3d as his graphics library.
G3D provides a set of routines and structures so common that they are
needed in almost every graphics program. It makes low-level libraries
like OpenGL and sockets easier to use without limiting functionality
or performance. G3D gives you a rock-solid, highly optimized base from
which to build your application.


G3D does not contain scene graph or GUI routines. Because of this, there is a lot of flexibility to how you structure your programs. The tradeoff is that you have to know more about 3D programming. G3D is intended for users who are already familiar with C++ and DirectX or OpenGL. G3D does not draw widgets by itself. Several good G3D-compatible GUI libraries exist and we recommend using one with G3D if your project has extensive UI needs.

Posted by Kurt | Permalink

03.07.2007 10:25

fink issues

Had some apache troubles yesterday with fink. Decided to blow away fink and start over. On rebuilding, I ran into tar 1.16.1 file changing issues. My solution was to rm /sw/bin/tar and link in /usr/bin/tar as the tar. There have been fink discussions on this
ls -l /sw/bin/tar
lrwxr-xr-x   1 root  admin  12 Mar  6 12:09 /sw/bin/tar -> /usr/bin/tar

Posted by Kurt | Permalink

03.07.2007 08:37

UNH CS seminar today - Keef - Computer Graphics

Computer Science Colloquium
Drawing on Air: Artistic 3D Modeling for Illustrating Scientific
Problems in Virtual Reality
Daniel Keefe
Brown University
Abstract: Graphics and visualization researchers often look toward
artistic techniques for solving challenging visual problems. But, how
do we interpret and develop new artistic guidelines in mediums such as
immersive virtual reality, where we have not yet established a time
tested visual language? I believe the answer lies in collaborating
directly with artists, illustrators, and designers. Indeed, much of my
research is based upon bringing artists and scientists together.  In
this talk, I will present an important tool for enabling this
collaboration. Drawing on Air is a hapticaided interaction technique
for drawing controlled, stylized 3D curves through space. It addresses
a current problem in 3D modeling approaches based on sweeping
movements of the hands through the air. While artists praise the
immediacy and intuitiveness of these systems, a lack of control makes
them inappropriate for addressing challenging scientific modeling
subjects with precision. Drawing on Air makes a significant
improvement in control. I will report on a user study evaluation by
illustrators and a predictive model for understanding drawing
interactions that help to quantify this difference.  The additional
control is also evident in works created by artists. I will present
several examples, including 3D anatomical illustrations of a bat in
flight created in collaboration with an evolutionary biologist and
drawing upon experimental wind tunnel flight data collected in her
lab.
.
Date: Wednesday, March 7, 2007
Location: Nesmith 329
Time: 3:30 p.m.

Posted by Kurt | Permalink

03.07.2007 07:48

KML Resume

I posted previously about my Google Earth Resume. Ogle Earth had a post yesterday about Ozgur Alaz's KML Resume.

Here is the link again. I really need to make a KMZ that contains everything.

https://vislab-ccom.unh.edu/~schwehr/resume/


Posted by Kurt | Permalink

03.07.2007 07:33

Accessing and service scientific datasets with Python by Rob at PyCon2007

http://www.scribd.com/doc/2864/PyCon-2007. This is pyDap presentation by Rob De Almeida at PyCon 2007.

Posted by Kurt | Permalink

03.07.2007 07:28

CCOM/JHC gets an RSS feed

Yesterday, Briana launched the CCOM/JHC RSS feed. Do you knot know what RSS stands for or how to use it? Then you should read Wikipedia on RSS. I use NetNewsWire Lite on the Mac (the free version), but there are tons of other readers.

"Wicked cool"

Posted by Kurt | Permalink

03.07.2007 07:24

Cold

Yesterday was cold. 0 deg F and blowing winds. Ouch. This weekend is supposed to be in the low 50's.

Posted by Kurt | Permalink

03.07.2007 07:17

Mud volcanoe in the gulf of mexico

Yesterdat several of us spent an hour watching a small mud volcanoe erupt from an ARGUS ROV's cameras. It released gas bubbles every 30 seconds or so and had a river of mud (not lava) down one side. The flow was maybe 50-150cm wide. It is hard to tell scale when there are no references accept fish that I can't identify.

We were watching on an internet 2 connection on three large HD displays that are heavily compressed video streams.

It would have been great to have an IRC area to be able to suggest science tasks. Several of us wanted to follow the flow down the slop to see what the morphology is like where the flow ends.

I can't seem to find a public web site for this cruise at URI, but it is in the Gulf of Mexico and is a joint mission with the NR-1 sub. The closest page I can find quickly is http://iao.gso.uri.edu/expeditions/index.php that seems to have not been updated since 2004.

This might be the mission's web page: http://www.sanctuaries.noaa.gov/missions/2007fgb/

Posted by Kurt | Permalink

03.06.2007 18:54

ziggis - arc gis plugin to load PostGIS layers

zigGIS is a plugin to ArcGis to allow it to load and view PostGIS layers. This fits in well with my recent work with PostGIS. I haven't used Arc in ages, so I have yet to try this out, but eventually, I will. Sounds great!

http://code.google.com/p/ziggis/


Posted by Kurt | Permalink

03.06.2007 18:40

Mac OSX updates for Quicktime and iTunes

I installed software updates on my PPC laptop. Quicktime pro and itunes both seem to work after the required reboot.
  • quicktime 7.1.5
  • itunes 7.1

Posted by Kurt | Permalink

03.06.2007 10:10

Another whale tracking project

Another link from Val...

An Acoustic-transponder Tracking and Data Telemetry System for Monitoring Behaviors and Determining Real-time 3-D Underwater Locations from Large Marine Vertebrates
Thomas F. Norris, Bio-waves, 8455 Kingsland Road, San Diego, CA 92123
USA, Marco Flagg, Desert Star Systems, 761 Neeson Road, Suite #9,
Marina, CA 93933 USA, and Donald Croll, Institute of Marine Sciences,
University of California, Santa Cruz, CA 95060 USA
.
We are developing a tracking/telemetry system for real-time monitoring
and recording of underwater movements and behaviors of whales from a
moving vessel. This Ultra Short BaseLine (USBL) based system consists
of an acoustic transponder "tag" (attached to animal) that produces a
high frequency acoustic signal upon interrogation from a boat-based
surface station. The PC-based surface station computes underwater
locations based upon signal return-time and phase information from the
tag's signal. A CMOS microprocessor in the tags controls its basic
functions including the capability of receiving up to seven channels
of data (e.g. temperature, swim velocity, sound levels) acoustically
transmitted from the tag. These data also can be stored internally in
the tags RAM memory. The tag also contains a small radio-transmitter
for tracking animals at the surface (in-air), and a radio-signaled
release mechanism for tag retrieval. At present, this system is being
tested for use in the open ocean to study large balaenopterid
(e.g. blue and fin) whales.
Note that this is the Marco Flagg who got bit by a great white shark. I worked with Marco in 1993 on the Mono Lake MAPS ROV project. Marco runs Desert Star

Posted by Kurt | Permalink

03.05.2007 16:27

TCP/IP data logging

Here is a dirt simple data logger for connecting to a port and logging AIS data from a base station. Your port number and IP address will be different depending on vendor and configuration issues.
#!/usr/bin/env python
import socket,select
import sys
import time
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(('10.1.1.29', 5505))
buf=''
while True:
    readersready,outputready,exceptready = select.select([s],[],[],.1)
    for sock in readersready:
        data = sock.recv(100)
        buf += data
        newline=buf.find('\n')
        if -1!=newline:
            fields = buf.split('\n')
            print fields[0].strip()+','+str(time.time())
            if len(fields)>1:
                buf=''+buf[newline+1:]
            else:
                buf=''
Here is what the logged data looks like. I used the USCG N-AIS time stamp format here.
!AIVDO,1,1,,A,4000h>@000Httt>>GPK<7<701P00,0*37,1173129788.26
!AIVDO,1,1,,B,4000h>@000Httt>>GPK<7<707T00,0*36,1173129798.26
$AIALR,211810.00,001,A,V,AIS: Tx malfunction*57,1173129805.17
$AIALR,211810.00,002,A,V,AIS: Antenna VSWR exceeds limit*59,1173129805.18
$AIALR,211708.00,052,A,V,AIS: UTC Lost*7F,1173129805.2
!AIBRF,0000012345,,0*43,1173129806.62
!AIVDO,1,1,,B,D000h>@00000,0*75,1173129808.21
!AIVDO,1,1,,A,4000h>@000Httt>>GPK<7<707P00,0*31,1173129808.26

Posted by Kurt | Permalink

03.05.2007 11:28

Navy's Multi-Mission Unmanned Surface Vehicles (MMUSV)

Spectrum Signal Processing to Support the U.S. Navy Unmanned Surface Vehicles
Spectrum Signal Processing Inc., a subsidiary of Spectrum Signal
Processing Inc. announced that the Government Communications Systems
Division of Harris Corporation has selected Spectrum's flexComm
SDR-4000 rugged software defined radio (SDR) solution to be deployed
in field trials of the United States Navy's Multi-Mission Unmanned
Surface Vehicles (MMUSV). Under the agreement, Spectrum will supply
the signal processing system onboard the MMUSV that communicates with
a processing system aboard a Littoral Combat Ship.
...
Note that a google images search for MMUSV did not find any images. What do these things look like?

For a random Unmanned Surface Vehicle (USV): Stingray


Posted by Kurt | Permalink

03.05.2007 11:12

noaadata 0.20 - more ais messages

These new messages have not been tested, but they should be close. Messages 12 and 14 do not yet have working text fields.

  • 0.20 - 2007-Mar-05
    • Cleanup of message 5 (ship and cargo). Broke out ETA. Described dimensions. Expand ship and cargo field, but it still needs more work
    • Added more AIS messages: 4, 6, 7, 9, 10, 12, 14, imo_001_11 (met/hydro)

Posted by Kurt | Permalink

03.05.2007 08:25

fifos and netcat

Val pointed me to a really great article on debian-administration.org: use and abuse of pipes with audio data

We (the Mars Polar Lander) team used netcat to trigger web page updates when new imagery arrived from the spacecraft and had finished the calibration process. netcat can be a real handy tool. It is nice to see that netcat finally picked up an autoconf build system. I made an initial autoconf setup for netcat in 1999 and submitted it, but never heard back from the authors. The current netcat looks like it is a rewrite of the original nc.

netcat

Posted by Kurt | Permalink

03.03.2007 13:07

noaadata-0.19 adds initial AIS Base Station support

Release 0.19 of noaadata now has initial support for AIS BaseStation configuration commands. I have not yet tried sending messages to a base station beyond asking it for its configuration parameters.
  • Added NMEA messages ACA, BBM, CAB, CBM, and DLM for AIS Base Station support. Needs more testing.
  • Found and fixed some bugs with NMEA checksums thanks to Val Schmidt
  • Fixed a bug with waterlevel.xml. Still not to it's final form.
  • serial_logger improvements - can mark time with no data similiar to syslog

Posted by Kurt | Permalink

03.03.2007 10:15

python dap - serving netCDF to Google Earth

Hopefully, I will get a chance to try this out ASAP. Rob wrote up some instructions on how to serve up netCDF files to Google Earth using WMS. This sounds so awesome!

Google pydap Group post by Rob

...
AnD now we can install pydap, the netCDF plugin and the WMS/KML responses:


$ easy_install dap.plugins.netcdf dap.responses.wms

With the WMS response, pydap will behave like a (simple) WMS server, generating the images that will be requested by Google Earth.

Once we have installed everything we need, we should create a server "instance", ie, a directory with a configuration file, template and a place to put our data:

$ paster create -t dap_server myserver project=My-Server

This will create a directory called ``myserver``. Your netCDF files should go inside ``myserver/data`` (you can put them inside subdirectories there, as you wish).

Now you should edit the ``myserver/template/index.tmpl`` template. This is a Cheetah template, but it's pretty easy to understand it; where going to add a link to the KML file for each file in the server. Just add the following line:

<td><a href="${file}.kml">[Google Earth]</a></td>

Beneath the DAS and DDS lines. We're all set! To run the server just type:

$ paster serve myserver/server.ini ...

Posted by Kurt | Permalink

03.02.2007 09:12

Decoding AIACA message

I have now been able to decode an AIACA (AIS Regional Channel Assignment Message). This is not that exciting, but it is progress and showed that I had a weak implementation of the NMEA checksum algorithm (now fixed). The message string:
$AIACA,0,,,,,,,,,5,2087,0,2088,0,0,0,I,1,000000*15
The results of nmea.acaDecode(msg):
{
    'inuse': '1', 
    'north': None,
    'txrxMode': '0',
    'power': '0',
    'nmeaPrefix': 'AI',
    'timeinuse': '000000',
    'seqnum': '0',
    'chanBbandwidth': '0',
    'nmeaCmd': 'ACA',
    'chanAbandwidth': '0',
    'west': None,
    'transitionSize': '5',
    'infosrc': 'I',
    'east': None,
    'chanA': '2087',
    'south': None,
    'chanB': '2088'
}

Posted by Kurt | Permalink

03.02.2007 07:36

Scituate, MA



Wet sticky snow today.

Posted by Kurt | Permalink

03.01.2007 16:01

First communication to the base station

I was finally able to talk to the base station I have sitting on my desk. Here is the query that worked as a python string:
query="$xxBSQ,BCF,*07\x0D\x0A"
When I wrote that to the serial port, I got this response:
$AIBCF,12345,7,4731.0,N,05249.0,W,1,2087,2088,2087,2088,1,1,3,0,AI*51
The main trick was outputing DOS style new lines.

Posted by Kurt | Permalink

03.01.2007 15:28

Monitoring serial port traffic on win32

I wanted to see what some windows software sent to a device attached to a serial port. Turns out that this is not so hard to do. The only trick is to not try to do this on win64 (why did I try the xp64 box first?). I tried Microsoft's suggestion of portmon (http://www.microsoft.com/technet/sysinternals/utilities/portmon.mspx) but this only seems to record events, not traffic. Here is a quick sample:
22  0.00000000  someapp.exe  IOCTL_SERIAL_SET_WAIT_MASK  Serial0  Mask: 
23  0.00000000  someapp.exe  IOCTL_SERIAL_CLR_DTR  Serial0  
24  0.00000000  someapp.exe  IOCTL_SERIAL_PURGE  Serial0  Purge: TXABORT RXABORT TXCLEAR RXCLEAR
25  0.00000000  someapp.exe  IRP_MJ_CLEANUP  Serial0  
26  0.00000000  someapp.exe  IRP_MJ_CLOSE  Serial0  
27  0.00000000  someapp.exe  IRP_MJ_CREATE  Serial0  Options: Open 
28  0.00000000  someapp.exe  IOCTL_SERIAL_SET_WAIT_MASK  Serial0  Mask: RXCHAR 
29  0.00000000  someapp.exe  IOCTL_SERIAL_SET_QUEUE_SIZE  Serial0  InSize: 4096 OutSize: 4096
30  0.00000000  someapp.exe  IOCTL_SERIAL_PURGE  Serial0  Purge: TXABORT RXABORT TXCLEAR RXCLEAR
31  0.00000000  someapp.exe  IOCTL_SERIAL_SET_TIMEOUTS  Serial0  RI:-1 RM:0 RC:1000 WM:0 WC:1000
32  0.00000000  someapp.exe  IOCTL_SERIAL_GET_BAUD_RATE  Serial0  
33  0.00000000  someapp.exe  IOCTL_SERIAL_GET_LINE_CONTROL  Serial0  
34  0.00000000  someapp.exe  IOCTL_SERIAL_GET_CHARS  Serial0  
35  0.00000000  someapp.exe  IOCTL_SERIAL_GET_HANDFLOW  Serial0  
36  0.00000000  someapp.exe  IOCTL_SERIAL_GET_BAUD_RATE  Serial0  
37  0.00000000  someapp.exe  IOCTL_SERIAL_GET_LINE_CONTROL  Serial0  
38  0.00000000  someapp.exe  IOCTL_SERIAL_GET_CHARS  Serial0  
39  0.00000000  someapp.exe  IOCTL_SERIAL_GET_HANDFLOW  Serial0  
40  0.00000000  someapp.exe  IOCTL_SERIAL_SET_BAUD_RATE  Serial0  Rate: 38400
41  0.00000000  someapp.exe  IOCTL_SERIAL_SET_RTS  Serial0  
42  0.00000000  someapp.exe  IOCTL_SERIAL_SET_DTR  Serial0  
43  0.00000000  someapp.exe  IOCTL_SERIAL_SET_LINE_CONTROL  Serial0  StopBits: 1 Parity: NONE WordLength: 8
44  0.00000000  someapp.exe  IOCTL_SERIAL_SET_CHAR  Serial0  EOF:0 ERR:0 BRK:0 EVT:0 XON:11 XOFF:13
45  0.00000000  someapp.exe  IOCTL_SERIAL_SET_HANDFLOW  Serial0  Shake:1 Replace:40 XonLimit:100 XoffLimit:100
46  0.00000000  someapp.exe  IOCTL_SERIAL_SET_DTR  Serial0  
47  0.00000000  someapp.exe  IOCTL_SERIAL_SET_WAIT_MASK  Serial0  Mask: RXCHAR 
48  0.00000000  someapp.exe  IOCTL_SERIAL_WAIT_ON_MASK  Serial0  
49  0.00000000  someapp.exe  IOCTL_SERIAL_SET_WAIT_MASK  Serial0  Mask: 
50  0.00000000  someapp.exe  IOCTL_SERIAL_CLR_DTR  Serial0  
51  0.00000000  someapp.exe  IOCTL_SERIAL_PURGE  Serial0  Purge: TXABORT RXABORT TXCLEAR RXCLEAR
52  0.00000000  someapp.exe  IRP_MJ_CLEANUP  Serial0  
53  0.00000000  someapp.exe  IRP_MJ_CLOSE  Serial0  
Wow. That was not want I wanted. Instead I used the free verision of http://www.serial-port-monitor.com/. You need to pay to get the logging to disk to work, but this was enough for me to capture some traffic:
 24 78 78 42 43 46 2C 33 36 36 30 30 30 30 30 31   $xxBCF,366000001
 2C 37 2C 32 37 35 34 2E 30 30 2C 4E 2C 38 32 34   ,7,2754.00,N,824
 35 2E 30 30 2C 57 2C 30 2C 32 30 38 37 2C 32 30   5.00,W,0,2087,20
 38 38 2C 32 30 38 37 2C 32 30 38 38 2C 31 2C 31   88,2087,2088,1,1
 2C 30 2C 30 2C 38 35 2A 36 39 0D 0A 24 78 78 42   ,0,0,85*69..$xxB
 43 46 2C 33 36 36 30 30 30 30 30 31 2C 37 2C 32   CF,366000001,7,2
 37 35 34 2E 30 30 2C 4E 2C 38 32 34 35 2E 30 30   754.00,N,8245.00
 2C 57 2C 30 2C 32 30 38 37 2C 32 30 38 38 2C 32   ,W,0,2087,2088,2
 30 38 37 2C 32 30 38 38 2C 31 2C 31 2C 30 2C 30   087,2088,1,1,0,0
 2C 38 35 2A 36 39 0D 0A 24 78 78 44 4C 4D 2C 30   ,85*69..$xxDLM,0
 2C 41 2C 2C 30 30 30 30 2C 30 2C 30 2C 30 30 30   ,A,,0000,0,0,000
 30 2C 2C 30 30 30 30 2C 30 2C 30 2C 30 30 30 30   0,,0000,0,0,0000
 2C 2C 30 30 30 30 2C 30 2C 30 2C 30 30 30 30 2C   ,,0000,0,0,0000,
 2C 30 30 30 30 2C 30 2C 30 2C 30 30 30 30 2C 2A   ,0000,0,0,0000,*
 31 38 0D 0A 24 50 4C 33 41 2C 52 41 44 49 4F 2C   18..$PL3A,RADIO,
 31 2C 2C 2C 2C 2C 2A 32 32 0D 0A 24 50 4C 33 41   1,,,,,*22..$PL3A
 2C 52 41 44 49 4F 2C 30 2C 2C 2C 2C 2C 2A 32 33   ,RADIO,0,,,,,*23
 0D 0A 24 78 78 43 42 4D 2C 2D 31 2C 2D 31 2C 2C   ..$xxCBM,-1,-1,,
 2C 2D 31 2C 30 2C 2D 31 2C 30 2C 2D 31 2C 2C 2C   ,-1,0,-1,0,-1,,,
 2D 31 2C 30 2C 2D 31 2C 30 2A 37 43 0D 0A 24 78   -1,0,-1,0*7C..$x
 78 43 42 4D 2C 2D 31 2C 2D 31 2C 2C 2C 2D 31 2C   xCBM,-1,-1,,,-1,
 30 2C 2D 31 2C 30 2C 2D 31 2C 2C 2C 2D 31 2C 30   0,-1,0,-1,,,-1,0
 2C 2D 31 2C 30 2A 37 43 0D 0A 24 78 78 42 53 51   ,-1,0*7C..$xxBSQ
 2C 42 43 46 2C 2A 30 37 0D 0A 24 78 78 42 53 51   ,BCF,*07..$xxBSQ
 2C 43 42 4D 2C 2A 30 43 0D 0A 24 78 78 42 53 51   ,CBM,*0C..$xxBSQ
 2C 44 4C 4D 2C 2A 30 35 0D 0A 24 78 78 42 53 51   ,DLM,*05..$xxBSQ
 2C 41 43 41 2C 2A 30 33 0D 0A 24 78 78 42 42 4D   ,ACA,*03..$xxBBM
 2C 31 2C 31 2C 30 2C 33 2C 31 34 2C 44 35 43 44   ,1,1,0,3,14,D5CD
 50 43 31 36 35 44 49 50 44 35 48 44 50 3D 35 43   PC165DIPD5HDP=5C
 43 31 37 35 2C 30 2A 34 42 0D 0A 24 78 78 42 42   C175,0*4B..$xxBB
 4D 2C 31 2C 31 2C 30 2C 33 2C 31 34 2C 44 35 43   M,1,1,0,3,14,D5C
 44 50 43 31 36 35 44 49 50 44 35 48 44 50 3D 35   DPC165DIPD5HDP=5
 43 43 31 37 35 2C 30 2A 34 42 0D 0A 24 50 4C 33   CC175,0*4B..$PL3
 41 2C 52 41 44 49 4F 2C 31 2C 2C 2C 2C 2C 2A 32   A,RADIO,1,,,,,*2
 32 0D 0A 24 50 4C 33 41 2C 52 41 44 49 4F 2C 2C   2..$PL3A,RADIO,,
 32 30 38 37 2C 32 30 38 38 2C 32 30 38 37 2C 30   2087,2088,2087,0
 2C 30 2A 31 31 0D 0A 24 50 4C 33 41 2C 52 41 44   ,0*11..$PL3A,RAD
 49 4F 2C 30 2C 2C 2C 2C 2C 2A 32 33 0D 0A         IO,0,,,,,*23..
This answers my question of what I was supposed to replace those two 'xx' characters with when talking to an AIS base station: xx. I was being to clever, I guess...

Posted by Kurt | Permalink