rtk_status.py
Go to the documentation of this file.
1 from .utils.widgets import MicrostrainWidget, MicrostrainPlugin
2 from .utils.subscribers import RTKMonitor
3 
4 _WIDGET_NAME = 'RTKStatus'
5 
7 
8  def __init__(self, node):
9  # Initialize the parent class
10  super(RTKStatusWidget, self).__init__(node, _WIDGET_NAME)
11 
12  def _configure(self):
13  # Set up the subscriber status monitors
14  self._rtk_status_monitor = RTKMonitor(self._node, self._node_name, "rtk/status")
15 
16  # Hide the warning label
17  self.rtk_not_available_label.hide()
18 
19  def run(self):
20  # If the device is connected and not a GQ7, display a warning
21  if self._device_report_monitor.connected and not self._device_report_monitor.is_gq7:
22  self.rtk_widget.hide()
23  self.rtk_not_available_label.setText('RTK status only available for GQ7 devices. Not available for device %s' % self._device_report_monitor.model_name_string)
24  self.rtk_not_available_label.show()
25  return
26  else:
27  self.rtk_not_available_label.hide()
28  self.rtk_widget.show()
29 
30  # Update device specific data
31  self._update_rtk_data_v2()
32 
34  # V2 Status Flags
35  self.rtk_status_flags_modem_state_label.setText(self._rtk_status_monitor.modem_state_string)
36  self.rtk_status_flags_connection_type_label.setText(self._rtk_status_monitor.connection_type_string)
37  self.rtk_status_flags_rssi_label.setText(self._rtk_status_monitor.rssi_string)
38  self.rtk_status_flags_tower_change_indicator_label.setText(self._rtk_status_monitor.tower_change_indicator_string)
39  self.rtk_status_flags_nmea_timeout_label.setText(self._rtk_status_monitor.nmea_timeout_string)
40  self.rtk_status_flags_server_timeout_label.setText(self._rtk_status_monitor.server_timeout_string)
41  self.rtk_status_flags_rtcm_timeout_label.setText(self._rtk_status_monitor.rtcm_timeout_string)
42  self.rtk_status_flags_out_of_range_label.setText(self._rtk_status_monitor.out_of_range_string)
43  self.rtk_status_flags_corrections_unavailable_label.setText(self._rtk_status_monitor.corrections_unavailable_string)
44 
45  # V1 Modem state icon label
46  self.rtk_led_status_label.setText(self._rtk_status_monitor.modem_state_string)
47 
48  # Update common flags
50 
51  # TODO: Merge into one function
52  def _update_rtk_data(self, rtk_monitor):
53  # Epoch Status flags
54  self.rtk_corrections_received_gps_label.setText(rtk_monitor.gps_received_string)
55  self.rtk_corrections_received_glonass_label.setText(rtk_monitor.glonass_received_string)
56  self.rtk_corrections_received_galileo_label.setText(rtk_monitor.galileo_received_string)
57  self.rtk_corrections_received_beidou_label.setText(rtk_monitor.beidou_received_string)
58 
59  # Icon and label
60  self.rtk_led_icon_label.setText(rtk_monitor.rtk_led_string)
61 
62  # Other flags
63  self.rtk_raw_status_flag_label.setText(rtk_monitor.raw_status_flags_string)
64  self.rtk_status_flags_signal_quality_label.setText(rtk_monitor.signal_quality_string)
65 
67 
68  def __init__(self, context):
69  # Initialize the parent class
70  super(RTKStatusPlugin, self).__init__(context, _WIDGET_NAME, RTKStatusWidget)
microstrain_inertial_rqt.rtk_status.RTKStatusWidget.__init__
def __init__(self, node)
Definition: rtk_status.py:8
microstrain_inertial_rqt.utils.widgets.MicrostrainWidget._device_report_monitor
_device_report_monitor
Definition: widgets.py:31
microstrain_inertial_rqt.utils.subscribers.RTKMonitor
Definition: subscribers.py:538
microstrain_inertial_rqt.rtk_status.RTKStatusWidget._update_rtk_data_v2
def _update_rtk_data_v2(self)
Definition: rtk_status.py:33
microstrain_inertial_rqt.utils.widgets.MicrostrainWidget._node_name
_node_name
Definition: widgets.py:28
microstrain_inertial_rqt.utils.widgets.MicrostrainWidget._node
_node
Definition: widgets.py:25
microstrain_inertial_rqt.rtk_status.RTKStatusPlugin
Definition: rtk_status.py:66
microstrain_inertial_rqt.rtk_status.RTKStatusWidget._update_rtk_data
def _update_rtk_data(self, rtk_monitor)
Definition: rtk_status.py:52
microstrain_inertial_rqt.rtk_status.RTKStatusWidget._rtk_status_monitor
_rtk_status_monitor
Definition: rtk_status.py:14
microstrain_inertial_rqt.rtk_status.RTKStatusWidget.run
def run(self)
Definition: rtk_status.py:19
microstrain_inertial_rqt.rtk_status.RTKStatusPlugin.__init__
def __init__(self, context)
Definition: rtk_status.py:68
microstrain_inertial_rqt.utils.widgets.MicrostrainWidget
Definition: widgets.py:11
microstrain_inertial_rqt.rtk_status.RTKStatusWidget._configure
def _configure(self)
Definition: rtk_status.py:12
microstrain_inertial_rqt.utils.widgets.MicrostrainPlugin
Definition: widgets.py:80
microstrain_inertial_rqt.rtk_status.RTKStatusWidget
Definition: rtk_status.py:6


microstrain_inertial_rqt
Author(s): Parker Hannifin Corp
autogenerated on Fri Apr 18 2025 02:52:41