Previous 1 2 Next 16 Replies Latest reply: Jul 8, 2010 8:06 AM by R C-R
wwwww11111 Level 1 Level 1 (0 points)
On Windows you go to the Device manager, right click the device, click Update driver and follow through the prompts.

How does one do this on a Mac?

Macbook Pro 13", Mac OS X (10.6.4)
  • sig Level 8 Level 8 (35,780 points)
    Drivers for what?
  • JaimieV Level 2 Level 2 (490 points)
    That's not the normal way to update drivers on Windows (and often misses chunks of the installation out, eg any helper apps that come with the driver). Usually you download a driver update, and either run it directly or unzip and run the setup.exe.

    On a Mac, you don't often need to update drivers, they come with the OS. But if you do, you would download the driver, unzip it if necessary, open the DMG if necessary, and then do what its install instructions say.
  • The hatter Level 9 Level 9 (59,590 points)
    What is missing on Mac is an uninstaller, or the ability to update and upgrade just graphics, or stay with 10.x.x but go back to another device driver because the new one or program doesn't.

    If you do want to play around and need to install something, dig into what Pacifist is and can do.

    I always liked that there were multiple ways to do anything, or use to be, though I'm rethinking how that is implemented. There are multiple ways and sometimes all you need is to use Update Driver in Device Manager.

    To say something is wrong or not right... if it has an installer, maybe use installer. RealTek comes in zip and installer and you don't "lose" or miss if you use one vs other. When it comes to RealTek, network and other devices, the above is fine.

    On Windows you might uninstall something first and let Windows find a driver on next startup.

    There is no one right and wrong. Not on Mac. Not on Windows.
  • sig Level 8 Level 8 (35,780 points)
    We'll never know what the OP has in mind unless he/she responds. So all we're doing is hearing ourselves talk.
  • wwwww11111 Level 1 Level 1 (0 points)
    When I install Mac OS X on my Macbook Pro 13" from a USB DVD drive, it installs the AppleUSBOHCI driver on two of the USB hubs (which include the external ports, and also the internal Bluetooth which doesn't run on the OHCI driver). I would like to install the AppleUSBEHCI driver for the other two hubs.
  • JaimieV Level 2 Level 2 (490 points)
    That's not how USB hubs work. Ignore the virtual OHCI/EHCI structure and just plug things in - they'll do the right thing.

    Plus, all the drivers for all Mac hardware are built right into OSX, there's nothing to install.
  • wwwww11111 Level 1 Level 1 (0 points)
    But they're not doing the right thing, every device I plug in runs on 1.1 - the internal Bluetooth doesn't work (on the USB 1.1 bus).
  • AJ Level 5 Level 5 (7,075 points)
    Are you talking external hubs, or just the ports physically on your machine?

    If you have external hubs, and if those hubs are 1.0 or 1.1, then any device connected to them will run at 1.1 speed, not 2.0.

    A new driver will not fix that issue. The only way to fix that is replace the external 1.x hub with one that is 2.0 complaint.
  • R C-R Level 6 Level 6 (14,690 points)
    wwwww11111 wrote:
    When I install Mac OS X on my Macbook Pro 13" from a USB DVD drive, it installs the AppleUSBOHCI driver on two of the USB hubs (which include the external ports, and also the internal Bluetooth which doesn't run on the OHCI driver). I would like to install the AppleUSBEHCI driver for the other two hubs.

    You are mistaken. USB interface standards consist of both hardware & software parts. OS X (regardless of the installer interface) includes all necessary +software layer+ Host Controller Drivers (HCD's) to run the +hardware layer+ Host Controller (HC) -- basically, the Mac's built-in USB hardware.

    The OS doesn't install any HCD's on hubs (or devices attached to them). Hubs provide electrical interface & data control for USB devices & hosts but are not themselves hosts. Very few hubs are upgradeable; you are almost always limited to whatever USB interface standards one supports when it was made. However, hubs built into Intel Macs support UHCI or EHCI as required & the OS automatically uses the appropriate HCD for the attached USB device(s).

    What may be confusing you is that the +USB Device Tree+ abstraction visible in System Profiler may show more USB busses than there are physical ports on the Mac. Depending on what you plug into the port, the HCD & bus driving the port may change.
  • wwwww11111 Level 1 Level 1 (0 points)
    I think we're confusing the terminology. I'm not talking about the physical ports. When I say hubs, I'm referring to the 4 internal USB hubs (maybe I mean buses) provided by the SB chipset (iirc its Intel ICH9r).

    Maybe my understanding of how Macs handle this is warped, but that doesn't explain why every device I plug in runs at 1.1 (iTunes says my iPod won't run on 1.1, an external Bluetooth stick I bought won't run on 1.1, my usb hdd runs painfully slow) and my internal Bluetooth (requires 2.0) doesn't work.

    This is how it works on PCs and thus Macs(same on the hardware level):

    There are a certain amount of hubs provided by the SB chipset (if its ICH9r then its 4 and all 2.0), extra ICs may be used by the OEM to increase the number of ports, or add USB 3.0 ports. Each of these hubs can connect a couple of devices, around 7-8. Physical ports allow you to connect external devices to the bus, using an external USB hub you can connect more devices within the limitations of the USB hub the port is wired to.

    This is how I think the Mac is set up from how I interpret the System Profiler:

    Some internal devices (keyboard, touchpad, iSight, Bluetooth, memory card reader) run off these USB hubs. The buses listed in the System profiler represent these hubs (maybe I did mean bus) and the devices below are the devices connected to each hub. To ensure maximum bandwidth, the Memory Card and iSight run off dedicated hubs (so nothing to share the bandwidth with).

    The external ports are wired to two of the hubs, each to a different hub to ensure a maximum amount of external devices (if they were wired to the same hub, you'd get devices not being detected after about 4 or 5 connected devices through each port [via ext hubs]).

    The internal Bluetooth is wired to a bus which one of the external ports is on (bad idea for starters as it requires 2.0 - if one were to plug in a 1.1 device into that port, the Bluetooth in theory wouldn't work). The IR receiver and keyboard/touchpad are also wired to a bus that one of the external ports is wired to (they run fine on 1.1).

    My theory is that when you install from a USB drive, it can't install the drivers onto the hub its connected to as it won't be able to read off the drive while its being installed. The reason I conclude this is if I install from the internal drive, Bluetooth works and USB devices run as USB 2.0.
  • wwwww11111 Level 1 Level 1 (0 points)
    Sorry that should read

    "it can't install the drivers for the hub its connected to" - I know you guys are going to pick on my wording. :P
  • R C-R Level 6 Level 6 (14,690 points)
    USB terminology is confusing because it is highly abstracted & hierarchical. Some of it refers to hardware, some to software, & some to parts of both. For instance +interface standards+ like OHCI, UHCI, & EHCI each define the requirements for both a conformal Host Controller (a hardware device) and a Host Controller driver (software) to operate a Universal Serial Bus (an abstract collection of devices including both the software and hardware that allow connections between them). These devices can be logical or physical entities & each have one or more capabilities.

    However, both the hardware & software implementations of these standards can & do differ greatly. For example, UHCI is a proprietary standard providing full and low speed USB functionality for Intel chipsets; OHCI is a corresponding open standard for pretty much those of every other manufacturer. EHCI is a public standard for USB high speed (2.0) functionality.

    These standards also require that a +root hub+ be attached directly to the Host Controller, but not how many ports (points of connection for access to or from the system) it must have. Root hub ports may connect hosts to hubs or directly to other downstream devices, internal or external. Moreover, there may be more than one Host Controller in the system.

    I realize all this may be confusing but the point is you can't really separate the hardware from the software if you want to understand how it all works, nor can you generalize beyond a very superficial level from one system to another. Thus the earlier comment (not my own) that it doesn't work like you think it does.

    How it does work is that all of the necessary Host Controller driver software is installed in /System/Library/Extensions/IOUSBFamily.kext/Contents/PlugIns (including AppleUSBEHCI.kext, AppleUSBUHCI.kext, & AppleUSBOHCI.kext) if the OS is installed on the startup drive. I don't know what you mean by "when you install from a USB drive" but the bus type or its speed has nothing to do with this process. If you installed the OS correctly then this software was installed, period. The OS installer doesn't install different driver software on or for different hubs, busses, or interfaces depending on which of them is in use at install time -- it is all or nothing, & if it is nothing then the installed OS can't access anything over USB at any speed. Period, end of story.

    So something is causing your problem, but not what your theory suggests. To help you figure out what that is, we need to know what you mean about installing from a USB drive vs. the internal one. I suspect by "installing" you really mean "starting up from." If you mean something else, please explain in detail what you mean by that.

    BTW, as you might expect from the above, System Profiler provides an abstracted, hierarchical OS level view of the USB hardware called the +USB Device Tree+. At the first level you see the USB busses. Each is associated with a bus number, a Host Controller location & its root hub (usually built-in), the interface driver (OHCI, UHCI, or EHCI) it uses, & its other OS level characteristics. But remember that a bus is a collection of devices & that a device may be a logical (virtual) or physical (real) entity. Because of this, trying to interpret this view as a strictly hardware representation will only confuse you. (That is what JaimieV meant about ignoring the virtual structure.) IOW, it isn't directly analogous to a hardware block diagram or to the actual hardware connections in your Mac.

    In fact, USB allows devices conforming to different interface standards to operate over the same physical connections (something else I think you are at least a little confused about). In System Profiler this is represented by different downstream devices appearing in the hierarchy of different (virtual) USB busses, each with its own instance of OS level characteristics including a bus number & host driver location.

    I don't know what devices you are seeing appear where in this virtual hierarchy -- different Macs use different internal hub implementations & I don't have an MBP -- but I believe you should see at least two "USB High-Speed Bus" & up to about 5 "USB Bus" entries in the first level bus entries. The first type corresponds to the EHCI host implementation & the second should be for the UHCI one. Hubs & other devices downstream of the host should appear in their second & subsequent hierarchic levels. I don't think any internal downstream device should appear under a first level "USB Bus" entry with a OHCI host controller characteristic (except possibly the card reader), but every high speed (USB 2.0) device should be under a "USB High-Speed Bus" entry. Note that the "Speed" characteristic of the device has nothing to do with the bus speed -- it is entirely possible a low speed device is on a high speed EHCI compliant bus & shares its bandwidth with high speed devices on the same bus.

    If this doesn't sound like what System Profiler is showing you, please explain in detail what it does show. But please remember that this is a virtual representation, not a literal hardware one.
  • wwwww11111 Level 1 Level 1 (0 points)
    By installing Mac OS X from a USB DVD Drive, I mean connecting a USB DVD Drive to a USB port, inserting the Mac OS X Install DVD, holding Option, selecting the USB drive to boot from, RAIDing and partitioning my disks, then proceeding to install the OS.

    In fact, USB allows devices conforming to different interface standards to operate over the same physical connections (something else I think you are at least a little confused about).

    I won't question that that's supported by USB specifications, but from experience that doesn't work on the Mac OS X, there are numerous reports that connecting a USB 1.1 device to a Macbook Pro will cause the Bluetooth not to be detected (just google "Bluetooth not available"). The difference is that I don't have any external devices connected.

    I see as followed:
    USB Bus
    USB Bus
    - Apple Internal Keyboard / Trackpad
    - IR Receiver
    USB High-Speed Bus
    - Internal Memory Card Reader
    USB High-Speed Bus
    - Built-in iSight

    What else would cause the external ports to run at 1.1 and Bluetooth not to be detected at all off a fresh install (by fresh install I mean installing the OS onto a formatted drive)?
  • JaimieV Level 2 Level 2 (490 points)
    I think you've narrowed it down to hardware failure, to be honest.
Previous 1 2 Next