{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "d9f35471",
   "metadata": {},
   "outputs": [],
   "source": [
    "import sys, time\n",
    "import numpy as np\n",
    "sys.path.append('/hosthome/tango/devices')\n",
    "from toolkit.archiver import *\n",
    "from matplotlib import pyplot as plt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "5817986f",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Attribute lts/recv/1/version_r not found in archiving list!\n",
      "Attribute lts/recv/1/opcua_missing_attributes_r not found in archiving list!\n",
      "Attribute lts/recv/1/ant_mask_rw removed!\n",
      "Attribute lts/recv/1/ant_status_r not found in archiving list!\n",
      "Attribute lts/recv/1/clk_enable_pwr_r removed!\n",
      "Attribute lts/recv/1/clk_i2c_status_r removed!\n",
      "Attribute lts/recv/1/clk_pll_error_r removed!\n",
      "Attribute lts/recv/1/clk_pll_locked_r removed!\n",
      "Attribute lts/recv/1/clk_monitor_rate_rw removed!\n",
      "Attribute lts/recv/1/clk_translator_busy_r removed!\n",
      "Attribute lts/recv/1/hba_element_beamformer_delays_r removed!\n",
      "Attribute lts/recv/1/hba_element_beamformer_delays_rw removed!\n",
      "Attribute lts/recv/1/hba_element_led_r removed!\n",
      "Attribute lts/recv/1/hba_element_led_rw removed!\n",
      "Attribute lts/recv/1/hba_element_lna_pwr_r removed!\n",
      "Attribute lts/recv/1/hba_element_lna_pwr_rw removed!\n",
      "Attribute lts/recv/1/hba_element_pwr_r removed!\n",
      "Attribute lts/recv/1/hba_element_pwr_rw removed!\n",
      "Attribute lts/recv/1/rcu_adc_lock_r removed!\n",
      "Attribute lts/recv/1/rcu_attenuator_r removed!\n",
      "Attribute lts/recv/1/rcu_attenuator_rw removed!\n",
      "Attribute lts/recv/1/rcu_band_r removed!\n",
      "Attribute lts/recv/1/rcu_band_rw removed!\n",
      "Attribute lts/recv/1/rcu_i2c_status_r removed!\n",
      "Attribute lts/recv/1/rcu_id_r removed!\n",
      "Attribute lts/recv/1/rcu_led0_r removed!\n",
      "Attribute lts/recv/1/rcu_led0_rw removed!\n",
      "Attribute lts/recv/1/rcu_led1_r removed!\n",
      "Attribute lts/recv/1/rcu_led1_rw removed!\n",
      "Attribute lts/recv/1/rcu_mask_rw removed!\n",
      "Attribute lts/recv/1/rcu_monitor_rate_rw removed!\n",
      "Attribute lts/recv/1/rcu_pwr_dig_r removed!\n",
      "Attribute lts/recv/1/rcu_translator_busy_r removed!\n",
      "Attribute lts/recv/1/rcu_version_r removed!\n",
      "Attribute lts/recv/1/state removed!\n",
      "Attribute lts/recv/1/status removed!\n",
      "Attribute lts/recv/1/rcu_temperature_r already in archiving list!\n",
      "Attribute lts/sdp/1/version_r not found in archiving list!\n",
      "Attribute lts/sdp/1/opcua_missing_attributes_r not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_wg_amplitude_rw not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_wg_frequency_rw not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_wg_phase_rw not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_beamlet_output_enable_r not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_beamlet_output_enable_rw not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_beamlet_output_hdr_eth_destination_mac_r not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_beamlet_output_hdr_eth_destination_mac_rw not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_beamlet_output_hdr_ip_destination_address_r not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_beamlet_output_hdr_ip_destination_address_rw not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_beamlet_output_hdr_udp_destination_port_r not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_beamlet_output_hdr_udp_destination_port_rw not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_beamlet_output_scale_r not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_beamlet_output_scale_rw not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_firmware_version_r not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_global_node_index_r not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_hardware_version_r not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_processing_enable_r not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_processing_enable_rw not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_scrap_r removed!\n",
      "Attribute lts/sdp/1/fpga_scrap_rw removed!\n",
      "Attribute lts/sdp/1/fpga_signal_input_mean_r not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_signal_input_rms_r not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_sdp_info_antenna_band_index_r not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_sdp_info_block_period_r not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_sdp_info_f_adc_r not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_sdp_info_fsub_type_r not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_sdp_info_nyquist_sampling_zone_index_r not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_sdp_info_nyquist_sampling_zone_index_rw not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_sdp_info_observation_id_r not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_sdp_info_observation_id_rw not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_sdp_info_station_id_r not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_sdp_info_station_id_rw not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_subband_weights_r not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_subband_weights_rw not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_temp_r removed!\n",
      "Attribute lts/sdp/1/fpga_weights_r removed!\n",
      "Attribute lts/sdp/1/fpga_weights_rw removed!\n",
      "Attribute lts/sdp/1/fpga_wg_amplitude_r not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_wg_enable_r not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_wg_enable_rw not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_wg_frequency_r not found in archiving list!\n",
      "Attribute lts/sdp/1/fpga_wg_phase_r not found in archiving list!\n",
      "Attribute lts/sdp/1/tr_fpga_mask_r not found in archiving list!\n",
      "Attribute lts/sdp/1/tr_fpga_mask_rw not found in archiving list!\n",
      "Attribute lts/sdp/1/tr_fpga_communication_error_r not found in archiving list!\n",
      "Attribute lts/sdp/1/tr_sdp_config_first_fpga_nr_r not found in archiving list!\n",
      "Attribute lts/sdp/1/tr_sdp_config_nof_beamsets_r not found in archiving list!\n",
      "Attribute lts/sdp/1/tr_sdp_config_nof_fpgas_r not found in archiving list!\n",
      "Attribute lts/sdp/1/tr_software_version_r not found in archiving list!\n",
      "Attribute lts/sdp/1/tr_start_time_r not found in archiving list!\n",
      "Attribute lts/sdp/1/tr_tod_r removed!\n",
      "Attribute lts/sdp/1/tr_tod_pps_delta_r not found in archiving list!\n",
      "Attribute lts/sdp/1/state not found in archiving list!\n",
      "Attribute lts/sdp/1/status not found in archiving list!\n",
      "Device LTS/SST/1 offline\n",
      "Device LTS/XST/1 offline\n",
      "Device LTS/UNB2/1 offline\n"
     ]
    }
   ],
   "source": [
    "# Apply the chosen JSON configuration file in directory toolkit/archiver_config/\n",
    "archiver = Archiver(selector_filename='lofar2.json')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "848dc5e7",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "lofar2.json\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "{'global_variables': {'development_polling_time': '10000',\n",
       "  'development_archive_time': '60000'},\n",
       " 'devices': {'LTS/RECV/1': {'environment': 'development',\n",
       "   'include': ['rcu_temperature_r'],\n",
       "   'exclude': ['CLK_Enable_PWR_R',\n",
       "    'CLK_I2C_STATUS_R',\n",
       "    'CLK_PLL_error_R',\n",
       "    'CLK_PLL_locked_R',\n",
       "    'CLK_translator_busy_R']},\n",
       "  'LTS/SDP/1': {'environment': 'development', 'include': [], 'exclude': []},\n",
       "  'LTS/SST/1': {'environment': 'development', 'include': [], 'exclude': []},\n",
       "  'LTS/XST/1': {'environment': 'development', 'include': [], 'exclude': []},\n",
       "  'LTS/UNB2/1': {'environment': 'development', 'include': [], 'exclude': []}}}"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Print the configuration file (as a dictionary)\n",
    "selector = archiver.selector\n",
    "print(selector.filename)\n",
    "env_dict = selector.get_dict()\n",
    "env_dict"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "a81e8b3b",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "OFF\n"
     ]
    }
   ],
   "source": [
    "device_name = 'LTS/RECV/1'\n",
    "d=DeviceProxy(device_name) \n",
    "state = str(d.state())\n",
    "print(state)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "f5394d09",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Attribute lts/recv/1/version_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/recv/1/opcua_missing_attributes_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/recv/1/ant_status_r will not be archived because polling is set to FALSE!\n"
     ]
    }
   ],
   "source": [
    "# Add RECV attributes to perform load test\n",
    "archiver.add_attributes_by_device(device_name,global_archive_period=5000)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "ba3a25ac",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'tango://databaseds:10000/lts/recv/1/rcu_temperature_r': 'Read value for attribute RCU_temperature_R has not been updated'}"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Print the errors for each attribute\n",
    "# If the device is in OFF state, all its attributes should be in error (normal behaviour)\n",
    "err_dict = archiver.get_subscriber_errors()\n",
    "err_dict"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "b4de92a0",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Device is now in ON state\n"
     ]
    }
   ],
   "source": [
    "# Start the device\n",
    "if state == \"OFF\":\n",
    "    time.sleep(1)\n",
    "    d.initialise()\n",
    "    time.sleep(1)\n",
    "state = str(d.state())\n",
    "if state == \"STANDBY\":\n",
    "    d.on()\n",
    "state = str(d.state())\n",
    "if state == \"ON\":\n",
    "    d.set_defaults()\n",
    "    print(\"Device is now in ON state\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "5d40b87c",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "('tango://databaseds:10000/lts/recv/1/rcu_temperature_r',\n",
       " 'tango://databaseds:10000/lts/recv/1/ant_mask_rw',\n",
       " 'tango://databaseds:10000/lts/recv/1/clk_enable_pwr_r',\n",
       " 'tango://databaseds:10000/lts/recv/1/clk_i2c_status_r',\n",
       " 'tango://databaseds:10000/lts/recv/1/clk_pll_error_r',\n",
       " 'tango://databaseds:10000/lts/recv/1/clk_pll_locked_r',\n",
       " 'tango://databaseds:10000/lts/recv/1/clk_monitor_rate_rw',\n",
       " 'tango://databaseds:10000/lts/recv/1/clk_translator_busy_r',\n",
       " 'tango://databaseds:10000/lts/recv/1/hba_element_beamformer_delays_r',\n",
       " 'tango://databaseds:10000/lts/recv/1/hba_element_beamformer_delays_rw',\n",
       " 'tango://databaseds:10000/lts/recv/1/hba_element_led_r',\n",
       " 'tango://databaseds:10000/lts/recv/1/hba_element_led_rw',\n",
       " 'tango://databaseds:10000/lts/recv/1/hba_element_lna_pwr_r',\n",
       " 'tango://databaseds:10000/lts/recv/1/hba_element_lna_pwr_rw',\n",
       " 'tango://databaseds:10000/lts/recv/1/hba_element_pwr_r',\n",
       " 'tango://databaseds:10000/lts/recv/1/hba_element_pwr_rw',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_adc_lock_r',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_attenuator_r',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_attenuator_rw',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_band_r',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_band_rw',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_i2c_status_r',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_id_r',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_led0_r',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_led0_rw',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_led1_r',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_led1_rw',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_mask_rw',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_monitor_rate_rw',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_pwr_dig_r',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_translator_busy_r',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_version_r',\n",
       " 'tango://databaseds:10000/lts/recv/1/state',\n",
       " 'tango://databaseds:10000/lts/recv/1/status')"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Print the attributes currently managed by the event subscriber\n",
    "attrs = archiver.get_subscriber_attributes()\n",
    "attrs"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "678879e3",
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'tango://databaseds:10000/lts/recv/1/rcu_temperature_r': 'Read value for attribute RCU_temperature_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/ant_mask_rw': 'Read value for attribute Ant_mask_RW has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/clk_enable_pwr_r': 'Read value for attribute CLK_Enable_PWR_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/clk_i2c_status_r': 'Read value for attribute CLK_I2C_STATUS_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/clk_pll_error_r': 'Read value for attribute CLK_PLL_error_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/clk_pll_locked_r': 'Read value for attribute CLK_PLL_locked_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/clk_monitor_rate_rw': 'Read value for attribute CLK_monitor_rate_RW has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/clk_translator_busy_r': 'Read value for attribute CLK_translator_busy_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/hba_element_beamformer_delays_r': 'Read value for attribute HBA_element_beamformer_delays_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/hba_element_beamformer_delays_rw': 'Read value for attribute HBA_element_beamformer_delays_RW has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/hba_element_led_r': 'Read value for attribute HBA_element_led_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/hba_element_led_rw': 'Read value for attribute HBA_element_led_RW has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/hba_element_lna_pwr_r': 'Read value for attribute HBA_element_LNA_pwr_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/hba_element_lna_pwr_rw': 'Read value for attribute HBA_element_LNA_pwr_RW has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/hba_element_pwr_r': 'Read value for attribute HBA_element_pwr_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/hba_element_pwr_rw': 'Read value for attribute HBA_element_pwr_RW has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_adc_lock_r': 'Read value for attribute RCU_ADC_lock_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_attenuator_r': 'Read value for attribute RCU_attenuator_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_attenuator_rw': 'Read value for attribute RCU_attenuator_RW has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_band_r': 'Read value for attribute RCU_band_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_band_rw': 'Read value for attribute RCU_band_RW has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_i2c_status_r': 'Read value for attribute RCU_I2C_STATUS_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_id_r': 'Read value for attribute RCU_ID_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_led0_r': 'Read value for attribute RCU_LED0_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_led0_rw': 'Read value for attribute RCU_LED0_RW has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_led1_r': 'Read value for attribute RCU_LED1_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_led1_rw': 'Read value for attribute RCU_LED1_RW has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_mask_rw': 'Read value for attribute RCU_mask_RW has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_monitor_rate_rw': 'Read value for attribute RCU_monitor_rate_RW has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_pwr_dig_r': 'Read value for attribute RCU_Pwr_dig_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_translator_busy_r': 'Read value for attribute RCU_translator_busy_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_version_r': 'Read value for attribute RCU_version_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/status': 'Storing Error: mysql_stmt_bind_param() failed, err=Buffer type is not supported'}"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Print the errors for each attribute\n",
    "err_dict = archiver.get_subscriber_errors()\n",
    "err_dict"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "d3904658",
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Attribute                                     Poll Period     Archive Period \n",
      "----------\n",
      "LTS/RECV/1/rcu_temperature_r                  10000           60000          \n",
      "LTS/RECV/1/ant_mask_rw                        1000            5000           \n",
      "LTS/RECV/1/clk_enable_pwr_r                   1000            5000           \n",
      "LTS/RECV/1/clk_i2c_status_r                   1000            5000           \n",
      "LTS/RECV/1/clk_pll_error_r                    1000            5000           \n",
      "LTS/RECV/1/clk_pll_locked_r                   1000            5000           \n",
      "LTS/RECV/1/clk_monitor_rate_rw                1000            5000           \n",
      "LTS/RECV/1/clk_translator_busy_r              1000            5000           \n",
      "LTS/RECV/1/hba_element_beamformer_delays_r    1000            5000           \n",
      "LTS/RECV/1/hba_element_beamformer_delays_rw   1000            5000           \n",
      "LTS/RECV/1/hba_element_led_r                  1000            5000           \n",
      "LTS/RECV/1/hba_element_led_rw                 1000            5000           \n",
      "LTS/RECV/1/hba_element_lna_pwr_r              1000            5000           \n",
      "LTS/RECV/1/hba_element_lna_pwr_rw             1000            5000           \n",
      "LTS/RECV/1/hba_element_pwr_r                  1000            5000           \n",
      "LTS/RECV/1/hba_element_pwr_rw                 1000            5000           \n",
      "LTS/RECV/1/rcu_adc_lock_r                     1000            5000           \n",
      "LTS/RECV/1/rcu_attenuator_r                   1000            5000           \n",
      "LTS/RECV/1/rcu_attenuator_rw                  1000            5000           \n",
      "LTS/RECV/1/rcu_band_r                         1000            5000           \n",
      "LTS/RECV/1/rcu_band_rw                        1000            5000           \n",
      "LTS/RECV/1/rcu_i2c_status_r                   1000            5000           \n",
      "LTS/RECV/1/rcu_id_r                           1000            5000           \n",
      "LTS/RECV/1/rcu_led0_r                         1000            5000           \n",
      "LTS/RECV/1/rcu_led0_rw                        1000            5000           \n",
      "LTS/RECV/1/rcu_led1_r                         1000            5000           \n",
      "LTS/RECV/1/rcu_led1_rw                        1000            5000           \n",
      "LTS/RECV/1/rcu_mask_rw                        1000            5000           \n",
      "LTS/RECV/1/rcu_monitor_rate_rw                1000            5000           \n",
      "LTS/RECV/1/rcu_pwr_dig_r                      1000            5000           \n",
      "LTS/RECV/1/rcu_translator_busy_r              1000            5000           \n",
      "LTS/RECV/1/rcu_version_r                      1000            5000           \n",
      "LTS/RECV/1/state                              1000            5000           \n",
      "LTS/RECV/1/status                             1000            5000           \n"
     ]
    }
   ],
   "source": [
    "# Print the attribute periods\n",
    "def print_periods(attrs):\n",
    "    print(\"{:<45} {:<15} {:<15}\".format('Attribute','Poll Period','Archive Period'))\n",
    "    print(\"----------\")\n",
    "    for a in attrs:\n",
    "        ap = AttributeProxy(a)\n",
    "        att_fqname = ap.get_device_proxy().name()+'/'+ap.name()\n",
    "        print(\"{:<45} {:<15} {:<15}\".format(att_fqname,ap.get_poll_period(),ap.get_property('archive_period')['archive_period'][0],sep='\\t'))\n",
    "\n",
    "attrs = archiver.get_subscriber_attributes()\n",
    "print_periods(attrs)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "id": "27ef5564",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'133.0 events/period'"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Print the current event subscriber archive frequency (number of total archive events per minute)\n",
    "# Be aware that these statistics need some time (even minutes) since the device initialization to be reliable\n",
    "archiver.get_subscriber_load()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "id": "241b5282",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Attribute                                     Record Freq     Failure Freq   \n",
      "----------\n",
      "LTS/RECV/1/rcu_temperature_r                  0.0             1.0            \n",
      "LTS/RECV/1/ant_mask_rw                        10.0            3.0            \n",
      "LTS/RECV/1/clk_enable_pwr_r                   0.0             12.0           \n",
      "LTS/RECV/1/clk_i2c_status_r                   0.0             12.0           \n",
      "LTS/RECV/1/clk_pll_error_r                    0.0             12.0           \n",
      "LTS/RECV/1/clk_pll_locked_r                   0.0             12.0           \n",
      "LTS/RECV/1/clk_monitor_rate_rw                10.0            3.0            \n",
      "LTS/RECV/1/clk_translator_busy_r              0.0             12.0           \n",
      "LTS/RECV/1/hba_element_beamformer_delays_r    0.0             12.0           \n",
      "LTS/RECV/1/hba_element_beamformer_delays_rw   10.0            3.0            \n",
      "LTS/RECV/1/hba_element_led_r                  0.0             12.0           \n",
      "LTS/RECV/1/hba_element_led_rw                 10.0            3.0            \n",
      "LTS/RECV/1/hba_element_lna_pwr_r              0.0             12.0           \n",
      "LTS/RECV/1/hba_element_lna_pwr_rw             10.0            3.0            \n",
      "LTS/RECV/1/hba_element_pwr_r                  0.0             12.0           \n",
      "LTS/RECV/1/hba_element_pwr_rw                 10.0            3.0            \n",
      "LTS/RECV/1/rcu_adc_lock_r                     0.0             12.0           \n",
      "LTS/RECV/1/rcu_attenuator_r                   0.0             12.0           \n",
      "LTS/RECV/1/rcu_attenuator_rw                  10.0            3.0            \n",
      "LTS/RECV/1/rcu_band_r                         0.0             12.0           \n",
      "LTS/RECV/1/rcu_band_rw                        10.0            3.0            \n",
      "LTS/RECV/1/rcu_i2c_status_r                   0.0             12.0           \n",
      "LTS/RECV/1/rcu_id_r                           0.0             12.0           \n",
      "LTS/RECV/1/rcu_led0_r                         10.0            3.0            \n",
      "LTS/RECV/1/rcu_led0_rw                        0.0             12.0           \n",
      "LTS/RECV/1/rcu_led1_r                         10.0            3.0            \n",
      "LTS/RECV/1/rcu_led1_rw                        10.0            3.0            \n",
      "LTS/RECV/1/rcu_mask_rw                        10.0            3.0            \n",
      "LTS/RECV/1/rcu_monitor_rate_rw                0.0             12.0           \n",
      "LTS/RECV/1/rcu_pwr_dig_r                      0.0             12.0           \n",
      "LTS/RECV/1/rcu_translator_busy_r              0.0             12.0           \n",
      "LTS/RECV/1/rcu_version_r                      13.0            0.0            \n",
      "LTS/RECV/1/state                              0.0             13.0           \n",
      "LTS/RECV/1/status                             0.0             6.0            \n"
     ]
    }
   ],
   "source": [
    "# Print the current attribute archive frequency (number of events per minute)\n",
    "# E.G. if an attribute is supposed to be archived every 10s, its frequency value should be 6\n",
    "def print_freq(attrs):\n",
    "    print(\"{:<45} {:<15} {:<15}\".format('Attribute','Record Freq','Failure Freq'))\n",
    "    print(\"----------\")\n",
    "    for a in attrs:\n",
    "        ap = AttributeProxy(a)\n",
    "        att_fqname = ap.get_device_proxy().name()+'/'+ap.name()\n",
    "        print(\"{:<45} {:<15} {:<15}\".format(att_fqname,archiver.get_attribute_freq(att_fqname),archiver.get_attribute_failures(att_fqname)))\n",
    "\n",
    "attrs = archiver.get_subscriber_attributes()\n",
    "print_freq(attrs)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "25446390",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Attribute LTS/RECV/1/rcu_id_r removed!\n"
     ]
    }
   ],
   "source": [
    "# Update the archive time of an attribute\n",
    "archiver.update_archiving_attribute('LTS/RECV/1/rcu_id_r',polling_period=1000,event_period=10000)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "id": "9cc4f883",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Attribute                                     Poll Period     Archive Period \n",
      "----------\n",
      "LTS/RECV/1/rcu_temperature_r                  10000           60000          \n",
      "LTS/RECV/1/ant_mask_rw                        1000            5000           \n",
      "LTS/RECV/1/clk_enable_pwr_r                   1000            5000           \n",
      "LTS/RECV/1/clk_i2c_status_r                   1000            5000           \n",
      "LTS/RECV/1/clk_pll_error_r                    1000            5000           \n",
      "LTS/RECV/1/clk_pll_locked_r                   1000            5000           \n",
      "LTS/RECV/1/clk_monitor_rate_rw                1000            5000           \n",
      "LTS/RECV/1/clk_translator_busy_r              1000            5000           \n",
      "LTS/RECV/1/hba_element_beamformer_delays_r    1000            5000           \n",
      "LTS/RECV/1/hba_element_beamformer_delays_rw   1000            5000           \n",
      "LTS/RECV/1/hba_element_led_r                  1000            5000           \n",
      "LTS/RECV/1/hba_element_led_rw                 1000            5000           \n",
      "LTS/RECV/1/hba_element_lna_pwr_r              1000            5000           \n",
      "LTS/RECV/1/hba_element_lna_pwr_rw             1000            5000           \n",
      "LTS/RECV/1/hba_element_pwr_r                  1000            5000           \n",
      "LTS/RECV/1/hba_element_pwr_rw                 1000            5000           \n",
      "LTS/RECV/1/rcu_adc_lock_r                     1000            5000           \n",
      "LTS/RECV/1/rcu_attenuator_r                   1000            5000           \n",
      "LTS/RECV/1/rcu_attenuator_rw                  1000            5000           \n",
      "LTS/RECV/1/rcu_band_r                         1000            5000           \n",
      "LTS/RECV/1/rcu_band_rw                        1000            5000           \n",
      "LTS/RECV/1/rcu_i2c_status_r                   1000            5000           \n",
      "LTS/RECV/1/rcu_led0_r                         1000            5000           \n",
      "LTS/RECV/1/rcu_led0_rw                        1000            5000           \n",
      "LTS/RECV/1/rcu_led1_r                         1000            5000           \n",
      "LTS/RECV/1/rcu_led1_rw                        1000            5000           \n",
      "LTS/RECV/1/rcu_mask_rw                        1000            5000           \n",
      "LTS/RECV/1/rcu_monitor_rate_rw                1000            5000           \n",
      "LTS/RECV/1/rcu_pwr_dig_r                      1000            5000           \n",
      "LTS/RECV/1/rcu_translator_busy_r              1000            5000           \n",
      "LTS/RECV/1/rcu_version_r                      1000            5000           \n",
      "LTS/RECV/1/state                              1000            5000           \n",
      "LTS/RECV/1/status                             1000            5000           \n",
      "LTS/RECV/1/rcu_id_r                           1000            10000          \n",
      "\n",
      "Attribute                                     Record Freq     Failure Freq   \n",
      "----------\n",
      "LTS/RECV/1/rcu_temperature_r                  0.0             1.0            \n",
      "LTS/RECV/1/ant_mask_rw                        10.0            3.0            \n",
      "LTS/RECV/1/clk_enable_pwr_r                   0.0             12.0           \n",
      "LTS/RECV/1/clk_i2c_status_r                   0.0             12.0           \n",
      "LTS/RECV/1/clk_pll_error_r                    0.0             12.0           \n",
      "LTS/RECV/1/clk_pll_locked_r                   0.0             12.0           \n",
      "LTS/RECV/1/clk_monitor_rate_rw                10.0            3.0            \n",
      "LTS/RECV/1/clk_translator_busy_r              0.0             12.0           \n",
      "LTS/RECV/1/hba_element_beamformer_delays_r    0.0             12.0           \n",
      "LTS/RECV/1/hba_element_beamformer_delays_rw   10.0            3.0            \n",
      "LTS/RECV/1/hba_element_led_r                  0.0             12.0           \n",
      "LTS/RECV/1/hba_element_led_rw                 10.0            3.0            \n",
      "LTS/RECV/1/hba_element_lna_pwr_r              0.0             12.0           \n",
      "LTS/RECV/1/hba_element_lna_pwr_rw             10.0            3.0            \n",
      "LTS/RECV/1/hba_element_pwr_r                  0.0             12.0           \n",
      "LTS/RECV/1/hba_element_pwr_rw                 10.0            3.0            \n",
      "LTS/RECV/1/rcu_adc_lock_r                     0.0             12.0           \n",
      "LTS/RECV/1/rcu_attenuator_r                   0.0             12.0           \n",
      "LTS/RECV/1/rcu_attenuator_rw                  10.0            3.0            \n",
      "LTS/RECV/1/rcu_band_r                         0.0             12.0           \n",
      "LTS/RECV/1/rcu_band_rw                        10.0            3.0            \n",
      "LTS/RECV/1/rcu_i2c_status_r                   0.0             12.0           \n",
      "LTS/RECV/1/rcu_led0_r                         0.0             12.0           \n",
      "LTS/RECV/1/rcu_led0_rw                        10.0            3.0            \n",
      "LTS/RECV/1/rcu_led1_r                         0.0             12.0           \n",
      "LTS/RECV/1/rcu_led1_rw                        10.0            3.0            \n",
      "LTS/RECV/1/rcu_mask_rw                        10.0            3.0            \n",
      "LTS/RECV/1/rcu_monitor_rate_rw                10.0            3.0            \n",
      "LTS/RECV/1/rcu_pwr_dig_r                      0.0             12.0           \n",
      "LTS/RECV/1/rcu_translator_busy_r              0.0             12.0           \n",
      "LTS/RECV/1/rcu_version_r                      0.0             12.0           \n",
      "LTS/RECV/1/state                              13.0            0.0            \n",
      "LTS/RECV/1/status                             0.0             13.0           \n",
      "LTS/RECV/1/rcu_id_r                           0.0             6.0            \n"
     ]
    }
   ],
   "source": [
    "attrs = archiver.get_subscriber_attributes()\n",
    "print_periods(attrs)\n",
    "print()\n",
    "print_freq(attrs)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "id": "c3415c09",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Attribute lts/sdp/1/version_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/opcua_missing_attributes_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_wg_amplitude_rw will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_wg_frequency_rw will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_wg_phase_rw will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_beamlet_output_enable_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_beamlet_output_enable_rw will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_beamlet_output_hdr_eth_destination_mac_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_beamlet_output_hdr_eth_destination_mac_rw will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_beamlet_output_hdr_ip_destination_address_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_beamlet_output_hdr_ip_destination_address_rw will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_beamlet_output_hdr_udp_destination_port_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_beamlet_output_hdr_udp_destination_port_rw will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_beamlet_output_scale_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_beamlet_output_scale_rw will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_firmware_version_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_global_node_index_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_hardware_version_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_processing_enable_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_processing_enable_rw will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_signal_input_mean_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_signal_input_rms_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_sdp_info_antenna_band_index_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_sdp_info_block_period_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_sdp_info_f_adc_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_sdp_info_fsub_type_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_sdp_info_nyquist_sampling_zone_index_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_sdp_info_nyquist_sampling_zone_index_rw will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_sdp_info_observation_id_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_sdp_info_observation_id_rw will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_sdp_info_station_id_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_sdp_info_station_id_rw will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_subband_weights_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_subband_weights_rw will not be archived because polling is set to FALSE!\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "OFF\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Attribute lts/sdp/1/fpga_wg_amplitude_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_wg_enable_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_wg_enable_rw will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_wg_frequency_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/fpga_wg_phase_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/tr_fpga_mask_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/tr_fpga_mask_rw will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/tr_fpga_communication_error_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/tr_sdp_config_first_fpga_nr_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/tr_sdp_config_nof_beamsets_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/tr_sdp_config_nof_fpgas_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/tr_software_version_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/tr_start_time_r will not be archived because polling is set to FALSE!\n",
      "Attribute lts/sdp/1/tr_tod_pps_delta_r will not be archived because polling is set to FALSE!\n"
     ]
    }
   ],
   "source": [
    "# Add SDP attributes to load test\n",
    "sdp_name = 'LTS/SDP/1'\n",
    "d2=DeviceProxy(sdp_name) \n",
    "state = str(d2.state())\n",
    "print(state)\n",
    "archiver.add_attributes_by_device(sdp_name,global_archive_period=5000)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "id": "141c52da",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Device is now in ON state\n"
     ]
    }
   ],
   "source": [
    "# Start the SDP device\n",
    "if state == \"OFF\":\n",
    "    time.sleep(1)\n",
    "    d2.initialise()\n",
    "    time.sleep(1)\n",
    "state = str(d2.state())\n",
    "if state == \"STANDBY\":\n",
    "    d2.on()\n",
    "state = str(d2.state())\n",
    "if state == \"ON\":\n",
    "    d2.set_defaults()\n",
    "    print(\"Device is now in ON state\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "id": "b53e5b8b",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'tango://databaseds:10000/lts/recv/1/rcu_temperature_r': 'Read value for attribute RCU_temperature_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/clk_enable_pwr_r': 'Read value for attribute CLK_Enable_PWR_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/clk_i2c_status_r': 'Read value for attribute CLK_I2C_STATUS_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/clk_pll_error_r': 'Read value for attribute CLK_PLL_error_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/clk_pll_locked_r': 'Read value for attribute CLK_PLL_locked_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/clk_translator_busy_r': 'Read value for attribute CLK_translator_busy_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/hba_element_beamformer_delays_r': 'Read value for attribute HBA_element_beamformer_delays_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/hba_element_led_r': 'Read value for attribute HBA_element_led_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/hba_element_lna_pwr_r': 'Read value for attribute HBA_element_LNA_pwr_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/hba_element_pwr_r': 'Read value for attribute HBA_element_pwr_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_adc_lock_r': 'Read value for attribute RCU_ADC_lock_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_attenuator_r': 'Read value for attribute RCU_attenuator_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_band_r': 'Read value for attribute RCU_band_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_i2c_status_r': 'Read value for attribute RCU_I2C_STATUS_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_led0_r': 'Read value for attribute RCU_LED0_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_led1_r': 'Read value for attribute RCU_LED1_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_pwr_dig_r': 'Read value for attribute RCU_Pwr_dig_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_translator_busy_r': 'Read value for attribute RCU_translator_busy_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_version_r': 'Read value for attribute RCU_version_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/recv/1/status': 'Storing Error: mysql_stmt_bind_param() failed, err=Buffer type is not supported',\n",
       " 'tango://databaseds:10000/lts/recv/1/rcu_id_r': 'Read value for attribute RCU_ID_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/sdp/1/fpga_scrap_r': 'Read value for attribute FPGA_scrap_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/sdp/1/fpga_scrap_rw': 'Read value for attribute FPGA_scrap_RW has not been updated',\n",
       " 'tango://databaseds:10000/lts/sdp/1/fpga_temp_r': 'Read value for attribute FPGA_temp_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/sdp/1/fpga_weights_r': 'Read value for attribute FPGA_weights_R has not been updated',\n",
       " 'tango://databaseds:10000/lts/sdp/1/fpga_weights_rw': 'Read value for attribute FPGA_weights_RW has not been updated',\n",
       " 'tango://databaseds:10000/lts/sdp/1/tr_tod_r': 'Read value for attribute TR_tod_R has not been updated'}"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Check errors\n",
    "err_dict = archiver.get_subscriber_errors()\n",
    "err_dict"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "id": "4fed6cf4",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Attribute                                     Poll Period     Archive Period \n",
      "----------\n",
      "LTS/RECV/1/rcu_temperature_r                  10000           60000          \n",
      "LTS/RECV/1/ant_mask_rw                        1000            5000           \n",
      "LTS/RECV/1/clk_enable_pwr_r                   1000            5000           \n",
      "LTS/RECV/1/clk_i2c_status_r                   1000            5000           \n",
      "LTS/RECV/1/clk_pll_error_r                    1000            5000           \n",
      "LTS/RECV/1/clk_pll_locked_r                   1000            5000           \n",
      "LTS/RECV/1/clk_monitor_rate_rw                1000            5000           \n",
      "LTS/RECV/1/clk_translator_busy_r              1000            5000           \n",
      "LTS/RECV/1/hba_element_beamformer_delays_r    1000            5000           \n",
      "LTS/RECV/1/hba_element_beamformer_delays_rw   1000            5000           \n",
      "LTS/RECV/1/hba_element_led_r                  1000            5000           \n",
      "LTS/RECV/1/hba_element_led_rw                 1000            5000           \n",
      "LTS/RECV/1/hba_element_lna_pwr_r              1000            5000           \n",
      "LTS/RECV/1/hba_element_lna_pwr_rw             1000            5000           \n",
      "LTS/RECV/1/hba_element_pwr_r                  1000            5000           \n",
      "LTS/RECV/1/hba_element_pwr_rw                 1000            5000           \n",
      "LTS/RECV/1/rcu_adc_lock_r                     1000            5000           \n",
      "LTS/RECV/1/rcu_attenuator_r                   1000            5000           \n",
      "LTS/RECV/1/rcu_attenuator_rw                  1000            5000           \n",
      "LTS/RECV/1/rcu_band_r                         1000            5000           \n",
      "LTS/RECV/1/rcu_band_rw                        1000            5000           \n",
      "LTS/RECV/1/rcu_i2c_status_r                   1000            5000           \n",
      "LTS/RECV/1/rcu_led0_r                         1000            5000           \n",
      "LTS/RECV/1/rcu_led0_rw                        1000            5000           \n",
      "LTS/RECV/1/rcu_led1_r                         1000            5000           \n",
      "LTS/RECV/1/rcu_led1_rw                        1000            5000           \n",
      "LTS/RECV/1/rcu_mask_rw                        1000            5000           \n",
      "LTS/RECV/1/rcu_monitor_rate_rw                1000            5000           \n",
      "LTS/RECV/1/rcu_pwr_dig_r                      1000            5000           \n",
      "LTS/RECV/1/rcu_translator_busy_r              1000            5000           \n",
      "LTS/RECV/1/rcu_version_r                      1000            5000           \n",
      "LTS/RECV/1/state                              1000            5000           \n",
      "LTS/RECV/1/status                             1000            5000           \n",
      "LTS/RECV/1/rcu_id_r                           1000            10000          \n",
      "LTS/SDP/1/fpga_scrap_r                        1000            5000           \n",
      "LTS/SDP/1/fpga_scrap_rw                       1000            5000           \n",
      "LTS/SDP/1/fpga_temp_r                         1000            5000           \n",
      "LTS/SDP/1/fpga_weights_r                      1000            5000           \n",
      "LTS/SDP/1/fpga_weights_rw                     1000            5000           \n",
      "LTS/SDP/1/tr_tod_r                            1000            5000           \n",
      "\n",
      "Attribute                                     Record Freq     Failure Freq   \n",
      "----------\n",
      "LTS/RECV/1/rcu_temperature_r                  0.0             1.0            \n",
      "LTS/RECV/1/ant_mask_rw                        10.0            3.0            \n",
      "LTS/RECV/1/clk_enable_pwr_r                   0.0             12.0           \n",
      "LTS/RECV/1/clk_i2c_status_r                   0.0             12.0           \n",
      "LTS/RECV/1/clk_pll_error_r                    0.0             12.0           \n",
      "LTS/RECV/1/clk_pll_locked_r                   0.0             12.0           \n",
      "LTS/RECV/1/clk_monitor_rate_rw                10.0            3.0            \n",
      "LTS/RECV/1/clk_translator_busy_r              0.0             12.0           \n",
      "LTS/RECV/1/hba_element_beamformer_delays_r    0.0             12.0           \n",
      "LTS/RECV/1/hba_element_beamformer_delays_rw   10.0            3.0            \n",
      "LTS/RECV/1/hba_element_led_r                  0.0             12.0           \n",
      "LTS/RECV/1/hba_element_led_rw                 10.0            3.0            \n",
      "LTS/RECV/1/hba_element_lna_pwr_r              0.0             12.0           \n",
      "LTS/RECV/1/hba_element_lna_pwr_rw             10.0            3.0            \n",
      "LTS/RECV/1/hba_element_pwr_r                  0.0             12.0           \n",
      "LTS/RECV/1/hba_element_pwr_rw                 10.0            3.0            \n",
      "LTS/RECV/1/rcu_adc_lock_r                     0.0             12.0           \n",
      "LTS/RECV/1/rcu_attenuator_r                   0.0             12.0           \n",
      "LTS/RECV/1/rcu_attenuator_rw                  10.0            3.0            \n",
      "LTS/RECV/1/rcu_band_r                         0.0             12.0           \n",
      "LTS/RECV/1/rcu_band_rw                        10.0            3.0            \n",
      "LTS/RECV/1/rcu_i2c_status_r                   0.0             12.0           \n",
      "LTS/RECV/1/rcu_led0_r                         0.0             12.0           \n",
      "LTS/RECV/1/rcu_led0_rw                        10.0            3.0            \n",
      "LTS/RECV/1/rcu_led1_r                         0.0             12.0           \n",
      "LTS/RECV/1/rcu_led1_rw                        10.0            3.0            \n",
      "LTS/RECV/1/rcu_mask_rw                        10.0            3.0            \n",
      "LTS/RECV/1/rcu_monitor_rate_rw                10.0            3.0            \n",
      "LTS/RECV/1/rcu_pwr_dig_r                      0.0             12.0           \n",
      "LTS/RECV/1/rcu_translator_busy_r              0.0             12.0           \n",
      "LTS/RECV/1/rcu_version_r                      0.0             12.0           \n",
      "LTS/RECV/1/state                              13.0            0.0            \n",
      "LTS/RECV/1/status                             0.0             13.0           \n",
      "LTS/RECV/1/rcu_id_r                           0.0             6.0            \n",
      "LTS/SDP/1/fpga_scrap_r                        0.0             12.0           \n",
      "LTS/SDP/1/fpga_scrap_rw                       0.0             12.0           \n",
      "LTS/SDP/1/fpga_temp_r                         0.0             12.0           \n",
      "LTS/SDP/1/fpga_weights_r                      0.0             12.0           \n",
      "LTS/SDP/1/fpga_weights_rw                     0.0             12.0           \n",
      "LTS/SDP/1/tr_tod_r                            0.0             12.0           \n"
     ]
    }
   ],
   "source": [
    "# Check frequencies\n",
    "attrs = archiver.get_subscriber_attributes()\n",
    "print_periods(attrs)\n",
    "print()\n",
    "print_freq(attrs)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "id": "6e495661",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'lts/recv/1/ant_mask_rw'"
      ]
     },
     "execution_count": 19,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Initialise the retriever object and print the archived attributes in the database\n",
    "retriever = Retriever()\n",
    "# Attribute chosen to be retrieved\n",
    "attr_name = 'ant_mask_rw'\n",
    "attr_fq_name = str(device_name+'/'+attr_name).lower()\n",
    "attr_fq_name"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "id": "304f50f1",
   "metadata": {},
   "outputs": [],
   "source": [
    "# Retrieve records in the last n hours (works even with decimals)\n",
    "\n",
    "# Use alternatively one of the following two methods to retrieve data (last n hours or interval)\n",
    "records= retriever.get_attribute_value_by_hours(attr_fq_name,hours=0.1)\n",
    "#records = retriever.get_attribute_value_by_interval(attr_fq_name,'2021-09-01 16:00:00', '2021-09-01 16:03:00')\n",
    "\n",
    "if not records:\n",
    "    print('Empty result!')\n",
    "else:\n",
    "    # Convert DB Array records into Python lists\n",
    "    data = build_array_from_record(records,records[0].dim_x_r)\n",
    "    # Extract only the value from the array \n",
    "    array_values = get_values_from_record(data)\n",
    "\n",
    "#records\n",
    "#data\n",
    "#array_values"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "id": "fb2c19f4",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[[<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:11:45.984153',recv_time='2021-10-12 16:11:45.985227',insert_time='2021-10-12 16:11:47.172490',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:11:45.984153',recv_time='2021-10-12 16:11:45.985227',insert_time='2021-10-12 16:11:47.172490',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:11:45.984153',recv_time='2021-10-12 16:11:45.985227',insert_time='2021-10-12 16:11:47.172490',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:11:50.983968',recv_time='2021-10-12 16:11:50.985012',insert_time='2021-10-12 16:11:54.941481',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:11:50.983968',recv_time='2021-10-12 16:11:50.985012',insert_time='2021-10-12 16:11:54.941481',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:11:50.983968',recv_time='2021-10-12 16:11:50.985012',insert_time='2021-10-12 16:11:54.941481',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:11:55.984188',recv_time='2021-10-12 16:11:55.985084',insert_time='2021-10-12 16:11:58.436198',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:11:55.984188',recv_time='2021-10-12 16:11:55.985084',insert_time='2021-10-12 16:11:58.436198',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:11:55.984188',recv_time='2021-10-12 16:11:55.985084',insert_time='2021-10-12 16:11:58.436198',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:00.984500',recv_time='2021-10-12 16:12:00.985745',insert_time='2021-10-12 16:12:02.161066',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:00.984500',recv_time='2021-10-12 16:12:00.985745',insert_time='2021-10-12 16:12:02.161066',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:00.984500',recv_time='2021-10-12 16:12:00.985745',insert_time='2021-10-12 16:12:02.161066',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:05.984549',recv_time='2021-10-12 16:12:05.985632',insert_time='2021-10-12 16:12:07.162031',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:05.984549',recv_time='2021-10-12 16:12:05.985632',insert_time='2021-10-12 16:12:07.162031',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:05.984549',recv_time='2021-10-12 16:12:05.985632',insert_time='2021-10-12 16:12:07.162031',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:10.984455',recv_time='2021-10-12 16:12:10.985558',insert_time='2021-10-12 16:12:13.614716',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:10.984455',recv_time='2021-10-12 16:12:10.985558',insert_time='2021-10-12 16:12:13.614716',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:10.984455',recv_time='2021-10-12 16:12:10.985558',insert_time='2021-10-12 16:12:13.614716',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:15.984749',recv_time='2021-10-12 16:12:15.985754',insert_time='2021-10-12 16:12:17.710957',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:15.984749',recv_time='2021-10-12 16:12:15.985754',insert_time='2021-10-12 16:12:17.710957',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:15.984749',recv_time='2021-10-12 16:12:15.985754',insert_time='2021-10-12 16:12:17.710957',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:20.984437',recv_time='2021-10-12 16:12:20.985426',insert_time='2021-10-12 16:12:22.179278',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:20.984437',recv_time='2021-10-12 16:12:20.985426',insert_time='2021-10-12 16:12:22.179278',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:20.984437',recv_time='2021-10-12 16:12:20.985426',insert_time='2021-10-12 16:12:22.179278',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:25.984240',recv_time='2021-10-12 16:12:25.985322',insert_time='2021-10-12 16:12:27.121467',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:25.984240',recv_time='2021-10-12 16:12:25.985322',insert_time='2021-10-12 16:12:27.121467',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:25.984240',recv_time='2021-10-12 16:12:25.985322',insert_time='2021-10-12 16:12:27.121467',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:30.984213',recv_time='2021-10-12 16:12:30.985970',insert_time='2021-10-12 16:12:32.143646',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:30.984213',recv_time='2021-10-12 16:12:30.985970',insert_time='2021-10-12 16:12:32.143646',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:30.984213',recv_time='2021-10-12 16:12:30.985970',insert_time='2021-10-12 16:12:32.143646',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:35.984194',recv_time='2021-10-12 16:12:35.985136',insert_time='2021-10-12 16:12:37.105945',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:35.984194',recv_time='2021-10-12 16:12:35.985136',insert_time='2021-10-12 16:12:37.105945',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:35.984194',recv_time='2021-10-12 16:12:35.985136',insert_time='2021-10-12 16:12:37.105945',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:40.984436',recv_time='2021-10-12 16:12:40.985560',insert_time='2021-10-12 16:12:42.131690',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:40.984436',recv_time='2021-10-12 16:12:40.985560',insert_time='2021-10-12 16:12:42.131690',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:40.984436',recv_time='2021-10-12 16:12:40.985560',insert_time='2021-10-12 16:12:42.131690',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:45.984915',recv_time='2021-10-12 16:12:45.986000',insert_time='2021-10-12 16:12:47.175174',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:45.984915',recv_time='2021-10-12 16:12:45.986000',insert_time='2021-10-12 16:12:47.175174',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:45.984915',recv_time='2021-10-12 16:12:45.986000',insert_time='2021-10-12 16:12:47.175174',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:50.984633',recv_time='2021-10-12 16:12:50.985512',insert_time='2021-10-12 16:12:53.057782',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:50.984633',recv_time='2021-10-12 16:12:50.985512',insert_time='2021-10-12 16:12:53.057782',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:50.984633',recv_time='2021-10-12 16:12:50.985512',insert_time='2021-10-12 16:12:53.057782',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:55.984062',recv_time='2021-10-12 16:12:55.985186',insert_time='2021-10-12 16:12:57.789312',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:55.984062',recv_time='2021-10-12 16:12:55.985186',insert_time='2021-10-12 16:12:57.789312',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:12:55.984062',recv_time='2021-10-12 16:12:55.985186',insert_time='2021-10-12 16:12:57.789312',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:00.984010',recv_time='2021-10-12 16:13:00.985004',insert_time='2021-10-12 16:13:02.085417',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:00.984010',recv_time='2021-10-12 16:13:00.985004',insert_time='2021-10-12 16:13:02.085417',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:00.984010',recv_time='2021-10-12 16:13:00.985004',insert_time='2021-10-12 16:13:02.085417',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:05.984656',recv_time='2021-10-12 16:13:05.985886',insert_time='2021-10-12 16:13:07.114881',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:05.984656',recv_time='2021-10-12 16:13:05.985886',insert_time='2021-10-12 16:13:07.114881',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:05.984656',recv_time='2021-10-12 16:13:05.985886',insert_time='2021-10-12 16:13:07.114881',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:10.983994',recv_time='2021-10-12 16:13:10.984868',insert_time='2021-10-12 16:13:13.955591',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:10.983994',recv_time='2021-10-12 16:13:10.984868',insert_time='2021-10-12 16:13:13.955591',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:10.983994',recv_time='2021-10-12 16:13:10.984868',insert_time='2021-10-12 16:13:13.955591',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:15.984364',recv_time='2021-10-12 16:13:15.985187',insert_time='2021-10-12 16:13:17.261063',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:15.984364',recv_time='2021-10-12 16:13:15.985187',insert_time='2021-10-12 16:13:17.261063',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:15.984364',recv_time='2021-10-12 16:13:15.985187',insert_time='2021-10-12 16:13:17.261063',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:20.984283',recv_time='2021-10-12 16:13:20.985476',insert_time='2021-10-12 16:13:22.137614',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:20.984283',recv_time='2021-10-12 16:13:20.985476',insert_time='2021-10-12 16:13:22.137614',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:20.984283',recv_time='2021-10-12 16:13:20.985476',insert_time='2021-10-12 16:13:22.137614',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:25.984392',recv_time='2021-10-12 16:13:25.985198',insert_time='2021-10-12 16:13:32.429251',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:25.984392',recv_time='2021-10-12 16:13:25.985198',insert_time='2021-10-12 16:13:32.429251',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:25.984392',recv_time='2021-10-12 16:13:25.985198',insert_time='2021-10-12 16:13:32.429251',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:30.984191',recv_time='2021-10-12 16:13:30.985085',insert_time='2021-10-12 16:13:32.691181',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:30.984191',recv_time='2021-10-12 16:13:30.985085',insert_time='2021-10-12 16:13:32.691181',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:30.984191',recv_time='2021-10-12 16:13:30.985085',insert_time='2021-10-12 16:13:32.691181',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:35.984482',recv_time='2021-10-12 16:13:35.985543',insert_time='2021-10-12 16:13:36.243490',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:35.984482',recv_time='2021-10-12 16:13:35.985543',insert_time='2021-10-12 16:13:36.243490',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:35.984482',recv_time='2021-10-12 16:13:35.985543',insert_time='2021-10-12 16:13:36.243490',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:40.984427',recv_time='2021-10-12 16:13:40.985152',insert_time='2021-10-12 16:13:42.666220',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:40.984427',recv_time='2021-10-12 16:13:40.985152',insert_time='2021-10-12 16:13:42.666220',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:40.984427',recv_time='2021-10-12 16:13:40.985152',insert_time='2021-10-12 16:13:42.666220',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:45.984380',recv_time='2021-10-12 16:13:45.985301',insert_time='2021-10-12 16:13:45.987537',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:45.984380',recv_time='2021-10-12 16:13:45.985301',insert_time='2021-10-12 16:13:45.987537',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:45.984380',recv_time='2021-10-12 16:13:45.985301',insert_time='2021-10-12 16:13:45.987537',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:50.984643',recv_time='2021-10-12 16:13:50.985563',insert_time='2021-10-12 16:13:50.987682',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:50.984643',recv_time='2021-10-12 16:13:50.985563',insert_time='2021-10-12 16:13:50.987682',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:50.984643',recv_time='2021-10-12 16:13:50.985563',insert_time='2021-10-12 16:13:50.987682',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:55.983973',recv_time='2021-10-12 16:13:55.984880',insert_time='2021-10-12 16:13:55.986907',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:55.983973',recv_time='2021-10-12 16:13:55.984880',insert_time='2021-10-12 16:13:55.986907',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:13:55.983973',recv_time='2021-10-12 16:13:55.984880',insert_time='2021-10-12 16:13:55.986907',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:00.984719',recv_time='2021-10-12 16:14:00.985552',insert_time='2021-10-12 16:14:03.021740',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:00.984719',recv_time='2021-10-12 16:14:00.985552',insert_time='2021-10-12 16:14:03.021740',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:00.984719',recv_time='2021-10-12 16:14:00.985552',insert_time='2021-10-12 16:14:03.021740',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:05.984695',recv_time='2021-10-12 16:14:05.985635',insert_time='2021-10-12 16:14:05.989173',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:05.984695',recv_time='2021-10-12 16:14:05.985635',insert_time='2021-10-12 16:14:05.989173',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:05.984695',recv_time='2021-10-12 16:14:05.985635',insert_time='2021-10-12 16:14:05.989173',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:10.984766',recv_time='2021-10-12 16:14:10.988322',insert_time='2021-10-12 16:14:10.991811',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:10.984766',recv_time='2021-10-12 16:14:10.988322',insert_time='2021-10-12 16:14:10.991811',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:10.984766',recv_time='2021-10-12 16:14:10.988322',insert_time='2021-10-12 16:14:10.991811',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:15.984611',recv_time='2021-10-12 16:14:15.985512',insert_time='2021-10-12 16:14:15.987666',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:15.984611',recv_time='2021-10-12 16:14:15.985512',insert_time='2021-10-12 16:14:15.987666',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:15.984611',recv_time='2021-10-12 16:14:15.985512',insert_time='2021-10-12 16:14:15.987666',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:20.984560',recv_time='2021-10-12 16:14:20.985450',insert_time='2021-10-12 16:14:20.988027',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:20.984560',recv_time='2021-10-12 16:14:20.985450',insert_time='2021-10-12 16:14:20.988027',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:20.984560',recv_time='2021-10-12 16:14:20.985450',insert_time='2021-10-12 16:14:20.988027',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:25.984529',recv_time='2021-10-12 16:14:25.985516',insert_time='2021-10-12 16:14:28.424397',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:25.984529',recv_time='2021-10-12 16:14:25.985516',insert_time='2021-10-12 16:14:28.424397',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:25.984529',recv_time='2021-10-12 16:14:25.985516',insert_time='2021-10-12 16:14:28.424397',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:30.984777',recv_time='2021-10-12 16:14:30.985744',insert_time='2021-10-12 16:14:30.987772',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:30.984777',recv_time='2021-10-12 16:14:30.985744',insert_time='2021-10-12 16:14:30.987772',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:30.984777',recv_time='2021-10-12 16:14:30.985744',insert_time='2021-10-12 16:14:30.987772',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:37.039585',recv_time='2021-10-12 16:14:37.041323',insert_time='2021-10-12 16:14:37.273810',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:37.039585',recv_time='2021-10-12 16:14:37.041323',insert_time='2021-10-12 16:14:37.273810',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:37.039585',recv_time='2021-10-12 16:14:37.041323',insert_time='2021-10-12 16:14:37.273810',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:37.985042',recv_time='2021-10-12 16:14:37.985943',insert_time='2021-10-12 16:14:37.988002',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:37.985042',recv_time='2021-10-12 16:14:37.985943',insert_time='2021-10-12 16:14:37.988002',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:37.985042',recv_time='2021-10-12 16:14:37.985943',insert_time='2021-10-12 16:14:37.988002',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:41.984482',recv_time='2021-10-12 16:14:41.985286',insert_time='2021-10-12 16:14:41.987331',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:41.984482',recv_time='2021-10-12 16:14:41.985286',insert_time='2021-10-12 16:14:41.987331',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:41.984482',recv_time='2021-10-12 16:14:41.985286',insert_time='2021-10-12 16:14:41.987331',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:46.983903',recv_time='2021-10-12 16:14:46.984621',insert_time='2021-10-12 16:14:46.986645',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:46.983903',recv_time='2021-10-12 16:14:46.984621',insert_time='2021-10-12 16:14:46.986645',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:46.983903',recv_time='2021-10-12 16:14:46.984621',insert_time='2021-10-12 16:14:46.986645',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:51.985363',recv_time='2021-10-12 16:14:51.988993',insert_time='2021-10-12 16:14:51.996470',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:51.985363',recv_time='2021-10-12 16:14:51.988993',insert_time='2021-10-12 16:14:51.996470',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:51.985363',recv_time='2021-10-12 16:14:51.988993',insert_time='2021-10-12 16:14:51.996470',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:56.983913',recv_time='2021-10-12 16:14:56.984669',insert_time='2021-10-12 16:14:56.986431',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:56.983913',recv_time='2021-10-12 16:14:56.984669',insert_time='2021-10-12 16:14:56.986431',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:14:56.983913',recv_time='2021-10-12 16:14:56.984669',insert_time='2021-10-12 16:14:56.986431',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:01.984158',recv_time='2021-10-12 16:15:01.985027',insert_time='2021-10-12 16:15:01.987260',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:01.984158',recv_time='2021-10-12 16:15:01.985027',insert_time='2021-10-12 16:15:01.987260',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:01.984158',recv_time='2021-10-12 16:15:01.985027',insert_time='2021-10-12 16:15:01.987260',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:06.984749',recv_time='2021-10-12 16:15:06.985475',insert_time='2021-10-12 16:15:10.684370',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:06.984749',recv_time='2021-10-12 16:15:06.985475',insert_time='2021-10-12 16:15:10.684370',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:06.984749',recv_time='2021-10-12 16:15:06.985475',insert_time='2021-10-12 16:15:10.684370',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:09.984143',recv_time='2021-10-12 16:15:10.724971',insert_time='2021-10-12 16:15:10.939773',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:09.984143',recv_time='2021-10-12 16:15:10.724971',insert_time='2021-10-12 16:15:10.939773',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:09.984143',recv_time='2021-10-12 16:15:10.724971',insert_time='2021-10-12 16:15:10.939773',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:11.984527',recv_time='2021-10-12 16:15:11.985832',insert_time='2021-10-12 16:15:11.987864',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:11.984527',recv_time='2021-10-12 16:15:11.985832',insert_time='2021-10-12 16:15:11.987864',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:11.984527',recv_time='2021-10-12 16:15:11.985832',insert_time='2021-10-12 16:15:11.987864',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:16.984401',recv_time='2021-10-12 16:15:16.985325',insert_time='2021-10-12 16:15:16.987491',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:16.984401',recv_time='2021-10-12 16:15:16.985325',insert_time='2021-10-12 16:15:16.987491',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:16.984401',recv_time='2021-10-12 16:15:16.985325',insert_time='2021-10-12 16:15:16.987491',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:21.984689',recv_time='2021-10-12 16:15:21.987848',insert_time='2021-10-12 16:15:21.995639',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:21.984689',recv_time='2021-10-12 16:15:21.987848',insert_time='2021-10-12 16:15:21.995639',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:21.984689',recv_time='2021-10-12 16:15:21.987848',insert_time='2021-10-12 16:15:21.995639',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:26.985033',recv_time='2021-10-12 16:15:26.986515',insert_time='2021-10-12 16:15:26.989821',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:26.985033',recv_time='2021-10-12 16:15:26.986515',insert_time='2021-10-12 16:15:26.989821',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:26.985033',recv_time='2021-10-12 16:15:26.986515',insert_time='2021-10-12 16:15:26.989821',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:31.984568',recv_time='2021-10-12 16:15:31.985507',insert_time='2021-10-12 16:15:31.987596',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:31.984568',recv_time='2021-10-12 16:15:31.985507',insert_time='2021-10-12 16:15:31.987596',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:31.984568',recv_time='2021-10-12 16:15:31.985507',insert_time='2021-10-12 16:15:31.987596',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:36.984577',recv_time='2021-10-12 16:15:36.985529',insert_time='2021-10-12 16:15:36.987719',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:36.984577',recv_time='2021-10-12 16:15:36.985529',insert_time='2021-10-12 16:15:36.987719',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:36.984577',recv_time='2021-10-12 16:15:36.985529',insert_time='2021-10-12 16:15:36.987719',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:41.984143',recv_time='2021-10-12 16:15:41.985114',insert_time='2021-10-12 16:15:41.987742',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:41.984143',recv_time='2021-10-12 16:15:41.985114',insert_time='2021-10-12 16:15:41.987742',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:41.984143',recv_time='2021-10-12 16:15:41.985114',insert_time='2021-10-12 16:15:41.987742',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:46.983999',recv_time='2021-10-12 16:15:46.985104',insert_time='2021-10-12 16:15:46.988166',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:46.983999',recv_time='2021-10-12 16:15:46.985104',insert_time='2021-10-12 16:15:46.988166',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:46.983999',recv_time='2021-10-12 16:15:46.985104',insert_time='2021-10-12 16:15:46.988166',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:51.984200',recv_time='2021-10-12 16:15:51.985471',insert_time='2021-10-12 16:15:51.988197',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:51.984200',recv_time='2021-10-12 16:15:51.985471',insert_time='2021-10-12 16:15:51.988197',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:51.984200',recv_time='2021-10-12 16:15:51.985471',insert_time='2021-10-12 16:15:51.988197',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:56.984150',recv_time='2021-10-12 16:15:56.985423',insert_time='2021-10-12 16:15:56.988016',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:56.984150',recv_time='2021-10-12 16:15:56.985423',insert_time='2021-10-12 16:15:56.988016',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:15:56.984150',recv_time='2021-10-12 16:15:56.985423',insert_time='2021-10-12 16:15:56.988016',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:16:01.984230',recv_time='2021-10-12 16:16:01.985094',insert_time='2021-10-12 16:16:01.987267',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:16:01.984230',recv_time='2021-10-12 16:16:01.985094',insert_time='2021-10-12 16:16:01.987267',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:16:01.984230',recv_time='2021-10-12 16:16:01.985094',insert_time='2021-10-12 16:16:01.987267',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:16:06.983920',recv_time='2021-10-12 16:16:06.984817',insert_time='2021-10-12 16:16:06.986719',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:16:06.983920',recv_time='2021-10-12 16:16:06.984817',insert_time='2021-10-12 16:16:06.986719',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:16:06.983920',recv_time='2021-10-12 16:16:06.984817',insert_time='2021-10-12 16:16:06.986719',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:16:11.984220',recv_time='2021-10-12 16:16:11.985126',insert_time='2021-10-12 16:16:11.986983',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:16:11.984220',recv_time='2021-10-12 16:16:11.985126',insert_time='2021-10-12 16:16:11.986983',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:16:11.984220',recv_time='2021-10-12 16:16:11.985126',insert_time='2021-10-12 16:16:11.986983',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:16:16.983941',recv_time='2021-10-12 16:16:16.984744',insert_time='2021-10-12 16:16:16.986615',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:16:16.983941',recv_time='2021-10-12 16:16:16.984744',insert_time='2021-10-12 16:16:16.986615',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:16:16.983941',recv_time='2021-10-12 16:16:16.984744',insert_time='2021-10-12 16:16:16.986615',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:16:21.984522',recv_time='2021-10-12 16:16:21.985446',insert_time='2021-10-12 16:16:21.987553',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:16:21.984522',recv_time='2021-10-12 16:16:21.985446',insert_time='2021-10-12 16:16:21.987553',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:16:21.984522',recv_time='2021-10-12 16:16:21.985446',insert_time='2021-10-12 16:16:21.987553',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:16:26.984167',recv_time='2021-10-12 16:16:26.985007',insert_time='2021-10-12 16:16:26.986991',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:16:26.984167',recv_time='2021-10-12 16:16:26.985007',insert_time='2021-10-12 16:16:26.986991',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:16:26.984167',recv_time='2021-10-12 16:16:26.985007',insert_time='2021-10-12 16:16:26.986991',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:16:56.984488',recv_time='2021-10-12 16:16:56.985745',insert_time='2021-10-12 16:16:56.987969',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:16:56.984488',recv_time='2021-10-12 16:16:56.985745',insert_time='2021-10-12 16:16:56.987969',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:16:56.984488',recv_time='2021-10-12 16:16:56.985745',insert_time='2021-10-12 16:16:56.987969',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:17:01.984591',recv_time='2021-10-12 16:17:01.987665',insert_time='2021-10-12 16:17:01.995973',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:17:01.984591',recv_time='2021-10-12 16:17:01.987665',insert_time='2021-10-12 16:17:01.995973',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:17:01.984591',recv_time='2021-10-12 16:17:01.987665',insert_time='2021-10-12 16:17:01.995973',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:17:06.985081',recv_time='2021-10-12 16:17:06.988687',insert_time='2021-10-12 16:17:06.996786',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:17:06.985081',recv_time='2021-10-12 16:17:06.988687',insert_time='2021-10-12 16:17:06.996786',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:17:06.985081',recv_time='2021-10-12 16:17:06.988687',insert_time='2021-10-12 16:17:06.996786',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:17:11.984285',recv_time='2021-10-12 16:17:11.985949',insert_time='2021-10-12 16:17:11.989505',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:17:11.984285',recv_time='2021-10-12 16:17:11.985949',insert_time='2021-10-12 16:17:11.989505',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:17:11.984285',recv_time='2021-10-12 16:17:11.985949',insert_time='2021-10-12 16:17:11.989505',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:17:16.984731',recv_time='2021-10-12 16:17:16.985852',insert_time='2021-10-12 16:17:16.988141',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:17:16.984731',recv_time='2021-10-12 16:17:16.985852',insert_time='2021-10-12 16:17:16.988141',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:17:16.984731',recv_time='2021-10-12 16:17:16.985852',insert_time='2021-10-12 16:17:16.988141',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>],\n",
       " [<Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:17:21.983865',recv_time='2021-10-12 16:17:21.985019',insert_time='2021-10-12 16:17:21.987370',idx='0',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:17:21.983865',recv_time='2021-10-12 16:17:21.985019',insert_time='2021-10-12 16:17:21.987370',idx='1',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>,\n",
       "  <Array_Boolean_RW(att_conf_id='1',data_time='2021-10-12 16:17:21.983865',recv_time='2021-10-12 16:17:21.985019',insert_time='2021-10-12 16:17:21.987370',idx='2',dim_x_r='3',dim_y_r='32',value_r='1',dim_x_w='3',dim_y_w='32',value_w='1',quality='0',att_error_desc_id='None')>]]"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "id": "eb97ee97",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Attribute lts/recv/1/rcu_temperature_r removed!\n",
      "Attribute lts/recv/1/clk_enable_pwr_r removed!\n",
      "Attribute lts/recv/1/clk_i2c_status_r removed!\n",
      "Attribute lts/recv/1/clk_pll_error_r removed!\n",
      "Attribute lts/recv/1/clk_pll_locked_r removed!\n",
      "Attribute lts/recv/1/clk_translator_busy_r removed!\n",
      "Attribute lts/recv/1/hba_element_beamformer_delays_r removed!\n",
      "Attribute lts/recv/1/hba_element_led_r removed!\n",
      "Attribute lts/recv/1/hba_element_lna_pwr_r removed!\n",
      "Attribute lts/recv/1/hba_element_pwr_r removed!\n",
      "Attribute lts/recv/1/rcu_adc_lock_r removed!\n",
      "Attribute lts/recv/1/rcu_attenuator_r removed!\n",
      "Attribute lts/recv/1/rcu_band_r removed!\n",
      "Attribute lts/recv/1/rcu_i2c_status_r removed!\n",
      "Attribute lts/recv/1/rcu_led0_r removed!\n",
      "Attribute lts/recv/1/rcu_led1_r removed!\n",
      "Attribute lts/recv/1/rcu_pwr_dig_r removed!\n",
      "Attribute lts/recv/1/rcu_translator_busy_r removed!\n",
      "Attribute lts/recv/1/rcu_version_r removed!\n",
      "Attribute lts/recv/1/rcu_id_r removed!\n",
      "Attribute lts/recv/1/status removed!\n",
      "Attribute lts/sdp/1/fpga_scrap_r removed!\n",
      "Attribute lts/sdp/1/fpga_scrap_rw removed!\n",
      "Attribute lts/sdp/1/fpga_weights_r removed!\n",
      "Attribute lts/sdp/1/fpga_weights_rw removed!\n"
     ]
    }
   ],
   "source": [
    "#archiver.remove_attribute_from_archiver('lts/recv/1/rcu_temperature_r')\n",
    "archiver.remove_attributes_in_error()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "id": "a554cff4",
   "metadata": {},
   "outputs": [],
   "source": [
    "d.off()\n",
    "d2.off()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "71fabd37",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "StationControl",
   "language": "python",
   "name": "stationcontrol"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}