Yeah, I know that feeling, when nothign works and you have no clue what to blame. In the end it was the simplest thing, but you already changed everything else haha.
In my case, it's just hobbie. I always liked MCUs. Last time I worked with MCUs was 10 years ago. My current job is a lot more boring, no development, just testing and repairing.
I don't have currently any active project. I'm maintaining the T12 soldering fw and little else.
Now I'm just trying different things, to keep learning, but without any target.
Few months ago I did a few little things for my car:
- A bluetooth interface bridge. This is a 2003 radio all-in-one system (radio, phone, clima, navi) that can't be replaced. It has CD changer, but also tape!
.
I removed the tape mechanism and used the stm32 to emulate sensors / positions, and connected the bluetooth audio to the tape circuit.
When I use the factory controls, the stm32 recognize the changes and sends commands to the bluetooth control.
Much better since I no longer have to use the phone to skip songs. It really makes me nervous, I d'd prefer not getting fined, neither running over someone.
- Later, this was somethign I wanted since a long timer ago. To emulate the CD changer. there are commercial products in the 100-quid range.
I was sure I could do something a lot cheaper, and open source. It uses the Sony Unilink protocol (Actually, a Becker version, and old protocol (before CAN appeared) with very scarce documentation.
It was a lot of fun and challenging, because most sites were gone. Spent hours using archive.org site, looking for sites that had disappeared between 1999-2003.
I got it working after a lot of hours debugging with the logic analyzer. Then I connected a USB to the stm32, made folder scanning and automatic CD listing generation for the stereo.
But it came the moment to setup a software MP3 decoder (100MHz stm32 is more than capable). My plan was to use a I2S DAC.
It was getting hard, and as I didn't really want to use it, (I'm used to using Spotify+BT now), in the end I ditched it.
Uploaded the code to github anyways, as it was 90% done. Maybe someone can further develop it.