Skip to content

mOnDuration value changes permanently, is it bug or feature? #22

Description

@mrNo0b

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...

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions