Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
Status
The first post of this thread is a WikiPost and can be edited by anyone with the appropiate permissions. Your edits will be public.

KennyW

macrumors 6502
Original poster
Sep 5, 2007
452
389
There has been a thread on USB 3 for iMac 2009 and one on USB 3 for iMac 2011. The miniPCIe slot for wifi/BT is utilised to provide USB 3 connection at the expense of wifi and BT, which have to be changed to external dongles. Thus, I explore a similar idea from those threads to install USB 3 in my iMac 2010 of different internal layout while trying to preserve the functional wifi/BT module. I use the Amazon links for the components as the pictures and descriptions are better though I bought everything from AliExpress at almost half the price.

Part 1/4 : Components

Left: miniPCIe to PCIe 1x adapter to be inserted into the wifi/BT module miniPCIe slot.
Right: PCIe 1x to two PCIe 4x slots riser board.
IMG_0964.jpeg



An alternative source of these would be AliExpress if they are unavailable in Amazon.
Dual PCIe riser boards can be found in AliExpress for ~US$10-12, e.g.



The UEX105 PCIE Riser is using ASM 1182 chip for the pci-e bridge/splitter. it supports from 1 pci-e X1 transform to 2 port pcie X4 ports. Despite it provides 4x slots, it is downward compatible with PCIe 1x, and much smaller in size.

But you need also the mPCIe adapter part from these packages selling for ~US$4-5, e.g.

-

Combine both and eliminate the bridging PCIe 1x slot, you will get the functioning mPCIe adapter directly to PCIe dual 4x slots to hold both the Wifi/BT module and USB PCI card.

A different shorter height mPCIe adapter alone sells for ~US$2. This one I haven't tested but find no reason why it couldn't work.


P.S. Updated 17 Oct 2021
(1) There is also a PCIe 1x to two PCIe 1x slots riser board but the 4x slots are more versatile with a broader range of USB 3 PCIe cards for choice. This one I have tested and it works, but its too long to fit comfortably and seems to be out of stock everywhere.

(2) Instead, another extender converting one PCIe 1x to three PCIe 1x slots is available. It uses the Pericom PI7C9X2G bridge chip for PCI-E switching. I haven't tested this.

(3) Other PCIe 1x to two PCIe 16x full size boards are available. They are a bit longer. I have not tested these either. One uses the Pericom PI7C9X111SL reversible PCIe-to-PCI bridge, which seems to be compatible with all sorts of motherboard chipsets in user reviews:
The other one employs ASMedia 1083 chipset:

======================

Close-up view of the adapter components.
IMG_0966.jpeg

The long USB 3 cables are switched to shorter cables for housing inside the iMac.
IMG_0967.jpeg

This shows how the above 2 components are connected together.
But on further testing, I found out that you can connect the miniPCIe adapter directly to the two slots PCIe 4x riser board with a USB 3 cable, omitting the middle PCIe 1x one slot coupling.
The USB speed is significantly only marginally improved as shown in the Benchmark but it reduces cabling and space requirement.
IMG_0968.jpeg

Left: PCIe x1 to miniPCIe adapter to re-hold the wifi/BT module. The mounting backplate should be removed.
Right: the USB 3 PCIe 1x card with 1 Fresco Logic FL1100 chip to give 3 USB-A ports and 1 FL5001 chip to provide 2 USB-C v3.0 ports. No driver is required in OSX from High Sierra onwards.
Updated on 11 Jul 2023: work in Ventura (and BootCamp Windows 10/11 22H2)
IMG_0969.jpeg

Read this for the choice of USB PCIe cards of different chipsets (VIA or ASMedia):

Updated 28 Nov 2020: I discover this PCIe 4x to mPCIe adapter cable which may replace the PCIe x1 to miniPCIe adapter card. However, upon testing, I found that it didn't work. The bluetooth was functional but wifi couldn't.
IMG_1189.jpg


I remove the backend mounting plate for some modification and drilling for mounting in the DVD slot before re-attaching it to the PCIe board.
IMG_0996.jpeg

I stick a black foam sheet to back of card to avoid short circuit with the aluminium iMac case.
IMG_1005.jpeg



