ARCHIVED FORUM -- March 2012 to February 2022READ ONLY FORUM
This is the second Archived Forum which was active between 1st March 2012 and 23rd February 2022
The manual doesn't say anything about a repeat function, so...
Generic Philips design?It doesn't look that way, but they're using the Philips CDM2 pickup on early models and switched to CDM4 later. If you have details on the data interface you can happily hack away. There's probably not much point in trying to get to the firmware in the uControllers. They're usually copy-protected. Or maybe not! It was the mid 80's after all. You can try to read the MAB8461 (5IC4). That should be the controller doing the simple control functions.
ummagumma:Thx for the input! I thought I'd read here it was based on a standard Philips CD player. Maybe it is just the transport
Well, in a way, every CD player is pretty much built like the first Philips player. You have the control circuits for the CD drive motor and the laser focusing and positioning sytem, which is part of the laser pickup or the complete CD-mechanism subassembly. Behind that there's the decoder, D/A converter and pre-amp and then one more circuitry for add-on functions like display, tray control, device buttons, etc.
What do you have in mind? Are you thinking of taking a board from a Philips player with repeat function and connect it to the CDM4 laser pickup in the CD5500?I can almost guarantee it that won't work! Just last week I looked at the elaborate tray mechanism that B&O designed for the CD5500. They definitely coded their micro controllers themselves! It was one of their big marketing arguments: shorter time from loading CD to playing music than any other player in the market.
ummagumma:Well I was hoping there was a voltage location I could jumper or add a switch to, to get it to restart the playback
No such luck, I'm afraid! If you look at the block diagram in the service manual, you can see that the DIN socket used for datalink with the controller goes to the MAB8461 controller. That means all start, stop, fast forward, etc commands are being processed by this uProcessor. You can also see an I2C link to the MAB8441, which is basically the closed loop controller for the laser subsystem including the laser positioning motor.
ummagumma: I did discover a curious behaviour that might be manipulated: when programming a sequence of tracks via the big beomaster, it restarts playback after you have finished
Interesting! That's probably a feature by design. But the signal to repeat the programmed tracks quite certainly comes via I2C bus.And then there's the question whether they coded one specific bit code as a repeat signal or whether the CPU, be it 8461 or the controller in the Beomaster, have a subroutine that goes back to the beginning of the programmed playlist after the last song. Somehow I fear it's the latter, in which case even a signal analysis with a logic analyzer won't do much good.
But anyway, at least you found a workaround that offers the repeat functionality.
Sorry, I couldn't help more!
Here's a short recap for future readers who plan to hack the CD player control commands (and corrections to some of the things I said above):
*) Forget about trying to read or copy the original programming from the CPU's MAB8441 and MAB8641 -- you can't. Both chips are mask-programmed, ie. ROM programming is part of the manufacturing process, and you can't access the ROM from the pins. ROM can only be accessed on the 40pin version of the chips, which offer an option to switch between internal and external memory.
*) There is no physical pin or connection in the system that switches 'repeat mode' on or off. Any playlist programmed on the MCL controller is probably stored in MCL memory and a repeat feature needs to be handled by that CPU (ie. as soon as the MCL CPU gets the info that playback is finished, it needs to loop its program and restart)
*) The controller chip MAB8641 on the CD5500 has only 2 physical inputs for user interaction that allow operation without having an MCL controller connected: Start/Stop and Tray open/close.
These facts show that there are 2 potential options for a successful hack:
A) write your own controller to replace (or meddle with) the MCL controller and its signals. (This needs some skills in micro processor programming)- download the datalink manual from the internet. It shows the physical specs of the datalink protocol (volrtage levels, transmission speed, telegram structure, etc but NOT the actual commands used in the data block)- connect a logic analyzer to the single wire datalink pin on the DIN socket and record and analyze the actual addresses and command bytes that are being sent back and forth- get any modern microcontroller prototyping board (which you can get for around $10-40 and includes everything you need for programming and debugging) and write your own controller in any way your heart desires
I'd say the whole process can be accomplished in 1-2 days if you have some basic experience and skills in micro controller programming.
B) build a small logic circuit with 2-3 transistors that acts directly upon the play/stop input of the MAB8641 chip- a 'repeat switch' will have to activate/deactivate the circuit- you will have to find a signal that indicates the end of playback, which will trigger a new start signal. I haven't found any obvious candidate for this signal but if you play around with the CD player you may find a physical signal (probably on the 8441) that can be tapped.- the downside is that this will probably only allow linear playback and not playlist playback. Also I'm not sure what any connected MCL controller will do with the signals coming from datalink. This would have to be investigated.
If anybody finds the time and passion to try this, it would be great if you could post your experience and the results in this forum!
Cheers & happy hacking, manfy