diff options
author | Christian Gagneraud <chgans@gna.org> | 2012-05-20 23:00:44 +0100 |
---|---|---|
committer | Christian Gagneraud <chgans@gna.org> | 2012-05-20 23:06:02 +0100 |
commit | e6bddd8e75d07f3205a366abe48d76815d9e13a4 (patch) | |
tree | a67f41b4d22ac48705aa0a892ce847ac89fda76e | |
parent | 2b1cf23a8b428f9cb14017c7cc598e9c6569c209 (diff) | |
download | gpsd-e6bddd8e75d07f3205a366abe48d76815d9e13a4.tar.gz |
[AIS] Add 2 regression testcases for IMO236 met/hydro message
scons check pass
-rw-r--r-- | test/sample.aivdm | 105 | ||||
-rw-r--r-- | test/sample.aivdm.chk | 2 | ||||
-rw-r--r-- | test/synthetic-ais.json | 2 |
3 files changed, 109 insertions, 0 deletions
diff --git a/test/sample.aivdm b/test/sample.aivdm index 29e8ae87..2bc73f13 100644 --- a/test/sample.aivdm +++ b/test/sample.aivdm @@ -231,6 +231,111 @@ # FID 22 # Data 256:eb0d4f917a035b2dfca3d4739381735c18ebbe754936f66850037dcacd9538b8 # +# Type 8, DAC 1, FID 11 (IMO 236 Met/Hydro message) +# From Christian Gagneraud: +# Specific NMEA messages with hard-coded Met/hydro values have been send to a +# Kanaton, according to it's default input settings ($_HDXX,VAL*CS, where XX is the +# parameter index, 0 to 30, VAL is the scaled parameter value, and CS the checksum). +# The resulting AIVDO sentence has been decoded using the Kanaton software. +# Sent data, kanaton decoder output and gpsd JSON output all match each other. +# +# "18/05/2012 18:15:37" !AIVDO,1,1,4,B,8>jR06@0Bk3:wOli;<`WPhh<1rqVBQf2V@Pdt0J82avIM2b<<Rv1t<ot=@1,2*54 +# AIS channel:1 +# Message ID=8 +# Repeat Indicator=0 +# Source ID (MMSI)=992509977 +# Spare=0 +# Binary Data +# Application identifier=0x004B(75) +# DAC=1(International) +# Function identifier =11(Reserved for international operational applications) +# Application data: +# Latitude=0x30CAFD(53°017.693 N) +# Longitude=0x59DA7(006°008.039 W) +# Date and time=0x944F(18 17h15m) +# Average wind speed=0x3(3 kts) +# Wind gust=0x6(6 kt(s)) +# Wind direction=0xC(12 degree(s)) +# Wind gust direction=0xF(15 degree(s)) +# Air temperature=0x2E6(14.2 degree(s) Celcius) +# Relative humidity=0x32(50percent) +# Dew point=0x143(12.3 degree(s) Celcius) +# Air pressure=0xE0(1024 hPa) +# Air pressure tendency=0x2(2(increasing)) +# Horizontal visibility=0x99(15.3 NM) +# Water level=0x10(-8.4 m) +# Water level trend=0x1(1 hPa) +# Surface current speed=0x67(10.3 kts) +# Surface current direction=0x100(256 degree(s)) +# Current speed #2=0x68(10.4 kts) +# Current direction #2=0x101(257 degree(s)) +# Current measuring level #2=0xA(10 m) +# Current speed #3=0x7E(12.6 kts) +# Current direction #3=0xCB(203 degree(s)) +# Current measuring level #3=0x14(20 m) +# Significant wave height=0x2A(4.2 m) +# Wave period=0x23(35 Sec) +# Wave direction=19(25 degree(s)) +# Swell height=0x17(2.3) m +# Swell period=0x30(48 Sec) +# Swell direction=0x7C(124 degree(s)) +# Sea state=0x3(3 Beaufort) +# Water temperature=0xDF(12.3 degree(s) Celcius) +# Precipitation=0x6(6 according to WMO) +# Salinity=0x35(5.3 permil) +# Ice=0x0(0) +!AIVDO,1,1,4,B,8>jR06@0Bk3:wOli;<`WPhh<1rqVBQf2V@Pdt0J82avIM2b<<Rv1t<ot=@1,2*54 +# Type 8, DAC 1, FID 11 (IMO 236 Met/Hydro message) +# From Christian Gagneraud: +# Same set-up as above, but the NMEA strem to the Kanaton has been stopped, +# causing the Kanaton to send a message with all bits set to 1, meaning "no +# data available" +# "18/05/2012 18:45:37" !AIVDO,1,1,4,B,8>jR06@0Bk3:vOli;L`nwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwt1,2*0E +# AIS channel:1 +# Message ID=8 +# Repeat Indicator=0 +# Source ID (MMSI)=992509977 +# Spare=0 +# Binary Data +# Application identifier=0x004B(75) +# DAC=1(International) +# Function identifier =11(Reserved for international operational applications) +# Application data: +# Latitude=0x30CAF9(53°017.689 N) +# Longitude=0x59DA5(006°008.037 W) +# Date and time=0x946D(18 17h45m) +# Average wind speed=0x7F(127 kts) +# Wind gust=0x7F(127 kt(s)) +# Wind direction=0x1FF(511 degree(s)) +# Wind gust direction=0x1FF(511 degree(s)) +# Air temperature=0x7FF(144.7 degree(s) Celcius) +# Relative humidity=0x7F(127percent) +# Dew point=0x3FF(82.3 degree(s) Celcius) +# Air pressure=0x1FF(1311 hPa) +# Air pressure tendency=0x3(3()) +# Horizontal visibility=0xFF(25.5 NM) +# Water level=0x1FF(41.1 m) +# Water level trend=0x3(3 hPa) +# Surface current speed=0xFF(25.5 kts) +# Surface current direction=0x1FF(511 degree(s)) +# Current speed #2=0xFF(25.5 kts) +# Current direction #2=0x1FF(511 degree(s)) +# Current measuring level #2=0x1F(31 m) +# Current speed #3=0xFF(25.5 kts) +# Current direction #3=0x1FF(511 degree(s)) +# Current measuring level #3=0x1F(31 m) +# Significant wave height=0xFF(25.5 m) +# Wave period=0x3F(63 Sec) +# Wave direction=1FF(511 degree(s)) +# Swell height=0xFF(25.5) m +# Swell period=0x3F(63 Sec) +# Swell direction=0x1FF(511 degree(s)) +# Sea state=0xF(15 Beaufort) +# Water temperature=0x3FF(92.3 degree(s) Celcius) +# Precipitation=0x7(7 according to WMO) +# Salinity=0x1FF(51.1 permil) +# Ice=0x3(3) +!AIVDO,1,1,4,B,8>jR06@0Bk3:vOli;L`nwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwt1,2*0E # Type 9: # From AISHub. Checked with the noaadata tools. !AIVDM,1,1,,A,91b77=h3h00nHt0Q3r@@07000<0b,0*69 diff --git a/test/sample.aivdm.chk b/test/sample.aivdm.chk index 26ce72e2..7841c6f6 100644 --- a/test/sample.aivdm.chk +++ b/test/sample.aivdm.chk @@ -11,6 +11,8 @@ 7|2|537411077|43101326|717096664|76161024|0
8|0|366999712|366|56|256:3a53dbb7be4a773137f87d7b0445f040dea05d93f593783194ae9b9d9dbe05fb
8|0|999999999|366|56|256:eb0d4f917a035b2dfca3d4739381735c18ebbe754936f66850037dcacd9538b8
+8|0|992509977|1|11|-368039|3197693|18T17:15Z|3|6|12|15|142|50|123|1024|2|153|-84|1|103|256|104|257|10|126|203|20|42|35|25|23|48|124|3|123|6|53|0
+8|0|992509977|1|11|-368037|3197689|18T17:45Z|127|127|511|511|1447|127|823|1311|3|255|411|3|255|511|255|511|31|255|511|31|255|63|511|255|63|511|15|923|7|511|3
9|0|111265591|15|0|0|7128960|34667073|0|28|0x0|0|0|0x6015
10|0|366814480|366832740
10|0|440882000|366972000
diff --git a/test/synthetic-ais.json b/test/synthetic-ais.json index 81d717af..bf7d5606 100644 --- a/test/synthetic-ais.json +++ b/test/synthetic-ais.json @@ -18,6 +18,8 @@ {"class":"AIS","type":7,"repeat":2,"mmsi":537411077,"scaled":false,"mmsi1":43101326,"mmsi2":717096664,"mmsi3":76161024,"mmsi4":0}
{"class":"AIS","type":8,"repeat":0,"mmsi":366999712,"scaled":false,"dac":366,"fid":22,"data":"256:3a53dbb7be4a773137f87d7b0445f040dea05d93f593783194ae9b9d9dbe05fb"}
{"class":"AIS","type":8,"repeat":0,"mmsi":366999655,"scaled":false,"dac":366,"fid":22,"data":"256:631d1d6b32f735f03494870d9e13addaf3f373435347ab94628f1498868051c3"}
+{"class":"AIS","type":8,"repeat":0,"mmsi":992509977,"scaled":false,"dac":1,"fid":11,"lat":3197693,"lon":-368039,"timestamp":"18T17:15Z","wspeed":3,"wgust":6,"wdir":12,"wgustdir":15,"humidity":50,"airtemp":142,"dewpoint":123,"pressure":1024,"pressuretend":2,"visibility":153,"waterlevel":-84,"leveltrend":1,"cspeed":103,"cdir":256,"cspeed2":104,"cdir2":257,"cdepth2":10,"cspeed3":126,"cdir3":203,"cdepth3":20,"waveheight":42,"waveperiod":35,"wavedir":25,"swellheight":23,"swellperiod":48,"swelldir":124,"seastate":3,"watertemp":123,"preciptype":6,"salinity":53,"ice":0} +{"class":"AIS","type":8,"repeat":0,"mmsi":992509977,"scaled":false,"dac":1,"fid":11,"lat":3197689,"lon":-368037,"timestamp":"18T17:45Z","wspeed":127,"wgust":127,"wdir":511,"wgustdir":511,"humidity":127,"airtemp":1447,"dewpoint":823,"pressure":1311,"pressuretend":3,"visibility":255,"waterlevel":411,"leveltrend":3,"cspeed":255,"cdir":511,"cspeed2":255,"cdir2":511,"cdepth2":31,"cspeed3":255,"cdir3":511,"cdepth3":31,"waveheight":255,"waveperiod":63,"wavedir":511,"swellheight":255,"swellperiod":63,"swelldir":511,"seastate":15,"watertemp":923,"preciptype":7,"salinity":511,"ice":3} {"class":"AIS","type":9,"repeat":0,"mmsi":111265591,"scaled":false,"alt":15,"speed":0,"accuracy":false,"lon":7128960,"lat":34667073,"course":0,"second":28,"regional":0,"dte":0,"raim":false,"radio":24597}
{"class":"AIS","type":10,"repeat":0,"mmsi":366814480,"scaled":false,"dest_mmsi":366832740}
{"class":"AIS","type":10,"repeat":0,"mmsi":440882000,"scaled":false,"dest_mmsi":366972000}
|