Putting a headphone jack in a Fairphone 4
TLDR with this procedure you sacrifice the lower loudspeaker, but the upper one will still behave as normal. Calls and other audio seem to work just fine. There is some interference from internals that gets picked up by amplified speakers, I'm sure there's a way to filter it, this is mainly a proof of concept. This is not really a guide and I do not guarantee anything at all.
I really liked my Fairphone 4 except that it didn't have a 3.5mm jack like normal phones used to have. And my car has never heard of Bluetooth. So I started joking about drilling a hole in it.
I found this green TRS jack on a USB DAC and found it would fit inside. I took this photo with a DSi camera. Originally I thought I might be able to fit both the jack and the speaker, and I had this elaborate plan to make a cut in the mainboard and move the vibrating motor elsewhere,
but decided against it because I had no idea what losing that one contact would do. I did a test and found no major issues with removing the bottom loudspeaker. If I needed the phone to be loud, I'd hook something else up anyway. I bought a second loudspeaker and horrendously dissected it.
I used a knife. If you do this you should absolutely use a dremel tool and not a knife. Unless you don't have a dremel tool
The plan is, remove the speaker part. You do not have to completely de-laminate the two layers of plastic. Just this section of the bottom layer. The top layer has pretty colors and conductive tape and contacts for mysterious purposes. Maybe antenna.
Next, you must drill the hole. We're not quite sure what the case is made of, but it probably involves aluminum. I had a drill press and clamps, but I went to my friend's house. He doesn't have clamps or many drill bits, but he knows metal. The jack barrel was like 5.1mm in outer diameter, and after lamenting that all our bits were in imperial, we settled on a 7/32". We removed all components from the chassis including mainboard and screen before drilling.
Here, we went for a hole that was centered on the middle hole of the speaker grill. However, if you do this, you will need to also remove some more metal, because the jack will need to be kind of submerged in the floor. We also had to sand down one side of the jack paper thin to make it sit flat against the back of the screen module. In hindsight, I should have marked where the jack wanted to sit before drilling. This would have us drill at the edge of the case, but it would be closed off by the phone's back cover anyway so it wouldn't matter. Just plan out your hole instead of eyeballing it.
Unfortunately, we did not get any pictures of the fit after we were done. Probably for the best, so no one has to see the metal carnage.
Once it was in place, it was time to wire it. The speaker module presses a flat flex cable up against these two contacts on the board.
I originally managed to solder to the flat cable, but then made a mistake and tore the pads, so I ended up soldering directly to those spring pins on the mainboard. I used magnet wire for everything. I just connected both the L and R pins of the jack to this one speaker output because I didn't feel like probing out the top speaker connector and running wire up there just yet. Ideally I would have a switched jack that interrupts the top speaker, but that's for later. I might salvage something from an Apple device, their jacks tend to be compact.
Hot glued the thing in place, and this is the end result. It works just great with passive headphones. I'll upload a demo video when I get the chance, I've already used my 1 video. I wish I had taken better pictures, but it wasn't very convenient.
The caveats in the beginning apply. It's also way too loud because it's meant to drive a speaker, and it's balanced for that too. I might be able to put a resistor divider on there to reduce the output volume and let a louder signal drown out the interference a bit better?
I have no idea if this is a thing people do, putting audio jacks in their phones. But I would think that replacing the speaker like this would work on a lot of different phones. Maybe worth trying?