diff --git a/ui_automator/ui_automator.py b/ui_automator/ui_automator.py
index 663e6b7..953d659 100644
--- a/ui_automator/ui_automator.py
+++ b/ui_automator/ui_automator.py
@@ -98,6 +98,15 @@
         ' regression test report. e.g. `--hub 10.1.3`.'
     ),
 )
+_DEVICE_FIRMWARE_KEY = 'device_firmware'
+_DEVICE_FIRMWARE = flags.DEFINE_string(
+    name='fw',
+    default=None,
+    help=(
+        'Use --fw {DeviceFirmware} to include this field in regression test'
+        ' report. e.g. `--fw 10.20.12`.'
+    ),
+)
 
 
 class RegTestSuiteType(enum.Enum):
@@ -421,6 +430,9 @@
     if _HUB.value:
       temp_info[_HUB_VERSION_KEY] = _HUB.value
 
+    if _DEVICE_FIRMWARE.value:
+      temp_info[_DEVICE_FIRMWARE_KEY] = _DEVICE_FIRMWARE.value
+
     report_info: test_reporter.ReportInfo = {**temp_info}
 
     return report_info
diff --git a/ui_automator/ui_automator_test.py b/ui_automator/ui_automator_test.py
index 661bd67..da990fd 100644
--- a/ui_automator/ui_automator_test.py
+++ b/ui_automator/ui_automator_test.py
@@ -1040,6 +1040,8 @@
         'gha_version': '0.0.0',
         'gms_core_version': '0.0.1',
         'hub_version': '10.1.3',
+        'dut': 'm5stack',
+        'device_firmware': '10.20.12',
     }
     mock_get_report_info.return_value = fake_report_info
     mock_get_all_instances.return_value = [self.mock_android_device]
@@ -1091,5 +1093,20 @@
 
     self.assertDictEqual(report_info, {})
 
+  @flagsaver.flagsaver((ui_automator._DEVICE_FIRMWARE, '10.20.12'))
+  def test_get_report_info_includes_device_firmware_from_flag_input(self):
+    report_info = self.ui_automator.get_report_info()
+
+    self.assertEqual(len(report_info), 1)
+    self.assertEqual(report_info.get('device_firmware'), '10.20.12')
+
+  @flagsaver.flagsaver((ui_automator._DEVICE_FIRMWARE, None))
+  def test_get_report_info_returns_empty_dict_without_device_firmware_flag(
+      self,
+  ):
+    report_info = self.ui_automator.get_report_info()
+
+    self.assertDictEqual(report_info, {})
+
 if __name__ == '__main__':
   unittest.main()
