Skip to main content

OcuLink eGPU Expansion Bay Module

The OcuLink eGPU Expansion Bay Module is a community-developed hardware project that adds OCuLink (Optical-Copper Link) external GPU connectivity to the Framework Laptop 16 via its Expansion Bay. OCuLink provides a direct PCIe connection to the laptop's GPU slot, offering significantly higher bandwidth than USB4/Thunderbolt — up to ~63 Gbps for 4i (x4 PCIe 4.0) and ~126 Gbps for 8i (x8 PCIe 4.0), compared to ~32 Gbps for USB41. The project was initiated in June 2023 after Framework CEO Nrp greenlit community exploration of OCuLink for the Expansion Bay, and has since evolved through multiple design approaches, commercial preorders, and open-source hardware iterations1.

Background

The Framework Laptop 16 features a unique Expansion Bay system that provides access to the laptop's PCIe lanes — the same lanes used by the official GPU module. External GPUs (eGPUs) have traditionally used Thunderbolt or USB4, which encapsulate PCIe traffic within a USB protocol, introducing overhead and capping usable bandwidth at approximately 32 Gbps. OCuLink (also written OCuLink or OcuLink), defined in the PCI Express CEM specification, provides a native PCIe connection without protocol encapsulation, yielding significantly higher effective bandwidth1.

InterfaceRaw BandwidthUsable BandwidthProtocol Overhead
USB4 / Thunderbolt 440 Gbps~32 GbpsTunneling overhead
OCuLink 4i (x4 PCIe 4.0)~64 Gbps~63 GbpsMinimal (native PCIe)
OCuLink 8i (x8 PCIe 4.0)~128 Gbps~126 GbpsMinimal (native PCIe)

The Framework Laptop 16's Expansion Bay exposes up to 8 PCIe lanes (x8 PCIe 4.0), making it uniquely suited for OCuLink compared to other laptops that typically only offer USB4 or Thunderbolt1.

Framework's Official Stance

Framework CEO Nrp (Nirav Patel) confirmed in the original thread that Framework had been "thinking about OCuLink for the Expansion Bay" and welcomed the community to explore it. Framework later released updated PCB reference CAD files to assist community designers. Framework staff noted that 6-layer PCBs are recommended for high-speed PCIe signal integrity, though community members have demonstrated working designs on 4-layer boards1.

Development History

Phase 1: Community Greenlight and Initial Designs (June–August 2023)

Framework CEO Nrp started the OCuLink discussion thread on June 6, 2023, expressing interest in community-driven OCuLink solutions for the Expansion Bay1. The thread quickly attracted experienced hardware designers.

Seneral began developing an open-source dual 4i+DisplayPort PCB design, publishing design files on GitHub at Seneral/ExpansionBay. This design featured two OCuLink 4i connectors plus a DisplayPort output on a single Expansion Bay module2.

Josh_Cook announced a more ambitious design targeting 8i+DisplayPort with a PCIe retimer for signal integrity over the longer traces. Josh_Cook had prior experience designing Framework expansion cards through his i2c Labs venture1.

Framework released updated Expansion Bay PCB reference CAD files to assist the community, which Seneral integrated into the ExpansionBay repository2.

Phase 2: Preorders and Commercial Efforts (September 2023–March 2024)

Josh_Cook opened preorders on his website i2clabs.com.au for two OCuLink module variants1:

VariantPriceDescription
4i OCuLink Module$55 AUDFour PCIe lanes via OCuLink
8i OCuLink Module$55 AUDEight PCIe lanes via OCuLink (with retimer)

The preorder period attracted significant community interest, with dozens of users placing orders for both variants.

Phase 3: Limited Shipments and Delays (April–September 2024)

Josh_Cook shipped a limited number of 4i OCuLink modules to some preorder customers. However, the 8i module was repeatedly delayed, with Josh_Cook citing that it was "awaiting Framework review" for extended periods. Community members grew increasingly frustrated as communication became sporadic1.

Phase 4: M.2 Ribbon Cable Breakthrough (December 2024–February 2025)

A major breakthrough occurred when community member Gmanny discovered that a standard M.2-to-OCuLink ribbon cable adapter could be used with Framework's official Dual M.2 Expansion Bay Module — no custom PCB was required for a basic 4i OCuLink setup. This was documented in a separate thread with 364 replies3.

