AIS without shipplotter

455 views
Skip to first unread message

Prospero

unread,
Oct 16, 2012, 12:04:28 PM10/16/12
to apr...@googlegroups.com
Is there a way to provide AIS data to aprs.fi without shipplotter or gnuais?  I can provide data TSP/IP or UDP using aislogger  if you can receive it.

Walter
KK4DFZ

Heikki Hannikainen

unread,
Oct 16, 2012, 3:08:43 PM10/16/12
to apr...@googlegroups.com
Currently no. I could accept a TCP stream maybe (after a few evenings of
writing code), UDP is not OK since it can be spoofed easily. There's no
way to say who sent which packet (at least with the existing AIS UDP
transmitters which simply put NMEA strings in UDP frames as is).

- Hessu

Walter Runck

unread,
Oct 17, 2012, 4:03:28 PM10/17/12
to apr...@googlegroups.com
No problem. I'll probably go ahead and prop up the euro with some USD and
get a copy of shipplotter. Then I can get ready for the complaints about
aprs.fi being too full of ship tracks to see any "real radio" stuff around
Charleston. Time for them to all learn about filters and preferences
anyway.

Thanks for great resource Hessu
--


Ingomar Otter

unread,
May 24, 2015, 11:57:09 AM5/24/15
to apr...@googlegroups.com
Hessu,
I'd like to write some code to submit AIS data straight from an AIS reciever using a linux SBC.
However so far I haven't found any documentation on the JSON format expected, can you point me to something? Of course I could reverse gnuais but maybe there is a simpler way :-)

Cheers,
 Ingomar

Heikki Hannikainen

unread,
May 24, 2015, 1:17:32 PM5/24/15
to apr...@googlegroups.com
On Sun, 24 May 2015, Ingomar Otter wrote:

> Hessu,I'd like to write some code to submit AIS data straight from an AIS reciever using a linux SBC.
> However so far I haven't found any documentation on the JSON format expected, can you point me to something? Of course I could reverse gnuais but
> maybe there is a simpler way :-)

The JSON AIS format spec was on wiki.ham.fi, but due to a double disk
failure in the RAID5 set on the server hosting that service, and the
failure of that server's admin to actually take backups off to a separate
system, it's lost. I've scraped backup copies from archive.org and google
cache for the aprs.fi user guide, and some other documents, but didn't
find that one.

So, for now, the source code is the document. :(

- Hessu

Dan

unread,
Jul 19, 2015, 5:15:31 PM7/19/15
to apr...@googlegroups.com

Christian Lehmann

unread,
Aug 7, 2015, 4:44:13 PM8/7/15
to aprs.fi
hi,

is there a documenataion how aprs.fi receives ais data? what is the url and what is the expected json data?

regards,

christian

Heikki Hannikainen

unread,
Aug 7, 2015, 4:52:11 PM8/7/15
to aprs.fi
On Thu, 6 Aug 2015, Christian Lehmann wrote:

> is there a documenataion how aprs.fi receives ais data? what is the url and what is the expected json data?

Hi,

Please see this thread:

https://groups.google.com/forum/#!searchin/aprsfi/json$20ais/aprsfi/253Uv1Rzz9Q/W7atasnpGPYJ

- Hessu

Steve Bennett

unread,
Oct 15, 2015, 3:29:27 PM10/15/15
to aprs.fi
Hi Dan/Heikki,

Did you ever get this working? I am trying to do the same and have followed the spec you found and I am posting an http request like

Content-Type: application/json
{"msgtype":1,"mmsi":224096290,"status":7,"speed":0,"lat":38.588346666667,"lon":-0.05367,"course":0,"heading":511,"rxtime":"20151015163045"}

I get a 200 OK back - but the data is not appearing on aprs.fi :(

Steve Bennett

unread,
Oct 19, 2015, 10:47:32 AM10/19/15
to aprs.fi
Hi Hessu,

I have tried this but it doesn't work

Content-Type: application/json
{"msgtype":1,"mmsi":224096290,"status":7,"speed":0,"lat":38.588346666667,"lon":-0.05367,"course":0,"heading":511,"rxtime":"20151015163045"}

I get a 200 OK back - but the data is not appearing on aprs.fi :(

Has anyone got this working and if so could they post the correct format for sending the data please?

Thanks.

Heikki Hannikainen

unread,
Oct 19, 2015, 11:27:25 AM10/19/15
to aprs.fi

Hi,

It works for quite a few clients all the time.

Looks like you're trying to submit a single packet instead of a whole HTTP
transport message, as specified in the linked document.

Start with the 'HTTP transport message' which then contains at least 1
group, which then contains at least 1 msg (one of which you pasted below).

One very simplistic implementation is in gnuais (without using an actual
JSON encoder, yuck...):

https://github.com/rubund/gnuais/blob/master/src/out_json.c
> --
> You received this message because you are subscribed to the Google Groups "aprs.fi" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to aprsfi+un...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>
>

- Hessu
Message has been deleted
Message has been deleted

Steve Bennett

unread,
Oct 25, 2015, 2:16:01 AM10/25/15
to apr...@googlegroups.com
Hi Hessu,

No, don't worry, we are not planning to do that. We can do that from our existing Boat Beacon app but we are not proposing to send it to aprs.fi. Would you like us to? We do have agreements with several other internet AIS web services to receive our Boat Beacon AIS data

The reason for the script is we have many AIS shore stations around the world that we have provided the equipment for (e.g. using our dual channel AIS receiver) and some of the kind people ( usually Radio HAMS) who look after them for us have asked if we can send the data to aprs.fi as well as to our own servers. We are happy to do that for them.

We have one user in Portugal and another in Spain who have asked for this. 

Best regards
Steve

On 23 October 2015 at 15:24, Heikki Hannikainen <he...@hes.iki.fi> wrote:
On Thu, 22 Oct 2015, Steve Bennett wrote:

Thanks for the reply. I have now got it working. Here is the snippet of php I used in case it is of help to others:-
                                    $search['mmsi'] = $ship_array["mmsi"];
                                    $search['rxtime'] = date("YmdHis");
                                    $aprspath["url"] =  "http://pocketmariner.com/";

Hi,

Do I understand this right, you're planning to deploy a mobile app, which then posts packets through this interface to aprs.fi for some user-selected MMSI number, as if it would be actual received AIS data?

  - Hessu

Dan

unread,
Nov 22, 2015, 1:18:52 PM11/22/15
to aprs.fi, st...@electricpocket.com
I did get something working with python.  It takes a UDP stream (from aisdispatcher) and formats the output to post via json.

I'll probably post it to github one I clean it up and make sure it doesn't crash.

Dan
Reply all
Reply to author
Forward
0 new messages