CDPRO2 Group Project (open source project)

Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.
Retired diyAudio Moderator
Joined 2002
Anyone interested in a group project for the cdpro2? (open source project)

Hello,

I built a cdpro2 project several months ago, coding the interface from scratch. I have quite a few pictures from the project here:
http://www.briangt.com/gallery/cdpro2
The microcontroller chosen was the PIC18F452

The cdpro2 unit built worked rather well, but needs a bit more development to make it work like a commercial product. Here is a list of the current features of the firmware:
- Fully functional DSA communication
- Basic play, stop, fwd, back, seek forward and back abilities
- Basic time display
- Basic remote control capability

There is enough capability to make it work as a diy player, but is rather lacking when comparing to commercial cd players. Here is a list of features that I had been planning to implement:
- Better RC5 code for the remote control (currently just works with Sony remotes) [there is free RC5 code available on the internet]
- More time display modes (really easy to implement)
- Programming features, like on commercial units
- Error generation (just need to insert some timeouts, in case errors occur during operation)

Here is the C source code for my current module:
http://brian.prohosting.com/cdpro2/TransCom.zip

Here is an evaluation version of the C Compiler that I used, which is functional for 30 days:
http://brian.prohosting.com/cdpro2/picc18demo.exe

I am putting this project out there, as I haven't had time to refine it into a great product. I created pcbs for the interface, which you can see in my gallery:
http://www.briangt.com/gallery/cdpro2-pcb2
The pcb can be modified a bit to add a few features and another run can be done if interest is there for it.

Here is some more information on the cdpro2:
-Nico's kit:
http://www.daisy-laser.nl/homeoptics/
-Technical documents on the cdpro2:
http://www.daisy-laser.com/products/CD/modules/CDPro2/technotes.htm
http://www.daisy-laser.com/products/CD/modules/CDPro2/downloads.htm

Let me know if you are interested in a group effort on this project to make it into a cd player interface worthy of a commercial product. I would like the resulting code to remain free to anyone on the forum who wants to use it. I would really like to make this project into a cheap, easy to build player. I have a whole lot of ideas for this project that could easily be implemented if this is a group effort. The software could also be open-sourced with a CVS database. Also, if a good final product is created, I would gladly put together and sell a cheap kit for it.

Here is a picture of my player as it is now:
An externally hosted image should be here but it was not working when we last tested it.


And another of the interface boards I created:
An externally hosted image should be here but it was not working when we last tested it.


Feel free to ask me any question about this project, as I spent a few months straight working on it for my senior design project at Georgia Tech.

--
Brian
 
Retired diyAudio Moderator
Joined 2002
Also, the control board that I made for the cdpro2 is not strictly intended for the cdpro2, and could be used for any project, where digital control in a small form factor is needed. I designed the initial prototype pcb to have about 20 available control pins, including extra ADC inputs. The button control interface is done using the built-in ADC unit on the microcontroller, so that it can easily be changed to use a different number of buttons with a change of the firmware, using the same single ADC input pin for all of them. Here is a schematic of the current control pcb (inspired by Mark Hennessy's schematic on his website for his pre-amp)
An externally hosted image should be here but it was not working when we last tested it.


The lcd interface on the board is a standard lcd interface, using the 4-pin "nibble" mode, so that any standard LCD can be used. The unit pictured in an Optrex 2x20 unit, which is made to fit almost perfectly with the Control PCB. I had also planned on adding an optical encoder, but decided that it isn't needed with the current interface for the cd-player, but the pins are there available for it.

I would love to make this into an open-source platform for many projects, such as a pga/relay based volume control similar to the previous Apox units. It is all possible in the end if people are interested.

Control PCB schematic:
http://brian.prohosting.com/cdpro2/control_schematic.gif

--
Brian
 
I bought a CDPro2M kit last week, because it was on sale somewhere (200 euro for the complete kit). I don't know anything about digital electronics (but I can program in C) , so I'm not much of a help in your project.

Btw I like your CD players a lot, bit I don't see the actual CDPRO2. I guess it is attached (bolted) below that thick square piece of aluminium? Still I would expect to see some part of it? I think I see a piece of the electronics below it (the internal DAC)

An externally hosted image should be here but it was not working when we last tested it.


Btw what did you think of the internal DAC?
 
Retired diyAudio Moderator
Joined 2002
Duck-Twacy said:
I bought a CDPro2M kit last week, because it was on sale somewhere (200 euro for the complete kit). I don't know anything about digital electronics (but I can program in C) , so I'm not much of a help in your project.

Btw I like your CD players a lot, bit I don't see the actual CDPRO2. I guess it is attached (bolted) below that thick square piece of aluminium? Still I would expect to see some part of it? I think I see a piece of the electronics below it (the internal DAC)

An externally hosted image should be here but it was not working when we last tested it.


Btw what did you think of the internal DAC?

I have the earlier CD-PRO2, and not the newer M version. I haven't really had a chance to fully finish the player. It currently has a TDA1541A dac, with a passive IV stage, so it doesn't put out too high of a voltage. It worked great for my school project, and I have plans to finish it, and replace it with my new TDA1543 DAC.

The cdpro2 is bolted to a 1/4" metal place, which replaces the stock metal place attached to the unit. I went for coupling the cdpro2 to a heavy mass. I am not sure if optimizing the suspension would have been a better choice.

There is a lot of room for improvement with the cdpro2 that I built for my project, which is why I am sharing all of the details of this project. I am hoping that it will give others a good starting point, and inspire some group efforts.

--
Brian
 
Hey Brian, I would also be interested in this project. I can also help out with some of the programming. I did just finish a CS degree from GaTech after all. Might as well put it to some good use :).