IMG_1007.jpeg

* P.S. I have switched to a newly revised model of this USB 3 PCIe card of reduced height and cabling as depicted in Part 3.

The following are connector cables you would need.
- one of this SATA power cable splitter with right-angle connectors
- one of this SATA power cable splitter with straight connectors
- two of this PCIe extender cables, one of length 40cm and one 20cm, and BOTH ends of right-angle connection.

P.S. I also discover this special miniPCIe slot splitter which may simplify the installation. But I haven't tested this since it is too expensive to try.
 
Last edited:
As an Amazon Associate we earn from qualifying purchases.
Part 2/4: Case modification

A picture worths a thousand words.
I use small files to create the two bigger openings at the DVD insertion slot slit by hand.
Thus I made only one for USB-A and one for USB-C.
You may use dremel tools to do so for more openings in a shorter time.

IMG_1010.jpeg

IMG_1014.jpeg

IMG_1015.jpeg

IMG_1018.jpeg

IMG_1019.jpeg

IMG_1022.jpeg

IMG_1159.jpeg
 
Last edited:
Part 3/4: Component layout

The layout of the components is important.
It took me some time to find the sweet spots for each component with the simplest and shortest cabling.
These show where and how the USB 3 PCIe board (ULS-U3P7F-3A2C2I) is fixed to the DVD slot with screw holes through the slit.

IMG_1020.jpeg

IMG_1021.jpeg

P.S. Updated 28 Nov 2020: I tested another smaller version of USB 3.1 Gen 2 card (PCI 4x) of AsMedia ASM4132 chipset that should be natively supported in OSX. It is half the size of the Fresco Logic one without the need of power adapter. Unfortunately, it isn't recognised at all and doesn't show up in System Report. Not sure whether the card is dead on arrival or not, and couldn't confirm the claimed OSX support.
IMG_1190.jpg


P.S. Updated 7 Dec 2020: I changed to an updated version ULS-UP5200 v2 of the ULS-U3P7F-3A2C2I:
Like its predecessor, it is based on the Fresco Logic FL1100 chip with native Apple driver in High Sierra and Catalina, and supports UASP. The main change is no additional power supply required for normal recognition and operation anymore. Each USB 3.0 port gets 5V/0/9A (4.5W) max. power derived from an independent voltage conversion chip with a safety fuse. Thus there is less cable entanglement.
ULS-UP5200 v2.jpg
* The advantages of this are multifold:
(1) the two on board USB 3 connector are shorter in height and won't affect the placement of the LCD panel
(2) the on board power conversion reduces the need of SATA power cabling and thus minimizes cable cluttering and entanglement
(3) I can expand the internal SSD connection by connecting my small Samsung T7 USB 3 SSD inside the iMac


Here you can see the miniPCIe adapter board (A) is inserted into the miniPCIe slot originally for the wifi/BT module (B) at R lower corner of the picture.
The interconnecting USB 3 cable (C) leads across the back seat for the GPU heatsink (which is removed for GPU upgrade at the same time) to the previous DVD drive holding area.
There the 4x PCIe riser board (D) is placed flat (with black foam sticked to the back of the board again to avoid short circuit)

IMG_1149.jpeg

This showed the completed placement of all components with the GPU replaced:
- The original wifi/BT module, inserted into the PCIe to miniPCIe adapter, now sits just to the right of the miniPCIe to PCIe adapter. All the original antenna connections can be re-established in situ. With a long 40cm right-angled PCIe 1x to PCIe 1x extension cable (F) , it is connected to the riser board, routing behind the hard drive space (now occupied by 2 SSDs) and across the 3 pipe heatsink at its middle.
- The miniPCIe to PCIe adapter sits in the original site of the wifi/BT module, and is connected to the riser board with a USB 3 cable behind the radiator of the heatsink. There is NO need to connect power to this adapter.
- The PCIe 4x riser board sits flat at the prior DVD drive space with 2 right-angled PCIe 1x cables inserted into its 4x slots, one from the wifi/BT module inserted into the PCIe to miniPCIe adapter, another from the USB 3 PCIe card. The riser board requires its own SATA power supply.
- The USB 3 PCIe card (E) is screwed to the DVD slit and connected with a right-angled 20cm long PCIe 1x to PCIe 1x extension cable to the riser board. The card requires its own SATA power supply for the old version shown here..
IMG_1150.jpeg

