Our own AIS only hears ships out to the horizon. A script we wrote pulls the rest down from the internet and puts it on the chart, and in return we feed our own AIS to the networks that make it possible.
A schematic, not to scale. The gold ring is what the boat's own AIS hears; the dashed ring is what the internet adds.
Because offshore, the horizon is the limit
AIS is VHF radio, and VHF is line of sight. Your own receiver sees ships out to the horizon and no further. Offshore, that can be too late to be useful.
But thousands of volunteers and coastal stations are hearing those same ships from the other side, and sharing what they hear over the internet. If you can reach the internet, you can see targets far beyond the range of your own AIS.
Two ways onto the Pi
Either one gives you the local picture. The internet part below is what adds everything beyond the horizon.
We give, and we get
A small relay takes the AIS the boat already receives and forwards it to AISHub and MarineTraffic, two networks built almost entirely from volunteers. That is how coverage exists in the first place: nobody is watching your creek from orbit. AISHub is a sharing co-operative, so feeding it is also what entitles you to pull the network's data back. Why that matters →
This part is custom. We wrote it ourselves, because the built-in alternative needs a paid subscription and we wanted a free route. It does one job:
The chart software, qtVlm, keys every target by its MMSI number, so a ship heard both locally and over the internet is one target and not two. A switch on the desktop turns the feed off or picks how far out to look. In one test it returned about 580 vessels.
Because delayed data can mislead you