You also haven't been answering my emails either. Is there maybe a problem with your new chipamp.com email address? Maybe I'll give you a call sometime this week about picking up some extra GC stuff.

--Ferdi
 
Retired diyAudio Moderator
Joined 2002
ftjandra said:
Hey Brian, I would also be interested in this project. I can also help out with some of the programming. I did just finish a CS degree from GaTech after all. Might as well put it to some good use :).

You also haven't been answering my emails either. Is there maybe a problem with your new chipamp.com email address? Maybe I'll give you a call sometime this week about picking up some extra GC stuff.

--Ferdi

I am a bit behind on answering e-mail, as my wife and I just finished buying our first house last week. I have been over at the new house all weekend painting, and haven't had internet hooked up yet. I will catch up on mail soon. As for the kits, I have all the parts now except for the 1500uF caps, which should arrive on Tuesday, then you can come pick up more stuff for kits.

I started out at Tech as a CS major for the first 2 years, then decided to change to CMPE -> EE. The source code that I posted is currently in C. All of the DSA (assync. serial protocol for interfacing with the cdpro2), is done, so the user interface should be fairly easy to write, without too much knowledge of the microcontroller.

--
Brian
 
Retired diyAudio Moderator
Joined 2002
I have gotten a couple of requests for the board files, and I will post them, but they need some revisions first. Any suggestions for new features that need to be put on them, or a desired button configuration?

I never got boards made for the regulated power supply, using LT1085 regulators.

--
Brian
 
Hi Brian,

I think that we could impove the controller interface by adding a "PSU sequencer".

Actually, the sequence to follow for starting the PLAYER must be this one (according to the CDPRO datasheet) :

1- Starting the controller board
2- Starting the LCD
3- Starting the DAC
4- Starting the +5V of the DRIVE
5- Starting the +9V of the drive
The delay between each sequence could be managed by the controller instead of adding some RC cellules.

The controller will switch on/off some 5V relays to enable this sequence.

At this opposite, when switching off the CDP, the sequence must be :

1- Stopping the +9V of the drive
2- Stopping the +5V of the DRIVE
and so on..
 
suggestion

How about provisions for a programmable stepper motor drive, to drive a hinged top cover? It could be provide a variable acceleration profile for the opening and closing sequences, to give a 'thudless' closing and opening, based on parameters like cover mass & CG, ect....

Or is this getting too silly & complex?
 
Retired diyAudio Moderator
Joined 2002
Re: suggestion

gilid said:
How about provisions for a programmable stepper motor drive, to drive a hinged top cover? It could be provide a variable acceleration profile for the opening and closing sequences, to give a 'thudless' closing and opening, based on parameters like cover mass & CG, ect....

