diff --git a/src/store/modules/Configuration/DateTimeSettingsStore.js b/src/store/modules/Configuration/DateTimeSettingsStore.js
index 9da0cb4..06aeefe 100644
--- a/src/store/modules/Configuration/DateTimeSettingsStore.js
+++ b/src/store/modules/Configuration/DateTimeSettingsStore.js
@@ -30,24 +30,41 @@
           console.log(error);
         });
     },
-    async updateDateTimeSettings(_, dateTimeForm) {
+    async updateDateTimeSettings({ state }, dateTimeForm) {
       const ntpData = {
         NTP: {
           ProtocolEnabled: dateTimeForm.ntpProtocolEnabled
         }
       };
-
       if (dateTimeForm.ntpProtocolEnabled) {
         ntpData.NTP.NTPServers = dateTimeForm.ntpServersArray;
       }
       return await api
         .patch(`/redfish/v1/Managers/bmc/NetworkProtocol`, ntpData)
-        .then(() => {
+        .then(async () => {
           if (!dateTimeForm.ntpProtocolEnabled) {
             const dateTimeData = {
               DateTime: dateTimeForm.updatedDateTime
             };
-            api.patch(`/redfish/v1/Managers/bmc`, dateTimeData);
+            /**
+             * https://github.com/openbmc/phosphor-time-manager/blob/master/README.md#special-note-on-changing-ntp-setting
+             * When time mode is initially set to Manual from NTP,
+             * NTP service is disabled and the NTP service is
+             * stopping but not stopped, setting time will return an error.
+             * There are no responses from backend to notify when NTP is stopped.
+             * To work around, a timeout is set to allow NTP to fully stop
+             * TODO: remove timeout if backend solves
+             * https://github.com/openbmc/openbmc/issues/3459
+             */
+            const timeoutVal = state.isNtpProtocolEnabled ? 20000 : 0;
+            return await new Promise((resolve, reject) => {
+              setTimeout(() => {
+                return api
+                  .patch(`/redfish/v1/Managers/bmc`, dateTimeData)
+                  .then(() => resolve())
+                  .catch(() => reject());
+              }, timeoutVal);
+            });
           }
         })
         .then(() => {
diff --git a/src/views/Configuration/DateTimeSettings/DateTimeSettings.vue b/src/views/Configuration/DateTimeSettings/DateTimeSettings.vue
index d7b97d1..7ce9cb3 100644
--- a/src/views/Configuration/DateTimeSettings/DateTimeSettings.vue
+++ b/src/views/Configuration/DateTimeSettings/DateTimeSettings.vue
@@ -330,6 +330,9 @@
             this.form.ntp.thirdAddress = '';
           }
         })
+        .then(() => {
+          this.$store.dispatch('global/getBmcTime');
+        })
         .catch(({ message }) => this.errorToast(message))
         .finally(() => {
           this.$v.form.$reset();
