I have modified a Sony DWQ28A DVD Burner to operate in the Xbox, and with a minor adjustment, it works almost flawlessly. The only noticable quirk is that the DVD Burner won't eject if you power-up the Xbox via the Eject button; and it won't auto-retract if you power-down the Xbox with the tray still opened, but I can live with that. Once the Xbox is running, all the signals are functioning properly - the Xbox can eject, detect the presence of a disc inside the unit, and sense the tray being in or out. Pictures of the appropriate test points for this drive are below. (No, the DVD burner does not read Original Xbox games, as there's no patched firmware for Sony drives... yet! ;-) ) I've added a 100 Ohm pull-up resistor (though 220 Ohms is probably the ideal) to help my flakiest Xboxes to start up with this DVD burner installed. With a trimmer pot installed, I found that the highest resistance before these Xboxes flake out is 240 Ohms. I'm calling it at 220 Ohms, since that's a common value you can find at the corner Radio Shack. (100 Ohms works just as well, though, and is what I'm using now..) I am now shifting my focus to lay out a quick and easy DVD Drive "Mod-Kit" Adapter (Really a breakout board) to accept the yellow DVD cable and provide easy solder points to connect to any DVD drive's internal test points. Since some DVD drives have their signal logic reversed, the PCB might be designed with pads for a NAND gate to reverse the signals on such DVD drives. For now, though, all I really need is a simple breakout board, with no discrete circuitry.
SONY DWQ28A Double Layer DVD-BurnerSpecs: 16X Double Layer (8.5GB) DVD Burner 16X DVD+-RW 4X DVD+-R Since I have no intention of playing games on this Xbox anymore, I won't be doing any firmware tweaks to this drive. I'd rather just have a faster way to burn new test-releases of XFedora, directly from my source box. Now that my spare Xboxes are equipped with modified LG 8163B drives (performed earlier this week), I can use Rewritable DVDs in my testing process. I have a fair idea of what the "official" Xbox Firmware is doing, so I might decide to reverse-engineer the LG version of Xbox DVD firmware later. Of course, I could be dead wrong and wind up spinning my wheels for nothing.. *shrug* Constructing a DVD Drive "Mod-Kit" Adapter BoardThe Pin Diagrams of the DVD Connector at xbox-linux.org: pcdvd.pdf I'm pretty sure the mating 12-pin DVD connector is this one: Xbox DVD Connector Receptacle Some Better technical drawings to take the footprint measurements off of, when laying out the adapter PCB:
If I'm correct, the Header to use to build an adapter-board for an Xbox DVD drive would be one of these parts:
A quick look at Digikey suggests that the S12B-PHDSS runs for under $4 for 10. Digikey has a $5 surcharge on orders under $25, so load up on other knick-knacks. Over on xbox-scene, I noticed that the DVD Connector Part has a Hirose equivalent: H2054-ND / DF11-12DP-2DSA(20) / CONN HEADER 12POS 2MM PCB TIN. But these have a unit price of $0.90, whereas the JST equivalents above are like $.40 each in lots of 10. Unfortunately, I've never done my own PCB design before, so I'll be stuck on this step for quite some time. First, I'd need to find or create a PCB footprint for the header -- I haven't found it in the built-in libraries, and doing things "direct from the datasheet" will take some time to learn. An easier solution might be to find the mating connector as a wire-to-wire connector: Simply order a bunch of cables with the wires pre-crimped to the mating connector, and then attach the wire-ends to resistors and test-points. (And then glue the DVD connector to the PCB..) I really *HATE* having to do a pig-tail, so I'll find a way to get this done. (Or, I'll hire someone to do the PCB design, provided the resulting PCB source file and Gerber files are released under the GPL for everyone to enjoy.) Possible Vendors: Notes on Current Progress2005-Aug-24: Modified the LG Drive, No ProblemAfter a pleasant surprise yesterday afternoon (FedEx arrived overnight, whereas I was expecting 3-4 days via SuperSaver Option), I decided to get to work. I took out the Dremel, and instead of cutting out the entire posts, notched out just the protruding half of the posts. I wanted to make sure I could leave behind as much material as possible for the case screws to grab onto. I also fired up the faithful Weller soldering iron and did the hardware mods to my first DVD drive. It's an ugly patch/splice job and a proof-of-concept, but hey, it worked. I just soldered some Kynar wire to connect to the test-points, and used a few 1/4 watt 1K Ohm resistors I had left over from other projects. I don't have the mating Xbox DVD connectors yet, so I just sacrificed a spare yellow DVD cable to come up with a marginal pigtail. Man oh man, the improved difference of this drive is amazing. No more drive-seek laser noises, and the overall drive speed is an improvement. Bummer part was, there's not much material for any hot-glue to bond the stock Xbox bezel to the drive, so I might have to fabricate a mounting plate to make this easier. Ironically, I also have a 10-pack of 1K Ohm 0603 resistors lying around, so I think I'll do a cleaner job (as in the tutorial PDF) over the weekend. All in all, I like the improved performance this drive has given. I need to run the Sony drives through a burn-in test for a day or two before I crack 'em open -- no sense voiding the warranty until you're confident you've got a solid drive. (Ah, the horror stories I've read in the past.. hehehe) A possible starting point for the Sony Drive: http://www.xboxhackz.com/tutorials/hardware/dvddrive/Replacing_the_Xbox_DVDROM_drive_with_a_Sony_DDU1612.pdf 2005-Aug-25: Added a Modified Sony DVD Burner to XboxWith minimal probing with the multimeter, I verified that the four (very clearly marked) test points were supplying an adequate signal, without needing additional circuitry. About the only difference is that the Sony drive uses CMOS level voltages (3.3 volts), while all the other tutorials mention TTL voltages (5 volts). At this point, I figured it's still worth a shot without introducing a conversion circuit, as the signals are all "Low Truth" -- meaning, they are true on Zero Volts. Just had to hope that the 3.3 volts is enough to register as False. Here are the test-points. Yes, I took the EJECT signal from the ribbon-connector. I'm dangerous like that. :-) And my environment to find and validate the points. I have the DVD burner connected to a Y-splitter for power. The multimeter's probe is in one of the GND wires of the other half of the Y-splitter.
After all the soldering and gluing, I got this:
Since this is still just a proof of concept, I made a temporary rig. If it functions as expected, I'll go back and redo the splice-and-tape-jobs with shrink-tubing.
Looks like it's a go - the eject button works, and the Xbox senses when the tray is in or out:
At this point, there are still some minor glitches to work out.
While diagnosing the above, I noticed that the Thomson Drives are rated at 2 Amps for both the +5V and +12V, but the stock Xbox Power Supply only provides 1.2 Amps on the +12V line. The Sony drive is rated at 1.5 Amps on teh +12V line. I'm wondering if the Thomson Drive overstated their requirements, and I'm hitting a limit on the +12V rail. I guess I'll break out the spare v1.4 motherboard I had lying around, and adapt a 1.6 power supply to drive it. (Better check the +12V rating -- if it's still 1.2 amps, the exercise is pointless..) If the conflict really is current draw: Blecch, as much as it would really suck, I might have to introduce some sort of power-up delay to reduce the initial spike when both IDE devices power up at the same time. Either that, or I might have to add a voltage regulator (or *something* -- I don't know yet!) to draw more current from the +5V line. Oddly, we have plenty of amps to work with on the +5V rail! It could be that directly connecting to the signal lines is bleeding off too much current, so the *first* thing I'm going to do is go back and redo all the signal lines to run through 1KOhm resistors. Hopefully that'll be enough. But it still doesn't quite solve the problem with some boxes and IDE drives rejecting the DVD burner on the IDE bus itself. *Hmmm..* Gotta think on this for a bit... 2005-Aug-26: More Fine-Tuning, and a Probable FixSpent an hour reworking my pigtail to take the +5V, +12V, and GND signals from the DVD cable and splice them onto a molex connector. Now it's about as "true" to the original wiring as possible.. though I do wonder what the last, unaccounted-for wire really does. Dinking around with the flakiest of my spare xboxes, just connecting DVD burner to the IDE bus (both with and without hooking up the yellow DVD cable) would prevent the Xbox from starting up properly. Odd, there's something different about the Sony DVD drive and the IDE bus itself? I did figure out that if you start the Xbox with the DVD burner disconnected from the IDE bus, and then connect the DVD burner's IDE connector about a second after the Xbox is already on, everything works perfectly fine. So, it's probably not a current-draw issue of the drive. (Connecting the yellow DVD cable, which is where I'm drawing power and signals from, made no difference in this "IDE Failure" behavior.) Using XFedora, I could eject the disc, copy a disc to an ISO file, and burn/erase discs just fine. The quirk is definitely something electrical, and only on the initial startup. Hmm. I wonder if adding a simple buffer cap to the Sony drive is all that's needed here? If not, at the very worst case I could go brute force with a retarded "555 timer and a relay" type of hack on the -RESET signal. Ah well, hopefully I'll have all the quirks worked out in another day or two. :-) 2005-Aug-27: Added a Pull-Up Resistor, Now I have consistent Power-Ups!Spent most of the early-morning hours probing and isolating the fault. Yep, the /RESET signal appears to be the culprit. On a hunch, I added a 47-Ohm pull-up resistor to Pin 1 of the Sony DVD drive (thus forcing the IDE bus to "never ever reset"), and lo-and-behold, even the flakiest of my spare xboxes now fire up perfectly with the Sony DVD Burner! I'm not quite ready to call this "done" just yet, though -- I'd like to get to the root cause and use a better resistor value. Ideally, there would be a value that still allows /RESET to be asserted without knocking out the IDE Bus. I've tried 10K and 1K values, and they're too high; and 47 Ohms just seems too low for my comfort level. I'm guessing it'll be 100 Ohms, but just to be sure, I'll just install a trimmer-pot and see if I can get this burner to consistently start up, with a fully functioning /RESET line. If that can be done, well.. just read the value of the trimmer-pot and be done with it. :-) [12 hours later] Alright, added a pot, and found the highest resistance I could attain before the flaky Xbox started failing was 240 Ohms. I'm just gonna call it at 220 Ohms, since that's a fairly easy value to get ahold of at the corner Radio Shack store. Otherwise, a 100 Ohm, 1/4 watt resistor works just as well -- it's what I'm currently using in my burner. I've freshly installed XFedora on this box, and am running the whole system through a burn-in test for the remainder of the weekend. At this point, I'm gonna leave it as "4 bare wires and 1 resistor" as it seems to work perfectly fine for me. The final pics of my soldering handywork:
User FeedbackComment by xlinux at schurmann dot org on Sun 28 Aug 2005 09:55:09 AM PDTProfoundly noob question: If I make my xbox Linux-only (cromwell hardware mod) then can I simply swap the original DVD drive for an off-the-shelf drive with no problems? I have done a lot of googling on this topic and it seems that this should just work but I have not found a definative statement on this question. Comment by lalee on Sun 28 Aug 2005 08:05:03 PM PDTYes, that would work -- your Xbox would just power up and present the sky-blue menu screen, and you could go from there. The only downside is, only "Cromwell Compatible" linux installations and LiveCDs will work from that point on. It sounds like this is what you want to do, though. :-) Before doing this, I'd make sure to backup and burn my original Xbox BIOS to a CD, so that I can use Cromwell's built-in flasher to revert to the stock BIOS "just in case". |
|||||||||||





















Recent comments
4 weeks 23 hours ago
4 weeks 1 day ago
4 weeks 3 days ago
4 weeks 4 days ago
8 weeks 1 day ago
8 weeks 3 days ago
9 weeks 6 days ago
9 weeks 6 days ago
10 weeks 1 hour ago
13 weeks 4 days ago