diff --git a/Marlin/src/inc/Conditionals_LCD.h b/Marlin/src/inc/Conditionals_LCD.h
index 0e1e65c87f1721482e28533d50953d83a89a4f64..101e085724f9128c5a4590075b65aad8a0f49fff 100644
--- a/Marlin/src/inc/Conditionals_LCD.h
+++ b/Marlin/src/inc/Conditionals_LCD.h
@@ -128,6 +128,7 @@
   #if EITHER(FYSETC_MINI_12864_1_2, FYSETC_MINI_12864_2_0)
     #define RGB_LED
   #elif ENABLED(FYSETC_MINI_12864_2_1)
+    #define LED_CONTROL_MENU
     #define NEOPIXEL_LED
     #undef NEOPIXEL_TYPE
     #define NEOPIXEL_TYPE       NEO_RGB
diff --git a/Marlin/src/lcd/dogm/u8g_dev_uc1701_mini12864_HAL.cpp b/Marlin/src/lcd/dogm/u8g_dev_uc1701_mini12864_HAL.cpp
index 5a1326daf91306f28ff2623f7094230be59e2457..1e12ba84d0eee2817d15814425550e281b9fa95b 100644
--- a/Marlin/src/lcd/dogm/u8g_dev_uc1701_mini12864_HAL.cpp
+++ b/Marlin/src/lcd/dogm/u8g_dev_uc1701_mini12864_HAL.cpp
@@ -130,10 +130,12 @@ static const uint8_t u8g_dev_uc1701_mini12864_HAL_data_start[] PROGMEM = {
     UC1701_INDICATOR(0),      // indicator disable
     UC1701_ON(1),             // display on
     UC1701_COLUMN_HI(0),      // set upper 4 bit of the col adr to 0
+    U8G_ESC_END,              // end of sequence
+    U8G_ESC_DLY(5)            // delay 5 ms
   #else
     UC1701_COLUMN_ADR(0),     // address 0
+    U8G_ESC_END               // end of sequence
   #endif
-  U8G_ESC_END                 // end of sequence
 };
 
 uint8_t u8g_dev_uc1701_mini12864_HAL_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) {
@@ -170,9 +172,6 @@ uint8_t u8g_dev_uc1701_mini12864_HAL_2x_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t m
     case U8G_DEV_MSG_INIT:
       u8g_InitCom(u8g, dev, U8G_SPI_CLK_CYCLE_300NS);
       u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1701_mini12864_HAL_init_seq);
-      #if ENABLED(MKS_MINI_12864)
-        u8g_Delay(5);
-      #endif
       break;
 
     case U8G_DEV_MSG_STOP: break;
@@ -180,17 +179,11 @@ uint8_t u8g_dev_uc1701_mini12864_HAL_2x_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t m
     case U8G_DEV_MSG_PAGE_NEXT: {
       u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem);
       u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1701_mini12864_HAL_data_start);
-      #if ENABLED(MKS_MINI_12864)
-        u8g_Delay(5);
-      #endif
       u8g_WriteByte(u8g, dev, 0x0B0 | (2 * pb->p.page)); /* select current page */
       u8g_SetAddress(u8g, dev, 1); /* data mode */
       u8g_WriteSequence(u8g, dev, pb->width, (uint8_t *)pb->buf);
       u8g_SetChipSelect(u8g, dev, 0);
       u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1701_mini12864_HAL_data_start);
-      #if ENABLED(MKS_MINI_12864)
-        u8g_Delay(5);
-      #endif
       u8g_WriteByte(u8g, dev, 0x0B0 | (2 * pb->p.page + 1)); /* select current page */
       u8g_SetAddress(u8g, dev, 1); /* data mode */
       u8g_WriteSequence(u8g, dev, pb->width, (uint8_t *)(pb->buf)+pb->width);
@@ -199,16 +192,10 @@ uint8_t u8g_dev_uc1701_mini12864_HAL_2x_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t m
 
     case U8G_DEV_MSG_CONTRAST:
       u8g_SetChipSelect(u8g, dev, 1);
-      #if ENABLED(MKS_MINI_12864)
-        u8g_Delay(5);
-      #endif
       u8g_SetAddress(u8g, dev, 0); /* instruction mode */
       u8g_WriteByte(u8g, dev, 0x081);
       u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 2);
       u8g_SetChipSelect(u8g, dev, 0);
-      #if ENABLED(MKS_MINI_12864)
-        u8g_Delay(5);
-      #endif
       return 1;
   }
   return u8g_dev_pb16v1_base_fn(u8g, dev, msg, arg);