|
|
| (42 intermediate revisions by the same user not shown) |
| Line 1: |
Line 1: |
| − | == AIS sources ==
| |
| − | === build your own receiver ===
| |
| − | * https://www.aiscatcher.org/howto
| |
| − |
| |
| − | === webSDR ===
| |
| − | Many stations allow AIS tuning, see [https://rx-tx.info/map-sdr-points?freq_of=&freq_to=&bands=1031&country=All&title=&qth=&url= Map of SDR Receivers].
| |
| − | On Windows, [https://vac.muzychenko.net/en/ virtual audio cable] and [https://support.marinetraffic.com/en/articles/9552953-aismon AISmon] works well.
| |
| − | * Bremerhaven, DE http://dl1bir.spdns.de:8073/#freq=161975000,mod=wfm,sql=-150
| |
| − | * Vlissingen, NL http://sdrpa3bbl.duckdns.org:1500/#freq=161975000,mod=wfm,sql=-150
| |
| − | * London, GB http://maritime.nkpa.co.uk:8073/#freq=161975000,mod=wfm,sql=-150
| |
| − | <code>
| |
| − | !AIVDM,1,1,,,8vjHWT@0Gh0TN1N>vCC0Qi0lnPAL`GFigwl?wnSwe7wvlOwwsAwwnSGmwvh0,0*57
| |
| − | {"class":"AIS","device":"stdin","type":8,"repeat":3,"mmsi":992356241,"scaled":true,"dac":1,"fid":31,"lat":51.4643,"lon":0.3112,"accuracy":false,"timestamp":"26T12:02Z","wspeed":14,"wgust":16,"wdir":105,"wgustdir":360,"humidity":74,"airtemp":13.9,"dewpoint":9.3,"pressure":1015,"pressuretend":"N/A","visgreater":false,"visibility":12.7,"waterlevel":30.0,"leveltrend":"N/A","cspeed":25.5,"cdir":360,"cspeed2":25.5,"cdir2":360,"cdepth2":31,"cspeed3":25.5,"cdir3":360,"cdepth3":31,"waveheight":25.5,"waveperiod":63,"wavedir":360,"swellheight":25.5,"swellperiod":63,"swelldir":360,"seastate":13,"watertemp":50.1,"preciptype":"N/A","salinity":51.0,"ice":"N/A"}
| |
| − |
| |
| − | !AIVDM,1,1,,,8vjHWR00Gh05I1NBtkC0gwvlFR06EuOwgrVWwnSwe7wvlOwwsAwwnSGmwvh0,0*09
| |
| − | {"class":"AIS","device":"stdin","type":8,"repeat":3,"mmsi":992356232,"scaled":true,"dac":1,"fid":31,"lat":51.4982,"lon":0.0460,"accuracy":false,"timestamp":"26T12:02Z","wspeed":127,"wgust":127,"wdir":360,"wgustdir":360,"humidity":101,"airtemp":-102.4,"dewpoint":50.1,"pressure":1310,"pressuretend":"N/A","visgreater":false,"visibility":12.7,"waterlevel":3.3,"leveltrend":"N/A","cspeed":25.5,"cdir":360,"cspeed2":25.5,"cdir2":360,"cdepth2":31,"cspeed3":25.5,"cdir3":360,"cdepth3":31,"waveheight":25.5,"waveperiod":63,"wavedir":360,"swellheight":25.5,"swellperiod":63,"swelldir":360,"seastate":13,"watertemp":50.1,"preciptype":"N/A","salinity":51.0,"ice":"N/A"}
| |
| − |
| |
| − | !AIVDM,1,1,,,8vjHWQ00GwwJlAN>g;C0gwvlFR06EuOwgquOwnSwe7wvlOwwsAwwnSGmwvh0,0*7F
| |
| − | {"class":"AIS","device":"stdin","type":8,"repeat":3,"mmsi":992356228,"scaled":true,"dac":1,"fid":31,"lat":51.4623,"lon":-0.3173,"accuracy":false,"timestamp":"26T12:02Z","wspeed":127,"wgust":127,"wdir":360,"wgustdir":360,"humidity":101,"airtemp":-102.4,"dewpoint":50.1,"pressure":1310,"pressuretend":"N/A","visgreater":false,"visibility":12.7,"waterlevel":0.0,"leveltrend":"N/A","cspeed":25.5,"cdir":360,"cspeed2":25.5,"cdir2":360,"cdepth2":31,"cspeed3":25.5,"cdir3":360,"cdepth3":31,"waveheight":25.5,"waveperiod":63,"wavedir":360,"swellheight":25.5,"swellperiod":63,"swelldir":360,"seastate":13,"watertemp":50.1,"preciptype":"N/A","salinity":51.0,"ice":"N/A"}
| |
| − |
| |
| − | !AIVDM,1,1,,,8vjHWPh0Gh0f1aN<:SC0wwvlFR06EuOwgreGwnSwe7wvlOwwsAwwnSGmwvh0,0*13
| |
| − | {"class":"AIS","device":"stdin","type":8,"repeat":3,"mmsi":992356227,"scaled":true,"dac":1,"fid":31,"lat":51.4403,"lon":0.3927,"accuracy":false,"timestamp":"26T12:03Z","wspeed":127,"wgust":127,"wdir":360,"wgustdir":360,"humidity":101,"airtemp":-102.4,"dewpoint":50.1,"pressure":1310,"pressuretend":"N/A","visgreater":false,"visibility":12.7,"waterlevel":3.9,"leveltrend":"N/A","cspeed":25.5,"cdir":360,"cspeed2":25.5,"cdir2":360,"cdepth2":31,"cspeed3":25.5,"cdir3":360,"cdepth3":31,"waveheight":25.5,"waveperiod":63,"wavedir":360,"swellheight":25.5,"swellperiod":63,"swelldir":360,"seastate":13,"watertemp":50.1,"preciptype":"N/A","salinity":51.0,"ice":"N/A"}
| |
| − | </code>
| |
| − | * Edinburgh, GB https://websdr2.scotlandchat.co.uk/#freq=161975000,mod=wfm,sql=-150
| |
| − | <code>
| |
| − | !AIVDM,2,1,7,A,8>jHE700Gwr7HIVSwS;JPwtqFPC3b2o;gwl>0Dt1R9@1`b0PSb0>:gB;wvv00000,0*77
| |
| − | !AIVDM,2,2,7,A,001,0*20
| |
| − | {"class":"AIS","device":"stdin","type":8,"repeat":0,"mmsi":992351516,"scaled":true,"dac":1,"fid":31,"lat":56.0127,"lon":-3.2138,"accuracy":false,"timestamp":"25T13:42Z","wspeed":7,"wgust":127,"wdir":114,"wgustdir":360,"humidity":58,"airtemp":15.2,"dewpoint":-50.1,"pressure":1028,"pressuretend":"N/A","visgreater":false,"visibility":12.7,"waterlevel":30.0,"leveltrend":"N/A","cspeed":0.0,"cdir":335,"cspeed2":0.1,"cdir2":273,"cdepth2":5,"cspeed3":0.0,"cdir3":209,"cdepth3":10,"waveheight":0.2,"waveperiod":2,"wavedir":117,"swellheight":0.0,"swellperiod":28,"swelldir":171,"seastate":13,"watertemp":13.9,"preciptype":"N/A","salinity":51.0,"ice":"N/A"}
| |
| − | </code>
| |
| − | * Malaga, ES http://ea7cl.duckdns.org:8073/#freq=161975000,mod=wfm,sql=-150
| |
| − | <code>
| |
| − | !AIVDM,1,1,,,6>jaws@00004>da5P000000,2*48
| |
| − | {"class":"AIS","device":"stdin","type":6,"repeat":0,"mmsi":992641005,"scaled":true,"seqno":0,"dest_mmsi":1,"retransmit":false,"dac":235,"fid":10,"off_pos":false,"alarm":false,"stat_ext":0,"ana_int":13.90,"ana_ext1":0,"ana_ext2":0,"racon":0,"racon_text":"No RACON installed","light":0,"light_text":"No light or no monitoring"}
| |
| − | </code>
| |
| − | * IT http://sdrcagliari.freeddns.it/#freq=161975685,mod=wfm,sql=-150
| |
| − | * Kalamata, GR http://sv3smg.ddns.net:8073/#freq=162025000,mod=wfm,sql=-150
| |
| − | * Mangalia, RO http://yo4cil.home.ro:8073/#freq=161975000,mod=wfm,sql=-150
| |
| − | * Sydney, AUS http://meryl.ddns.net:8073/#freq=161975000,mod=wfm,sql=-150
| |
| − | * Toronto, http://99.237.71.151/#freq=161975000,mod=wfm,sql=-150
| |
| − |
| |
| − | * ...
| |
| − |
| |
| − | === NMEA ===
| |
| − | AIShub used to offer a NMEA stream of all connected stations as a benefit for their contributors. From mid 2024 on, this service retired.
| |
| − | * <strike>https://www.aishub.net</strike>
| |
| − |
| |
| − | ==== Norway ====
| |
| − | Stream is filtered. Missing message types: 4/...
| |
| − | * https://www.kystverket.no/en/sea-transport-and-ports/ais/access-to-ais-data/
| |
| − | ** tcp://153.44.253.27:5631
| |
| − |
| |
| − | ==== Florida ====
| |
| − | Reception area is limited.
| |
| − | * http://ssia-ais.erau.edu/
| |
| − | ** tcp://ssia-ais.erau.edu:4000
| |
| − |
| |
| − | ==== AIS-catcher sites ====
| |
| − | * https://kx1t.com/ais
| |
| − | ** <code>curl -s https://kx1t.com/ais/api/sse |grep 'data:' | awk '{print $2}'</code>
| |
| − | * https://mgoorman.nl
| |
| − | * http://anz-ais.ddns.net:8100
| |
| − | * ...
| |
| − |
| |
| − | === API ===
| |
| − | * https://www.aishub.net
| |
| − | * https://aisstream.io
| |
| − | ** <code>wscat -c wss://stream.aisstream.io/v0/stream -w 300 -x '{"APIKey": "***", "BoundingBoxes": [[[-180, -90],[180, 90]]], "FilterMessageTypes":["SafetyBroadcastMessage","LongRangeAisBroadcastMessage","BinaryBroadcastMessage","GroupAssignmentCommand"]}'</code>
| |
| − |
| |
| − | === Historic ===
| |
| − | * ...
| |
| | | | |
| | == AIS decoders == | | == AIS decoders == |
| − | === Ais Decoder ===
| |
| − | * https://arundaleais.github.io/docs/ais/ais_decoder.html (WIN)
| |
| − |
| |
| − | === gpsdecode ===
| |
| − | * https://gpsd.gitlab.io/gpsd/gpsdecode.html
| |
| − | * <code>nc 153.44.253.27 5631 | gpsdecode | grep '"type":8'</code>
| |
| − | <pre>
| |
| − | {"class":"AIS","device":"stdin","type":8,"repeat":0,"mmsi":257057800,"scaled":true,
| |
| − | "dac":200,"fid":10,"vin":"00000000","length":215,"beam":60,"shiptype":8440,"shiptype_text":"Illegal ship type value.",
| |
| − | "hazard":5,"hazard_text":"Unknown","draught":0,"loaded":0,"loaded_text":"N/A (default)",
| |
| − | "speed_q":false,"course_q":false,"heading_q":false}
| |
| − | </pre>
| |
| − | <pre>
| |
| − | {"class":"AIS","device":"stdin","type":8,"repeat":0,"mmsi":215349000,"scaled":true,"dac":1,"fid":27,"linkage":90,"sender":0,"rtype":5,"rtype_text":"Ship route plan","start":"00-00T24:60Z","duration":262143,"waypoints":[{"lon":7.107972,"lat":62.844255},{"lon":7.112132,"lat":62.848032}]}
| |
| − | </pre>
| |
| − | <pre>
| |
| − | {"class":"AIS","device":"stdin","type":8,"repeat":0,"mmsi":215349000,"scaled":true,"dac":1,"fid":29,"linkage":90,"text":"LESSREMMAN - ELNES (VIA RORVIK; OUTSIDE) CAPT YURI"}
| |
| − | </pre>
| |
| − | * <code>nc ssia-ais.erau.edu 4000 | gpsdecode | grep -e '"type":8' -e '"type":27'</code>
| |
| − | <pre>
| |
| − | {"class":"AIS","device":"stdin","type":27,"repeat":0,"mmsi":368429323,"scaled":true,"status":"Not defined","accuracy":true,"lon":-81.0,"lat":29.2,"speed":0,"course":511,"raim":true,"gnss":false}
| |
| − | </pre>
| |
| − | <pre>
| |
| − | {"class":"AIS","device":"stdin","type":8,"repeat":0,"mmsi":369493715,"scaled":true,"dac":366,"fid":56,"data":"256:a83746ce99bb9edbd3eebb88bb7dcecba01df41d94f9397136c0c97eb4af8d69"}
| |
| − | </pre>
| |
| − | <pre>
| |
| − | {"class":"AIS","device":"stdin","type":8,"repeat":0,"mmsi":369493715,"scaled":true,"dac":366,"fid":57,"data":"512:bf68e50cc47b8ae14771ed1a0c075bfb60f82bb9ffec80211e4aad32b4edac38b33a6b4280f403d0dff4069a452f9cd51dfc44285226e53d7f337377f15829d6"}
| |
| − | </pre>
| |
| − | ==== missing/problems ====
| |
| − | * Text Telegram does not decode!
| |
| − | <pre>
| |
| − | {"class":"AIS","device":"stdin","type":6,"repeat":0,"mmsi":538007497,"scaled":true,"seqno":1,"dest_mmsi":212848000,"retransmit":false,"dac":1,"fid":0,"data":"96:8040494e05054d48120d612e"}
| |
| − | </pre>
| |
| − | * also valid, 'Illegal ship type' decoded! see https://unece.org/fileadmin/DAM/trans/doc/2013/sc3wp3/ECE-TRANS-SC3-WP3-2013-05e.pdf
| |
| − | <pre>
| |
| − | {"class":"AIS","device":"stdin","type":8,"repeat":0,"mmsi":257303700,"scaled":true,"dac":200,"fid":10,"vin":"00000000","length":114,"beam":36,"shiptype":8450,"shiptype_text":"Illegal ship type value.","hazard":5,"hazard_text":"Unknown","draught":150,"loaded":0,"loaded_text":"N/A (default)","speed_q":false,"course_q":false,"heading_q":false}
| |
| − | </pre>
| |
| − | * does not decode!
| |
| − | <pre>
| |
| − | {"class":"AIS","device":"stdin","type":8,"repeat":0,"mmsi":257605000,"scaled":true,"dac":265,"fid":1,"data":"512:02017cf22f19aa2bc00f83af410ade2bc2dffbf6bff7822bc50fd3bbbffee02bc00f9874c049812bc140019c3ffd542bc0a017a6fee9842bc0787ea28bd27600"}
| |
| − | </pre>
| |
| − |
| |
| − | === Maritec online AIS decoder ===
| |
| − | * https://www.maritec.co.za/aisvdmvdodecoding
| |
| − |
| |
| − | === pyais ===
| |
| − | * https://github.com/M0r13n/pyais
| |
| − | * <code>pipx install pyais</code>
| |
| − | * <code>pipx ensurepath</code>
| |
| − | * <code>nc 153.44.253.27 5631 | ais-decode --json | grep '"msg_type": 8'</code>
| |
| − | <pre>
| |
| − | {"msg_type": 8, "repeat": 0, "mmsi": 257057800,
| |
| − | "dac": 200, "fid": 10, "vin": "00000000", "length": 21.5, "beam": 6.0, "shiptype": 8440,
| |
| − | "hazard": 5, "draught": 0.0, "loaded": 0,
| |
| − | "speed_q": false, "course_q": false, "heading_q": false}
| |
| − | </pre>
| |
| − | <pre>
| |
| − | {"msg_type": 8, "repeat": 0, "mmsi": 215349000, "dac": 1, "fid": 27,
| |
| − | "data": "FwFAGPP//3ggjnij9kTwQREIR+t9QIGPWI/RpYEAV0kfnN4B/oNCP0lbA/56ZH7oMAfMqQkAPXgPnOUSBujgIEAnJCF1QEOc0Uhdt0CLKQCQxYXBGjYZIXqkAkLbgkK4VwS3FHSHEE4JngLpEMz8"}
| |
| − | </pre>
| |
| − | <pre>
| |
| − | {"msg_type": 8, "repeat": 0, "mmsi": 215349000, "dac": 1, "fid": 29, "data": "FwUw4VOC2BYVIQEyChYkGAdIlCnI"}
| |
| − | </pre>
| |
| − |
| |
| − | === aisdecode ===
| |
| − | * https://github.com/madpsy/aisdecode/
| |
| − | * <code>./aisdecode-linux-amd64 -log-all-decodes decoded</code>
| |
| − |
| |
| − | === AIS-catcher ===
| |
| − | * input: https://docs.aiscatcher.org/configuration/input/tcp/
| |
| − | * output: https://docs.aiscatcher.org/configuration/output/console/
| |
| − | * web view: https://docs.aiscatcher.org/configuration/output/web-viewer/
| |
| − | * <code>AIS-catcher -t txt://153.44.253.27:5631 -o 5 -N 8101 GEOJSON false MESSAGE true REALTIME false</code>
| |