@@ -58,6 +58,8 @@ local pf_pose_gps_time = ProtoField.new("GPS Time", "fusionengine.pose.gps_time"
58
58
local pf_pose_gps_time_sec = ProtoField .new (" Seconds" , " fusionengine.pose.gps_time.sec" , ftypes .UINT32 )
59
59
local pf_pose_gps_time_frac = ProtoField .new (" Nanoseconds" , " fusionengine.pose.gps_time.frac" , ftypes .UINT32 )
60
60
local pf_pose_solution_type = ProtoField .new (" Solution Type" , " fusionengine.pose.solution_type" , ftypes .UINT8 )
61
+ local pf_pose_undulation_cm = ProtoField .new (" Undulation (cm)" , " fusionengine.pose.undulation_cm" , ftypes .INT16 )
62
+ local pf_pose_undulation_m = ProtoField .new (" Undulation (m)" , " fusionengine.pose.undulation_m" , ftypes .STRING )
61
63
local pf_pose_lla = ProtoField .new (" LLA (deg)" , " fusionengine.pose.lla" , ftypes .STRING )
62
64
local pf_pose_lla_lat = ProtoField .new (" Latitude (deg)" , " fusionengine.pose.lla.lat" , ftypes .DOUBLE )
63
65
local pf_pose_lla_lon = ProtoField .new (" Longitude (deg)" , " fusionengine.pose.lla.lon" , ftypes .DOUBLE )
@@ -86,6 +88,8 @@ fe_proto.fields = {
86
88
pf_pose_gps_time_sec ,
87
89
pf_pose_gps_time_frac ,
88
90
pf_pose_solution_type ,
91
+ pf_pose_undulation_cm ,
92
+ pf_pose_undulation_m ,
89
93
pf_pose_lla ,
90
94
pf_pose_lla_lat ,
91
95
pf_pose_lla_lon ,
@@ -100,6 +104,7 @@ local pose_p1_time_sec_field = Field.new("fusionengine.pose.p1_time.sec")
100
104
local pose_p1_time_frac_field = Field .new (" fusionengine.pose.p1_time.frac" )
101
105
local pose_gps_time_sec_field = Field .new (" fusionengine.pose.gps_time.sec" )
102
106
local pose_gps_time_frac_field = Field .new (" fusionengine.pose.gps_time.frac" )
107
+ local pose_undulation_cm_field = Field .new (" fusionengine.pose.undulation_cm" )
103
108
local pose_lla_lat_field = Field .new (" fusionengine.pose.lla.lat" )
104
109
local pose_lla_lon_field = Field .new (" fusionengine.pose.lla.lon" )
105
110
local pose_lla_alt_field = Field .new (" fusionengine.pose.lla.alt" )
@@ -207,7 +212,15 @@ dissectPoseMessage = function(tvbuf, pktinfo, tree, offset, payload_size, messag
207
212
offset = offset + 1
208
213
209
214
-- Reserved
210
- offset = offset + 3
215
+ offset = offset + 1
216
+
217
+ -- Undulation
218
+ tree :add_le (pf_pose_undulation_cm , tvbuf :range (offset , 2 )):set_hidden (true )
219
+ local undulation_m = tree :add_le (pf_pose_undulation_m , tvbuf :range (offset , 2 ))
220
+ offset = offset + 2
221
+
222
+ local undulation_cm = getValue (pose_undulation_cm_field , message_index )
223
+ undulation_m :set_text (string.format (" %s: %.2f" , " Undulation (m)" , undulation_cm * 0.01 ))
211
224
212
225
-- LLA
213
226
local lla = tree :add (pf_pose_lla , tvbuf :range (offset , 24 ))
0 commit comments