diff --git a/firmware/application/app_ais.cpp b/firmware/application/app_ais.cpp index 09f81a5d..df5b36f1 100644 --- a/firmware/application/app_ais.cpp +++ b/firmware/application/app_ais.cpp @@ -224,7 +224,11 @@ uint32_t Packet::message_id() const { return field_.read(0, 6); } -uint32_t Packet::source_id() const { +MMSI Packet::user_id() const { + return field_.read(8, 30); +} + +MMSI Packet::source_id() const { return field_.read(8, 30); } diff --git a/firmware/application/app_ais.hpp b/firmware/application/app_ais.hpp index ffca3443..b5739ce2 100644 --- a/firmware/application/app_ais.hpp +++ b/firmware/application/app_ais.hpp @@ -56,6 +56,8 @@ struct DateTime { using Latitude = int32_t; using Longitude = int32_t; +using MMSI = uint32_t; + class Packet { public: constexpr Packet( @@ -72,7 +74,8 @@ public: bool is_valid() const; uint32_t message_id() const; - uint32_t source_id() const; + MMSI user_id() const; + MMSI source_id() const; uint32_t read(const size_t start_bit, const size_t length) const;