The approach was straightforward:

  1. Insert the official Framework Dual M.2 Expansion Bay Module
  2. Connect an M.2-to-OCuLink ribbon cable adapter to one of the M.2 slots
  3. Route the cable out of the chassis (requiring a notch or modification to the Expansion Bay cover)
  4. Connect the OCuLink end to an external GPU enclosure

This eliminated the need for a custom Expansion Bay PCB for 4i use cases, dramatically lowering the barrier to entry3.

Phase 5: Community Refinements (March–May 2025)

Building on the M.2 ribbon cable breakthrough, several community members contributed refinements:

  • Morkale created 3D-printed I/O covers that provided a clean exit point for the OCuLink cable, eliminating the need to cut or modify the original Expansion Bay cover1
  • Kyle_Tuck designed a proper M.2-to-OCuLink PCB adapter that was more robust and reliable than ribbon cable solutions, and began selling it commercially1
  • Gu_tally worked on a custom dual 4i-to-8i board, attempting to aggregate two M.2 x4 connections into a single x8 OCuLink connection1

A critical discovery during this period was the role of the EEPROM on the Expansion Bay module. The Framework Laptop 16's Embedded Controller (EC) reads an EEPROM on the Expansion Bay module to determine whether the slot should be configured for GPU mode (x8 lanes) or SSD mode (x4 lanes). Custom OCuLink modules needed to replicate the correct EEPROM configuration to enable the full x8 lane allocation1.

Phase 6: Filip's 8i Expansion Bay Board (June–December 2025)

Community member Filip (GitHub: Terrails) began developing a dedicated 8i OCuLink Expansion Bay module, publishing the design as Terrails/FW16-OCuLink under the MIT license4.

Hardware Design

ComponentDetails
PCIe lanesx8 PCIe 4.0 (OCuLink 8i)
PCB layers4-layer
Surface finishENIG (Electroless Nickel Immersion Gold)
StackupJLC04121H-1080 (JLCPCB)
ConnectorOCuLink 8i
EEPROMConfigured for GPU mode (x8 lane allocation)
LicenseMIT
RepositoryTerrails/FW16-OCuLink
Design toolKiCad

Filip chose a 4-layer PCB despite Framework's recommendation of 6 layers for PCIe signal integrity. The design proved functional, though signal integrity at 8i speeds required careful trace routing. The EEPROM was configured to report the module as a GPU, ensuring the EC allocated all 8 PCIe lanes4.

Phase 7: Testing and Benchmarks (December 2025–February 2026)

Filip's 8i board was tested by community member FWPL with an RTX 3090 on a Framework Laptop 16 (AMD Ryzen 7 7840HS). The benchmarks demonstrated a measurable improvement from 4i to 8i OCuLink1:

GameOCuLink 4iOCuLink 8iImprovement
Cyberpunk 207739.5 fps41.5 fps~5%
Far Cry 662 fps67 fps~8%

The results showed that while 8i provides a bandwidth uplift, the real-world gaming performance gains are modest because most games at the tested settings are not severely bottlenecked by PCIe bandwidth at 4i (63 Gbps). The gains would be more pronounced with higher-end GPUs or compute workloads that saturate the PCIe bus1.

The project received media coverage from Liliputing and inkl.com, bringing wider attention to the Framework community's OCuLink efforts56.

Phase 8: Production and Shipping (March–April 2026)

Filip began shipping production 8i boards at €65 each. The first buyers received their boards around April 1–3, 2026. Community member Andrew_Shaffer designed a 3D-printed eGPU enclosure specifically for use with the Framework 16 OCuLink setup1.

BoeRossTech published a YouTube video titled "Framework 16 + OCuLink eGPU: Ready for Prime Time," demonstrating the complete setup with benchmarks and providing a comprehensive overview of the project's current state7.

Josh_Cook / i2c Labs Situation

Josh_Cook's i2c Labs OCuLink preorder campaign has been a source of significant community concern. After shipping a limited number of 4i modules, Josh_Cook became increasingly inactive on the Framework Community forums around mid-2025. The i2clabs.com.au website went offline. Numerous preorder customers who paid for 8i modules reported never receiving their orders or refunds. The community thread documents multiple unresolved complaints1.

This situation is notable as a cautionary example in the community hardware space — community members are advised to exercise due diligence when preordering from unestablished vendors, even those with a track record of prior completed projects.

Technical Details

PCIe Lane Configuration

