lördag 17 december 2011

Pioneer CJ-V50 and PD-MV55

I have been working a bit with the cabinet of the Star trip but also started a new project, not really pinball related but interesting anyway.

I have been helping a friend to repair some Pioneer PD-MV55 CD changers used in the jukebox CJ-V50 and some other models. The problem is that the most common fault in these is worn out laser and the laser is no longer available as spare part. So I would instead try to replace the CD player with an MP3 player. There are already such kits to buy, but to build it my selves is more fun.
The jukebox consists of three main units: amplifier, control unit and CD changer. The control unit can handle up to three changers. The communication between the control unit and the CD changers is done by a serial bus. So the first step was to analyze the data sent through this bus and see if it is possible to understand it.

Analyzing serial data can be quite complicated, the first thing to find out is the baud rate used. I used an oscilloscope and measured the timing of the start bit of a data package and got it to 4800 baud.
To be able to see the data transmitted I tapped the Rx and Tx of the PD-MV55 to the Rx of serial1 and Rx of serial2 of an Arduino Mega and wrote a short program that eco the data received to the USB port of the PC and in to the Arduino serial monitor and, all I got was crap. I rewrote the program to also eco out the data received at Rx to the Tx of the same port to be able to measure the timing with the oscilloscope and verify that I had chosen the proper baud rate. When I started looking at the Rx and Tx from the Arduino I immediately saw the problem. The serial data in the jukebox are inverted, inactive state of the line are 0 v instead of the usual 5v in a TTL serial communication. Consulting the service manual of the jukebox I found that the data was inverted by an IC in the control unit and then inverted once again by a transistor in the CD player. I added a 74HC14 inverter in serial with the data to the Rx of the Arduino and suddenly I had ASCII characters streaming in to the serial monitor.

I have now made some tests and I am quite sure that I understand most of the messages passed between the two units. There are still some question marks, but I don’t think they are important for the functionality of what I want to do.
Next step in this project is to write an Arduino program to emulate the PD-MV55. It does not have to actually play any music yet, just communicate with the control unit, receive disc and track selections and give the proper feedback to the controller. But that’s for another day.

måndag 5 december 2011

Gameplan Star trip

Today I restarted an old project that has been resting for a while and this machine is missing some bits and pieces.

 


Someone has ripped the flipper coils and coil stops out of the playfield and also the line filter is gone. These are standard parts and can be replaced but the saddest thing is that both the CPU and solenoid driver board is missing.



  I have a CPU and a solenoid driver board in my Coney Island and I have been thinking about to use these two in this machine, since it is in much better shape than the Coney.
For the Coney then I’d like to build my own solenoid driver and a new CPU using an Arduino Mega board. It’s just thoughts this far, nothing decided yet. Another thought is to replace the original sound board with a Rogue Robotics rMP3 shield and play MP3 sound effects instead of the sn76477n generated sounds.