31

After upgrading my iPhone 6 to iOS 9, and iTunes to 12.3, I cannot use the Personal Hotspot via USB anymore. It worked fine until the updates.

Through WiFi it works fine, so the cause is not that Personal Hotspot wasn't turned on, or that the Cellular Data Network settings weren't correct. Also, after I plug in the USB, the device does show up in iTunes, and Image Capture sees it too.

So, Personal Hotspot works and USB works, but the two not together.

This is what the Network preferences show on OS X (Yosemite 10.10.5): "Either the cable for iPhone USB is not plugged in or the device is not responding."

OS X Network preferences

And here is a screenshot from the iPhone's Personal Hotspot. The blue badge shows I'm successfully connected via WiFi:

iPhone Personal Hotspot settings

Also, it seems I'm not alone. Any pointers on how to fix it?

2
  • Have you tried removing "iPhone USB" in the Network list of your Mac and reconnecting your iPhone so that your Mac will detect it as a new device? Commented Sep 17, 2015 at 7:37
  • I have the same problem; it didn't show up in the list.
    – redolent
    Commented Sep 24, 2015 at 20:35

3 Answers 3

16

Update:

Per @SeeMeCode's answer, you can re-install iTunes to solve the problem.


Solved.

I found the solution here. It's caused by a damaged kernel extension /System/Library/Extensions/AppleUSBEthernetHost.kext.

When I check /var/log/system.log, sure enough there is:

Sep 17 08:00:58 wagner.local com.apple.kextd[45]: Kext id com.apple.driver.AppleUSBHostMergeProperties not found; removing personalities from kernel.
Sep 17 08:00:58 wagner.local com.apple.kextd[45]: ERROR: invalid signature for com.apple.macos.driver.AppleUSBEthernetHost, will not load

This extension is installed with iTunes, so the cause was update to iTunes 12.3, not iOS 9. I tried to download iTunes and reinstall it, but it just installed the same damaged version of the kernel extension. So instead, I replaced it from a Time Machine backup as both the currently installed and the backed up version had the same version number 7.0.

After a restart, USB tethering works again.

To distinguish between the two, here's what the working one looks like:

working kext

$ ls -lR /System/Library/Extensions/AppleUSBEthernetHost.kext
total 0
drwxr-xr-x  6 root  wheel  204 Jan 10  2015 Contents

/System/Library/Extensions/AppleUSBEthernetHost.kext/Contents:
total 16
-rw-r--r--  1 root  wheel  3202 Jan 10  2015 Info.plist
drwxr-xr-x  3 root  wheel   102 Jan 10  2015 MacOS
drwxr-xr-x  3 root  wheel   102 Jan 10  2015 _CodeSignature
-rw-r--r--  1 root  wheel   474 Jan 10  2015 version.plist

/System/Library/Extensions/AppleUSBEthernetHost.kext/Contents/MacOS:
total 128
-rwxr-xr-x  1 root  wheel  63024 Jan 10  2015 AppleUSBEthernetHost

/System/Library/Extensions/AppleUSBEthernetHost.kext/Contents/_CodeSignature:
total 8
-rw-r--r--  1 root  wheel  3668 Jan 10  2015 CodeResources

And the damaged one:

damaged kext

$ ls -lR AppleUSBEthernetHost.kext
total 0
drwxr-xr-x  5 ischeini  staff  170 Aug  5 00:30 Contents

Contents:
total 16
-rw-r--r--@ 1 ischeini  staff  3202 Aug  5 00:30 Info.plist
drwxr-xr-x  3 ischeini  staff   102 Aug  5 00:30 MacOS
-rw-r--r--@ 1 ischeini  staff   473 Aug  5 00:30 version.plist

Contents/MacOS:
total 144
-rwxr-xr-x@ 1 ischeini  staff  71792 Aug  5 00:30 AppleUSBEthernetHost
7
  • 3
    Since I did not have any backups, I had to run sudo nvram boot-args="kext-dev-mode=1" and restart in order to allow for the new kext to be loaded.
    – Stoinov
    Commented Sep 17, 2015 at 21:10
  • @Stoinov, so the only problem with the new one is just that it's not signed? Commented Sep 18, 2015 at 4:13
  • According to my system log - yes. Or maybe that the signature is wrong.
    – Stoinov
    Commented Sep 18, 2015 at 5:13
  • Can confirm. Only change to my system was iTunes 12.3, and USB tethering stopped working. Commented Sep 20, 2015 at 5:05
  • 4
    Can confirm the new build of iTunes 12.3 fixes it (just go to apple.com/itunes/download) (thanks to @SeeMeCode's answer). Commented Sep 20, 2015 at 5:27
4

Looks like Apple may have published a new build of iTunes 12.3 with the old version of the kext file per a comment here from earlier today.

Tried it and confirmed the issue is resolved.

PS: If you want to check, the MD5 checksum of the new version is 77bad7ebb366433672169d40c5659224.

2
  • Are you saying that the newest iTunes will or will not fix this issue? Thanks. I'm running 12.2.25 Commented Oct 5, 2015 at 19:11
  • This worked for me. Download new iTunes 12.3, verify MD5, install. Then unplug iphone, replug-in iPhone, tethering works.
    – Cheeso
    Commented Oct 13, 2015 at 22:40
1

This required even further action for me. There was a checkbox to disable USB tethering.

enter image description here

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .