Announcement

Collapse
No announcement yet.

D.I.Y. External drive

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • D.I.Y. External drive

    Has anyone made their own external hard drive? I don't mean buying a case putting your drive in it then plugging it in. I am talking about splicing cables and such. Every search on google results in just buying a case, etc. Is it possible to just splice cables or do I need a circuit board to make things read properly? I have a few drives and a bunch of cables so I was looking for something useful to do with them. And before anyone says it I understand that I can get a case for under $40 but I'm trying not to spend any money.
    I hate to advocate drugs, alcohol, violence, or insanity to anyone, but they've always worked for me. - HST

  • #2
    Re: D.I.Y. External drive

    Originally posted by arashi_kage
    Has anyone made their own external hard drive? I don't mean buying a case putting your drive in it then plugging it in. I am talking about splicing cables and such. Every search on google results in just buying a case, etc. Is it possible to just splice cables or do I need a circuit board to make things read properly? I have a few drives and a bunch of cables so I was looking for something useful to do with them. And before anyone says it I understand that I can get a case for under $40 but I'm trying not to spend any money.
    This really depends on the iterface for the drives. I have built my own SCSI connector to attach an external SCSI drive to a SCSI bus, but that is trivial. Same could be said about ATA/IDE/EIDE. I would *guess* that SATA should also be easy if there is a free interface to run a cable.

    However, if you are looking at a firewire, USB, USB2, Fiber Channel, or proprietary interfaces, then you are probably looking at having to build (or buy) your own bridge to allow a simple ATA/IDE/EIDE/SATA/SCSI drive to participate as an available device. (ATA/IDE/EIDE/SATA/SCSI drives "talking" to USB, Firewire, USB2, Fiber Channel, etc is not just splicing wired, but translating the data and protocols used by each to let each one talk to the other.)

    Additionally, running your own pinout, and own wires if making an external ATA/IDE/SATA/SCSI drive that participates on a local bus runs risk of degredation of service, speed and corruption on the bus with other device that may share that chain. Small differences in resistance due to different gauges of wire, length of wire, solid contacts with solder are some example risks with higher-speed data busses. Length of cable is especially serious in SCSI busses.

    A "cheap" solution? Buy an older, prefab external enclosure that talks the same protocol, with the same interface that you want and accepts a standard drive, but with a smaller sized drive, and look at the drive type and then swap in the new drive. I did this 10 years ago, but have not done it recently.

    I did not save that much, but it worked.

    (I was able to get a Sun 3/60 (color) to accept a SCSI drive by reusing a "cheap" $5 used) enclosure that previously held a non-functional tape-drive. This was great, because it had the same Sun 3/60 SCSI interface (garden-hose thick bundle of cables with somethigng that dwarfs DB-25 connectors) but internally used the standard 50-pin ribbon connector for SCSI-1 and some SCSI-2.)

    [Added:]
    We have some hardware people around here, who might probably say this:
    If you are only doing this (building a bridge + enclosure) to save money, you will spend more time than you will save money. Many times, an external drive enclosure will only increase the price of a drive by $30-$50. However, the number of hours to build a bridge, and build an enclosure (even when paid at minimum wage) will be much more than $50.
    If you are doing this to learn about hardware, interfaces, busses, and connectivity, then it can be worth it.

    Let's see if any of the hardware design people will step out of the shadows to add more, and see if my guess on what they might say is an accurate prediction. :-)
    Last edited by TheCotMan; September 13, 2006, 10:49.

    Comment


    • #3
      Re: D.I.Y. External drive

      I probably should have stated that ideally I want to go from IDE to USB or firewire. I am willing to make a greater investment in time than money (poor college student). Especially if it's a learning process like this.
      I hate to advocate drugs, alcohol, violence, or insanity to anyone, but they've always worked for me. - HST

      Comment


      • #4
        Re: D.I.Y. External drive

        I tried looking on google for a kit, pr project on USB <-> IDE bridges:

        http://www.geeks.com/details.asp?Inv...5-35&cpc=RECOM
        "USB to IDE bridge" for $9.50

        http://www.vialab.org/BLIP/index.html
        potential to repurpose their device (USB to specialized breadboard) in order to add your own IC and build an IDE interface.

        Maybe you can find a kit-company that will sell you something like this, but for IDE:
        http://www.circuitspecialists.com/prod.itml/icOid/7479

        Something to think about:
        There is a software and programming component to this too, and you will probably have to step into driver work.
        You may have better luck buying a USB to "some common bus" and and ide controller "to some common bus" and connecting them, but even that may take quite a bit of work.

        If you don't find the answer you want here, you can also try asking here:
        http://forums.parallax.com/forums/default.aspx as they may be able to give you suggestions on what IC, and chips to avoid, and give you suggestions on what sized breadboards would be best for a project like this.

        I heard they recently lost some talent, but maybe they will still be helpful.

        (When searching, realize there is collision in the namespace as "IDE" also means "Integrated Development Environment" (for building code that save to chips that you program) as well as a standard for Drive Interfaces.)
        Last edited by TheCotMan; September 14, 2006, 01:22.

        Comment


        • #5
          Re: D.I.Y. External drive

          I'm not trying to turn this into a two person thread but Cot, you're my new hero. Just a couple more questions.
          Originally posted by TheCotMan
          "USB to IDE bridge" for $9.50
          This is exactly what I had in mind for this project, except making it myself. But for <$10 it's better than >$30 for kits w/ cases. If I become weak willed and give up, I think this is definetly what I want to go with.
          Something to think about:
          There is a software and programming component to this too, and you will probably have to step into driver work.
          I unfortunatly figured this after I couldn't find what I was looking for. This may be the project I need to give me a reason to learn assembly. Up until now I couldn't find a good reason other than just because. I assume that ASM would be an appropiate language to use for something like this. Or would C/C++ be better? (And no one better say anything about when I assume, I already know.)
          If you don't find the answer you want here, you can also try asking here:
          http://forums.parallax.com/forums/default.aspx
          Thanks for the link. I wouldn't have thought about looking there. I've even looked at buying some of the parallax's kits before.

          Lastly, where would a good start for building drivers be?
          I hate to advocate drugs, alcohol, violence, or insanity to anyone, but they've always worked for me. - HST

          Comment


          • #6
            Re: D.I.Y. External drive

            That < $10 item is unknown to me. I've not done business with that company, and have no experience to tell you how good/bad it might be.

            Originally posted by arashi_kage
            I assume that ASM would be an appropiate language to use for something like this. Or would C/C++ be better?
            At one time, this was the case, but which languages you would be "best" would depend on a few things.

            From programming the chips, the vendor of the IC would probably have their own suggestion. ASM was very common many years ago, but some chips and vendors of chips encourage use of C, C++, variations on BASIC (sometimes provided by the chip vendor) which "compile" to a smaller, usable machine code, or other languages.

            As for the driver creation, that is often (if not always) OS-dependent. You may be able to check out how Linux drivers for USB storage devices are built to give you ideas on how to build a driver for Linux and what the embedded device-code would need to support to "talk" to Linux. This is a great advantage to OpenSource-- learning by examples.

            For this, "C" or *maybe* C++ would probably the best language to use. Using the same language that was used to build the kernel and provided modules makes sense.

            Looking at Other OS? I've not built drivers for Windows, or worked on any, but if I were to guess where to start, I would guess one of the MS Development Network services on the MS website. From there, you might be able to get API, code samples, and specs for driver generation.

            Thanks for the link. I wouldn't have thought about looking there. I've even looked at buying some of the parallax's kits before.
            Their kits do look like fun. (I don't work for them, and never have.)

            Lastly, where would a good start for building drivers be?
            Mentioned above. For Linux? Source code. for MacOS X? *BSD Source Code for hints, perhaps Darwin for more hints. MS Windows? I don't know. MSDN is where I would start.
            Last edited by TheCotMan; September 14, 2006, 13:47.

            Comment

            Working...
            X