diff --git a/src/locales/en-US.json b/src/locales/en-US.json
index 5c457d6..35e7146 100644
--- a/src/locales/en-US.json
+++ b/src/locales/en-US.json
@@ -403,11 +403,13 @@
       "manufacturer": "Manufacturer",
       "maxConcurrentSessions": "Max concurrent sessions",
       "maxSpeedMHz": "Max speed MHz",
-      "minSpeedMHz": "Min speed MHz",
       "maxPowerWatts": "Max power watts",
-      "minPowerWatts": "Min power watts",
-      "model": "Model",
+      "memoryType": "Memory type",
+      "memorySize": "Memory size",
       "memorySummary": "Memory summary",
+      "minPowerWatts": "Min power watts",
+      "minSpeedMHz": "Min speed MHz",
+      "model": "Model",
       "name": "Name",
       "partNumber": "Part number",
       "power": "Power",
diff --git a/src/store/modules/HardwareStatus/MemoryStore.js b/src/store/modules/HardwareStatus/MemoryStore.js
index cd2478d..6f6abe5 100644
--- a/src/store/modules/HardwareStatus/MemoryStore.js
+++ b/src/store/modules/HardwareStatus/MemoryStore.js
@@ -1,4 +1,5 @@
 import api from '@/store/api';
+import i18n from '@/i18n';
 
 const MemoryStore = {
   namespaced: true,
@@ -11,13 +12,31 @@
   mutations: {
     setMemoryInfo: (state, data) => {
       state.dimms = data.map(({ data }) => {
-        const { Id, Status = {}, PartNumber, SerialNumber } = data;
+        const {
+          Id,
+          Status = {},
+          PartNumber,
+          SerialNumber,
+          SparePartNumber,
+          Description,
+          MemoryType,
+          MemorySize,
+          LocationIndicatorActive,
+          Location,
+        } = data;
         return {
           id: Id,
           health: Status.Health,
           partNumber: PartNumber,
           serialNumber: SerialNumber,
           statusState: Status.State,
+          sparePartNumber: SparePartNumber,
+          description: Description,
+          memoryType: MemoryType,
+          memorySize: MemorySize,
+          identifyLed: LocationIndicatorActive,
+          uri: data['@odata.id'],
+          locationNumber: Location?.PartLocation?.ServiceLabel,
         };
       });
     },
@@ -33,6 +52,23 @@
         .then((response) => commit('setMemoryInfo', response))
         .catch((error) => console.log(error));
     },
+    async updateIdentifyLedValue({ dispatch }, led) {
+      const uri = led.uri;
+      const updatedIdentifyLedValue = {
+        LocationIndicatorActive: led.identifyLed,
+      };
+      return await api.patch(uri, updatedIdentifyLedValue).catch((error) => {
+        dispatch('getDimms');
+        console.log('error', error);
+        if (led.identifyLed) {
+          throw new Error(i18n.t('pageInventory.toast.errorEnableIdentifyLed'));
+        } else {
+          throw new Error(
+            i18n.t('pageInventory.toast.errorDisableIdentifyLed')
+          );
+        }
+      });
+    },
   },
 };
 
diff --git a/src/views/HardwareStatus/Inventory/InventoryTableDimmSlot.vue b/src/views/HardwareStatus/Inventory/InventoryTableDimmSlot.vue
index 5d8db83..07f42d2 100644
--- a/src/views/HardwareStatus/Inventory/InventoryTableDimmSlot.vue
+++ b/src/views/HardwareStatus/Inventory/InventoryTableDimmSlot.vue
@@ -49,13 +49,63 @@
         <status-icon :status="statusIcon(value)" />
         {{ value }}
       </template>
-
+      <!-- Toggle identify LED -->
+      <template #cell(identifyLed)="row">
+        <b-form-checkbox
+          v-model="row.item.identifyLed"
+          name="switch"
+          switch
+          @change="toggleIdentifyLedValue(row.item)"
+        >
+          <span v-if="row.item.identifyLed">
+            {{ $t('global.status.on') }}
+          </span>
+          <span v-else> {{ $t('global.status.off') }} </span>
+        </b-form-checkbox>
+      </template>
       <template #row-details="{ item }">
         <b-container fluid>
           <b-row>
-            <b-col sm="6" xl="4">
+            <b-col sm="6" xl="6">
               <dl>
-                <!-- Status state -->
+                <!-- Part Number -->
+                <dt>{{ $t('pageInventory.table.partNumber') }}:</dt>
+                <dd>{{ dataFormatter(item.partNumber) }}</dd>
+              </dl>
+              <dl>
+                <!-- Serial Number -->
+                <dt>{{ $t('pageInventory.table.serialNumber') }}:</dt>
+                <dd>{{ dataFormatter(item.serialNumber) }}</dd>
+              </dl>
+              <dl>
+                <!-- Spare Part Number -->
+                <dt>{{ $t('pageInventory.table.sparePartNumber') }}:</dt>
+                <dd>{{ dataFormatter(item.sparePartNumber) }}</dd>
+              </dl>
+              <dl>
+                <!-- Model -->
+                <dt>{{ $t('pageInventory.table.model') }}:</dt>
+                <dd>{{ dataFormatter(item.model) }}</dd>
+              </dl>
+              <dl>
+                <!-- Description -->
+                <dt>{{ $t('pageInventory.table.description') }}:</dt>
+                <dd>{{ dataFormatter(item.description) }}</dd>
+              </dl>
+              <dl>
+                <!-- Memory Type -->
+                <dt>{{ $t('pageInventory.table.memoryType') }}:</dt>
+                <dd>{{ dataFormatter(item.memoryType) }}</dd>
+              </dl>
+            </b-col>
+            <b-col sm="6" xl="6">
+              <dl>
+                <!-- Memory Size in kb -->
+                <dt>{{ $t('pageInventory.table.memorySize') }}:</dt>
+                <dd>{{ dataFormatter(item.memorySize) }} KB</dd>
+              </dl>
+              <dl>
+                <!-- Status-->
                 <dt>{{ $t('pageInventory.table.statusState') }}:</dt>
                 <dd>{{ dataFormatter(item.statusState) }}</dd>
               </dl>
@@ -99,32 +149,27 @@
           key: 'expandRow',
           label: '',
           tdClass: 'table-row-expand',
-          sortable: false,
         },
         {
           key: 'id',
           label: this.$t('pageInventory.table.id'),
           formatter: this.dataFormatter,
-          sortable: true,
         },
         {
           key: 'health',
           label: this.$t('pageInventory.table.health'),
           formatter: this.dataFormatter,
-          sortable: true,
           tdClass: 'text-nowrap',
         },
         {
-          key: 'partNumber',
-          label: this.$t('pageInventory.table.partNumber'),
+          key: 'locationNumber',
+          label: this.$t('pageInventory.table.locationNumber'),
           formatter: this.dataFormatter,
-          sortable: true,
         },
         {
-          key: 'serialNumber',
-          label: this.$t('pageInventory.table.serialNumber'),
+          key: 'identifyLed',
+          label: this.$t('pageInventory.table.identifyLed'),
           formatter: this.dataFormatter,
-          sortable: true,
         },
       ],
       searchFilter: searchFilter,
@@ -157,6 +202,14 @@
     onFiltered(filteredItems) {
       this.searchTotalFilteredRows = filteredItems.length;
     },
+    toggleIdentifyLedValue(row) {
+      this.$store
+        .dispatch('memory/updateIdentifyLedValue', {
+          uri: row.uri,
+          identifyLed: row.identifyLed,
+        })
+        .catch(({ message }) => this.errorToast(message));
+    },
   },
 };
 </script>