A close-up view of the miniPCIe to PCIe adapter and the Wifi/BT module in place by its side. There is no screw fixation point for the Wifi/BT module, so I just tape it down with black foam at its back.
IMG_1299.jpg

A close up view of the USB 3 PCIe card (old version) and PCIe 4x riser board in place with the running power cables and PCIe connections entangling in a mess ?
IMG_1152.jpeg
P.S. I have tried to remove the SATA power supply to the USB card and riser board, but they didn't work. Thus the power connections to the riser board and this USB card are required for proper functions. The intermingling mess of power cables has to stay.

Updated 8 Dec 2020: This shows the USB 3 PCIe card (ULS-UP5200 v2) in place, with reduced cabling:
IMG_1304.jpg


P.S. For those who would like to upgrade the Wifi/BT, you may do so with the PCie slot version instead of re-using your old mPCIe module. This I haven't tested. Besides, extending the Wifi and BT antennas would be troublesome.

Updated 8 Dec 2020: I test this upgraded version of Wifi ac/BT 4.2 BCM943602CDP:
IMG_1299 copy.jpg
It works beautifully with Apple's native driver from High Sierra to Monterey connecting flawlessly to Apple Bluetooth mouse, keyboard, trackpad and my Bose 700 Headphone.
Updated 11 Jul 2023: works in Ventura (OCLP 0.6.7) and BootCamp Windows 10/11 22H2.
 
Last edited:
As an Amazon Associate we earn from qualifying purchases.
Part 4/4: System report and Benchmark

The old Wifi & BT module continues to function on the new PCIe to mPCIe adapter board:
IMG_1134.jpeg

IMG_1135.jpeg

Updated 8 Dec 2020: This showed the upgraded new Wifi ac/BT 4.2 module (BCM943602CDP) in function:
BT 4.2.jpg

Wifi ac.jpg


The registry of the USB 3 in System Report:
USB3.jpg


Speed test of the Samsung T7 USB external 2GB SSD via the onboard USB 2.
IMG_1157.jpeg

Speed test of the Samsung T7 USB external 2GB SSD via the USB 3 port WITH the middle PCIe relay.
IMG_1141 2.jpg
{Ref: The mPCIe slot is of PCIe x1, max. ~250MB/s. USB2 has max speed ~60MB/s, while USB3 ~625MB/s.}

Speed test of the Samsung T7 USB external 2GB SSD via the USB 3 port WITHOUT the intervening PCIe relay - minimal speed gain. (My prior test of higher speed used wrongly the internal SSD for testing.)
USB speedtest.jpg

The USB drive connected to the ports of the USB 3 PCIe card DID disconnected upon prolonged sleep with waking or restart. Currently all PCIe USB cards exhibit the same behaviour.

Screenshot 2021-05-22 at 4.27.59 PM.png

Updated 22 May 2021: The USB 3 modification works in Big Sur 11.2.3 with iMac MicroPatcher 0.5.5.
Updated 7 June 2021: The USB 3 hack still functions in Big Sur 11.4 with OCLP v0.1.5.
Updated 4 Aug 2021: Works in Catalina 10.15 to Big Sur 11.5.1 to Monterey 12 b4 with OCLP 0.2.4
Updated 17 Oct 2021: Function well in Monterey 12 beta10 with OCLP 0.3.0
Updated 23 Feb 2022: Continue to work in Monterey 12.2.1 with OCLP 0.4.2
Updated 12 Nov 2022: Work in Monterey 12.6.1 with OCLP 0.5.1
Updated 11 Jul 2023: no issue in Ventura 13.4.1 with OCLP 0.6.7 (and BootCamp Windows 10/11 22H2)

T7 to onboard USB 2: ================> T7 to PCIe USB3:
Screenshot 2021-10-21 at 9.44.33 PM.pngScreenshot 2021-10-21 at 9.54.06 PM.png
 
