1616TIMEBASE_REPORT_ID = 0xFB
1717TIMEBASE_REPORT_LEN = 5
1818
19+ TIMEREBASE_REPORT_ID = 0xFA
20+ TIMEREBASE_REPORT_LEN = 5
21+
1922class Report :
2023 report_type : str
2124 start_time : float
@@ -117,6 +120,17 @@ def __init__(self):
117120 self .delta = 0
118121 super ().__init__ ()
119122
123+ class TimerebaseReport (Report ):
124+ report_id = TIMEREBASE_REPORT_ID
125+ length = TIMEREBASE_REPORT_LEN
126+ report_type = 'trebase'
127+
128+ delta : int
129+
130+ def __init__ (self ):
131+ self .delta = 0
132+ super ().__init__ ()
133+
120134
121135class SH2Hla (HighLevelAnalyzer ):
122136 result_types = {
@@ -126,6 +140,9 @@ class SH2Hla(HighLevelAnalyzer):
126140 'tbase' : {
127141 'format' : 'timebase delta = {{data.delta}}' ,
128142 },
143+ 'trebase' : {
144+ 'format' : 'timerebase delta = {{data.delta}}' ,
145+ },
129146 'accel' : {
130147 'format' : 'linaccel [x,y,z] = [{{data.x}} {{data.y}} {{data.z}}]' ,
131148 },
@@ -151,6 +168,8 @@ def execute_parser_step(self, new_data, start_time, end_time):
151168 self .current_report = RotVReport ()
152169 elif new_data == TIMEBASE_REPORT_ID :
153170 self .current_report = TimebaseReport ()
171+ elif new_data == TIMEREBASE_REPORT_ID :
172+ self .current_report = TimebaseReport ()
154173 else :
155174 return False
156175
@@ -182,7 +201,7 @@ def parse_sh2(self, frame: AnalyzerFrame, p):
182201 data ['roll' ] = self .current_report .roll
183202 data ['pitch' ] = self .current_report .pitch
184203 data ['yaw' ] = self .current_report .yaw
185- elif self .current_report .report_type == 'tbase' :
204+ elif self .current_report .report_type == 'tbase' or self . current_report == 'trebase' :
186205 data ['delta' ] = self .current_report .delta
187206
188207 print (data )
0 commit comments