Repairing A Mill That Cost As Much As A Car


Years ago, someone at the bio-instrumentation lab at MIT needed to change a CMOS battery in the controller for a three axis mill. This reset the machine’s BIOS and was widely regarded as a bad move. The mill sat in the lab for a few years before  Prof. [Ian Hunter] donated it to MITERS – the student shop at MIT. And so the task of repairing a machine that cost as much as a car fell upon a plucky group of students.

The machine – a  Dyna-Myte 1007 has a 10″x7″x10″ work area, pneumatic tool changers and carousel, and the working for a fourth axis. It is. however, driven by an ancient Pentium computer running DOS with all the fun of ISA slots and IRQs that entails.

The MITERS began their repair by digging around in the software configuration, finding the axis drive is controlled via IRQ 3, which was currently occupied by COM 2. Changing that in the BIOS let the computer control the axes and, with a few solenoids and an air compressor, the tool carousel also worked.

With a bit of digging around, the MITERS also got the spindle working, giving them a very awesome and very expensive CNC milling machine for free. Even though the computer could be replaced with a $35 Raspberry Pi, we really have to admire the MITERS for fixing what they already had; it’s a cheaper and much, much faster way to get their new toy up and running.


45 thoughts on “Repairing A Mill That Cost As Much As A Car

  1. ‘we really have to admire the MITERS for fixing what they already had; it’s a cheaper and much, much faster way to get their new toy up and running.”

    Have to agree with that. I probably would have looked at swapping the computer out, but being that this is “HackADay,” sometimes the challenge of doing things the seemingly hard way is part of the fun.

  2. It is for this kind of thing that I had all my former IT students memorize basic COM/LPT/IRQ settings. The mill probably sat around as long as it did in want of a simple config fix because everybody thought it was plug-n-pray.

    1. Yeah, at i3detroit when we got our first CNC mill, my first impulse was to replace the spinning-rust HDD with something solid-state. I grabbed a CF card and the appropriate adapter, and went about fdisking/formatting/boot-preparing/copying the machine’s files over. Then I just had to swap some jumpers, pop into BIOS, change the disk assignments, and I was done.

      In the middle of all that, one of our slightly-younger members walked past and saw me poking at DOS, then arrow-keying around in the BIOS’s text-mode interface, plunking in cylinder/head/sector numbers, and said something along the lines of “whoa”.

      It struck me as really weird, because that same member is one of the more talented machinists I’ve met, and someone who I implicitly trust on every other aspect of the machine. The notion that they simply didn’t spend any time in text-mode was a mind-opener for me.

      1. Currently I’m a couple weeks away from more linux certification courses. If the instructors see a GUI, you fail. Did a set of cisco courses last year that had a similar policy.

        If someone has never spent time with a CLI, they are unfit for professional work. More often than not, any pay grade higher than intern means ssh into servers and routers that are many miles away.

        On the less cynical side, I probably would have said the same thing while watching someone put in chs on a CNC. It would be quite the novelty.

        1. But what if your task is to get a GUI running for an application that has a poorly-designed (or non-existent) CLI? We’re getting more and more of those types of things in the Linux world as the Linux desktop becomes more widely used as an MS replacement.

        2. What a stupid attitude, use the right tool for the job.

          Your instructors would have tossed the PC, pulled off the motors and welded handles on, because that’s how the ‘professionals’ do it.

        3. We are in an age with computers, that you simply can not have an all or nothing policy for CL vs GU Interfaces. I can actually say that I’ve had a situation (it happened yesterday) where I was unable to log on to a server over ssh, but the application was still completely functional. This situation meant that I had to use the GUI in order to accomplish the work I needed to do. I will freely agree that this case was unusual, and is unlikely to happen again; however, do not ever say something will never happen… because you will be proven wrong.

          1. Why are you apologising for using the GUI?

            The damn thing worked, didn’t it? Probably faster, and you did have to spent 30 seconds figuring out the syntax for each command so fewer errors as well.

            Tools A was non-functional, use Tool B.

            Automobiles went through this crap as well. Can’t fix your car? Don’t know how transmissions work? Carburettors a mystery to you?

            Well, you shouldn’t be driving then, leave it to the ‘professionals’.

  3. No, it cant be replaced by a RasPi. A machine of that age will have analog servos and possibly even resolver feedback. LinuxCNC will work with the Mesa cards and there are several analog servo solutions on Mach3. But no RasPi, at least not yet. There are some people messing around with trying to get it working but you need the real time kernal to do the critical stuff.

    1. There is a backplane motherboard (dsp/microprocessor based) which takes care of all of the servo loops and whatnot, the control from the main computer is simply ‘go to y.yyy z.zzz ‘ etc using an undocumented, proprietary 24bit communication bus.

      1. Is that a BMDC or something similar? The last Bridgeport mill I played with was very much a two-processor solution, with the 486 in the PC handling the UI and motion-planning tasks, and the smaller processor (68k, perhaps?) on the BMDC doing all the realtime stuff.

        I wouldn’t want to undertake the task of making all that run on a new platform, but if I did, I’d look for something with robust realtime support.

      2. I am sure it is a bit more complicated than that. The computer probably has all the servo parameters in it and also handled the PLC functions as well. It also probably handles the trajectory planning as well.

    2. Charlie Steinkuehler is busy making BeagleBone Black into a LinuxCNC controller. It’s amuch better candidate than RasPi because of the PRUSS programmable I/O

  4. It is kind of sad that a department, albeit bio-instrumentation, at MIT couldnt figure out how to assign IRQs. Surely they had to know someone who did computer tech work back in the 80s/90s. Or that their first idea was to buy a HAAS rather than contact the manufacturer or a service company to replace it.

    1. Yeah, exactly what I was thinking.

      This happens if public institutions are too rich and the guys there too stupid. They begin to replace things because it’s easier to replace them no matter what’s wrong. At least this nice mill didn’t end at the junkyard.

      1. It’s really a time issue, and one of outdated/obsolete hard/software systems. The Bio-Instrumentation Lab has much better things to do than spend weeks debugging a mill that was barely even used (Because there’s a 5-axis machine in the Manufacturing shop down the hall), when they can spend the time properly teaching me in the classroom and laboratory, helping children with cerebral palsy walk again, quantitatively verifying that a significant part of the human gait comes from the ankle, and building a supplementary ankle robot, building super low-cost portable mass spectrometers for identifying toxins in 3rd world country living situations… Check out their current stuff here:

  5. So a very expensive machines sat forever because someone was just too lazy? Congrats to those who spent the time to get it up and running. I’m sure this machine could be retro fitted with whatever computer system they want, it’s just a matter of is the time and effort worth it? As the old saying goes, if it works don’t fix it. or if it works as much as you want, leave it be.

  6. To put things in perspective, the Dyna Mite mills were more educational than industrial. These are designed for school environments and trade schools. It’s a lot different than a Haas mill (any type).

  7. While I was working on my AAS in electronics, I lost count of how many items were donated to the college by well-intentioned people just wanting to keep things out of the landfill that ended up in someone’s living room/man cave after a simple reflow or fuse change when the TV shop wanted $100 to change out a board. This went the same way for the automotive program–a $5 part could get a $5,000 car running again. If said car was donated (rare) it would go up for auction. If not, the owner would always give some kind of monetary donation (usually about half the local labor rate) to the program.

    Sometimes the more expensive route is easiest. However, oftentimes a little thinking and tinkering can go a long way in saving $$.

  8. “, driven by an ancient Pentium computer running DOS with all the fun of ISA slots and IRQs that entails.”

    Hey, don’t knock ISA! I miss those easily jumper-assigned settings. Just pick an available IRQ and memory address, set the jumpers and forget it. Sure, you had to know more about your computer to add accessories but once you did they just worked, in a predictable way.

    I miss the old hardware every time I am searching the internet for help with udev config files because I can’t get some USB accessory to be assigned the same device name each time I connect it. (each search result talking about a different version of udev that seems to be configured differently both from my own version and from every other result) Or there is every time I plug in a new card and the computer fails to boot because the bios can’t come up with a sane set of irqs to make all my accessories happy.

    Now get off my lawn!

    1. I remember building a Pentium Pro system when I was 11, back in the day, using scavenged parts. I spent many hours pouring through manuals and waiting for geocities pages to load through my 486-powered Toshiba laptop’s 12k modem in order to figure out the jumper and IRQ settings for it. I almost threw the computer out my window.

    2. Old geezer here with 30 years computer experience. I used to call the old hardware Jumper-n-Stay because there was no way Windows 95 could take a perfectly operational computer and make it not work… most of the time.

      There were a few peripherals that original Windows 95 would insist on assigning a conflicting IRQ and/or DMA to, in spite of hard settings made with DIP switches or jumpers. It took some tricky work to get Windows pried loose from its incorrect settings and more fiddling to make it not re-apply the wrong settings. Always ended up with things ‘sticking out’ in Device Mangler instead of having all the categories neatly collapsed, but most of the time I could force Windows 95 to allow the hardware to work.

      The worst for that was the Mitsumi proprietary interface 1x CD-ROM. Every time Windows 95 would insist on setting it to the same IRQ as the parallel port. If it was a Sony or Panasonic it’d work. I assume Microsoft screwed it up on the Mitsumi interface and just wouldn’t put out a patch to fix the bug.

      Win95B was somewhat better but PnP wasn’t really fully functional until Windows 98 Second Edition and hardware that could function with resource sharing. There were many older PCs that Windows 98 flat out would not work on but 98SE would install on and everything would just work. 98SE was what MS was the target MS was aiming at in 1995. And then they made Windows Me, with its unsane scrolling menu that they’ve tried to force us to use in Vista and Windows 7.

      Windows still has the Add New Hardware Idiot (MS laughably calls it a Wizard). Any bit of software that has to be repeatedly told and re-told where the driver files are is no Wizard. The paths get put into the Registry but instead of the “Wizard” using them to find the files its own self, those MRU keys are only used to populate the drop box for the user to tell the “Wizard” where to go.

      The worst thing about that “Wizard” has always been how the user is forced to go through the whole pointless thing instead of being able to skip right to the end to tell to where the drivers actually are. It needed a Have Disk button at the beginning, not the end.

  9. After reading the whole article, it looks like someone had replaced the spindle with a type different than the machine had originally come with, and hadn’t fixed some subtle wiring and configuration settings in the spindle driver…or something like that.

    Anyway, it was more than just a BIOS setting. Good detective work and troubleshooting!

  10. Just a little tip, If you are cutting Alu you may want to try Metholated Spirits as a lube. works a lot better and seems to stop the bits getting cloged up. I have been using it for years… just keep the flames away from it. :)

  11. Their goof is your gain. ;-) Would be nice if some university or college would drop off a freebie like that at my door, preferably *before* they mucked it up doing all the wrong things attempting to fix it.

    If only some smart person in that lab would’ve been bright enough to see they only needed to call in a computer tech, preferably an older one with experience with 20th century PC systems.

    “What did you do just before it quit working?”
    “I changed the CMOS battery and it hasn’t worked since!”
    “Ah, well, should be an easy fix.”
    *boots to BIOS setup* *finds IRQ conflict and fixes it*
    “There ya go. It’s sees the controller now.”
    “But it still doesn’t work!”
    “What else didya do?”
    “I flipped some of these switches and…”
    “Did you write notes on the switch positions and other things *before* you started mucking about instead of calling me?”
    “Uh, no…”
    “Not my circus, not my monkeys. Sucks to be you! I hope the manufacturer is still around to help you undo your adjustments.”

    1. The guy left it at home for years and probably forgot what had been done to it. Students figured out how to fix this time capsule from their parents’ day. I’d say it reflects well on MIT.

  12. (oops hit submit too soon)

    … if it was pentium it is HIGHLY likely that the ENTIRE hardware control was from a CPU daughtercard andor internal CPU to the CNC control box

    if it was older like say 386 then i GUARENTEE that the 386 can and will do ANY CNC style robot project including ANY cnc no matter what. and WITHOUT ANY CPU other then the 386.

    its motors after all. they dont start and stop THAT fast lol

    trying to do accurate motor control on anything newer then a 486 is a nightmare and you’ll end up with a shitty setup.

    unreliable interupts, wrong but simillar LPT modes(1.7 vs 1.9 anyone?), newfangled serial buffer glitches, sleep/suspend corrupting the DOS filesystem, “S.M.A.R.T.” … at least SMART can be turned off, usually. and lastly this guy’s problem… HDD AUTO DETECT NOT WORKING ANDOR CAUSING A CRASH / 5-min hang

    of course i could list a WHOLE LOT MORE problems for getting a CNC software packege working on anything newer then a 486

    of course a microcontroller is only 2 bucks now-a-days so including one or two is not an issue. one on a daughter card is 2$ and with such a CPU-daughtercard you could plug it into ANYTHING with an ISA socket, even a pentium 4 … if it had an ISA socket ;)

  13. As a senior member of the MIT BioInstrumentation Lab, I am offended by the somewhat ungrateful tone of the original article and the factually incorrect summary on this page and would like to set a few things straight. In short, we had to spend a large amount of money on new equipment in a short amount of time. The BioInstrumentation Lab has extensive facilities including a massive machine shop that is simply packed with CNC lathes, mills, EDMs etc. We needed to make room for some new machines, so Prof. Hunter was generous enough to donate that old mill to MITERS. We maintain all of our own equipment in the BILab – including machines several times larger and more complex than that second-rate mill. As it just so happens, that mill fell into disrepair, in part, because people prefer to use a Haas (which we had long before) instead of a Dyna Myte (go figure). The lab member responsible for the mill didn’t really have time to repair it prior to donating (they were busy doing actual science and engineering research – being useful). A piece of advice for Daniel J. Gonzalez and any MITERS who share his sentiment: when someone is unbelievably generous to you, don’t act like arrogant, entitled brats and post insinuating statements on the internet…it’s not easily forgotten.

    1. I don’t really know as I am an outsider, but it seems to me the article was not written by Daniel J. Gonzalez. Especially since it says “by Brian Benchoff” right at the top of the article. In fact, going through all the comments I see only one from someone named Daniel, listed with no last name, and it seems to praise the work of the people in your lab.

      1. Hi Strelock,
        The hackaday posting was written by Mr. Benchoff, however the original article to which he links and from which he has based his summary, was authored by Mr. Gonzalez.

    2. Hi Adam,
      I’d like to apologize for how my original post may have sounded ungrateful or offensive, as it was not at all my intention. I have only the highest regard for your lab, and I (along with the many members of MITERS) am incredibly grateful to have that mill, which has been working wonders for us. My limited knowledge of the history of that mill came from speaking with Professor Hunter himself.
      I know the commenters on hackaday can often leave biting comments, some of which have also offended me (see my other comment above defending the BILab), but I cannot control what they say in response to my post.
      Congratulations on earning your Ph.D.!

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.