Anyone interested in a group project for the cdpro2? (open source project)
I built a cdpro2 project several months ago, coding the interface from scratch. I have quite a few pictures from the project here:
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:
Here is an evaluation version of the C Compiler that I used, which is functional for 30 days:
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:
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:
-Technical documents on the cdpro2:
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:
And another of the interface boards I created:
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.
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)
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:
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)
Btw what did you think of the internal 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.
Hello Brian, it's good to see you surface in some other forum other than a GC oriented one.
How have you been? You do not seem to answer my eamils anymore.
Your not replying to my email why not ?
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.
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.
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.
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..
|All times are GMT. The time now is 01:05 AM.|
vBulletin Optimisation provided by vB Optimise (Pro) - vBulletin Mods & Addons Copyright © 2014 DragonByte Technologies Ltd.
Copyright ©1999-2014 diyAudio