evert-arias / EasyBuzzer

The Beep Library For Arduino

Home Page:https://evert-arias.github.io/EasyBuzzer

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

mOnDuration value changes permanently, is it bug or feature?

mrNo0b opened this issue · comments

commented

I use this library with ESP32 Devkit v1
I noticed that if I call EasyBuzzer.singleBeep(720, 600); for example, it will set beep duration to 600.
but then if I call EasyBuzzer.beep(420, 2); this should beep twice, but because I called the singleBeep before with duration of 600 now when I call beep it will also have duration of 600.
I don't know if its a bug or by design but I don't think its the correct/expected behavior...

Steps to reproduce:

  1. run beep function first - it should play for the default duration (100)
  2. run singleBeep function and set the duration parameter
  3. run beep function again - now it will have the duration that you set when called singleBeep

To quickly "fix" it I added this code:

  mOnDuration = DEFAULT_ON_DURATION;
  mOffDuration = DEFAULT_OFF_DURATION;
  mPauseDuration = DEFAULT_PAUSE_DURATION;

inside the if statement at

if (!sequenceDuration || (mSequences != 0 && elapsedTime / sequenceDuration >= mSequences))

I don't think its the best fix but it worked...