Or is this getting too silly & complex?

Silly & Complex? Not at all! The control board has a bunch of extra pins, which could easily be used for controlling external devices. I actually want to make a module for controlling the ML cd lid that I bought a while back. It uses a linear actuator:
http://www.briangt.com/gallery/cdpro2-lid

It would be best to dedicate control pins to a task like this, which would go to a daugherboard. The control could be done with remote, or the open/close button on the button pcb:
http://www.briangt.com/gallery/cdpro2-pcb2/cdpro2_new_1?full=1

The button pcb can be customized easily, adding or subtracting buttons, since it is just a voltage dividier circuit, using the ADC. With the 10-bit ADC precision, 16 buttons could easily be handled by the one ADC pin without troubles with resolution. Circuit for button:
http://www.briangt.com/gallery/cdpro2-pcb/buttons_schematic?full=1


As for the power supply, this is a good idea also, which could be done with a daugherboard also, using a driver chip and relays.

--
Brian
 
lid drive system

Brian,

The linear actuator certainly looks cool....where did you get it? Any idea of the cost? I was considering a classical gear driven system, using a stepper motor.

What are the drive requirements of the linear device? Do you know how it works internally? ( the linear drives I have experience with are DC motor operated ballscrew actuators).
 
Retired diyAudio Moderator
Joined 2002
Re: lid drive system

gilid said:
Brian,

The linear actuator certainly looks cool....where did you get it? Any idea of the cost? I was considering a classical gear driven system, using a stepper motor.

What are the drive requirements of the linear device? Do you know how it works internally? ( the linear drives I have experience with are DC motor operated ballscrew actuators).

I bought it from a guy selling ML (Mark Levinson) stuff, and he only had 2 of them:
http://www.zenn.com.sg/mark_levinson_parts.htm

It just requires applying a voltage of 15v, and if you reverse the direction, it will go the opposite way. Here is a picture of the actuator label:
http://www.briangt.com/gallery/cdpro2-lid/lid_electronics?full=1

--
Brian
 
As for the power supply, this is a good idea also, which could be done with a daugherboard also, using a driver chip and relays.

This is a very cool add on idea. As the power supplies are all coming on at the same time with the application of the AC power switch, I would only have to root the DC through the appropriate relay for power up and down sequencing. Would you be willing to build a couple of daughter boards and program a new PIC?

Regards

Anthony
 
Re: Re: suggestion

BrianGT said:
As for the power supply, this is a good idea also, which could be done with a daugherboard also, using a driver chip and relays.

--
Brian
I was previously thinking of adding these relays at the end of my PSU board (before the connectors).

But finding +5V relays is an issue....

You could find my board here (as well as the DAC) : (File PSUZERS.ZIP in french sorry..) :
http://www.homecinema-fr.com/forum/viewtopic.php?t=29694301&start=645
 
Brian,
I have been planning this for a while and your control board was a real boost to my Priority List! :)

I have the original control board but I do not like the VF display.
My plan is to buy another Apox front panel and modify the firmware to output DSA. However, it may be useful to have I2C for controlling any number of external modules, such as stepper motor drivers, remote links to various manufacturers, 12V links etc etc. It'd be easy to modify the board to control them. I have the Apox front panel firmware source code but I'm not sure how happy Dale etc would be if I handed it around.

Anyway, that's my plan - maybe its worth considering.

Good luck! :)
Gaz
 
Hi there,

what a coincidence...

Yesterday evening, I've just taken apart my old CDP in order to gather all the information I need to come up with a new control and display board (there is a thread about it).

The drive contains a Philips CDM 12.1/15, a cheapish plastic transport which works excellently well with regard to copy protection and scratched discs!

The LSI controller is a Panasonic MN66271, featuring a two-wire interface, I haven't determined the protocol yet.

Chances are, this is an I2C interface (lines are clock and data with an additional load enable line)? If this is the case, I'm in to participate, as such an interface and display controller is all I need to be happy.

Again, what a coincidence!

Do you guys think that the interface protocols and command sets are compatible? There seems to be no documentation available...
 
Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.