From 07a4524fbfeb4b02b88bc17c77325c372cc99ec0 Mon Sep 17 00:00:00 2001
From: ir-mark <mark.spinnenweber@iridium.com>
Date: Tue, 20 May 2025 13:34:32 -0400
Subject: [PATCH] Issue #723 - Fix hang in noTone()

---
 cores/arduino/Tone.cpp | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/cores/arduino/Tone.cpp b/cores/arduino/Tone.cpp
index 37b6b0b0d..010a0c497 100644
--- a/cores/arduino/Tone.cpp
+++ b/cores/arduino/Tone.cpp
@@ -169,7 +169,10 @@ void noTone (uint8_t outputPin)
    */
   if(firstTimeRunning)
   {
+    NVIC_DisableIRQ(TONE_TC_IRQn);
     resetTC(TONE_TC);
+    NVIC_EnableIRQ(TONE_TC_IRQn);
+
     digitalWrite(outputPin, LOW);
     toneIsActive = false;
   }