diff --git a/.gitattributes b/.gitattributes index 6d6145e6..20ebc824 100644 --- a/.gitattributes +++ b/.gitattributes @@ -8,5 +8,7 @@ *.JPG filter=lfs diff=lfs merge=lfs -text *.png filter=lfs diff=lfs merge=lfs -text *.PNG filter=lfs diff=lfs merge=lfs -text +*.svg filter=lfs diff=lfs merge=lfs -text +*.SVG filter=lfs diff=lfs merge=lfs -text *.webp filter=lfs diff=lfs merge=lfs -text *.WEBP filter=lfs diff=lfs merge=lfs -text diff --git a/src/README.md b/src/README.md index e65097cb..53ef40de 100644 --- a/src/README.md +++ b/src/README.md @@ -27,7 +27,7 @@ The source can be viewed [on GitHub](https://github.com/system76/tech-docs). - [nebula40 (nebula40-3)](models/nebula40-3/README.md) - [nebula49 (nebula49-1)](models/nebula49-1/README.md) - [Oryx Pro (oryp13)](models/oryp13/README.md) -- [Pangolin (pang15)](models/pang15/README.md) +- [Pangolin Pro (panp16)](models/panp16/README.md) - [Serval WS (serw14)](models/serw14/README.md) - [Thelio (thelio-r5-n1)](models/thelio-r5-n1/README.md) - [Thelio Astra (thelio-astra-a1-n1)](models/thelio-astra-a1-n1/README.md) diff --git a/src/SUMMARY.md b/src/SUMMARY.md index bd23c964..392b31a6 100644 --- a/src/SUMMARY.md +++ b/src/SUMMARY.md @@ -61,10 +61,10 @@ - [External Overview](models/oryp13/external-overview.md) - [Internal Overview](models/oryp13/internal-overview.md) - [Parts & Repairs](models/oryp13/repairs.md) - - [Pangolin (pang15)](models/pang15/README.md) - - [External Overview](models/pang15/external-overview.md) - - [Internal Overview](models/pang15/internal-overview.md) - - [Parts & Repairs](models/pang15/repairs.md) + - [Pangolin Pro (panp16)](models/panp16/README.md) + - [External Overview](models/panp16/external-overview.md) + - [Internal Overview](models/panp16/internal-overview.md) + - [Parts & Repairs](models/panp16/repairs.md) - [Serval WS (serw14)](models/serw14/README.md) - [External Overview](models/serw14/external-overview.md) - [Internal Overview](models/serw14/internal-overview.md) @@ -257,6 +257,10 @@ - [External Overview](models/oryp6/external-overview.md) - [Internal Overview](models/oryp6/internal-overview.md) - [Parts & Repairs](models/oryp6/repairs.md) + - [Pangolin (pang15)](models/pang15/README.md) + - [External Overview](models/pang15/external-overview.md) + - [Internal Overview](models/pang15/internal-overview.md) + - [Parts & Repairs](models/pang15/repairs.md) - [Pangolin (pang14)](models/pang14/README.md) - [External Overview](models/pang14/external-overview.md) - [Internal Overview](models/pang14/internal-overview.md) diff --git a/src/archive.md b/src/archive.md index 0e1f3587..d27cb900 100644 --- a/src/archive.md +++ b/src/archive.md @@ -54,6 +54,7 @@ The source can be viewed [on GitHub](https://github.com/system76/tech-docs). - [Oryx Pro (oryp8)](models/oryp8/README.md) - [Oryx Pro (oryp7)](models/oryp7/README.md) - [Oryx Pro (oryp6)](models/oryp6/README.md) +- [Pangolin (pang15)](models/pang15/README.md) - [Pangolin (pang14)](models/pang14/README.md) - [Pangolin (pang13)](models/pang13/README.md) - [Pangolin (pang12)](models/pang12/README.md) diff --git a/src/models/panp16/README.md b/src/models/panp16/README.md new file mode 100644 index 00000000..f9931850 --- /dev/null +++ b/src/models/panp16/README.md @@ -0,0 +1,61 @@ +# Pangolin Pro (panp16) + +- [External Overview](./external-overview.md) +- [Internal Overview](./internal-overview.md) +- [Parts & Repairs](./repairs.md) + +![Pangolin](./img/panp16.avif) + +The System76 Pangolin is a laptop with the following specifications: + +- CPU + - Supports AMD Ryzen (Krackan Point) Mobile CPUs + - [Ryzen AI 7 350](https://www.amd.com/en/products/processors/laptop/ryzen/ai-300-series/amd-ryzen-ai-7-350.html) +- BIOS + - GigaDevice GD25LB256FYIG flash chip + - WSON-8 form factor + - Programmed with System76 firmware (non-open) +- EC + - ITE IT5571 + - Programmed with non-open EC firmware +- Graphics + - GPU: AMD Radeon 860M + - eDP display: 16" 2560×1600@120Hz LCD + - LCD panel: CSOT MNG007DA8-1 (or equivalent) + - Brightness: 500 nits (cd/m²) + - sRGB color coverage: 100% + - External video output: + - 1x HDMI 2.1 + - 2x DisplayPort 1.4 over USB-C +- Memory + - Up to 96GB (2x48GB) dual-channel DDR5 @ 5600 MHz +- Networking + - 2.5-Gigabit Ethernet + - M.2 PCIe WiFi 6E/Bluetooth 5.2 + - MediaTek MT7922A22M +- Power + - 100W USB-C charging + - Lower-powered chargers supported with performance throttling + - Included USB-C charger: Lucent Trans PW29-PD100 + - 80.1Wh 4-cell Lithium-Ion battery + - Model number: 4058C4-4S +- Sound + - Internal speakers & microphone + - Combined headphone & microphone 3.5mm jack + - ALC233 codec + - HDMI & USB-C DisplayPort audio +- Storage + - 2x M.2 (PCIe NVMe Gen 4) + - MicroSD card reader +- USB + - 1x USB 4.0 Type-C + - Supports DisplayPort over USB-C + - Supports USB-C charging (USB-PD) + - Does not support Thunderbolt + - 1x USB 3.2 Gen 2 Type-C + - Supports DisplayPort over USB-C + - Does not support USB-C charging (USB-PD) + - Does not support Thunderbolt + - 3x USB 3.2 Gen 1 Type-A +- Dimensions + - 1.80cm x 35.60cm x 24.60cm, 1.65kg diff --git a/src/models/panp16/external-overview.md b/src/models/panp16/external-overview.md new file mode 100644 index 00000000..6c8b144a --- /dev/null +++ b/src/models/panp16/external-overview.md @@ -0,0 +1,57 @@ +# Pangolin Pro (External Overview) + +## Left side: + +![Left Ports](./img/ports-left.avif) + +## Right side: + +![Right Ports](./img/ports-right.avif) + +## Front side: + +![Front](./img/overview-front.avif) + +## Back side: + +![Back](./img/overview-back.avif) + +## Keyboard & touchpad: + +![Keyboard & Touchpad](./img/overview-top.avif) + +## Lid: + +![Lid](./img/overview-lid.avif) + +## Materials + +| Part | Material | +|--------------------------------------|----------| +| LCD back cover (lid) | Aluminum | +| LCD front cover (bezel) | Plastic | +| Top case (palm rests/port covers) | Plastic | +| Bottom panel | Aluminum | + +## LED indicators: + +| Icon | State | Description | +|-----------------------------------------|----------|-------------| +| ![Charging LED](./img/led-charging.svg) | Orange | Plugged in | +| | Off | Unplugged | + +## Keyboard shortcuts + +| Key | Shortcut| Action | +|-----------------------------|---------|----------------------------| +| ![Fn-F1](./img/fn-f1.svg) | Fn+F1 | Mute | +| ![Fn-F2](./img/fn-f2.svg) | Fn+F2 | Volume down | +| ![Fn-F3](./img/fn-f3.svg) | Fn+F3 | Volume up | +| ![Fn-F4](./img/fn-f4.svg) | Fn+F4 | Mute/unmute microphone | +| ![Fn-F6](./img/fn-f6.svg) | Fn+F6 | Toggle trackpad | +| ![Fn-F7](./img/fn-f7.svg) | Fn+F7 | Cycle keyboard brightness | +| ![Fn-F9](./img/fn-f9.svg) | Fn+F9 | Toggle airplane mode | +| ![Fn-F10](./img/fn-f10.svg) | Fn+F10 | Toggle displays | +| ![Fn-F11](./img/fn-f11.svg) | Fn+F11 | Screen brightness down | +| ![Fn-F12](./img/fn-f12.svg) | Fn+F12 | Screen brightness up | + diff --git a/src/models/panp16/img/battery.avif b/src/models/panp16/img/battery.avif new file mode 100644 index 00000000..fffb9620 --- /dev/null +++ b/src/models/panp16/img/battery.avif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:81ec5a86c911a6b4a4f2685666b8a04b2b95626c6911945c2890f3fe614e9ebf +size 275950 diff --git a/src/models/panp16/img/bottom-panel-spudger.avif b/src/models/panp16/img/bottom-panel-spudger.avif new file mode 100644 index 00000000..5f5c9e5e --- /dev/null +++ b/src/models/panp16/img/bottom-panel-spudger.avif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:776d1d66009f5fb9b9a8d70ce01824dfcf0034cbdcd346bdfa815ff2d7994dca +size 318746 diff --git a/src/models/panp16/img/bottom-panel.avif b/src/models/panp16/img/bottom-panel.avif new file mode 100644 index 00000000..cd663772 --- /dev/null +++ b/src/models/panp16/img/bottom-panel.avif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bc356ac2edc7c523a2d32cdc64f18652606b7be33c62a5dc17c79c354bcc5a4d +size 764035 diff --git a/src/models/panp16/img/components-highlighted.avif b/src/models/panp16/img/components-highlighted.avif new file mode 100644 index 00000000..067a18d9 --- /dev/null +++ b/src/models/panp16/img/components-highlighted.avif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7a1c9b8e76dea09f28f51b8358475de1b146bc188250a84818cb6ec527bf80ec +size 1178991 diff --git a/src/models/panp16/img/fn-f1.svg b/src/models/panp16/img/fn-f1.svg new file mode 100644 index 00000000..e8ce4f58 --- /dev/null +++ b/src/models/panp16/img/fn-f1.svg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4723044cbccafffe2fbfb6d74e2e3a53c52c484bb2379f61980033e28dac2599 +size 4927 diff --git a/src/models/panp16/img/fn-f10.svg b/src/models/panp16/img/fn-f10.svg new file mode 100644 index 00000000..bc8620e6 --- /dev/null +++ b/src/models/panp16/img/fn-f10.svg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d306544d1b6f7b32263be895edef39b29448e71c4c7ab063955ca9fe35f0e500 +size 6817 diff --git a/src/models/panp16/img/fn-f11.svg b/src/models/panp16/img/fn-f11.svg new file mode 100644 index 00000000..389dd89f --- /dev/null +++ b/src/models/panp16/img/fn-f11.svg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c500d6a059d8167b52323a2993761c05548fe99f1ea741a1c8d640f255b34848 +size 9540 diff --git a/src/models/panp16/img/fn-f12.svg b/src/models/panp16/img/fn-f12.svg new file mode 100644 index 00000000..d84aad46 --- /dev/null +++ b/src/models/panp16/img/fn-f12.svg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b35812023b32762c816f9b90c9cc44c8cf9dbb5bbd19467a4fd7ae84265f2e41 +size 9618 diff --git a/src/models/panp16/img/fn-f2.svg b/src/models/panp16/img/fn-f2.svg new file mode 100644 index 00000000..95a3103b --- /dev/null +++ b/src/models/panp16/img/fn-f2.svg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47d4ba4d7ce7c57955f0f9e415f7ddcdae9f536ff833c26e34e8f634f45ea357 +size 4865 diff --git a/src/models/panp16/img/fn-f3.svg b/src/models/panp16/img/fn-f3.svg new file mode 100644 index 00000000..8319f2c3 --- /dev/null +++ b/src/models/panp16/img/fn-f3.svg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fcf0ea89374f98f1a66f10e5c295d0021f0fa3a2d451fc0ac858ea774dad5f26 +size 5345 diff --git a/src/models/panp16/img/fn-f4.svg b/src/models/panp16/img/fn-f4.svg new file mode 100644 index 00000000..bc04eacf --- /dev/null +++ b/src/models/panp16/img/fn-f4.svg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e2997e538206723c9a27f7855bf7ecddafb6ade5654215e9d948dab6518bd5f +size 944804 diff --git a/src/models/panp16/img/fn-f6.svg b/src/models/panp16/img/fn-f6.svg new file mode 100644 index 00000000..d339cffc --- /dev/null +++ b/src/models/panp16/img/fn-f6.svg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:606704c44ae5dc399896e542616443d68494a2c1524abfbaac892b6ab549fcb2 +size 4929 diff --git a/src/models/panp16/img/fn-f7.svg b/src/models/panp16/img/fn-f7.svg new file mode 100644 index 00000000..f4f57ba1 --- /dev/null +++ b/src/models/panp16/img/fn-f7.svg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eef30ffa7bf83acb458ed4d56777c22b77998aba91395c11ad6885f266088851 +size 4887 diff --git a/src/models/panp16/img/fn-f9.svg b/src/models/panp16/img/fn-f9.svg new file mode 100644 index 00000000..b106b9bc --- /dev/null +++ b/src/models/panp16/img/fn-f9.svg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7bf94420aedad7c8f7f48d836554a7c935f40dbe93957c422e30c1d1056772af +size 4924 diff --git a/src/models/panp16/img/led-charging.svg b/src/models/panp16/img/led-charging.svg new file mode 100644 index 00000000..8a553ea3 --- /dev/null +++ b/src/models/panp16/img/led-charging.svg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e213c6fc44063c1994680abd7070227fe842f4bdc4d9707f8e4e72d416e11b7d +size 4747 diff --git a/src/models/panp16/img/m2-slots.avif b/src/models/panp16/img/m2-slots.avif new file mode 100644 index 00000000..3b2a65dc --- /dev/null +++ b/src/models/panp16/img/m2-slots.avif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:261daabfd9b8136cf3863d5521bbe985d60e7c4e79af7d6a89ab0dafa3cc1fe8 +size 549390 diff --git a/src/models/panp16/img/overview-back.avif b/src/models/panp16/img/overview-back.avif new file mode 100644 index 00000000..7b00f605 --- /dev/null +++ b/src/models/panp16/img/overview-back.avif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7f392e6c698c2a60a50c317ee83c397fb2948e55b1b784510b525dbbe10bcc31 +size 40146 diff --git a/src/models/panp16/img/overview-front.avif b/src/models/panp16/img/overview-front.avif new file mode 100644 index 00000000..1f466e10 --- /dev/null +++ b/src/models/panp16/img/overview-front.avif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:315320dfafbc56ab1cdaa7f74a0ccce9283ef8ccda1c4870f4190975ab3bb51f +size 37067 diff --git a/src/models/panp16/img/overview-lid.avif b/src/models/panp16/img/overview-lid.avif new file mode 100644 index 00000000..c7c2eb6e --- /dev/null +++ b/src/models/panp16/img/overview-lid.avif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48cc64d10f35ec158ff535fdfcbd428f613cd53a13f7d0571a0a29c6c15abe6c +size 63366 diff --git a/src/models/panp16/img/overview-top.avif b/src/models/panp16/img/overview-top.avif new file mode 100644 index 00000000..31fddcce --- /dev/null +++ b/src/models/panp16/img/overview-top.avif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8e3ab8d11670b5d538482d8d20f5824492879f4db316bc9c9a8a954149ef617d +size 159171 diff --git a/src/models/panp16/img/panp16.avif b/src/models/panp16/img/panp16.avif new file mode 100644 index 00000000..80b1b493 --- /dev/null +++ b/src/models/panp16/img/panp16.avif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1985437c939102c853c5e62452c24873d189455c50b27ef4e9103c65ca7ee777 +size 155795 diff --git a/src/models/panp16/img/ports-left.avif b/src/models/panp16/img/ports-left.avif new file mode 100644 index 00000000..21abdcf4 --- /dev/null +++ b/src/models/panp16/img/ports-left.avif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:476a9b8d20d986050b16505dc70a2546b14a84b0cdadddcff80a653ef863f301 +size 269794 diff --git a/src/models/panp16/img/ports-right.avif b/src/models/panp16/img/ports-right.avif new file mode 100644 index 00000000..6fed6fdf --- /dev/null +++ b/src/models/panp16/img/ports-right.avif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:61eac4a7b1a4c19370bc9b34ab21cc9f0e6e877b272162be97d92b831ce367c7 +size 196532 diff --git a/src/models/panp16/img/ram-slots.avif b/src/models/panp16/img/ram-slots.avif new file mode 100644 index 00000000..bdaa574d --- /dev/null +++ b/src/models/panp16/img/ram-slots.avif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a4435444ceef7dceb5e8d9101b974511fefc388835919c4bcc4913ab17fb608 +size 536395 diff --git a/src/models/panp16/img/speakers.avif b/src/models/panp16/img/speakers.avif new file mode 100644 index 00000000..c8f5d4fa --- /dev/null +++ b/src/models/panp16/img/speakers.avif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ee17c88fb7c9bfa771002fa3dc01702038368136a035a76d0437470d6f41352b +size 432618 diff --git a/src/models/panp16/img/thermal-paste-application.avif b/src/models/panp16/img/thermal-paste-application.avif new file mode 100644 index 00000000..747226d2 --- /dev/null +++ b/src/models/panp16/img/thermal-paste-application.avif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7ef1d7e4fd8bd4797a018cceb9eb0a592523374dee01fb12b78d8b20ceb6f7e +size 663602 diff --git a/src/models/panp16/img/thermal-paste-removal.avif b/src/models/panp16/img/thermal-paste-removal.avif new file mode 100644 index 00000000..8544db0f --- /dev/null +++ b/src/models/panp16/img/thermal-paste-removal.avif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:85aa988c3820ba5a389a0585cbe326eefabcf67e910f29ef41b276ecbef4e186 +size 702051 diff --git a/src/models/panp16/img/thermal-system-covers.avif b/src/models/panp16/img/thermal-system-covers.avif new file mode 100644 index 00000000..71b3cc3b --- /dev/null +++ b/src/models/panp16/img/thermal-system-covers.avif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ff144db650dd379ab22bc96ac7b6e4ea34fe3d29e20dba128696a9360000f709 +size 809286 diff --git a/src/models/panp16/img/thermal-system.avif b/src/models/panp16/img/thermal-system.avif new file mode 100644 index 00000000..5b4546aa --- /dev/null +++ b/src/models/panp16/img/thermal-system.avif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3ed32fe1722838757099afb291402568386295d12a450b2a71a0a21438cf1c1 +size 740477 diff --git a/src/models/panp16/img/wireless-card.avif b/src/models/panp16/img/wireless-card.avif new file mode 100644 index 00000000..31b519a4 --- /dev/null +++ b/src/models/panp16/img/wireless-card.avif @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89bb447b431450150f28dd6f93a98c548e6162c1e9969c4cfd9a38961e48c087 +size 132603 diff --git a/src/models/panp16/internal-overview.md b/src/models/panp16/internal-overview.md new file mode 100644 index 00000000..a8ddd2e5 --- /dev/null +++ b/src/models/panp16/internal-overview.md @@ -0,0 +1,21 @@ +# Pangolin Pro (Internal Overview) + +## Bottom components and connectors: + +![Internal Components](./img/components-highlighted.avif) + +- RAM slots are highlighted in maroon + - Top RAM stick is covered with protective plastic +- M.2 SSDs are highlighted in dark green +- Wireless card is highlighted in dark blue +- LCD panel connector is highlighted in red + - Covered by black protective tape +- Main battery connector is highlighted in yellow +- Fan connectors are highlighted in orange +- Speaker connectors are highlighted in cyan + - Right speaker connector (on the left side) is under the SSD in slot 1 +- Touchpad connector is highlighted in white +- Keyboard connector is highlighted in light green +- Keyboard backlight connector is highlighted in pink +- BIOS flash chip is highlighted in black + - Covered by the CPU heatsink pipe diff --git a/src/models/panp16/repairs.md b/src/models/panp16/repairs.md new file mode 100644 index 00000000..95318a62 --- /dev/null +++ b/src/models/panp16/repairs.md @@ -0,0 +1,215 @@ +# Pangolin Pro (Parts & Repairs) + +Many components in your Pangolin Pro can be upgraded or replaced as necessary. Follow these step-by-step guides for instructions: + +- [Removing the bottom cover](#removing-the-bottom-cover) +- [Replacing the RAM](#replacing-the-ram) +- [Replacing an M.2/NVMe SSD](#replacing-an-m2nvme-ssd) +- [Removing the battery](#replacing-the-battery) +- [Reseating the WiFi/Bluetooth antennas](#replacing-the-wireless-card) +- [Replacing the fans/heatsink/thermal paste](#replacing-the-cooling-system) +- [Replacing the speakers](#replacing-the-speakers) + +## Removing the bottom cover: + +Removing the cover is required to access the internal components. Prior to removing the cover, ensure the AC power is unplugged and all peripherals (including SD cards and USB drives) are unplugged or removed from the system. + +**Part numbers:** +- The bottom panel's part number is `839-ND16ARL`. + +**Tools required:** Cross-head (Phillips) screwdriver, plastic spudger +**Time estimate:** 5 minutes +**Difficulty:** Easy + +### Steps to remove the bottom cover: + +1. Place the machine lid-side down. + - Use a soft surface (such as a towel) to avoid scratches. +2. Remove the 9 bottom panel screws. + - The front four screws are mounted at an angle into the machine; hold the screwdriver at an angle for the easiest removal/installation. + +![Bottom panel screws](./img/bottom-panel.avif) + +3. Use a plastic spudger tool to pry the panel away from the chassis, starting at the crease next to the Ethernet door (highlighted red above). + - The back vents are not part of the bottom panel, and cannot be used as gripping points to remove the bottom panel. + +![Bottom panel removal with spudger](./img/bottom-panel-spudger.avif) + +4. Pull the rest of the bottom panel off. + - If either speaker comes loose while removing the bottom panel, [place it back onto the speaker posts](#replacing-the-speakers). + +## Replacing the RAM: + +The Pangolin Pro 16 supports up to 96GB (2x48GB) of DDR5 SO-DIMMs running at 5600MHz. If you've purchased new RAM, need to replace your RAM, or are reseating your RAM, follow these steps. + +**Tools required:** Cross-head (Phillips) screwdriver +**Time estimate:** 10 minutes +**Difficulty:** Easy + +### Steps to replace the RAM: + +1. Follow the steps above to [remove the bottom cover](#removing-the-bottom-cover). +2. Remove any protective covers from the RAM slots, such as the one shown on the left below. + - Alternatively, you can pull the outer end of the cover up and hold it away from the RAM stick while replacing it instead of entirely removing the cover from the slot. + +![RAM slots](./img/ram-slots.avif) + +3. Press the small tabs on both sides of the RAM simultaneously. The RAM should spring up to an angle. +4. Remove the RAM from the slot. +5. Insert the new RAM (or reseat the existing RAM) by placing it into the keyed slot and pressing down until it clicks into place. +6. Optionally, replace any protective covers. + +## Replacing an M.2/NVMe SSD: + +This model supports two M.2 SSDs. Both slots support PCIe NVMe Generation 4 connections and M.2 size 2280. + +**Tools required:** Cross-head (Phillips) screwdriver +**Time estimate:** 3 minutes +**Difficulty:** Easy + +### Steps to replace the M.2 drive: + +1. Follow the steps above to [remove the bottom cover](#removing-the-bottom-cover). +2. Unscrew the retainer screw opposite the M.2 slot. + +![M.2 slots](./img/m2-slots.avif) + +3. Remove the existing M.2 drive by pulling it out of the slot. +4. If replacing an M.2 drive, slowly peel any installed thermal pad (not pictured) off of the old drive, then place it on the new drive. + - If you ordered less than two drives when purchasing your system, an additional thermal pad will be included in the box. + - M.2 thermal pads are optional, and drives can be used without thermal pads if the pads are lost or unable to be transferred. Without the thermal pad, performance may be throttled to avoid overheating. +5. Insert the new M.2 drive into the slot and hold it in place. + - Due to manufacturing tolerances, the M.2 drive may not sit perfectly straight within the slot when aligned with the retainer screw. +6. Replace the retainer screw. + +## Replacing the battery: + +The battery provides primary power whenever the system is unplugged. + +Because the Pangolin Pro 16 doesn't have a CMOS battery, the main battery is also used to power the RTC (real-time clock) and the memory storing the UEFI setup (BIOS) settings. A small amount of power is reserved for this function even when the system powers off due to low battery. + +**Part numbers:** +- The battery's model number is `4058C4-4S`, and the original part number is `4ICP4/58/125`. + - Third-party battery sellers may list one or both of these numbers, and may offer other compatible part numbers with the same model number. + - You can also [contact System76](https://support.system76.com) to purchase a replacement battery. + +**Tools required:** Cross-head (Phillips) screwdriver +**Time estimate:** 10 minutes +**Difficulty:** Easy + +### Steps to replace the battery: + +1. Follow the steps above to [remove the bottom cover](#removing-the-bottom-cover). +2. Remove the five battery screws, highlighted yellow below. + +![Battery screws](./img/battery.avif) + +3. Unplug the battery connector (highlighted green above) and lift the battery out of the chassis. +4. If you're intentionally resetting the CMOS, open the lid of the machine and hold down the power button for a few seconds to drain any residual energy. +5. Place the new battery (or replace the existing battery) into the chassis. +6. Plug in the battery. + - The red wires go on the left, and the black wires go on the right. +7. Screw in the five battery screws. +8. Reinstall the bottom cover. + +## Replacing the wireless card: + +Your Pangolin's WiFi and Bluetooth are both handled by the same module. It is a standard M.2 2230 slot with PCIe and USB interfaces (E-key). + +**Part numbers:** +- The standard wireless card is a Mediatek `MT7922A22M`. + +**Tools required:** Cross-head (Phillips) screwdriver +**Time estimate:** 12 minutes +**Difficulty:** Medium + +### Steps to replace the WiFi/Bluetooth module: + +1. Follow the steps above to [remove the bottom cover](#removing-the-bottom-cover). +2. Locate the wireless module. Peel back the clear tape securing the antenna wires to the card. + - As shown below, the wireless card's label may stick to the tape; pull slowly and evenly to avoid ripping the label. + +![Wireless card](./img/wireless-card.avif) + +3. Gently remove the two antennas (highlighted red above) by pulling them up and away from the wireless card. +4. Remove the retaining screw opposite the M.2 slot, highlighted yellow above. +5. The wireless card will pop up at an angle. Remove the card from the M.2 slot. +6. Insert the new wireless card into the M.2 slot at an angle. +7. Replace the retaining screw. +8. Attach the two antennas by aligning the circular fittings and pressing onto the wireless card. The connectors will snap into place. _Use caution when attaching the connectors; the pins can bend, break, or snap._ + +## Replacing the cooling system: + +The Pangolin Pro 16 has a fan and heatsink assembly to cool the CPU. The fans and heatsink are held together with adhesive; it is possible to replace the fans individually, but removing the entire assembly is recommended to perform service. + +If a fan becomes noisy and cleaning it out doesn't fix the issue, you may need a new fan. [Contact support](https://support.system76.com/) to start a warranty claim or parts purchase. + +Depending on your climate and the age of the machine, it may be necessary to apply new thermal paste between the CPU and the heatsink. Thermal paste helps facilitate effective heat transfer between the CPU and the cooling equipment. + +**Part numbers:** +- The left fan is a Yingfan `D85 NB700805HHT4B10003`. +- The right fan is a Yingfan `D86 NA700805HHT4B10003`. + +**Tools required:** Cross-head (Phillips) screwdriver, thermal paste +**Time estimate:** 20 minutes +**Difficulty:** High + +### Steps to replace the fan/heatsink/thermal paste: + +1. Follow the steps above to [remove the bottom cover](#removing-the-bottom-cover). +2. Remove the black spacer cubes covering any of the six fan screws (three per fan). + - In the below photo, four screws are covered. + +![Thermal system covers](./img/thermal-system-covers.avif) + +3. Remove the cover from the [top RAM slot](#replacing-the-ram) and peel back the black tape holding the LCD cable to the left fan (pictured on the right). +4. Remove the six fan screws, highlighted cyan below. + +![Thermal screws](./img/thermal-system.avif) + +5. Unplug the two `FAN` connectors, highlighted green above. +6. Unscrew the three heatsink screws, highlighted red above. + - The heatsink screws are held captive and will not come out of the heatsink. +7. Remove the fan and heatsink assembly from the system, being careful not to bend the heatsink pipe. It may take some pressure to break the seal of the thermal paste. + - The fans are held onto the heatsink with adhesive strips on the top side; if they come loose, place them back into position after reinstalling the heatsink. +8. Using a paper towel, remove the existing thermal paste from the CPU chip and the heatsink. You may also use a small amount of rubbing alcohol if the old paste is dried or difficult to remove. + - Any thermal pad strips don't need to be removed. + +![Thermal paste removal](./img/thermal-paste-removal.avif) + +9. After cleaning the CPU and heatsink, apply a small line of thermal paste directly onto the CPU chip. + - Also place any thermal pad strips back into position if they came loose while removing the heatsink. + - The wider two thermal pads cover the `R10` chips or the corresponding positions on the heatsink. + - The thinner thermal pad covers the six smaller chips (farther from the CPU than the `R10` chips) or the corresponding position on the heatsink. + +![Thermal paste application](./img/thermal-paste-application.avif) + +10. Carefully replace the heatsink. + - To align the screw holes correctly, fit the gaps in the heatsink fins around the corresponding tabs sticking off the vents on the back of the chassis. +11. Reinstall the three heatsink screws. +12. Reinstall the six fan screws and plug in the two fan connectors. + - The wire for the fan near the wireless card runs under the wireless card's antennas. +13. Stick the black spacer cubes back onto the fan screws, the black tape back onto the LCD cable, and the silver cover back onto the top RAM slot. +14. Replace the bottom panel. + +## Replacing the speakers: + +The system has two speakers, which can be replaced independently. + +**Tools required:** Cross-head (Phillips) screwdriver +**Time estimate:** 10 minutes +**Difficulty:** Medium + +### Steps to replace the speakers: + +1. Follow the steps above to [remove the bottom cover](#removing-the-bottom-cover). + - For the right speaker, also [remove the SSD from slot 1](#replacing-an-m2nvme-ssd). +2. Unplug the `SPK` connector for each of the speakers, highlighted cyan below. + - For the right speaker (pictured on the left), peel back the black tape and white sticker covering the speaker wire. + - This can alternatively be done after freeing the speakers. + +![Right speakers and wire](./img/speakers.avif) + +3. Pull the speakers off of the plastic mounting posts (highlighted yellow above), then lift the speakers out of the machine. +4. Slide the new speakers onto the plastic posts and connect the corresponding `SPK` connectors. +5. Replace the tape and sticker (for the right speaker) and the bottom panel.