March 16, 2012
MBARI-developed PUCK protocol adopted by international standards group
Adding new instruments to an oceanographic mooring or underwater observatory can be a difficult and time-consuming process. Each instrument has to be custom programmed to communicate with a host computer or observatory network. To simplify this process, MBARI engineers developed a communication protocol called PUCK, which allows a host computer to recognize an instrument and begin accepting data from it immediately, in much the same way that a personal computer recognizes when a camera or other device is attached to one of its USB ports. In early 2012, the PUCK team was rewarded for its efforts when an international standards organization known as the Open Geospatial Consortium (OGC) approved the PUCK protocol as a new standard.
The acceptance of PUCK did not happen overnight. In fact, MBARI engineers began working on this problem more than a decade ago. Along the way, they overcame many engineering challenges. But they also went out of their way to involve other researchers and with commercial companies that build oceanographic instruments. As MBARI’s Platforms Engineering Group Lead Kent Headley said, “Working with our collaborators, we put a lot of thought and effort into figuring out how to build a community around the standard, to amplify the impact the PUCK technology can have on the ocean-science community.”
Over the years, a large number of MBARI engineers contributed to the PUCK project, including Tom O’Reilly, Duane Edgington, Kent Headley, Mike Risi, Robert Herlein, and Mark Chaffey. “It’s been a long road and quite a cast of characters,” says O’Reilly, a software engineer who played a key role in developing the standard. Edgington, MBARI’s software engineering group leader, was also instrumental in getting PUCK integrated into MBARI’s ocean monitoring systems and building support for the protocol within the research community.
In essence, the PUCK protocol is a set of rules that describe how an external computer should store and retrieve information from a research instrument such as an underwater thermometer or current meter. These rules specify that any “PUCK compliant” instrument must be able to store certain types of data and to execute certain commands that allow host computers to access that data.
The PUCK standard defines two different types of information that must be stored by a PUCK-compliant instrument. The first is the “PUCK data sheet,” which tells the host computer what kind of instrument it is “talking” to, and also provides a unique ID number for that instrument. The second type of information is the “PUCK payload,” which could include details about the types of data that are collected by the instrument (metadata), as well as other information that may be needed by the researcher or the host computer.
MBARI electrical engineer Mark Chaffey has used several PUCK-enabled instruments on the Monterey Ocean Observing System (MOOS), a series of test moorings deployed in Monterey Bay. Chaffey described setting up a set of deep-sea instruments one weekend when no software engineers were at work. “We laid all the gear out on the dock and connected the cables. As soon as we set up the satellite connection to the mooring, data from the PUCK-enabled instruments just started appearing in our archives, without anyone having to worry about setting up ports or configuring the instruments. It was great.”
Chaffey says that having a unique serial number and ID stored on each instrument was particularly useful. “When we were swapping out instruments, those instruments that reported PUCK metadata were much easier to manage, compared with instruments for which we had to try and figure out an ID after the fact.”
Although the initial goal in developing PUCK was to make life easier for researchers, the MBARI team also wanted to make the PUCK standard easy for instrument manufacturers to incorporate into their products. Apparently this effort has been successful, because four different manufacturers have already begun incorporating PUCK into current meters, fluorometers (instruments that measure pigments and particles in the water), and CTDs (instruments for measuring salinity, temperature, and depth).
So what’s next for PUCK? Although the adoption of PUCK by the OGC was a major milestone, the success of the effort hinges on what the research community now does with the PUCK protocol. The making of the PUCK standard was a collaboration with commercial and research partners, and these collaborators are actively working to expand the community of PUCK-protocol users.
In addition to being adopted by the OGC, the PUCK standard is being considered for use in cutting-edge ocean observatories being developed by the US Ocean Observing Initiative (OOI) and the European Multidisciplinary Seafloor Observatory (EMSO) consortium. O’Reilly and his collaborators have organized several workshops and demonstrations of PUCK technology for these non-MBARI organizations. O’Reilly believes that PUCK could also be used in other types of instrument networks, such as those operated by the US Geological Survey or the National Weather Service. “Ultimately,” he says, “I hope PUCK makes it easier to acquire data from sensor networks beneath, across, and above the Earth, deepening our understanding of our home planet.”
Participating in the development of international standards is a relatively new way for MBARI to “export” its software to the larger research community. The adoption of the PUCK protocol by the OGC is yet another example of MBARI’s expanding efforts to share our advanced ocean technologies with the rest of the world.
For additional information or images relating to this article, please contact: Kim Fulton-Bennett