Last edited:
Thanks Kenny for publishing your project.
Can you write a few words to each of the products in page 1? What it is, what it does, and maybe a link to Aliexpress or your source?
I'm puzzled about those PCIE extenders, what exactly is this blue cable doing? Can they bring all PCIE signals over on the extender?
Similar question on the splitter... would that reduce the overall speed you can achieve?
The 5th pic, there is the USB3 card and another one. What is that one doing? What chip uses the USB3 card, do you need any driver?
Sorry for the lot of questions, I'm just curious.
 
Thanks Kenny for publishing your project.
Can you write a few words to each of the products in page 1? What it is, what it does, and maybe a link to Aliexpress or your source?
I'm puzzled about those PCIE extenders, what exactly is this blue cable doing? Can they bring all PCIE signals over on the extender?
Similar question on the splitter... would that reduce the overall speed you can achieve?
The 5th pic, there is the USB3 card and another one. What is that one doing? What chip uses the USB3 card, do you need any driver?
Sorry for the lot of questions, I'm just curious.
I am slowly adding in information.
Just be patient 🤗

P.S. Finally done. I notice that there are even PCIe 1x to three/four PCIe 1x riser.

I can't imagine there is such great expansion possibility for this vintage iMac.
It is the internal space that limits the expansion now.
But I feel it is a spring that comes too late...
 
Last edited:
As an Amazon Associate we earn from qualifying purchases.
Thank you KennyW, I did the search and found out that some items I can purchase locally (shipped from China but faster), one PCIe 1x to mPCIe need to purchase from aliexpress, which takes 1 month...
Will consider the project for my own iMac 2010, very prominent.
 
  • Like
Reactions: Ausdauersportler
Thank you KennyW, I did the search and found out that some items I can purchase locally (shipped from China but faster), one PCIe 1x to mPCIe need to purchase from aliexpress, which takes 1 month...
Will consider the project for my own iMac 2010, very prominent.
Looking forward to your result.

In Part 3, I listed another smaller USB 3.1 Gen 2 card & wifi/BT module for testing.
Will report later with benchmarking when the card is mounted thru case modification again as the ports don't align with the prior ones I made.
 
As the PCIe interface of iMac 2010 mPCIe is just 1x (250MB/s), and the cable is USB 3.0 (5Gbps), do you think we can use this set-up?
iMac mPCIe => USB 3.0 cable => USB 3.0 multi-hub (for extra USB port) => USB to PCIe 1x adapter => Wifi card

Because I found one internal USB hub on Aliexpress like this below item. It has 1 USB port internal and 5 more external.

 
As the PCIe interface of iMac 2010 mPCIe is just 1x (250MB/s), and the cable is USB 3.0 (5Gbps), do you think we can use this set-up?
iMac mPCIe => USB 3.0 cable => USB 3.0 multi-hub (for extra USB port) => USB to PCIe 1x adapter => Wifi card

Because I found one internal USB hub on Aliexpress like this below item. It has 1 USB port internal and 5 more external.

I think the USB 3 cable only serves as a data connection between the boards. The boards themselves are not generating USB 3 signal or data stream for use as USB connection. I remember it has been mention somewhere for that. You need specific hardware chip to provide a USB port connection from the mPCIe, and if you search in AliExpress, you can find many of these tiny mPCIe -> USB3 adapter with mostly NEC chipsets that don't work in OSX.

I could not find the chipset for this internal USB hub. It is covered by the heatsink and not mention anywhere by the seller. So, I am not certain whether it really works in OSX.
 
Hey @KennyW how long are the 2 PCI-e riser cables you used?

Also does the AC BT 4.2 device need another adapter or does it fit into the pcie mpcie adapter?
 
Hey @KennyW how long are the 2 PCI-e riser cables you used?

Also does the AC BT 4.2 device need another adapter or does it fit into the pcie mpcie adapter?
The length is mentioned above, one 40cm and another 20cm.

The wifi/BT module is put in the pcie-mpcie adapter of green board, placed just beside the original site for the module.

