DYNAMO: Scaling Marine Crowdsourcing via Native Android Integration

DYNAMO: Distributed Leisure Yacht-Carried Sensor-Network for Atmosphere and Marine Data Crowdsourcing Applications

2018-04-01
Raffaele Montella, Sokol Kosta, Ian T. Foster
Summary
Problem
Method
Results
Takeaways
Abstract

DYNAMO is a distributed sensor infrastructure designed for marine data crowdsourcing using leisure vessels as mobile IoT nodes. It features a customized Android distribution with an embedded SignalK-compliant C/C++ daemon to enable high-performance, real-time data acquisition and cloud synchronization.

TL;DR

DYNAMO turns leisure yachts into a massive, distributed sensor network for oceanographic and atmospheric monitoring. By replacing standard Android Java services with a high-performance C/C++ Linux daemon, this research achieves the reliability of dedicated marine hardware on consumer-grade mobile devices, paving the way for high-resolution "Internet of Floating Things" applications.

Background & Motivation

Most of the human population lives near coastal areas, yet these regions are among the most sensitive to climate change. Monitoring the marine environment is historically the domain of expensive scientific buoys or large commercial vessels.

The authors previously attempted to address this with FairWind, an Android app. However, they hit a "wall": the Android operating system treats data-heavy nautical services as background tasks. When memory gets tight or the Garbage Collector (GC) runs, critical data streams from wind sensors or GPS can be dropped. DYNAMO was born from the need to move beyond "app-level" constraints into "system-level" reliability.

Methodology: Moving to the Native Level

The core innovation of DYNAMO is the DYNAMO Daemon. Instead of running within the Dalvik/ART virtual machine, it operates as a native Linux process.

1. The DYNAMO Daemon Architecture

The architecture is split into four functional blocks integrated via a C++ shared library (libdynamo.so):

  • Data Listeners: Support diverse protocols (NMEA0183, NMEA2000, SeaTalk) over TCP, UDP, or USB.
  • SignalK Server: Uses a JSON-based open standard specifically designed for marine data.
  • The Alert Monitor: Real-time evaluation of sensor thresholds.
  • Data Logger: Efficiently parcels data for upload to the cloud when connectivity (Cellular/Wi-Fi) becomes available.

DYNAMO Daemon Architecture

2. The Vessel Manager Bridge

To ensure developers can still build standard Android "Boat Apps," the authors created a Vessel Manager Framework. It uses JNI (Java Native Interface) and POSIX AF UNIX sockets to bridge the high-performance native daemon with the user-friendly Java application layer.

Experimental Results

The researchers compared DYNAMO against several industry standards, including SignalK Node.js and Java implementations, and iKommunicate (specialized ARM-based hardware).

Performance Benchmarking

DYNAMO drastically outperformed the previous Java-based FairWind app. In HTTP/GET response tests, DYNAMO's latency remained low and stable even as the request frequency skyrocketed, matching the performance of dedicated hardware.

HTTP/GET Performance Comparison

Scalability in the Wild

The system was tested for "Subscription" efficiency—where clients only receive updates for specific data points (e.g., just wind speed). While the old Java implementation struggled with multiple clients, DYNAMO’s native implementation handled multiple concurrent connections with negligible latency increases.

Subscription Scalability

Critical Insight & Future Outlook

The success of DYNAMO demonstrates a crucial design pattern for the "Internet of Things" on mobile platforms: Don't trust the app layer for critical infrastructure. By treating the boat's sensor network as a system-level service, DYNAMO makes data crowdsourcing transparent and resilient for the user.

Limitations: The current prototype requires a customized Android distribution, which may limit immediate mass adoption. However, as 5G connectivity reaches coastal zones, this architecture provides a blueprint for real-time edge computing where even "leisure" devices contribute to global climate science.

Future Work: The authors plan to explore GPGPU offloading to handle more complex on-board computations, potentially allowing vessels to process raw sonar or environmental imagery before it even hits the cloud.

Find Similar Papers

Try Our Examples

  • Search for recent studies on "Internet of Floating Things" (IoFT) that utilize crowdsourced data for data assimilation in numerical weather prediction models.
  • Which paper first proposed the SignalK open data format, and how does it compare to NMEA 2000 in terms of bandwidth efficiency for cloud-based marine IoT?
  • Explore research papers that have adapted native Linux daemons within Android for real-time sensor processing in automotive or drone-based crowdsourcing.
Contents
DYNAMO: Scaling Marine Crowdsourcing via Native Android Integration
1. TL;DR
2. Background & Motivation
3. Methodology: Moving to the Native Level
3.1. 1. The DYNAMO Daemon Architecture
3.2. 2. The Vessel Manager Bridge
4. Experimental Results
4.1. Performance Benchmarking
4.2. Scalability in the Wild
5. Critical Insight & Future Outlook