DIY CD drive based on a computer CDROM

Sadly the other guys seem to want to stay in their comfort-zones and use only what they know. I like learning.
That one hurts :bawling:

You are of course right with what you say, but: I don't want a C programming course, I want a CD ROM controller. I do have a working toolkit to get this thing working, so why should I spend weeks and months to get used to another one?
I don't mind using C code, but in that case I can't very much contribute to this project. You may post the source files later on and tell me what buttons I have to press on the compiler for obtaining hex-files :D

Perhaps it is a little too early to care for this point. As someone stated earlier, it would be much more useful to develop common solution strategies for this project. Means: We need flowcharts first, we need to know which commands we have to apply to the drive to get a certain effect.
If the basic structure is layed out, we can go on struggling for platforms nd programming languages...
 
Hi HBarkse

I totally understand where youre coming from.

If we develop a conceptual framework to start with as you suggested, at least everyone will have somewhere to start from.

Then we can possibly follow two threads, one developing in C and one in assembler, as suggested by DJ. Once the concept is fully developed the code goes pretty quickly. A reasonably competent embedded designer should be able to put it together in a day or two.

Its the process and method of implementation that consume time.

I have begun to raid our IT department for suitable scrap players although the price of new players is so low I may just buy one. I was hoping to find one on the old 16X constant angular velocity CDROM's. Basically the CD platter speed is constant while the bitrate of the laser pickup is varied. Therefore at 1X one can get some serious oversampling. :nod:

Im really looking forward to seeing some finished products. The level of creativity on this forum never ceases to amaze me.

ciao,
Stuart
 
What to do?

Can we summarize the features again and lock in the phases.

Suggestion:
Phase 1) Make it work as a CD player.
  1. Power Supply
  2. Use Digital Audio Out (performance evaluation)
  3. Suggested List of Players for various international regions
  4. Mechanical Issues (how to keep it from flying across the room)
    [/list=1]
    Phase 2) Replace the stock operation with MCU
    1. Play/Stop button
    2. Eject button
    3. Track buttons
    4. Hitachi compatible 4bit display
    5. On power up we should display our CD project's name and the name of the builder, while we check to be sure that everything is ok.
    6. Set options to EPROM saved settings such as speed etc.
    7. If we have a CD in the drive we should begin playing it.
      [/list=1]
      Phase 3) Buffered operation to eliminate jitter
      Phase 4) Support for MP3 CDs (just a thought)


      This is just a list to stimulate a discussion of a project plan.
      Gregory
 
4bit Display

Sorry, we probably can use 8 bit display mode as we will have the entire bus anyway.

here is an example:

While this shows a pic, I think it does show the bus(es) and even with ram buffer. This picture is from this site:
http://www.barrymichels.com/ide/
 

Attachments

  • picschem2.gif
    picschem2.gif
    31.7 KB · Views: 3,939
Hello guys, this project looks great!

I am a second year EE student, and would love to contribute what I can to the project. It looks like no one here has really started work on the power supply yet, so I think I will investigate that.

Would seperate supplies (one for logic board and one for the drive) be recommended? What voltages do we antipate the logic board requiring? 5V only?

I have an older Teac 36x CDROM drive, built like a tank, that I would love to use for this project :cool:

BTW, I have to voice my prefecrence for PIC chips as I have a PIC programmer :eek:
 
I don't think we will need anything but +5 volts and + 12volts.
The label on my AOpen 56x drive states:

+5 V: 900 mA
+12 V: 1500 mA

I think we can be quite sure that 12 volts are for the motors only.
As we won't run the drive at full speed, we certainly won't need that much current.
Also half an ampere seems a lot for +5, I'd think the built-in headphone amplifier will take most of it.

The controller circuit will need +5 only (or is anyone willing to go for 3,3V logic...?), as long as we stay with LCD and LED displays. VFD and other types may need additional voltages.
The controller circuit and the display shouldn't take more then 50 - 100 mA maximum.
 
Holger - my CDROM shows power requirements of 12V 1.2A, 5V 1.1A, so I will make sure to build in some head room as far as current capacity is concerned, just to be safe.

I wonder if it would be a wise idea to sort of limit the power supply for the display to anything that is 100% LCD compatible? (ie, Noritake make "drop in replacement" VFDs) Regardless, I will have to research alot and listen to advice from those much wiser than myself :eek:
 
ghetto said:
Hello guys, this project looks great!

I am a second year EE student, and would love to contribute what I can to the project. It looks like no one here has really started work on the power supply yet, so I think I will investigate that.

Would seperate supplies (one for logic board and one for the drive) be recommended? What voltages do we antipate the logic board requiring? 5V only?

I have an older Teac 36x CDROM drive, built like a tank, that I would love to use for this project :cool:

I believe that a good power supply for the CDROM will make it sound much better than use computer PSU.
So the point is to build a strong power supply for CDROM,
for instance, providing 5V and 12V seperately.

For controller, it's no need to worry too much, meet the controller requirment would be fine.



HBarske said:
I don't think we will need anything but +5 volts and + 12volts.
The label on my AOpen 56x drive states:

+5 V: 900 mA
+12 V: 1500 mA

I think we can be quite sure that 12 volts are for the motors only.
As we won't run the drive at full speed, we certainly won't need that much current.
Also half an ampere seems a lot for +5, I'd think the built-in headphone amplifier will take most of it.

One thing should make sure is the "start-up" current of the CDROM maybe much larger than we think.
So the better way is follow the label spec. would be more safety.
 
I agree that whatever the language, the strategy should be the same and that we therefore need to start with flowcharts etc. I'm willing to draw up a preliminary flowchart tomorrow afternoon unless someone else does so before then. I will post it on Saturday.

ghetto, you might have noticed that I have previously suggested someone start designing the PSU, so you are welcome to do so. I would suggest three completely separate supplies (+12V for CDROM, +5V for CDROM & +5V for control circuit) to ensure maximum output stability. The grounds should obviously be connected with ferrite beads (good), opto-isolators (better) or TI's ISO150's (best). I would also prefer if all supplies were built discretely instead of using IC's such as LM78xx, and it should definitely NOT be switchmode supplies since this can cause noise and/or jitter.

You said you are second year... Do you have a course in differential amplifiers and voltage regulators this early in your programme? Here we only have it in the third year.

I eagerly wait to see what you can muster up for us.

Good luck to all.

DJ
 
DJ -

Unfortunately I have not yet had a course in differetial amplifiers or voltage regulators. Also unfortunately (for me, not for this project) is that I have to wait to begin my third year until January for various reasons. :(

I agree 100% about three totally seperate supplies though, and the grounding methods! I am glad to see you have as much attention to quality and detail as I do...

Also, I'd like to add that while I too would much prefer a discrete implementation, I have come across a "neat trick" using LM series regulators that should make them a very good option for people on a time budget, or who prefer a simpler PS. Hopefully I can figure out an elegant way to use it...

Good luck gents
 
Hey guys.

Just a quick update:

I've finished the flowchart already, but the floppy disk on which I brought it today decided not to cooperate, so I'll post it from home tonight.

I've found some C-code for decoding the RC5 (remote control) signal, so that should save us some time. I've also had code for doing CRC checks for quite a while now, would this also be useful?

Cheers for now.

DJ