But yours is an iMac 2011 with different layout I suppose.

You have the Thunderbolt port to give a USB3 port, and just need to place the wifi/BT module into the carrier of the original module without the need of the extra adapter.
 
The length is mentioned above, one 40cm and another 20cm.

The wifi/BT module is put in the pcie-mpcie adapter of green board, placed just beside the original site for the module.

But yours is an iMac 2011 with different layout I suppose.

You have the Thunderbolt port to give a USB3 port, and just need to place the wifi/BT module into the carrier of the original module without the need of the extra adapter.
i dont really want to buy a very expensive thunderbolt dock to get 1 usb3 port (at least this is what i found so far in italy). to be honest i like modifying my mac and experimenting is fun
I am also planning on designing some sort of airflow conveyor to force the air from the hdd fan onto the GPU and then 3d print it for fun :)

Sorry i missed the part where you were specifying the length of the pcie riser cables, i will read your posts again before asking questions in the future

thanks again
 
i dont really want to buy a very expensive thunderbolt dock to get 1 usb3 port (at least this is what i found so far in italy). to be honest i like modifying my mac and experimenting is fun
I am also planning on designing some sort of airflow conveyor to force the air from the hdd fan onto the GPU and then 3d print it for fun :)

Sorry i missed the part where you were specifying the length of the pcie riser cables, i will read your posts again before asking questions in the future

thanks again
Yeah, experimenting is fun :)

But since the internal layout of 2010 and 2011 are slightly different, the length of the extender PCIe cables would vary, depending also on where you are going to house the components. You have to measure your own.
 
Yeah, experimenting is fun :)

But since the internal layout of 2010 and 2011 are slightly different, the length of the extender PCIe cables would vary, depending also on where you are going to house the components. You have to measure your own.

Yep i guessed that much, just wanted to have an idea of where to start.
Been finding lots of stuff on AliExpress, so i will place an order when i have some dough.

i looked at the pictures i took of my open iMac and i may also design and 3d print something for the placement of the SSD, USB 3 adapter and pcie splitter

I will also take some pictures and add my experience to this thread

As far as i could see from your pics and mine the layout is pretty similar
 
Yep i guessed that much, just wanted to have an idea of where to start.
Been finding lots of stuff on AliExpress, so i will place an order when i have some dough.

i looked at the pictures i took of my open iMac and i may also design and 3d print something for the placement of the SSD, USB 3 adapter and pcie splitter

I will also take some pictures and add my experience to this thread

As far as i could see from your pics and mine the layout is pretty similar
They are close, except for the original holding site of the mPCIe slot for the wifi/BT module.
 
  • Like
Reactions: plasticpippo
Hi everyone, thanks for the sharing. I recently did the usb 3 upgrade. However I encountered some issue.
I used 0.66 Open Core. O.C link from the graphics card upgrade thread. However when I installed a ASM1042A usb card, the card is detected, but doesn't detect any usb device plugged in.

My spec:
imac 27" 2010 i7 860
32gb 1333Mhz
1 tb seagate barracuda
480gb intel ssd
USB 3 card - Genesys logic using Asmedia1042A chipset

Update 20-Mar 9:30am

What I did:
First trial
Detect usb 3 card (picture 5)
Cannot detect any device plugged in

Second trial
I enable usdbinjectall.kext in open core.
Boot into Windows 10
Windows 10 can detect all device plugging into usb 3 card
restart
boot into big sur
Suddenly it works. detect device (picture 4)
restart
Still works

Third trial
Shutdown
I disable usdbinjectall.kext in open core.
Boot into Windows 10
Windows 10 can detect all device plugging into usb 3 card
restart
boot into big sur
detect device (picture 4)
restart
Still works

Fourth trial
I enable usdbinjectall.kext in open core.
Boot into Windows 10
Windows 10 can detect all device plugging into usb 3 card
restart
boot into big sur
still work


Fifth Trial
Shutdown
Enable usdbinjectall.kext in open core.
Boot into Big Sur directly
Cannot detect any device plugged in
restart
Boot into Big Sur
Cannot detect any device plugged in


