- Finish SigmaDSP code
- Finish Main PSoC code
- Update Python code that runs on Raspberry Pi
- Update Display PSoC code with implementation of SPI interface.
This whole thing started when I saw first time this Beosound 9000 CD player designed and manufactured by Bang & Olufsen (BeO). At that time it looked amazingly, like some sort of spaceship (at least to me).
Moving forward, few years back I manage to buy this player! It was faulty and I spent some time learning peculiarities that BeO engineers introduced inside this unit. In the end, I manage to bring it back to life and it is now fully working, every day used unit. But during that process of working on this unit, something changed… I caught a bug for BeO audio equipment. I especially started to like products designed by BeO designer Jacob Jensen. If you are interested, have a look here and here. That gentleman described his own design philosophy as “different but not strange” and I agree with him 100%.
One of his designs, which was BeO response to far-east stackable sound systems was called BeoSystem 6500 (more here and here). It’s beautifully simple interface with spectacularly looking remote controller really makes an impression on everyone. I bought one of those (faulty again) and brought it back to life as well. It is great but it is a system designed in late eighties. Tapes are no longer popular sound carriers. Records definitely have characters but system on its own needed upgrade with access to more recent audio features. Keep in mind that Bluetooth interface was not even thought about when this unit was manufactured. I decided to something about it.
Entering BeoModern concept.
I was thinking about something that might work well with rest of the system. I talked with my wife what she thinks about it and she mention term “modern” I thought this is great. It would also be a tribute to exhibition that BeO held at NY MOMA in seventies displaying Jensen designs (more here). BeoModern name was born.
Second, what is it?
In terms of details what is supposed to be and do. I wanted this unit to:
- Be able to store and easily play mp3 and flac files that I collected over the years,
- Have ability to receive and play DAB radio stations,
- Play internet radio stations,
- Receive and play audio sent over Bluetooth (using latest BT codecs)
- Transmit audio played by audio system over Bluetooth (using latest BT codecs)
- Display FM radio station names and FM RDS information,
- Display clock.
- Blend and look identical as rest of the system therefore preserving eighties look.
- Work seamlessly with existing unit and its remote controller interfaces.
When I thought about all of it I had vague idea of the challenge but it ended up actually much more difficult than I thought. I definitely learned great deal of different things while playing with it. At this point in time I’m probably 70% done with clear vision how to finish it. Now, it is just a matter of more time invested into it.
In terms of what it already done.
On hardware side:
- Power supply solution. Since unit is quite multifunctional and build from different blocks (different EVBs and other pieces I had laying around), not all its blocks needs to be ON all the time. I designed PSU solution that is software controllable and enabled only blocks that are needed for particular mode of operation.
- Raspberry Pi and DAB radio module. I had RPi 2. I also decided to use uGreen DAB solution. Since it utilizes newer RPi interface I had to produce little interposer board in-between DAB module and RPi. I used that interposer to get access to I2S signals from DAB as well as for UART interface and GPIO signal to control RPi. On that board there is also small LDO that powers external LNA only that is only needed when DAB or FM radio is in use (again to save power).
- Audio interfaces. I found this great EVB from ADI. It contains SigmaDSP uP (ADAU1452...