From 9a07c24d8fac113e264da2ed89f6901a4336391b Mon Sep 17 00:00:00 2001 From: Martin Brodbeck Date: Fri, 16 Feb 2024 20:05:03 +0100 Subject: [PATCH] Iambic B fixed --- src/keyer.cpp | 15 ++++++--------- src/keyer.h | 1 - 2 files changed, 6 insertions(+), 10 deletions(-) diff --git a/src/keyer.cpp b/src/keyer.cpp index 346ce5b..7d0412e 100644 --- a/src/keyer.cpp +++ b/src/keyer.cpp @@ -80,18 +80,17 @@ void Keyer::run() if (!m_currentlyKeying) { m_currentlyKeying = true; - m_bothPaddlesPressed = (left_paddle_pressed() && right_paddle_pressed()) ? true : false; m_keying_until = make_timeout_time_us(m_elementDuration); gpio_put(LED_PIN, 1); m_Sidetone.on(SIDETONE_FREQ); } else { - // If both paddles are released during this dit -> note for Iambic B - if (m_bothPaddlesPressed && !right_paddle_pressed() && !left_paddle_pressed() && !m_keyNextIambicB) + // If right paddle üressed -> note for Iambic B + if (right_paddle_pressed() && !m_keyNextIambicB) { + printf("Iambic B -> lang\n"); m_keyNextIambicB = true; - m_bothPaddlesPressed = false; } if (absolute_time_diff_us(timestamp, m_keying_until) <= 0) @@ -108,18 +107,17 @@ void Keyer::run() if (!m_currentlyKeying) { m_currentlyKeying = true; - m_bothPaddlesPressed = (left_paddle_pressed() && right_paddle_pressed()) ? true : false; m_keying_until = make_timeout_time_us(m_elementDuration * 3); gpio_put(LED_PIN, 1); m_Sidetone.on(SIDETONE_FREQ); } else { - // If both paddles are released during this dah -> note for Iambic B - if (m_bothPaddlesPressed && !right_paddle_pressed() && !left_paddle_pressed() && !m_keyNextIambicB) + // If left paddle pressed -> Note for Iambic B + if (left_paddle_pressed() && !m_keyNextIambicB) { + printf("Iambic B -> kurz\n"); m_keyNextIambicB = true; - m_bothPaddlesPressed = false; } if (absolute_time_diff_us(timestamp, m_keying_until) <= 0) @@ -196,7 +194,6 @@ void Keyer::run() m_keyNextIambicB = false; m_currentlyPausing = false; m_currentlyKeying = false; - m_bothPaddlesPressed = false; m_previousState = State::Abort; m_state = State::Wait; break; diff --git a/src/keyer.h b/src/keyer.h index 498ba47..90ce97c 100644 --- a/src/keyer.h +++ b/src/keyer.h @@ -43,7 +43,6 @@ private: bool m_currentlyKeying{false}; bool m_currentlyPausing{false}; bool m_keyNextIambicB{false}; - bool m_bothPaddlesPressed{false}; }; #endif \ No newline at end of file