Jump to content

CDX reverse engineering


Guest rasteri

Recommended Posts

Guest rasteri

(broken off from the PT-01 scratch thread to keep things on topic)

 

So I want to see how far I can get with reverse-engineering and hopefully modding the CDX. I always wanted one of these things but the limitations put me off.

 

Ideal endgame would be to ditch the CD drive and give it CDJ-style USB stick support, although if we can properly crack the firmware then essentially we can add any feature we want.

Some interesting things :

  • The CDX's main control software is run on a pic18F8720 which is a chip I'm very familiar with and will be easy to mod.
  • The MP3 decoder chip (ML1201E) in the CDX actually already has USB support, but there doesn't seem to be any information about it on the net. However I bet it's actually just a rebadged off-the-shelf chip that we can find a datasheet for if we look hard enough. I NOW RECKON IT'S AN FPGA, SO USB SUPPORT MIGHT BE MUCH HARDER. The PIC firmware will likely need to be modified but that is very doable as discussed.
  • I've started reverse-engineering the .wav-based firmware update format, some notes here : https://docs.google.com/document/d/1rS7EIAJpvYFkpBIV-T-TNYLXAQGC4se6yvexYDsOwJ8/edit?usp=sharing
  • The HDX firmware actually contains the unencrypted raw binary files and I think uses the same chipset as the CDX, so that might give us some more clues - https://www.numark.com/images/product_downloads/hdx_v118_00.zip
  • I don't have a CDX yet but Flexinoodle is kindly providing a broken one. Once I get that I can start hooking it up to a logic analyser and really get down to business.
  • Like 3
Link to comment
Share on other sites

Guest rasteri
  • There are four other major chips beside the PIC that I can see -
    • Motorola XC56309GC100 - This is a DSP that presumably handles the audio pitch and effects etc
    • ML1201E - Some kind of MP3 decoder chip I think it's an FPGA
    • Sony CXD3068Q - This is a fairly standard CD drive controller/Servo controller
    • Texas Instruments TMS320LF2407A - This is being used as the motor controller

 

Of those I'm most interested in the ML1201E since it's the one we'll need to know about to add USB support. I'm not really interested in adding effects or changing the way the motor operates so I don't care about the DSPs, and the CD drive controller is something we hopefully won't even need anymore (although perhaps emulating it would be another route to adding USB support if our attempts to find out about the mp3 decoder fail).

  • Like 1
Link to comment
Share on other sites

As usual, I know nothing but bow to your dominance!

 

Seriously, if you could make it possible to get a cheap CDX working well and off a USB stick at that, I'd definitely be on the lookout for one.

As usual, I know nothing but bow to your dominance!

 

Seriously, if you could make it possible to get a cheap CDX working well and off a USB stick at that, I'd definitely be on the lookout for one.

  • Like 2
Link to comment
Share on other sites

Guest rasteri

Yeah me too, haha.

 

BTW I'm now 99% sure the ML1201E is an FPGA, given that it requires a separate 2.5v core supply, has an external ROM chip, and interfaces directly with some SRAM.

Link to comment
Share on other sites

My thing is, I have DVS and I can set up the A6 with my laptop to play beats and record samples in Maschine and run Traktor for the DVS. I have to use a little mini mixing desk for monitoring though and if it's set up at home it's a bit of a ball ache to keep moving about. If I could have a CDX sat at the studio ready to go though, it would be great for quickly recording cuts for beats I'm working on.

Link to comment
Share on other sites

Guest rasteri

My humble opinion if it's possible to implement usb read an easy way it could value the effort but if not then hack it directly into something new like your scratcher is the way to go.

Yeah at the end of the day we can perhaps just gut the internals and replace them with a raspberry pi or something. But as the CDX already has the ability to do 99% of what we want it'd be a shame to have to chuck it all away.

 

Said that I will love to thumb drive and portablist mod. How can I help?

You got a logic analyser? I'd love to see what sort of shit the PIC and other components are saying to each other

  • Like 1
Link to comment
Share on other sites

Guest rasteri

There is also an NXP 89C58 that seems to be multiplexing the control surfaces (buttons, LCD etc) to the PIC/DSP. Also I think the PIC might actually be doing a lot less than I previously thought.

Link to comment
Share on other sites

  • 4 weeks later...

I'm waiting for my logic analyzer to arrive so I can do proper reverse engineering, but I've been slowly building up notes and ideas on the google document I posted earlier.

 

Don't expect anything soon though, time and effort constraints mean it'll be an on-and-off job.

  • Like 1
Link to comment
Share on other sites

Mine is collecting dust and I purchased for 50 with driver board broken. I changed it for another one (the cdx from the video) and come alive again. Cd drive no luck. At service notes talk about changing some resistences to improve motor driver burn and about how to dare with data cable error too. I have also the pinout for solder cable directly avoiding flat one (and even the part solded by Norbert from the old cdx too)

Anyways if I can bring it to life it will worth the effort but if not, raspi and new ideas are calling me. My luck is I'm starting a makerspace in my area with some friends and I have new tools (like digital oscilloscopes) to work on my projects. I hope my friends also help me with raspi mesh and start tinkering on all this idea sometime. :)

 

All the resources collected over years (including hdx firmware?)

https://drive.google.com/open?id=0B4ftWaZ6ARSUVEF5R3dseFY4Tmc

Edited by Mutis Mayfield
Link to comment
Share on other sites

Ebay claims CD drives are rare but it's bullshit, the servo mechanism (the bit that normally breaks) is actually a totally standard one you can still buy new from places like CPC for a tenner or so.

 

I think this is the correct one : http://cpc.farnell.com/unbranded/31155/ksm213ccm-cd-pick-upmech/dp/AS00201 - I'll double check when I go to the shop today.

  • Like 1
Link to comment
Share on other sites

Replacement 32-way flat flex cables will be dirt cheap, I'll find you a part number when I get a chance to measure the pitch.

 

TBH a better long term solution might be to replace the FFC with a ribbon cable, then it'd never break. I think that's what later CDXs did.

  • Like 1
Link to comment
Share on other sites

Replacement 32-way flat flex cables will be dirt cheap, I'll find you a part number when I get a chance to measure the pitch.TBH a better long term solution might be to replace the FFC with a ribbon cable, then it'd never break. I think that's what later CDXs did.

Yup also Norbert did it with my old. In the google drive there is the pinout for the scsi connector ;)

Edited by Mutis Mayfield
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...