The Framework Laptop 16's Expansion Bay connects to the laptop's motherboard via a high-density connector carrying up to 8 PCIe 4.0 lanes. The Embedded Controller (EC) determines lane allocation based on the EEPROM contents of the installed module1:

EEPROM ConfigurationPCIe Lane AllocationUse Case
GPU modulex8 (all 8 lanes)Official GPU module, OCuLink 8i
SSD modulex4 (4 lanes)Dual M.2 adapter, basic storage

For OCuLink 8i modules, the EEPROM must be configured to report as a GPU module to unlock all 8 PCIe lanes. Without this configuration, only 4 lanes are available, limiting bandwidth to 4i speeds1.

Fan Control

The Framework Laptop 16 ties fan control behavior to the EEPROM configuration of the Expansion Bay module. When the EEPROM reports a GPU module, the EC enables the GPU fan profile — running the Expansion Bay fan at higher speeds under load to cool the GPU. OCuLink modules configured with the GPU EEPROM profile benefit from this fan behavior, as the OCuLink connector and cable can benefit from active cooling during sustained high-bandwidth transfers1.

Signal Integrity Considerations

PCIe 4.0 signaling at 16 GT/s requires careful PCB design. Framework recommends 6-layer PCBs for Expansion Bay modules carrying high-speed PCIe signals. However, community members have demonstrated working designs on 4-layer boards with careful trace routing and impedance matching. Key considerations include1:

  • Differential pair routing — PCIe lanes must be routed as tightly coupled differential pairs
  • Impedance matching — 85Ω differential impedance for PCIe
  • Via transitions — minimized and carefully placed to avoid signal reflections
  • Retimer chips — optional but beneficial for longer trace runs, especially at 8i speeds

Commercial Products

ProductCreatorTypePriceStatus
i2c Labs 4i OCuLink ModuleJosh_CookExpansion Bay PCB$55 AUDLimited shipment, vendor inactive
i2c Labs 8i OCuLink ModuleJosh_CookExpansion Bay PCB$55 AUDNever shipped, vendor inactive
Kyle_Tuck 4i M.2 AdapterKyle_TuckM.2-to-OCuLink PCB adapterVariesAvailable for purchase
Filip 8i Expansion Bay BoardFilip (Terrails)Expansion Bay PCB€65Shipping as of April 2026
M.2-to-OCuLink Ribbon CableVarious (generic)Ribbon cable adapter~$10–20Widely available

Setup Methods

Method 1: M.2 Ribbon Cable (Easiest, 4i Only)

Uses Framework's official Dual M.2 Expansion Bay Module with a generic M.2-to-OCuLink ribbon cable adapter. Requires a 3D-printed I/O cover or modification to the Expansion Bay cover for cable routing. Provides x4 PCIe 4.0 (~63 Gbps)3.

Method 2: Kyle_Tuck 4i Adapter (4i, More Robust)

Uses a purpose-built M.2-to-OCuLink PCB adapter designed by Kyle_Tuck. More reliable than ribbon cables and available as a commercial product1.

Method 3: Filip 8i Expansion Bay Board (8i, Maximum Bandwidth)

A dedicated Expansion Bay PCB providing x8 PCIe 4.0 (~126 Gbps) via OCuLink 8i connector. Requires the EEPROM to be configured for GPU mode. Available from Filip at €65 as of April 20264.

Method 4: Seneral's Open-Source Dual 4i+DP Board

Seneral's open-source design from the early phase of the project, featuring dual 4i connectors and DisplayPort. Available as open-source hardware on GitHub but not commercially produced2.

Footnotes

  1. OCuLink Expansion Bay Module — Framework Community (Nrp, Seneral, Josh_Cook, Filip, Kyle_Tuck, Gu_tally, et al., June 2023 – April 2026) 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23

  2. Seneral/ExpansionBay — GitHub (Seneral, 2023–2024) 2 3 4

  3. OCuLink via M.2 adapter on Framework 16 — Framework Community (Gmanny, Morkale, et al., December 2024 – February 2025) 2 3 4

  4. Terrails/FW16-OCuLink — GitHub (Filip / Terrails, 2025–2026) 2 3 4

  5. Framework Laptop 16 gets OCuLink 8i eGPU support thanks to community-designed module — Liliputing (2026)

  6. Framework 16 OCuLink eGPU community module — inkl.com (2026)

  7. Framework 16 + OCuLink eGPU: Ready for Prime Time — BoeRossTech, YouTube (2025–2026) 2