Waterlinked GPS inside

Waterlinked GPS inside

Juanmi Taboada
Juanmi Taboada
Waterlinked GPS inside

During our operations, very often, we use a Waterlinked Underwater GPS. This helps us to keep track in 3D of our movements and link video recordings timing and telemetry to specific places. This experiments were done together with Andalú Sea. Some examples of these 3D tracks are:

Waterlinked GPS – ROV Navigation inside harbor
Waterlinked GPS – ROV Navigation Open Water

Thanks to this technology, we can position the ROV when it is under the water, but…

How does it work?

Using the Master Waterlinked GPS System (3), the boat knows the ROV’s position under the water thanks to some pulses that the ROV is sending using a Locator (1) installed in it. This Locator (1) sends pulses every n-seconds, and those pulses are listened to by the Antenna or Receivers (2), which transmits those pulses to the Master (3).

In general, the Master (3) can compute a lot of information about positioning:

  • Acoustic data (1+2) will be processed to triangulate the position of the ROV Under the water regarding the Antennas or Receivers (2) position.
  • Master (3) reads the Global position from a GPS Chip installed in the Master (3). This way, Master (3) can find its position on the Earth.
  • Rov’s Global Position is inferred from Acoustic Position + Global Position.

How is the acoustic position accurately inferred?

To find out the relationship between Acoustic and Global positioning, the Waterlinked GPS requires pairing the Locator (1) with Master (3) before getting to the water.

The Locator (1), which also has a GPS Chip installed, can synchronize its timing with the available GPS satellites. Once the Locator (1) is synchronized, it will start sending pulses.

The Master (3) is also synchronized with the available GPS satellites, and it will start reading those pulses.

When Antenna (2) is set, the system can accurately find out the position of the ROV (distance from the antenna) using synchronized timing. The Master (3) knows when precisely the Locator is sending its pulses. Now it can infer the delay and the distance from each Receiver in the Antenna (2) to the Locator (1).

The rest is just maths.

How to set up a Waterlinked GPS?

Our Waterlinked GPS is set up with an Antenna (2).

The first thing to do is to attach it properly to the boat, so it will not move. Both the Antenna (2) and the Master (3) have a printed arrow on them, so it is mandatory to point both in the same direction when the Antenna (2) and the Master (3) are attached to the boat.

Install the Locator (1) in your ROV:

Start the pairing process as pointed by the instructions, and once ready, your ROV is prepared for duty.

You can get the full User Manual for Waterlinked GPS here.

How to read data with Python?

I did a few basic programs to read data from a Waterlinked GPS and save it in files. Then some others are capable of plotting the information on your screen using Matplotlib or converting them to GPX or KML format used by Google Maps.

You can find those visiting Waterlinked GPS on Github.

Let’s get more technical

The system is composed by:

1.- Master (3), a connection box outside the water that will communicate with the computer using a wifi connection (the box works in AP mode with ESSID “UnderwaterGPS” and Password “waterlinked”, the connection box will not deliver a DHCP connection so you must set your own one using 192.168.7.x IP address):

40 pin Molex Interface

D1 TX+34D1 TX-Locator-D1
D1 RX+56D1 RX-|
GND7812 VPower out
R1 TX+910R1 TX-Receiver-D1
R1 RX+1112R1 RX-|
GND131412 VPower out
R2 TX+1516R2 TX-Receiver-D1
R2 RX+1718R2 RX-|
GND192012 VPower out
R3 TX+2122R3 TX-Receiver-D1
R3 RX+2324R3 RX-|
GND252612 VPower out
R4 TX+2728R4 TX-Receiver-D1
R4 RX+2930R4 RX-|
ANT RX 1+3132ANT RX 1-Antenna
ANT RX 2+3334ANT RX 2-|
ANT RX 3+3536ANT RX 3-|
ANT RX 4+3738ANT RX 4-|
A1 TX+3940A1 TX-Locator-A1
Used to control relays for switching between Receivers and Antenna.
6 pin NMEA 0183 GPS + PPS (not currently implemented)
GND1212 V
6 pin NMEA 0183 Compass (not currently implemented)
GND1212 V
6 pin NMEA 0183 Out (not currently implemented)
GND1212 V
16 pin TTL GPIO
GND1212 V
GPIO 01314GPIO 1
GND15163.3 V
Note: TTL voltage 3.3 V (5.0 V tolerant)
2 pin MicroFit 3.0 Power
10 – 30 VDC, 0.7 A (12 V nominal).

2.- Antenna (2), several sensors that will be held underwater near the water line:

3.- API Access:

4.- Locator (1): this is one of the most important parts, and we will describe it in detail.

Locator (1) in detail

External USB-C connector and switch ON button that will be pushed when the cap is attached and closed. There is also a potentiometer it may be used for channel configuration:

Switch ON/OFF button + USB C

There is a serial number on the motherboard. I believe this is a serial number of the sensor itself when configured by the manufacturer:

Serial Number

The entire sensor is enclosed in a tube filled with epoxy glue. After removing the cover (tube), we can see the battery:

Full sensor uncovered

The model number and RoHS certification:

Model number Locator U1 41006-2
RoHS Certification



Battery Fey PA-UL-LNB19-R001:

Fey PA-UL-LNB19-R001

Which can provide until 1.2A at 4.2V:

1.2A at 4.2V
QR Code

The main chip is a uBlox NEO M8T:

uBlox NEO M8T
uBlox NEO M8T
uBlox NEO M8T
uBlox NEO M8T

FPGA Altera 10M16SAU169C8G:

FPGA Altera 10M16SAU169C8G
FPGA Altera 10M16SAU169C8G

DAC conversor TxDAC AD9704BCP:

DAC conversor TxDAC AD9704BCP

Technical documentation

Show Comments (0)


Related Articles



🇬🇧 Read it in English, “What is it CODENERIX?“ Es el nombre que recibe el software libre generado por Centrologic para desarrollo de herramientas de gestión...

Posted on by Juanmi Taboada
¿Qué es CodenerixModel?

¿Qué es CodenerixModel?

🇬🇧 Read it in English, “CodenerixModel“ En el artículo anterior hablábamos sobre CODENERIX y sus bondades. Ahora vamos a comenzar una serie de artículos que permitan...

Posted on by Juanmi Taboada