-
After a request from Rutger to help test something, I downloaded and uploaded the latest release to my ESP. I have a custom-made PCB that can be placed on the matrix. What I noticed is that the VU meter, which can be turned on and off, responded even when there was no sound. The release that was previously running on my Mesmerizer was version 1.1.0. After testing the latest release, I realized that changes were made to the audio processing after version 1.1.0, which are not working in my favor. I created an issue, but so far, I have only received feedback from Rutger. I’ve tried everything, including using different microphones and modifying certain header files related to the VU meter. However, the VU meter still fluctuates even when there is no sound. I do not own the original Mesmerizer hardware, but can someone who does tell me which microphone is supplied with Dave’s hardware? I assume the original hardware does not have this issue; otherwise, more people would have responded to the issue. I would like to test the original microphone to see if it works correctly with my hardware. The AUDIO_MIC_SCALAR setting in later releases does affect microphone sensitivity, but the VU meter fluctuations persist. I've been playing around with these values: audioLevel, sensitivityFactor, BeatEnhance. I also added a threshold value (noiseThreshold) to filter out small fluctuations and noise (With the help of chat 🙈, this dummy here is not a programmer 😟). Sometimes, with some help, I manage to get things working, but this one isn't so easy! To make a long story short, who can help me with information about the microphone used in the original hardware? Greetz, |
Beta Was this translation helpful? Give feedback.
Replies: 15 comments 38 replies
-
I can only supply you with a picture. It is mounted on the circuit board. |
Beta Was this translation helpful? Give feedback.
-
I bought the mesmerizer kit from ebay a while back, which came with a hub75 panel & Dave's board. I've always had the VU meter turned off because I personally didn't like the distraction with the other effects. However, I just checked & can confirm that the VU meter never stays calm, and the audio reactive effects are always moving. |
Beta Was this translation helpful? Give feedback.
-
there are usually just two people answering. The first says it's not their
area of expertise (i get that). The second has remained silent so far :(
Mr. Second here. Same answer as Mr. First. :-) I just had (have) nothing to
add. Sometimes I intentionally keep my mouth shut because I know I'm
already overshadowing here. (I'm an acquired taste and know that in strong
doses can be an irritant.)
The only permanent blinky box in my life with a microphone is the official
Mesmerizer. I just don't do a lot of audio-reactive stuff, though I visited
the non-mic part of it (on Mesmerizer) when adding the SM effects some time
ago. The few times I've dived into the audio code to attempt to add audio
for a breadboard-class project, I've fled in frustration without success.
If you see that it's my PR that broke the code (I think I saw one of my
cleanups fly by in a list), I'll do everything I can to fix it. I don't
*think* I broke it, but I could be wrong.
That's kind of a tough thing about projects like this. I don't think any
one of us has every possible hardware combination, and it's not like we can
type 'make check' and have an automated build try everything. This project
is ahead of most in that it actually *compiles* all the time. (Thank you,
First. 😉 ) Even that takes a commitment of almost an hour of machine build
time per submit, and sometimes we *still* ask each other for help
validating things before they go in -you've helped with a couple of those.
So I don't think we're generally reckless.
I know it's not a very satisfying problem-solving approach (though, I do it
frequently), but you can time travel backward in time in Git and find the
CL that broke it. (That's more practical for you than for the chap with a
build from 2020 that may or may not have even ever been an official
build...see? I read things I don't comment on) If you can help with that
(apparently only you have *this* hardware...), then at least the two of us
that aren't experts can have a limited amount of code that we have to think
really hard about and/or have ammo to lean on the author of that change.
I'd love to have a large, active group of developers working on (and
supporting) this project, but we just don't.
RJL
|
Beta Was this translation helpful? Give feedback.
-
I know. That's why I didn't snap back at you. We're fine. :-)
…On Sun, Mar 30, 2025 at 9:34 AM Harke Bosgraaf ***@***.***> wrote:
Thanks robert, sorry i`m really frustrated! 😞
—
Reply to this email directly, view it on GitHub
<#706 (reply in thread)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ACCSD332BGJMN7DDNBC2O632W76IVAVCNFSM6AAAAAB2AD4IT2VHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTENRWG44DGNA>
.
You are receiving this because you commented.Message ID:
<PlummersSoftwareLLC/NightDriverStrip/repo-discussions/706/comments/12667834
@github.com>
|
Beta Was this translation helpful? Give feedback.
-
Assuming I am Mr. First in @robertlipe's explanation (this does start to feel like a numerical version of Reservoir Dogs...), I can confirm that I don't know the audio code. That stuff is really quite specific, and I don't have the mental space (right now) to learn what needs to be learned to say or do anything useful about it. Which is also why in the history of my involvement with this project I've never touched any audio code that actually changes how audio is interpreted or visualized. What I can say is:
Putting that aside, Robert's suggestion is a sensible one. It is possible for anyone to track back code changes that were made (in the audio processing parts of the code specifically), check out the state of the codebase at specific points in time, and compare how the VU meter acts across various versions. If we reach the point that the culprit is pinned down to a specific commit - or at least a short timeframe within offending changes have been found to be -, I'm happy to look at the audio code in question and try to figure out what it is I'm actually looking at, even if I have no existing expertise to fall back on. |
Beta Was this translation helpful? Give feedback.
-
Indeed. The First and Second thing came from
The first says it's not their area of expertise (i get that). The second
has remained silent so far :(
It was pretty clear who was being (un)named there, so I ran with that. I
probably should not try to be so clever when I know that I'm a minority in
the conversation as a native English speaker. Sorry.
Whether it's by translation (and I can tell you use a few different ones)
or your own English, your messages come through loud and clear to me. I'll
take a well-organized bugreport or conversation in even "broken" English
over a native speaker's sloppy thoughts every time. Your English is better
than my (non-existent) Dutch or Frisian. Besides, I'm partial to Towers of
(GPS) Babel <https://www.gpsbabel.org/people/robertlipe.html>. :-)
more people with the original hardware haven’t tested
I don't know how many of those boards are actually out in the wild, and I
don't need to, but I don't perceive that there is a large number of people
with those boards that are following the development tree. We have two in
this thread (thanks, gentlemen), but it doesn't seem like a lot. With
no data to back it, I suspect that a majority of the units sold are
unboxed, run the firmware that they shipped with, and don't even upgrade to
subsequent releases. Buyers and Builders can overlap some, but it's not
like we've seen any real support traffic for them or needed to help people
install PlatformIO or whatever. I suspect a majority are unboxed, go onto a
shelf, are tuned a bit with the remote, and blink forever.
As for development, I actually run for weeks at a time with as little
hardware as possible (often NO leds at all) for the kind of work I do on
this project. Sure, I touch-test configurations when shipping a
non-trival contribution. My mesmerizer can stay powered down (and
sometimes, even lost...) for months at a time. This was why I was so happy
to find that hardware in the video I sent you two - power, debug, jtag,
serial console, AND 256 lights, all from one cable on a board that'll fit
in your mouth. So, no, I don't have a permanent fixture that runs the
nightly builds to notice such things. That may change soon, but it's not my
current reality.
Unsurprisingly, Rutger and I are making the same offer. If you can help
track it down to one version that works vs. an adjacent version that
doesn't, even though neither of us has a great handle on that code, we'll
at least have a specific set of changes to scrutinize and may be able to
come up with something. Maybe we were quieting a warning, and a variable
incorrectly changed from signed to unsigned and can no longer swing
negative when it should, for example.
Together, I'm pretty sure we can get through it.
We had a similar case a few weeks ago where there was a change in the
screen handling on one specific brand of board. Neither of us "numbered"
contributors had (have) the affected hardware. The person with the hardware
identified a specific set of changes; together, we desk-checked a proposed
set of changes and worked with the user with the hardware to refine them,
and they all lived happily ever after.
We just need to get you to the "happily ever after" part of the story.
So we've confirmed that Mesmerizer on TOT is working as expected and it's
your custom configuration (not that there's anything wrong with that...)
that's being naughty, right?
RJL
…On Sun, Mar 30, 2025 at 2:06 PM Harke Bosgraaf ***@***.***> wrote:
Rutger, you really don’t need to apologize. I think I’m the only autistic
person here who even notices that the VU meter is still moving even when
there’s no audio. What surprises me the most is that no one with the
original Mesmerizer PCB has checked whether it behaves the same way. That’s
something I would have noticed right away, and if someone had asked about
it on the site, I would have pointed it out immediately!
I know the VU meter can be turned off, but being the way I am – if a
function exists, it should work properly! If someone had told me 28 days
ago that the original Mesmerizer hardware also behaves this way, I wouldn’t
have been so frustrated.
I really appreciate everything No. 1 and No. 2 do (and yes, I mean you,
Rutger, and Robert—this "dummy" actually looks up to you both!). And I
fully understand that this is not easy stuff!
I mean well, Rutger, but I also hope you understand where I’m coming from.
I just find it disappointing that more people with the original hardware
haven’t tested and confirmed this. The creator should have noticed this as
well, don’t you think? I know you’re the maintainer, but the creator also
has a few of these beautiful gizmos. Wouldn't he have noticed?
And sorry for how I’m bringing this all across. Your English is 100 times
better than mine! I have to translate everything from Frisian to English,
and that often leads to some Babylonian confusion! You guys can convey
things much more politely and sophisticatedly. When it comes to that, I’m
just a clumsy country guy! But take it from me, Rutger, I don’t take
anything for granted!
Harrie
—
Reply to this email directly, view it on GitHub
<#706 (reply in thread)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ACCSD36YN2B3B5IKSFTJMG32XA6E7AVCNFSM6AAAAAB2AD4IT2VHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTENRWHEZDIOA>
.
You are receiving this because you were mentioned.Message ID:
<PlummersSoftwareLLC/NightDriverStrip/repo-discussions/706/comments/12669248
@github.com>
|
Beta Was this translation helpful? Give feedback.
-
Unfortunately, I don't know if there's a way to easily search github to find commits that changed specific variables (assuming that's the case), but @heidepiek you could try increasing the |
Beta Was this translation helpful? Give feedback.
-
FWIW, there’s also a sensitivity jumper with 3 possible positions right next to mic… but it should be “right” with no jumper installed.
- Dave
… On Mar 30, 2025, at 3:14 PM, Damian Karlson ***@***.***> wrote:
Unfortunately, I don't know if there's a way to easily search github to find commits that changed specific variables (assuming that's the case), but @heidepiek <https://github.com/heidepiek> you could try increasing the VUDAMPEN, VUDAMPENMIN, and VUDAMPENMAX values in soundanalyzer.h to make the VU meter less reactive and then building/uploading to the board. VUDAMPEN is the most important as line 321 in soundanalyzer.h effectively sets the value of _VU to newval when VUDAMPEN is set to 0, which means it would react to everything the microphone can hear, whether or not the human in the room can.
—
Reply to this email directly, view it on GitHub <#706 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AA4HCF4SUW23C6Q7QUBP43T2XBUF7AVCNFSM6AAAAAB2AD4IT2VHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTENRXGAYDGNY>.
You are receiving this because you are subscribed to this thread.
|
Beta Was this translation helpful? Give feedback.
-
On Sun, Mar 30, 2025 at 5:14 PM Damian Karlson ***@***.***> wrote:
Unfortunately, I don't know if there's a way to easily search github to
find commits that changed specific variables (assuming that's the case),
but @heidepiek <https://github.com/heidepiek> you could try increasing
the VUDAMPEN, VUDAMPENMIN, and VUDAMPENMAX values in soundanalyzer.h to
make the VU meter less reactive
Those lines haven't changed in a while.
➜ nightdriverstrip git:(dbl) ✗ git blame include/soundanalyzer.h | grep VUD
28d2c6c (Dave Plummer 2023-02-26 11:45:38 -0800 87) #ifndef VUDAMPEN
26ed198 (Dave Plummer 2023-05-11 21:23:47 -0700 88) #define
VUDAMPEN 0 // How slowly VU reacts
28d2c6c (Dave Plummer 2023-02-26 11:45:38 -0800 91) #define
VUDAMPENMIN 1 // How slowly VU min creeps up to test noise floor
28d2c6c (Dave Plummer 2023-02-26 11:45:38 -0800 92) #define
VUDAMPENMAX 1 // How slowly VU max drops down to test noise ceiling
28d2c6c (Dave Plummer 2023-02-26 11:45:38 -0800 321) _VU
= (_oldVU * VUDAMPEN + newval) / (VUDAMPEN + 1);
28d2c6c (Dave Plummer 2023-02-26 11:45:38 -0800 330)
_PeakVU = (_oldPeakVU * VUDAMPENMAX + _VU) / (VUDAMPENMAX + 1);
28d2c6c (Dave Plummer 2023-02-26 11:45:38 -0800 338)
_MinVU = (_oldMinVU * VUDAMPENMIN + _VU) / (VUDAMPENMIN + 1);
Nickel tour for exploring this kind of thing:
You can do a 'git blame' on a whole file or group of files.: git blame
filea fileb filec
You can do a git log on a a file or files to see the history. In that
history is a big alphanumeric number. If you want to see the change, you
can then do something a 'git show 270e5cd'.
There's some editor in my life that shows the commit that changed every
line in the left gutter, but I just checked Cursor, visual\ studio\ code,
Windstar, Neovim, and CLion and didn't see it. Maybe I turned it off. (I've
been a bit promiscuous with editors lately...)
Message ID:
… <PlummersSoftwareLLC/NightDriverStrip/repo-discussions/706/comments/12670037
@github.com>
|
Beta Was this translation helpful? Give feedback.
-
Ah, I forgot about git blame! 🤦 |
Beta Was this translation helpful? Give feedback.
-
Nice work, everyone!
…On Mon, Mar 31, 2025, 3:04 PM Rutger van Bergen ***@***.***> wrote:
I think we should probably agree to call this teamwork. You narrowed down
the set of changes to consider to a manageable size, after all. 🙂
From my perspective the tricky bit actually starts now. The changes you
reverted *were* made with a reason, so now comes the challenge of
figuring out what code to keep in the long run. But that is solidly on "my"
territory, so to speak. I'll have a chat with Dave about it.
In any case, I'm happy to see you're feeling better than yesterday! 😉
—
Reply to this email directly, view it on GitHub
<#706 (reply in thread)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ACCSD34VXPCJE75W5JYHMFD2XGNT3AVCNFSM6AAAAAB2AD4IT2VHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTENRYGA4DOOA>
.
You are receiving this because you were mentioned.Message ID:
<PlummersSoftwareLLC/NightDriverStrip/repo-discussions/706/comments/12680878
@github.com>
|
Beta Was this translation helpful? Give feedback.
-
We'll even give some credit to Pikachu, who probably oversaw this
operation! Now we know how this panel is powered.
…On Mon, Mar 31, 2025, 3:15 PM Robert Lipe ***@***.***> wrote:
Nice work, everyone!
On Mon, Mar 31, 2025, 3:04 PM Rutger van Bergen ***@***.***>
wrote:
> I think we should probably agree to call this teamwork. You narrowed down
> the set of changes to consider to a manageable size, after all. 🙂
>
> From my perspective the tricky bit actually starts now. The changes you
> reverted *were* made with a reason, so now comes the challenge of
> figuring out what code to keep in the long run. But that is solidly on "my"
> territory, so to speak. I'll have a chat with Dave about it.
>
> In any case, I'm happy to see you're feeling better than yesterday! 😉
>
> —
> Reply to this email directly, view it on GitHub
> <#706 (reply in thread)>,
> or unsubscribe
> <https://github.com/notifications/unsubscribe-auth/ACCSD34VXPCJE75W5JYHMFD2XGNT3AVCNFSM6AAAAAB2AD4IT2VHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTENRYGA4DOOA>
> .
> You are receiving this because you were mentioned.Message ID:
> <PlummersSoftwareLLC/NightDriverStrip/repo-discussions/706/comments/12680878
> @github.com>
>
|
Beta Was this translation helpful? Give feedback.
-
Thanks, all! Just to clarify, I take no pride in the audio code of this thing - it was the first digital sampling I ever did, so everything from VU to spectrum analyzer to beat detection is made up without really knowing what the state of the art actually is for those things! It all evolved from blinking a single LED, and the path wasn’t always direct.
In other words, if anyone can make it better, please feel free! I define better as:
- Code smaller and cleaner than what’s there now
- Resultant visual effects as good or better than what it can do now
At the end of the day, how it looks is most important, how the code looks is next, but both matter!
- Dave
… On Mar 31, 2025, at 1:19 PM, Robert Lipe ***@***.***> wrote:
We'll even give some credit to Pikachu, who probably oversaw this
operation! Now we know how this panel is powered.
On Mon, Mar 31, 2025, 3:15 PM Robert Lipe ***@***.***> wrote:
> Nice work, everyone!
>
> On Mon, Mar 31, 2025, 3:04 PM Rutger van Bergen ***@***.***>
> wrote:
>
>> I think we should probably agree to call this teamwork. You narrowed down
>> the set of changes to consider to a manageable size, after all. 🙂
>>
>> From my perspective the tricky bit actually starts now. The changes you
>> reverted *were* made with a reason, so now comes the challenge of
>> figuring out what code to keep in the long run. But that is solidly on "my"
>> territory, so to speak. I'll have a chat with Dave about it.
>>
>> In any case, I'm happy to see you're feeling better than yesterday! 😉
>>
>> —
>> Reply to this email directly, view it on GitHub
>> <#706 (reply in thread)>,
>> or unsubscribe
>> <https://github.com/notifications/unsubscribe-auth/ACCSD34VXPCJE75W5JYHMFD2XGNT3AVCNFSM6AAAAAB2AD4IT2VHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTENRYGA4DOOA>
>> .
>> You are receiving this because you were mentioned.Message ID:
>> <PlummersSoftwareLLC/NightDriverStrip/repo-discussions/706/comments/12680878
>> @github.com>
>>
>
—
Reply to this email directly, view it on GitHub <#706 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AA4HCF7GJDMV3Q5K7J3RA5T2XGPNVAVCNFSM6AAAAAB2AD4IT2VHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTENRYGA4TQNQ>.
You are receiving this because you were mentioned.
|
Beta Was this translation helpful? Give feedback.
-
@heidepiek I've looked into it a bit, and I think I've narrowed down the culprit to one line in audio.cpp - one of the lines you reverted yesterday. I also have a thought on why that line is misbehaving, but I need to look into that quite a bit further. I'll only do that once I know I'm not barking up the wrong tree. I've put a branch together in my fork with just that line reverted (the other changes are the removal of trailing whitespaces and two unnecessary lines in types.h): https://github.com/rbergen/NightDriverStrip/tree/fix-vu-in-silence. Could you use that code to build and flash an image, and take a look at how the VU meter behaves with it? It would really help me figure this one out. |
Beta Was this translation helpful? Give feedback.
-
I just uploaded this version: https://drive.google.com/file/d/1CwaRdWt1S-GJaa7GpdrXTlYTeTjSDWGs/view?usp=sharing vu.test.mp4 |
Beta Was this translation helpful? Give feedback.
I would like to kindly thank you. This answer is really helpful! I think that quite a few people own the Mesmerizer board but don’t provide any feedback. Many thanks, Mr. Karlson!
Regards Harrie :)