Ericzundel/fix dvolume Resolves #3, library requires changing WaveHC.h DVOLUME to 1 #5
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
It's Halloween again. I dug out an old WaveShield kit, soldered it up, and started playing with it for the makers in my school's makerspace. It didn't work right away. Having used this before in a previous project https://blog.adafruit.com/2009/09/04/electric-plunger/, I knew that it used to work.
I quickly found the issue in #3 which is a few years old.
Essentially, the WaveHC library 1.0.2 and beyond is currently broken out of the box which really stinks
when using the Arduino Cloud IDE. I saw the proposed patch #4
which was not accepted. That patch allows the software to work again, but the code
is still broken if you try to disable software volume, which would be useful for playing
44kHz WAV files.
My fix turns DVOLUME back on by default and changes a hard error when it is set to 0 to a warning.
To test the changes, I found and fixed some other issues, updated a few comments, and fixed some formatting issues.
doesn't apply to a supported platform of the library please mention it.
I only tested my change using an Arduino Uno.
I saw different files in the repo that looked like they are related to CI testing ( .uno.test.only, etc) but I don't understand how they work since these examples have to be run and examined manually.
I went through all the examples and ran them. When I went to test the code, I ran into a number of issues.
tests to work and updated the documentation in the code.
SdReadTest to fail on my 32 GB SD card.
See related PRs #7 and #8.