I recently experienced and resolved this issue on a 13-inch mid 2012 MacBook Pro, so I'm sharing the steps I took for the sake of posterity. Background: I have a 2012 MacBook Pro running a clean install of Linux. Right after installation, I noticed the laptop was prone to speed throttling and overheating. Troubleshooting: My first step was to run Apple Diagnostics by holding the D key on startup. This returned error codes PPF003 and PPF004, which according to Apple indicate a fault with the fan. I also used a third party tool to manually control the fan from Linux, and this reported the fan was intermittently spinning up and not cooling the laptop sufficiently. The temperature sensors would quickly reach 105°C, causing the issues with overheating. Solution: First, I opened up the rear of the laptop and cleaned the accumulated dust, particularly around the cooling vents. I then took apart the fan, cleaned it and applied a drop of sewing machine lubricant to the shaft of the electric motor. After reassembly,...
I have a pair of one-year-old JBL 500BTs which had this exact same problem. The contacts between the board and the speaker consists of a pair of springs and over time, one or both springs may lose that contact. Disassembly is as described by another poster, there are three screws under the foam and then the speaker can be gently twisted out of its enclosure. Inspect whether the springs are sat at the same level and using a small set of pliers or other appropriate tool, you can gently pull the spring such that it can make contact when the speaker is seated.