Mystery Loss of Audio

One of my projects sometimes suffers a sudden loss of audio. The controls all work and the bade runs fine when this happens.

Reflashing cures the problem, but then suddenly it will just go quiet again at a random moment (usually when I’m trying to show it to someone for maximum frustration).

I just fixed it and was testing it and got the same glitch.

Continuity was good everywhere, but there was a jst connector between the speaker pads and the speaker. So I removed the connector (it was recycled from another project and may be weak), and reflowed the pads on the proffie and reconnected the speaker. At this point I hoped I’d just get audio without refreshing, but no luck (I had removed and then re inserted my SD card properly for soldering, of course).

I just reflashed and things are up and running, but if (when) this happens again, any suggestions as to a route to a complete repair or better diagnosis?

I’m using a version of proffie OS that’s sort of unofficial. It’s 7.14 with adjustments made to disable overdrive, and run Profezzorn’s Fireflies.

Config:

Thanks !

What about just removing power from the board? Does that fix the problem?

It’s a barrel jack and kill key set up, so that’s how I’m removing power.

No, it just keeps functioning normally in terms of controls and the blade with zero sound. But it has sound immediately after upload and then works fine for a while.

There is only one thing that can explain this behavior:

The volume gets changed/muted and then saved into global.ini on the SD card.

When you re-program the board, it updates the programming timestamp, which causes it to ignore save files on the SD card, thus resetting the volume.

You can use “get_volume” in the serial monitor to see if the volume is in fact zero, and you can use “set_volume” to set it back. Not sure what is setting the volume to zero though, but I assume it’s something in the prop.

1 Like

I think I might be forced replace the very expensive copper buttons with something with a definitive tactile click. The plunger tension causes a lot of bounce and is unreliable.

I’m using Fett263’s prop and looked at what I think are the mute events, but they all seem to have instructions to unmute on deactivation. For example:

 // Handle double-click with preon
      case EVENTID(BUTTON_POWER, EVENT_DOUBLE_CLICK, MODE_OFF):
        if (menu_) return true;
        if (on_pending_) {
          if (SetMute(true)) {
            unmute_on_deactivation_ = true;
          }
          return true;
        }
        return false;

Is that correct?

That was one thing that was confusing me: the saber does not unmute after turning off the blade.

I wonder if eliminating mute would help, perhaps just deleting the event from the prop. I don’t think so, since the unmute connected to muting is also out of whack.

Also, the menu options are all muted, which means that volume is set to zero globally. Is there a command in place in the prop to do this? Again, it feels like there isn’t.

Anyone have any ideas as to a next/preventative step?

I can’t seem to replicate the problem and just have to wait for it to happen again. So maybe I could make it not.

I think mute is the only thing that sets the volume to zero globally.
It might be as simple as doing something while muted that causes it to save that state, and then cutting the power before it has a chance to put the volume back. This is just speculation though, the cause could be something completely different.

1 Like