IN conclusion, I think there's some setting inside O.C that I need to adjust, but I don't know which one. I don't understand the mechanism. Seems like windows trigger the usb 3 card to work. Any advice is welcome. Thanks.
 

Attachments

  • 20210314_173105.jpg
    20210314_173105.jpg
    868.4 KB · Views: 224
  • 20210314_145308.jpg
    20210314_145308.jpg
    1.1 MB · Views: 231
  • Screenshot 2021-03-19 at 8.41.17 PM.png
    Screenshot 2021-03-19 at 8.41.17 PM.png
    250.2 KB · Views: 175
  • Screenshot 2021-03-20 at 9.25.11 AM.png
    Screenshot 2021-03-20 at 9.25.11 AM.png
    324.8 KB · Views: 170
  • Screenshot 2021-03-20 at 9.33.36 AM.png
    Screenshot 2021-03-20 at 9.33.36 AM.png
    225.4 KB · Views: 183
Last edited:
  • Like
Reactions: Ausdauersportler
Can you add the compressed kernel extension you inject additionally to your post. I have ordered the same parts and will start playing with it next week...
Right now I have no ideas where to start searching in the OC config.
Really great work!
 
Can you add the compressed kernel extension you inject additionally to your post. I have ordered the same parts and will start playing with it next week...
Right now I have no ideas where to start searching in the OC config.
Really great work!
Hi Ausdauersportler, I updated the DOE in post #19. Sorry for the confusion.
 

Attachments

  • Screenshot 2021-03-20 at 8.55.07 AM.png
    Screenshot 2021-03-20 at 8.55.07 AM.png
    232.8 KB · Views: 186
Last edited:
  • Like
Reactions: Ausdauersportler
My Fresco Logic FL1100 based PCIe USB card works in different versions of OS X, up to Big Sur, with or WITHOUT OC.
Patching is done by iMac Micropatcher.
My only experience with ASM is the failed one of ASM4132 chip that I depicted above.

So, I can't understand why yours only works intermittently.
 
Last edited:
My Fresco Logic FL1100 based PCIe USB card works in different versions of OS X, up to Big Sur, with or WITHOUT OC.
Patching is done by iMac Micropatcher.
My only experience with ASM is the failed one of ASM4132 chip that I depicted above.

So, I can't understand why yours only works intermittently.
Hi Kenny,
This is my card:
Pic 1.

You can see there is 2 chips on the card. One is Asmedia ASmedia1042A, the other is Genesys logic GL3520. (Pic 2). 1042A is the controller and GL3520 is the hub.

I think what happened is windows activated/turned on the GL3520 hub chip when I log on to windows through drivers. Mac OS doesn't turn on the GL3520. What I need to do is to understand what pin is the force on for GL3520 and solder a voltage line to always on the hub chip so the hub is always detected by Big sur.

Alternatively, just buy a card without the hub chip and you would be safe.
 

Attachments

  • En-Labs-PCI-e-zu-4-Ports-USB-3-1-GEN-1-5-Gbps-USB-Typ.jpg_q50.jpg
    En-Labs-PCI-e-zu-4-Ports-USB-3-1-GEN-1-5-Gbps-USB-Typ.jpg_q50.jpg
    41.5 KB · Views: 248
  • img_3084_01.jpg
    img_3084_01.jpg
    35.8 KB · Views: 153
Last edited:
Anyone using similar card configuration(1 usb controller, 1 hub controller chip) having problems?
 
Last edited:
Hi Kenny,
This is my card:
Pic 1.

You can see there is 2 chips on the card. One is Asmedia ASmedia1042A, the other is Genesys logic GL3520. (Pic 2). 1042A is the controller and GL3520 is the hub.

I think what happened is windows activated/turned on the GL3520 hub chip when I log on to windows through drivers. Mac OS doesn't turn on the GL3520. What I need to do is to understand what pin is the force on for GL3520 and solder a voltage line to always on the hub chip so the hub is always detected by Big sur.

Alternatively, just buy a card without the hub chip and you would be safe.
looks like there is a sata power input on your card. did you try and connect that?
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.