diff --git a/aosstower/level_00/parser.py b/aosstower/level_00/parser.py
index 026a4004fd42edfacb992c26212a83e581ce537f..8fc432b124d4f9b0b263cbbccf0b2c3ee56930ea 100644
--- a/aosstower/level_00/parser.py
+++ b/aosstower/level_00/parser.py
@@ -159,9 +159,9 @@ class ParserV1V2(object):
 
     def make_frame(self, line):
         parts = line.split(',')
-        if len(parts) not in [28, 29]:
-            raise LineParseError("Expected 28 or 29 parts", line)
-        version = 1 if len(parts) == 28 else 2
+        if len(parts) not in [28, 29, 33]:
+            raise LineParseError("Expected 28, 29, or 33 parts", line)
+        version = {28: 1, 29: 2, 33: 3}[len(parts)]
         raw_data = [('version', version)] + list(zip(self.names, parts))
         try:
             raw_data.append(('stamp', self._get_stamp(parts)))