diff --git a/src/README.md b/src/README.md
index a021107d..4ef20f3f 100644
--- a/src/README.md
+++ b/src/README.md
@@ -29,6 +29,7 @@ The source can be viewed [on GitHub](https://github.com/system76/tech-docs).
- [Thelio Mega (thelio-mega-r1.0)](models/thelio-mega-r1.0/README.md)
- [Thelio Mira (thelio-mira-b1.0)](models/thelio-mira-b1.0/README.md)
- [Thelio Mira (thelio-mira-r3.0)](models/thelio-mira-r3/README.md)
+- [Thelio Spark (thelio-spark-b1-n2)](models/thelio-spark-b1-n2/README.md)
## Previous Models
diff --git a/src/SUMMARY.md b/src/SUMMARY.md
index d6e53da5..d6db2458 100644
--- a/src/SUMMARY.md
+++ b/src/SUMMARY.md
@@ -87,6 +87,10 @@
- [External Overview](models/thelio-mira-r3/external-overview.md)
- [Internal Overview](models/thelio-mira-r3/internal-overview.md)
- [Parts & Repairs](models/thelio-mira-r3/repairs.md)
+ - [Thelio Spark (thelio-spark-b1-n2)](models/thelio-spark-b1-n2/README.md)
+ - [External Overview](models/thelio-spark-b1-n2/external-overview.md)
+ - [Internal Overview](models/thelio-spark-b1-n2/internal-overview.md)
+ - [Parts & Repairs](models/thelio-spark-b1-n2/repairs.md)
- [Previous Models](README.md)
- [Adder WS (addw2)](models/addw2/README.md)
- [External Overview](models/addw2/external-overview.md)
diff --git a/src/models/thelio-spark-b1-n2/README.md b/src/models/thelio-spark-b1-n2/README.md
new file mode 100644
index 00000000..ee7eb8f0
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/README.md
@@ -0,0 +1,82 @@
+# Thelio Spark (thelio-spark-b1-n2)
+
+- [External Overview](./external-overview.md)
+- [Internal Overview](./internal-overview.md)
+- [Parts & Repairs](./repairs.md)
+
+![Thelio Spark](./img/thelio-spark-b1-n2.webp)
+
+The System76 Thelio Spark is a desktop with the following specifications:
+
+- Chassis
+ - System76 [Thelio Spark chassis](https://github.com/system76/thelio/tree/ba8d6375083abb3145980f8522aa97ca6e9f08fb/Thelio%20Mira%5CSpark%20(nebula36)) based on nebula36-2
+- Processor options
+ - Supports Intel 12th Generation (Alder Lake) CPUs
+ - [Core i5-12400](https://ark.intel.com/content/www/us/en/ark/products/134586/intel-core-i512400-processor-18m-cache-up-to-4-40-ghz.html)
+ - [Core i5-12600K](https://ark.intel.com/content/www/us/en/ark/products/134589/intel-core-i512600k-processor-20m-cache-up-to-4-90-ghz.html)
+- Motherboard
+ - [ASRock B660M PRO RS](https://www.asrock.com/mb/Intel/B660m%20Pro%20RS/index.asp#Specification) running System76 Firmware (non-open)
+ - Intel B660 chipset
+- Daughterboard
+ - [Thelio Io](https://github.com/system76/thelio-io) board running [open-source firmware](https://github.com/system76/thelio-io-firmware)
+- Graphics options
+ - Up to two dedicated GPUs
+ - Primary GPU slot:
+ - PCIe 4.0 x16
+ - Up to 3-slot height
+ - Up to 2-slot height if PCIe x1 slot is in use
+ - Secondary GPU slot:
+ - PCIe 3.0 x16
+ - Up to 4-slot height
+ - GPU size:
+ - Internal clearance: 318.80mm
+ - Recommended maximum length: 308.80mm
+ - Tested with the following GPUs:
+ - Integrated Graphics
+ - 1x HDMI 2.1, 1x DisplayPort 1.4
+ - [AMD Radeon RX 7600](https://www.amd.com/en/products/graphics/amd-radeon-rx-7600#product-specs)
+ - 1x HDMI 2.1, 3x DisplayPort 2.1
+ - [NVIDIA GeForce RTX 4060 Ti](https://www.nvidia.com/en-us/geforce/graphics-cards/40-series/rtx-4060-4060ti/#specs)
+ - 1x HDMI 2.1, 3x DisplayPort 1.4a
+- Expansion
+ - 1x PCIe 4.0 x16 (primary GPU slot)
+ - 1x PCIe 3.0 x16 (secondary GPU slot)
+ - 1x PCIe 3.0 x1
+- Memory
+ - Up to 64GB (4x16GB) dual-channel DDR4 DIMMs @ 3200 MHz
+ - User-expandable up to 128GB (4x32GB) @ 3200 MHz
+ - Tested with the following RAM modules (may ship with other tested modules):
+ - [Crucial CT16G4DFRA32A](https://www.crucial.com/memory/ddr4/ct16g4dfra32a#spec) (16GB/stick)
+- Networking
+ - 1x 1-Gigabit Ethernet ([Intel I219-V](https://www.intel.com/content/www/us/en/products/sku/82186/intel-ethernet-connection-i219v/specifications.html))
+ - 1x PCI Express x1 wireless card ([Intel AX210](https://www.intel.com/content/www/us/en/products/sku/204836/intel-wifi-6e-ax210-gig/specifications.html))
+ - WiFi 6E
+ - Bluetooth 5.2
+- Power
+ - C13 power cord
+ - 600W PSU
+ - Tested with the following PSU models (may ship with other tested models):
+ - [Thermaltake Toughpower GX2 600W (80+ Gold)](https://thermaltakeusa.com/products/toughpower-gx2-600w-ps-tpd-0600nnfagu-2#tab-label-specification)
+- Sound
+ - Back: 3.5mm line out, line in, microphone jacks
+ - Top: 3.5mm line out, microphone jacks
+ - Up to 7.1-channel audio output
+ - Realtek ALC897 audio chipset
+ - HDMI, DisplayPort audio
+- Storage
+ - 1x M.2 2280/2260/2242 SSD
+ - PCIe NVMe Gen 4
+ - 1x M.2 2280 SSD
+ - PCIe NVMe Gen 3
+ - SATA III
+ - Intel Optane
+ - 2x 2.5" (15mm) SATA III
+- USB
+ - 1x USB 3.2 Gen 1 Type-C
+ - Top port
+ - 5x USB 3.2 Gen 1 Type-A
+ - 4x back ports, 1x top port
+ - 2x USB 2.0 Type-A
+ - Back ports
+- Dimensions
+ - 43.635cm × 25.3cm × 33.1cm
diff --git a/src/models/thelio-spark-b1-n2/external-overview.md b/src/models/thelio-spark-b1-n2/external-overview.md
new file mode 100644
index 00000000..bce4d099
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/external-overview.md
@@ -0,0 +1,28 @@
+# Thelio Spark (External Overview)
+
+## Back overview:
+
+![Back Ports](./img/ports-back.webp)
+
+### Power Switch Guide:
+
+- 0: Off
+- 1: On
+
+### PCI Express Slot Guide:
+
+The recommended PCIe slot configuration is:
+
+- Top slot (4.0 x16): Used for dedicated GPU (if ordered)
+- Middle slot (3.0 x1): Empty
+- Bottom slot (3.0 x16): Used for wireless card
+
+Cards can be moved into other compatible slots to accomplish different aftermarket configurations. Note that the wireless card may obstruct the GPU fans if placed in the middle PCIe slot (3.0 x1).
+
+## Front/side overview:
+
+![Front & Side Views](./img/ports-front-sides.webp)
+
+## Top/bottom overview:
+
+![Top & Bottom Views](./img/ports-top-bottom.webp)
diff --git a/src/models/thelio-spark-b1-n2/img/25-drive-cage-screws.webp b/src/models/thelio-spark-b1-n2/img/25-drive-cage-screws.webp
new file mode 100644
index 00000000..fe74d753
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/25-drive-cage-screws.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:fdab9ec52c77428056359e652156b8a6c877390d608e8ab5fcb473ed9c485fe9
+size 552110
diff --git a/src/models/thelio-spark-b1-n2/img/25-drive-installation.webp b/src/models/thelio-spark-b1-n2/img/25-drive-installation.webp
new file mode 100644
index 00000000..7eb4e378
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/25-drive-installation.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:2e4b1f462d6969086f5e9bdf238e7936fd62643666b0ca571e5b0c2e9a7201b5
+size 923206
diff --git a/src/models/thelio-spark-b1-n2/img/25-drive-installed.webp b/src/models/thelio-spark-b1-n2/img/25-drive-installed.webp
new file mode 100644
index 00000000..87c76dc2
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/25-drive-installed.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:6ee14cf2372df8b5dcaec0161c7944a0ebf395bd9d02f5c48fa05dceb37b735a
+size 793770
diff --git a/src/models/thelio-spark-b1-n2/img/25-drive-screws.webp b/src/models/thelio-spark-b1-n2/img/25-drive-screws.webp
new file mode 100644
index 00000000..b7c4b01f
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/25-drive-screws.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:fa6b2ec444d95b6dd6829421b81910ae989ddc5a13f7b8da07ce82a073f0238d
+size 901426
diff --git a/src/models/thelio-spark-b1-n2/img/25-slot-cover.webp b/src/models/thelio-spark-b1-n2/img/25-slot-cover.webp
new file mode 100644
index 00000000..b2abe8be
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/25-slot-cover.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:2232aa698339ba306b043f2ce033e44f4be5d20c4d201529933774f9c1f57e21
+size 927584
diff --git a/src/models/thelio-spark-b1-n2/img/accent-strip-removal.webp b/src/models/thelio-spark-b1-n2/img/accent-strip-removal.webp
new file mode 100644
index 00000000..ec0c94ff
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/accent-strip-removal.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:2a05a9476c7a6b6418e5bc84190db98c11b1d7f881b4430a9b405740c3fd4ee2
+size 859898
diff --git a/src/models/thelio-spark-b1-n2/img/bottom-fan-cable.webp b/src/models/thelio-spark-b1-n2/img/bottom-fan-cable.webp
new file mode 100644
index 00000000..93324b31
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/bottom-fan-cable.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:0328f609111b4d12b3856e1b7cc5da410527e91a9800eb70db36152584f02053
+size 982496
diff --git a/src/models/thelio-spark-b1-n2/img/bottom-fan-connector.webp b/src/models/thelio-spark-b1-n2/img/bottom-fan-connector.webp
new file mode 100644
index 00000000..639023c4
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/bottom-fan-connector.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:779db1377255c50e6377063d7a38fb0fc8d15052086d833bbfaf9537f7675af3
+size 845934
diff --git a/src/models/thelio-spark-b1-n2/img/bottom-fan-screws.webp b/src/models/thelio-spark-b1-n2/img/bottom-fan-screws.webp
new file mode 100644
index 00000000..dff92fc0
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/bottom-fan-screws.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:6f3c34dd9fb15feb35791782d18329a23ce08f5e869a86c2e706bec42d641c93
+size 811342
diff --git a/src/models/thelio-spark-b1-n2/img/cmos-battery.webp b/src/models/thelio-spark-b1-n2/img/cmos-battery.webp
new file mode 100644
index 00000000..085fb985
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/cmos-battery.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:ae4ed0b4b61a2739f1ce9b7d9cd9983622851121b33ca771bd672e4c78f92c0e
+size 876328
diff --git a/src/models/thelio-spark-b1-n2/img/cpu-cooler-mounting-bracket-corner-sleeves.webp b/src/models/thelio-spark-b1-n2/img/cpu-cooler-mounting-bracket-corner-sleeves.webp
new file mode 100644
index 00000000..e4120d3d
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/cpu-cooler-mounting-bracket-corner-sleeves.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:6431c34f7524165bae1f57f2ea0d1d0feeaec091f9ae831b33e7097fc8010ae5
+size 568414
diff --git a/src/models/thelio-spark-b1-n2/img/cpu-cooler-mounting-bracket.webp b/src/models/thelio-spark-b1-n2/img/cpu-cooler-mounting-bracket.webp
new file mode 100644
index 00000000..7b65a15f
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/cpu-cooler-mounting-bracket.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:9158bb212d6987c27f67ac01522d8fd9979c21a4de0305204cacd48869cf6fcd
+size 439620
diff --git a/src/models/thelio-spark-b1-n2/img/cpu-cooler-mounting-clips.webp b/src/models/thelio-spark-b1-n2/img/cpu-cooler-mounting-clips.webp
new file mode 100644
index 00000000..67d7fe90
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/cpu-cooler-mounting-clips.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:4f768895343cfe8475354c49027a3d90ea5f2de9c70d64bcfaef67ef4d41f725
+size 953004
diff --git a/src/models/thelio-spark-b1-n2/img/cpu-cooler-screws.webp b/src/models/thelio-spark-b1-n2/img/cpu-cooler-screws.webp
new file mode 100644
index 00000000..57338034
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/cpu-cooler-screws.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:57c648794fbe88670a289e99168ff7b0ae7c48ef955ea504e8f29aa98c725ece
+size 303378
diff --git a/src/models/thelio-spark-b1-n2/img/cpu-duct-fan-bracket-screws.webp b/src/models/thelio-spark-b1-n2/img/cpu-duct-fan-bracket-screws.webp
new file mode 100644
index 00000000..1a9277ca
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/cpu-duct-fan-bracket-screws.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:eef14795e056b8172fcd409b316db15f753276703f333ea415769ffb876c9f3e
+size 457908
diff --git a/src/models/thelio-spark-b1-n2/img/cpu-duct-fan-screws.webp b/src/models/thelio-spark-b1-n2/img/cpu-duct-fan-screws.webp
new file mode 100644
index 00000000..796bdde3
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/cpu-duct-fan-screws.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:ed3f6d334295f320c3d3074a29784ef2bbc286ae92caebf6abdbfab8fe80e0b6
+size 844378
diff --git a/src/models/thelio-spark-b1-n2/img/cpu-duct-screws-back.webp b/src/models/thelio-spark-b1-n2/img/cpu-duct-screws-back.webp
new file mode 100644
index 00000000..e0955b5e
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/cpu-duct-screws-back.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:6116b8cd9a2f8be1d19bb5e63cc1acddc83384a706f90018514f3b6887c1f7df
+size 846764
diff --git a/src/models/thelio-spark-b1-n2/img/cpu-duct-screws-top.webp b/src/models/thelio-spark-b1-n2/img/cpu-duct-screws-top.webp
new file mode 100644
index 00000000..6dd75434
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/cpu-duct-screws-top.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:aea087fd79e1c0eaa3a615f7aea55a717c73749013e7f3237183a3b1dceb0466
+size 654250
diff --git a/src/models/thelio-spark-b1-n2/img/cpu-fan-connectors.webp b/src/models/thelio-spark-b1-n2/img/cpu-fan-connectors.webp
new file mode 100644
index 00000000..bfb1f57b
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/cpu-fan-connectors.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:ce3d0c383984ef8df9169dc24e599281ca806b824f1b3b44281993c0fa2cd752
+size 527784
diff --git a/src/models/thelio-spark-b1-n2/img/cpu-heatsink-fan.webp b/src/models/thelio-spark-b1-n2/img/cpu-heatsink-fan.webp
new file mode 100644
index 00000000..e1cff7e2
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/cpu-heatsink-fan.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:f00ee4d2c29411d76bb457012a85c7f7a0a9677661087f6fa37cb84211ef3469
+size 843128
diff --git a/src/models/thelio-spark-b1-n2/img/cpu-holder-raised.webp b/src/models/thelio-spark-b1-n2/img/cpu-holder-raised.webp
new file mode 100644
index 00000000..0a7d0cdc
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/cpu-holder-raised.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:f625cb10be953d2452da7f82078e0d6a34c825573143029260ddde374392ba20
+size 671504
diff --git a/src/models/thelio-spark-b1-n2/img/cpu-locking-lever.webp b/src/models/thelio-spark-b1-n2/img/cpu-locking-lever.webp
new file mode 100644
index 00000000..be93f925
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/cpu-locking-lever.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:5e3aaaa19023305e8c4f6ae857e555ca7344b8a5afdaa34bdcbd9653e51e8d78
+size 925366
diff --git a/src/models/thelio-spark-b1-n2/img/cpu-removed.webp b/src/models/thelio-spark-b1-n2/img/cpu-removed.webp
new file mode 100644
index 00000000..c36c30c1
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/cpu-removed.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:c7b8e77c9eee5ae403cd2c38881d9639b62c97569860ac20afbb405a930bb2a5
+size 873454
diff --git a/src/models/thelio-spark-b1-n2/img/gpu-brace-finger-screws-back.webp b/src/models/thelio-spark-b1-n2/img/gpu-brace-finger-screws-back.webp
new file mode 100644
index 00000000..1daa9d4c
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/gpu-brace-finger-screws-back.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:37000c527c54ad1ac732d5df08e67ceb11bd22d7b7ab9dfb0a5214325d448fff
+size 771552
diff --git a/src/models/thelio-spark-b1-n2/img/gpu-brace-finger-screws-side.webp b/src/models/thelio-spark-b1-n2/img/gpu-brace-finger-screws-side.webp
new file mode 100644
index 00000000..86b54d1f
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/gpu-brace-finger-screws-side.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:88662cdd98d623ec2ea6557207503f50a675d2b5693d593dd2fb1be50fb2f4d0
+size 981356
diff --git a/src/models/thelio-spark-b1-n2/img/gpu-power.webp b/src/models/thelio-spark-b1-n2/img/gpu-power.webp
new file mode 100644
index 00000000..1189ef81
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/gpu-power.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:bc8bc12be245dc2b5666dc63e569527378e06299e7e55aa50f93db0c00327f7c
+size 533964
diff --git a/src/models/thelio-spark-b1-n2/img/gpu-slot.webp b/src/models/thelio-spark-b1-n2/img/gpu-slot.webp
new file mode 100644
index 00000000..e4ec3acd
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/gpu-slot.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:b28257c4db71023671b07ce8b6d644a3b12bb5c9001f864a28549de9ea9cefbf
+size 734978
diff --git a/src/models/thelio-spark-b1-n2/img/internal-front.webp b/src/models/thelio-spark-b1-n2/img/internal-front.webp
new file mode 100644
index 00000000..81e47110
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/internal-front.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:891db14a5a880cf09eeb155f7af628d8a51090430fbeadc781ce60472482bb40
+size 909694
diff --git a/src/models/thelio-spark-b1-n2/img/internal-left-chassis.webp b/src/models/thelio-spark-b1-n2/img/internal-left-chassis.webp
new file mode 100644
index 00000000..12187943
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/internal-left-chassis.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:dc17a1f9604e26ab5e14c4a943a5963bcfd7e09137537c722745208b6615a51d
+size 919416
diff --git a/src/models/thelio-spark-b1-n2/img/internal-left-electronics.webp b/src/models/thelio-spark-b1-n2/img/internal-left-electronics.webp
new file mode 100644
index 00000000..540d2f8e
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/internal-left-electronics.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:e44e96c27e05994aab943c618e1a6f38d8d4995e8bfce2ea9ac5d7ac476ead01
+size 908578
diff --git a/src/models/thelio-spark-b1-n2/img/internal-right.webp b/src/models/thelio-spark-b1-n2/img/internal-right.webp
new file mode 100644
index 00000000..e126b54d
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/internal-right.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:1521681615234ad8272de00958c436b0d5d6b5cbe62552cbc755ce5ac074cca7
+size 895286
diff --git a/src/models/thelio-spark-b1-n2/img/internal-top.webp b/src/models/thelio-spark-b1-n2/img/internal-top.webp
new file mode 100644
index 00000000..adf793d6
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/internal-top.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:34738058f10cce81a3a2e2ec021c642d7d695f50d8b3ac3a8fc7674d6280b0b6
+size 917736
diff --git a/src/models/thelio-spark-b1-n2/img/m2-slots.webp b/src/models/thelio-spark-b1-n2/img/m2-slots.webp
new file mode 100644
index 00000000..97352309
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/m2-slots.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:02db6822b202415d5ea61bfa8c80e60c493d5c94cc35fe19c837e38ccc3eb73e
+size 655148
diff --git a/src/models/thelio-spark-b1-n2/img/m2-thermal-tape.webp b/src/models/thelio-spark-b1-n2/img/m2-thermal-tape.webp
new file mode 100644
index 00000000..039b530a
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/m2-thermal-tape.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:1b28c562d4723e75912d60a0ac14d95edfeb56f8d5a7bdae6d89f3ca570634ab
+size 365446
diff --git a/src/models/thelio-spark-b1-n2/img/motherboard-fan-header.webp b/src/models/thelio-spark-b1-n2/img/motherboard-fan-header.webp
new file mode 100644
index 00000000..a2635115
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/motherboard-fan-header.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:78845532ecc7a5d512a644edc562c7e5b93562fefb6ac0d185f4683983dbe553
+size 386842
diff --git a/src/models/thelio-spark-b1-n2/img/motherboard-power-usb.webp b/src/models/thelio-spark-b1-n2/img/motherboard-power-usb.webp
new file mode 100644
index 00000000..3169539d
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/motherboard-power-usb.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:08bdca55f2daae147354f28751c53eee9b3cc02c20a209031cf8c65063992356
+size 353334
diff --git a/src/models/thelio-spark-b1-n2/img/pcie-bracket.webp b/src/models/thelio-spark-b1-n2/img/pcie-bracket.webp
new file mode 100644
index 00000000..792fbc25
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/pcie-bracket.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:be6f0e305f6d6ce4fd8c2c7ee308272c2e5d333a64e5f86afa570db780ea2c02
+size 768090
diff --git a/src/models/thelio-spark-b1-n2/img/ports-back.webp b/src/models/thelio-spark-b1-n2/img/ports-back.webp
new file mode 100644
index 00000000..9092b5bc
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/ports-back.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:830eae7d8d876564ee2414c0cb520c4b128128015022b54f17378eb544428c8a
+size 987878
diff --git a/src/models/thelio-spark-b1-n2/img/ports-front-sides.webp b/src/models/thelio-spark-b1-n2/img/ports-front-sides.webp
new file mode 100644
index 00000000..059323d5
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/ports-front-sides.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:687a3824e1e5747cc8453c2ec87bc614365db4212cc12adc8cc27ffc4a64b076
+size 795754
diff --git a/src/models/thelio-spark-b1-n2/img/ports-top-bottom.webp b/src/models/thelio-spark-b1-n2/img/ports-top-bottom.webp
new file mode 100644
index 00000000..fb67d962
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/ports-top-bottom.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:a14ddc48e474260aedaf390157471f566efa71654fce2c3e5b0e601326412e5e
+size 831382
diff --git a/src/models/thelio-spark-b1-n2/img/power-button-receptacle.webp b/src/models/thelio-spark-b1-n2/img/power-button-receptacle.webp
new file mode 100644
index 00000000..a32ba787
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/power-button-receptacle.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:1c90ac4c6cf42bcba7304f6d277597342cfdea27891266c23615e276e7b02ef0
+size 309500
diff --git a/src/models/thelio-spark-b1-n2/img/power-button-wiring.jpg b/src/models/thelio-spark-b1-n2/img/power-button-wiring.jpg
new file mode 100644
index 00000000..ed3b38de
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/power-button-wiring.jpg
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:9f3db3ea7269748ec072260bcf98bd5cd37eaf73e9f92a4ffda1de7e68db7401
+size 39707
diff --git a/src/models/thelio-spark-b1-n2/img/psu-bracket-screws.webp b/src/models/thelio-spark-b1-n2/img/psu-bracket-screws.webp
new file mode 100644
index 00000000..e5714420
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/psu-bracket-screws.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:676c8a351bd9aacde22bfc50dcb829cfaa15e4cf56c405be2e3af163340d17dc
+size 843436
diff --git a/src/models/thelio-spark-b1-n2/img/psu-cables-motherboard.webp b/src/models/thelio-spark-b1-n2/img/psu-cables-motherboard.webp
new file mode 100644
index 00000000..c70e58f6
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/psu-cables-motherboard.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:b2becf1f1e985936e0f3a3da63435966e9ed2228adb7c2e41081ba83249e7758
+size 888902
diff --git a/src/models/thelio-spark-b1-n2/img/psu-cables-sata.webp b/src/models/thelio-spark-b1-n2/img/psu-cables-sata.webp
new file mode 100644
index 00000000..417a72c8
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/psu-cables-sata.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:011aa91e2732180b3ca98f871b5f8c4d9c6dc2eadae8d4a9075a542db7aa4c27
+size 864038
diff --git a/src/models/thelio-spark-b1-n2/img/psu-cables-source.webp b/src/models/thelio-spark-b1-n2/img/psu-cables-source.webp
new file mode 100644
index 00000000..57769b65
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/psu-cables-source.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:5268ce5d7978359a2fb7265606673685a3c409bfa3700fc2130f8d5e326ad88d
+size 667558
diff --git a/src/models/thelio-spark-b1-n2/img/psu-cables-thelio-io.webp b/src/models/thelio-spark-b1-n2/img/psu-cables-thelio-io.webp
new file mode 100644
index 00000000..18fdf59e
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/psu-cables-thelio-io.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:35ad9e2886f65ad354ae27eb3ed4413b5cbc6a689878261713a8ede9d54f9f6b
+size 666584
diff --git a/src/models/thelio-spark-b1-n2/img/psu-screws.webp b/src/models/thelio-spark-b1-n2/img/psu-screws.webp
new file mode 100644
index 00000000..98420e85
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/psu-screws.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:54d5026402da2579765f80dec0c9b3613231cf03f97dfd29dad8e628d1fc317c
+size 831918
diff --git a/src/models/thelio-spark-b1-n2/img/ram-order.webp b/src/models/thelio-spark-b1-n2/img/ram-order.webp
new file mode 100644
index 00000000..f32be59f
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/ram-order.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:ffc5317ff8a55f275dc316d3b05eb034373ca1f003bfb99c34ba162f10865d84
+size 17310
diff --git a/src/models/thelio-spark-b1-n2/img/ram-slots.webp b/src/models/thelio-spark-b1-n2/img/ram-slots.webp
new file mode 100644
index 00000000..079e6324
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/ram-slots.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:2d87b0152091cd420833a5396badb1071d75ddde4fd43039f7dfc145083895f6
+size 783710
diff --git a/src/models/thelio-spark-b1-n2/img/sata-backplane-cabling-cutout.webp b/src/models/thelio-spark-b1-n2/img/sata-backplane-cabling-cutout.webp
new file mode 100644
index 00000000..783e753b
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/sata-backplane-cabling-cutout.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:8055decc41db2828f477c128f29266b0af47d8fcd87d6dfbc58ad7cb202e16d0
+size 843722
diff --git a/src/models/thelio-spark-b1-n2/img/sata-backplane-screws.webp b/src/models/thelio-spark-b1-n2/img/sata-backplane-screws.webp
new file mode 100644
index 00000000..b1fa85e5
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/sata-backplane-screws.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:c6d2dbcafcdc0b8a9085f9d0b484a96040e116e8ab4b22449a9095f3d4221c96
+size 462422
diff --git a/src/models/thelio-spark-b1-n2/img/side-brace-screws.webp b/src/models/thelio-spark-b1-n2/img/side-brace-screws.webp
new file mode 100644
index 00000000..19fd0f81
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/side-brace-screws.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:c252dd8075d9cb62e0c073ea56635c0828a207dddf27402f5b6fb1697136c8ec
+size 649992
diff --git a/src/models/thelio-spark-b1-n2/img/thelio-io-board.webp b/src/models/thelio-spark-b1-n2/img/thelio-io-board.webp
new file mode 100644
index 00000000..4a748e52
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/thelio-io-board.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:4f3df0d4daefbb9f8515e0331d7f9547a9d324d9a907a28162f12a348648bc58
+size 937468
diff --git a/src/models/thelio-spark-b1-n2/img/thelio-io-cabling-cutout.webp b/src/models/thelio-spark-b1-n2/img/thelio-io-cabling-cutout.webp
new file mode 100644
index 00000000..b03ab64d
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/thelio-io-cabling-cutout.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:b55ff41ff4d6465d5b7856e02f26d1cb0ecfb6f4741c176410b011dac76c3a98
+size 409878
diff --git a/src/models/thelio-spark-b1-n2/img/thelio-io-power-button.webp b/src/models/thelio-spark-b1-n2/img/thelio-io-power-button.webp
new file mode 100644
index 00000000..58cb388a
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/thelio-io-power-button.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:69905d9234199dd7c8d1d8453f278efc7f68dceb44739b9a2e78a3a33fe841d3
+size 1024734
diff --git a/src/models/thelio-spark-b1-n2/img/thelio-io-screws.webp b/src/models/thelio-spark-b1-n2/img/thelio-io-screws.webp
new file mode 100644
index 00000000..635bb3d6
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/thelio-io-screws.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:0577cec08bc3a324a1086cee63c6ef0728fa44e01f25f5de8791d1dd281df375
+size 643726
diff --git a/src/models/thelio-spark-b1-n2/img/thelio-spark-b1-n2.webp b/src/models/thelio-spark-b1-n2/img/thelio-spark-b1-n2.webp
new file mode 100644
index 00000000..4643d966
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/thelio-spark-b1-n2.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:e574bfa0d7de8ba13e82698108538fa87ea979d1a409051b24822cae343df3c5
+size 37618
diff --git a/src/models/thelio-spark-b1-n2/img/thermal-paste-application.webp b/src/models/thelio-spark-b1-n2/img/thermal-paste-application.webp
new file mode 100644
index 00000000..e1295039
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/thermal-paste-application.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:0b48b16c4aca372df28c15547cc2451bbec10b6db68dfae7c62c440c71ec39e3
+size 781402
diff --git a/src/models/thelio-spark-b1-n2/img/thermal-paste-removal.webp b/src/models/thelio-spark-b1-n2/img/thermal-paste-removal.webp
new file mode 100644
index 00000000..c58fb393
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/thermal-paste-removal.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:87a8ed365bb6e27c8e45b15dc754e4ea227f67b86937147f30e7724eca184cc8
+size 958536
diff --git a/src/models/thelio-spark-b1-n2/img/top-case-screws.webp b/src/models/thelio-spark-b1-n2/img/top-case-screws.webp
new file mode 100644
index 00000000..1bc1f820
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/top-case-screws.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:cc14e415fae6f0b07dc51717b4df7486ffbfddd2f3a3a8ba77783bb06555896a
+size 701206
diff --git a/src/models/thelio-spark-b1-n2/img/top-io-headers-audio.webp b/src/models/thelio-spark-b1-n2/img/top-io-headers-audio.webp
new file mode 100644
index 00000000..791d4d31
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/top-io-headers-audio.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:11e967b57c2d01698ec9ec907558950eb17ce6b3d3c09ddf544667d4b8031389
+size 478498
diff --git a/src/models/thelio-spark-b1-n2/img/top-io-headers-usb.webp b/src/models/thelio-spark-b1-n2/img/top-io-headers-usb.webp
new file mode 100644
index 00000000..a7aa0f90
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/top-io-headers-usb.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:e9d2f125831761aa40a27b1de865ffa93ae875b7b4ce4c8a75a7b3b82a5dab7f
+size 556854
diff --git a/src/models/thelio-spark-b1-n2/img/top-io-screws.webp b/src/models/thelio-spark-b1-n2/img/top-io-screws.webp
new file mode 100644
index 00000000..37efc8eb
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/top-io-screws.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:4f84aa254a06934561d76cb33a80d083da8c5c65611005dbeac6ebe944c319e1
+size 987414
diff --git a/src/models/thelio-spark-b1-n2/img/wireless-card.webp b/src/models/thelio-spark-b1-n2/img/wireless-card.webp
new file mode 100644
index 00000000..a9d58914
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/img/wireless-card.webp
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:9e5d82dabb7a12c9a8050085e3cd7d8b60816e05eb3eceb10f543bf4db7a2119
+size 298570
diff --git a/src/models/thelio-spark-b1-n2/internal-overview.md b/src/models/thelio-spark-b1-n2/internal-overview.md
new file mode 100644
index 00000000..aa6a4d5e
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/internal-overview.md
@@ -0,0 +1,56 @@
+# Thelio Spark (Internal Overview)
+
+## Left side overview:
+
+### Chassis components:
+
+![Internal overview (left side - chassis)](./img/internal-left-chassis.webp)
+
+- CPU duct is highlighted in red
+- 2.5" drive cage is highlighted in pink
+- Side brace is highlighted in green
+
+### Electronic components:
+
+![Internal overview (left side - electronics)](./img/internal-left-electronics.webp)
+
+- CPU heatsink is highlighted in yellow
+- RAM slots are highlighted in green
+- 2.5" SATA slots are highlighted in pink
+- M.2 slots are highlighted in cyan
+- GPU (in PCIe 4.0 x16 slot) is highlighted in red
+- Wireless card (in PCIe 3.0 x16 slot) is highlighted in white
+- Power supply is highlighted in maroon
+- Bottom case fan is highlighted in orange
+
+## Right side overview:
+
+![Internal overview (right side)](./img/internal-right.webp)
+
+- Thelio Io connector access cutout is highlighted in green
+- Power supply access cutout is highlighted in red
+
+## Front side overview:
+
+![Internal overview (front side)](./img/internal-front.webp)
+
+- Thelio Io connector access cutout is highlighted in green
+- Internal power button (on the Thelio Io board) is highlighted in cyan
+
+## Top overview:
+
+![Internal overview (top)](./img/internal-top.webp)
+
+- CPU power connector is highlighted in red
+ - Connects to power supply
+- Motherboard CPU fan header is highlighted in yellow
+ - Connects to Thelio Io board
+- CPU fan splitter is highlighted in pink
+ - Connects to Thelio Io board and CPU fans
+- Top I/O board is highlighted in white
+ - Connects to motherboard
+- 2.5" drive screws are highlighted in green
+- Power button receptacle is highlighted in cyan
+ - Connects to Thelio Io board
+
+See the [repairs page](./repairs.md) for detailed information about installing or replacing components.
diff --git a/src/models/thelio-spark-b1-n2/repairs.md b/src/models/thelio-spark-b1-n2/repairs.md
new file mode 100644
index 00000000..47c08f25
--- /dev/null
+++ b/src/models/thelio-spark-b1-n2/repairs.md
@@ -0,0 +1,630 @@
+# Thelio Spark (Parts & Repairs)
+
+Many components in your Thelio Spark can be upgraded or replaced as necessary. This page uses photos of the the B1-N2 revision, which indicates:
+
+- **B1:** The first Intel motherboard model used in Thelio Spark.
+- **N2:** Based on the second revision of the nebula36 chassis.
+
+Minor case details may vary based on the production date of the unit, but screw counts, general component locations, and other details should remain the same unless otherwise noted.
+
+Power the machine off, switch off the power supply, and unplug all peripherals before working with any internal components. Then, follow these step-by-step guides for instructions:
+
+- [Replacing the front accent strip](#replacing-the-front-accent-strip)
+- [Removing the top case](#removing-the-top-case)
+- [Adding/removing 2.5" storage drives](#addingremoving-25-storage-drives)
+- [Removing the side brace](#removing-the-side-brace)
+- [Replacing the bottom case fan](#replacing-the-bottom-case-fan)
+- [Removing the CPU duct](#removing-the-cpu-duct)
+- [Replacing the GPU](#replacing-the-gpu)
+- [Replacing the CMOS battery](#replacing-the-cmos-battery)
+- [Replacing the wireless card](#replacing-the-wireless-card)
+- [Replacing the RAM](#replacing-the-ram)
+- [Replacing the M.2 drives](#replacing-the-m2-drives)
+- [Replacing the CPU fans](#replacing-the-cpu-fans)
+- [Replacing the CPU cooler/thermal paste and CPU](#replacing-the-cpu-cooler-and-cpu)
+- [Replacing the power supply](#replacing-the-power-supply)
+- [Replacing the Thelio Io board](#replacing-the-thelio-io-board)
+- [Replacing the SATA backplane](#replacing-the-sata-backplane)
+- [Replacing the top I/O](#replacing-the-top-io)
+- [Troubleshooting the power button](#troubleshooting-the-power-button)
+
+## Replacing the front accent strip:
+
+Thelio Spark includes a customizable accent panel on the front of the case, which can be swapped to change the case's look and feel. The instructions for swapping the accent are also available in [video form](https://system76.com/r/diyaccentpanel).
+
+**Tools required:** None
+**Time estimate:** 30 seconds
+**Difficulty:** Easy ●
+
+### Steps to replace the front accent strip:
+
+1. Place the Thelio on the edge of the desk so the front side is hanging off of the desk.
+ - The Thelio can alternatively be lifted or tilted so the front of the computer is hovering above the desk.
+2. Slide the accent strip down to unlock it.
+ - The accent can be gripped at the bottom edge.
+3. Pull the accent strip off of the case, starting with the bottom edge.
+4. Place the new accent strip onto the front of the case and slide it up to lock it into place.
+
+![Front accent strip removal](./img/accent-strip-removal.webp)
+
+## Removing the top case:
+
+The top case can be removed to access the internal components.
+
+**Tools required:** Cross-head (Phillips) screwdriver (optional)
+**Time estimate:** 2 minutes
+**Difficulty:** Easy ●
+
+### Steps to remove the top case:
+
+1. Remove the four outer screws holding the top case onto the machine.
+
+![Top case screws](./img/top-case-screws.webp)
+
+2. Slide the top case up and off of the machine.
+
+## Adding/removing 2.5" storage drives:
+
+Thelio Spark B1-N2 supports up to two 2.5" SATA III drives.
+
+**Tools required:** Cross-head (Phillips) screwdriver
+**Time estimate:** 7 minutes
+**Difficulty:** Easy ●
+
+### Steps to add/remove 2.5" storage drives:
+
+1. Follow the steps above to [remove the top case](#removing-the-top-case).
+2. Unscrew the two screws securing the drive bay's cover, highlighted green below.
+
+![2.5" drive cover](./img/25-slot-cover.webp)
+
+3. If you are adding a new drive, pop out the black plastic ring on the top crossbar and slide out four screws (per drive).
+
+![2.5" drive screws](./img/25-drive-screws.webp)
+
+4. Insert four screws into each 2.5" storage drive you wish to install.
+5. Slide each 2.5" drive into one of the slots leading to the SATA backplane.
+
+![2.5" drive installation](./img/25-drive-installation.webp)
+
+![Installed 2.5" drive](./img/25-drive-installed.webp)
+
+6. Replace the black plastic screw ring and the 2.5" drive bay cover.
+
+## Removing the side brace:
+
+The side brace provides a mounting point for the GPU brace finger, which helps keep GPUs or other PCI Express cards in place during shipping. It also provides mounting points for two 120mm fans, which are not offered as part of Thelio Spark but can optionally be installed as an aftermarket upgrade.
+
+The GPU brace finger is only required during shipping. The system can be run without this part if it does not fit an upgraded GPU.
+
+**Tools required:** Cross-head (Phillips) screwdriver
+**Time estimate:** 15 minutes
+**Difficulty:** Easy ●
+
+### Steps to remove the side brace:
+
+1. Follow the steps above to [remove the top case](#removing-the-top-case).
+2. Unscrew the four screws holding the side bracket in place (two on the front of the case, two on the back.)
+
+![Side brace screws](./img/side-brace-screws.webp)
+
+3. Pull the side brace out of the chassis. Unplug the side fan connector from the splitter board on the right side, if connected.
+
+### Steps to adjust the GPU brace finger:
+
+1. Follow the steps above to [remove the top case](#removing-the-top-case) and [remove the side brace](#steps-to-remove-the-side-brace).
+2. To adjust the GPU brace finger's horizontal position, unscrew the four corner screws (highlighted green below), move the GPU brace finger's mounting bar, and reattach it in the desired position.
+ - The center vertical adjustment screw (highlighted cyan below) may also need to be removed or loosened.
+
+![GPU brace finger screws, back](./img/gpu-brace-finger-screws-back.webp)
+
+3. To adjust the GPU brace finger's vertical position, unscrew the three vertical adjustment screws, move the GPU brace finger, and reattach it in the desired position.
+
+![GPU brace finger screws, side](./img/gpu-brace-finger-screws-side.webp)
+
+## Replacing the bottom case fan:
+
+Thelio Spark B1-N2 has one case-mounted intake fan on the bottom of the chassis. The fan is a 140mm Be Quiet! Silent Wings 4 (model number `BQ SIW4-14025-MF-PWM`).
+
+**Tools required:** Cross-head (Phillips) screwdriver
+**Time estimate:** 20 minutes
+**Difficulty:** Medium ●
+
+### Steps to replace the bottom case fan:
+
+1. Follow the steps above to [remove the top case](#removing-the-top-case).
+ - The [side brace](#removing-the-side-brace) can optionally be removed to provide easier access to the fan and its cabling.
+2. Unplug the fan's cable from the Thelio Io daughterboard.
+ - The bottom case fan plugs into the `INTAKE FAN` port on the Thelio Io board.
+ - When viewed from the access cutout on the side of the case, this connector is second from the bottom, next to the `FANOUT1` port.
+ - The `FANOUT1` port (highlighted red below) can be unplugged for easier access to the `INTAKE FAN` port (highlighted green below).
+
+![Bottom case fan connector](./img/bottom-fan-connector.webp)
+
+3. Unscrew the four fan screws from the bottom of the machine.
+ - To avoid damaging other components, place the machine on its front side when working with the bottom surface.
+ - A soft surface such as a towel can optionally be used to protect the work surface and the machine.
+
+![Bottom case fan screws](./img/bottom-fan-screws.webp)
+
+4. Remove the old fan from the case.
+5. When installing the fan, mount the components in the following order:
+ - Chassis
+ - Dust filter
+ - Acrylic spacer
+ - Fan
+6. The new fan's cable should be oriented towards the front-right corner of the case.
+ - The cable runs along the inner corner of the case, passing through the bottom two velcro straps twice (left through both, then right through both) and the higher two velcro straps once.
+
+![Bottom case fan cable management](./img/bottom-fan-cable.webp)
+
+## Removing the CPU duct:
+
+The CPU duct guides airflow through the CPU cooler. It covers the CPU and partially obstructs the RAM slots and top PCIe slot.
+
+**Tools required:** Cross-head (Phillips) screwdriver
+**Time estimate:** 7 minutes
+**Difficulty:** Easy ●
+
+### Steps to remove the CPU duct:
+
+1. Follow the steps above to [remove the top case](#removing-the-top-case) and [remove the side brace](#removing-the-side-brace).
+ - The GPU can also optionally be removed to provide more room for working with the components.
+2. Unplug the braided connector for the duct-mounted CPU fan from the top splitter board in the front corner of the machine.
+ - The splitter board provides the same signal to both ports, so it doesn't matter which fan is plugged into which port.
+
+![CPU fan connectors](./img/cpu-fan-connectors.webp)
+
+3. Unscrew the four back thumbscrews and two top crossbar screws holding the CPU duct in place.
+
+![CPU duct thumbscrews (back)](./img/cpu-duct-screws-back.webp)
+
+![CPU duct screws (top crossbar)](./img/cpu-duct-screws-top.webp)
+
+4. Pull the CPU duct away from the machine.
+
+## Replacing the GPU:
+
+Thelio Spark ships with an optional dedicated GPU in the PCIe 4.0 x16 slot (top slot). Factory-installed GPUs are two slots tall, but the fans may extend slightly into the third slot's space. Aftermarket GPUs can be up to three slots tall; GPUs higher than three slots tall require removing the wireless card to fit.
+
+If the wireless card is removed and the first GPU is three or fewer slots tall, then a second GPU can be installed in the PCIe 3.0 x16 slot (bottom slot) as an aftermarket upgrade.
+
+**Tools required:** Cross-head (Phillips) screwdriver
+**Time estimate:** 15 minutes
+**Difficulty:** Medium ●
+
+### Steps to replace the GPU:
+
+1. Follow the steps above to [remove the top case](#removing-the-top-case) and [remove the side brace](#removing-the-side-brace).
+ - You can optionally [remove the CPU duct](#removing-the-cpu-duct) for easier access to the PCIe slot and power cable latches.
+2. If you're removing a GPU, unplug the GPU power cable from the right side of the card. Hold down the latch on the connector while unplugging the cable.
+
+![GPU power connections](./img/gpu-power.webp)
+
+3. Unscrew the two back screws holding the PCIe bracket in place, and remove the PCIe bracket (or slide it into the rightmost position).
+
+![PCIe bracket screws](./img/pcie-bracket.webp)
+
+4. Push back the latch on the motherboard to free the PCIe connection, then pull the card out of the slot.
+ - If the latch is difficult to reach between the GPU and the CPU heatsink, a long object (such as a screwdriver) can be used to push the latch.
+
+![PCIe slots & latches](./img/gpu-slot.webp)
+
+5. After inserting the new GPU into its slot, connect the power cable.
+6. Once the GPU is installed, replace the back PCIe bracket, side brace, and top case.
+ - The GPU brace finger may need to be [adjusted](#steps-to-adjust-the-gpu-brace-finger) before the side brace can be reinstalled.
+
+## Replacing the CMOS battery:
+
+The CMOS battery supplies power to the system's CMOS chip. UEFI settings and the computer's hardware clock are stored on the CMOS. If your system doesn't boot, you can reset the CMOS to force a low-level hardware reset. If your clock is constantly resetting, it's likely your CMOS battery needs to be replaced.
+
+**Tools required:** Cross-head (Phillips) screwdriver
+**Time estimate:** 20 minutes
+**Difficulty:** Medium ●
+
+### Steps to replace the CMOS battery:
+
+1. Follow the steps above to [remove the top case](#removing-the-top-case), [remove the side brace](#removing-the-side-brace), and [remove the GPU](#replacing-the-gpu).
+2. Pull the clip away from the CMOS battery.
+
+![CMOS battery](./img/cmos-battery.webp)
+
+3. Pull the CMOS battery out of its slot.
+4. If you are resetting the CMOS, hold down the power button for 10 seconds to discharge any residual energy in the system.
+5. Replace the CMOS battery starting with the left side of the slot (opposite from the clip).
+ - The positive side of the battery (with text) should face outward.
+6. Replace the GPU, side brace, and top case.
+
+## Replacing the wireless card:
+
+Thelio Spark's wireless card is a Ubit PCI Express x1 card with an Intel AX210 chipset. This chipset suppots WiFi 6E and Bluetooth 5.2. System76 installs custom external antennas that are shorter than the default Ubit antennas.
+
+**Tools required:** Cross-head (Phillips) screwdriver
+**Time estimate:** 20 minutes
+**Difficulty:** Medium ●
+
+### Steps to replace the wireless card:
+
+1. Follow the steps above to [remove the top case](#removing-the-top-case) and [remove the side brace](#removing-the-side-brace).
+2. Unscrew the two back screws holding the PCIe bracket in place, and remove the PCIe bracket (or slide it into the rightmost position).
+
+![PCIe bracket screws](./img/pcie-bracket.webp)
+
+3. Unplug the wireless card's data cable from the `USB_5_6` port on the motherboard, highlighted yellow below.
+ - The cable may alternatively be plugged into the adjacent `USB_3_4` port.
+
+![Wireless card](./img/wireless-card.webp)
+
+4. Remove the wireless card from the PCIe slot.
+ - You may need to rotate the antennas to fit them through the PCIe slot cutout in the chassis.
+5. Install the new wireless card or reinstall the existing wireless card into the PCIe slot, screw in the antennas (if applicable), then ensure the data cable is plugged into both the white port on the wireless card (highlighted green above) and the `USB_5_6` port on the motherboard.
+ - The cable may alternatively be plugged into the adjacent `USB_3_4` port if the `USB_5_6` port is occupied by another component.
+6. Replace the back PCIe bracket, side brace, and top case.
+
+## Replacing the RAM:
+
+Thelio Spark B1-N2 supports up to 128GB (4x32GB) of RAM. Factory configurations are limited to 64GB (4x16GB).
+
+The RAM sticks are DDR4 DIMMs (non-ECC) running at a speed of up to 3200MHz. With aftermarket DIMMs, overclocked speeds of up to 5333 MHz may function but are not guaranteed.
+
+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:** 15 minutes
+**Difficulty:** Medium ●
+
+### Steps to replace the RAM:
+
+1. Follow the steps above to [remove the top case](#removing-the-top-case) and [remove the CPU duct](#removing-the-cpu-duct).
+ - If there's no dedicated GPU installed, then removing the CPU duct is optional, but removal is still recommended to provide easier access to the RAM slots.
+2. To remove an existing RAM stick, flip the top latch away from the stick, then pull the stick out of the slot.
+ - The bottom of the RAM slot does not move.
+
+![RAM slots](./img/ram-slots.webp)
+
+3. Make sure the tabs on the top and bottom of the slot are open (pulled away from the slot), then insert the new RAM (or re-seat the existing RAM) into the slot.
+ - The RAM stick will only fit in one direction. The larger group of pins goes on top.
+ - Use the following guide for placement of the RAM sticks:
+ ![RAM slot order](./img/ram-order.webp)
+4. Replace the top case.
+
+## Replacing the M.2 drives:
+
+Thelio Spark B1-N2 has two M.2 storage slots. All four slots are M-key and size 2280.
+
+- Slot 1 supports PCIe NVMe Gen 4.
+- Slot 2 supports PCIe NVMe Gen 3, SATA III, and Intel Optane.
+
+**Tools required:** Cross-head (Phillips) screwdriver
+**Time estimate:** 30 minutes
+**Difficulty:** Medium ●
+
+### Steps to replace the M.2 drive:
+
+1. Follow the steps above to [remove the top case](#removing-the-top-case).
+ - For Slot 1, [remove the CPU duct](#removing-the-cpu-duct).
+ - [Removing the GPU](#replacing-the-gpu) is not required, but makes accessing Slot 1's screws easier.
+ - For Slot 2, [remove the side brace](#removing-the-side-brace).
+2. For Slot 1, unscrew and remove the M.2 heatsink. For Slot 2, unscrew the screw opposite from the slot.
+ - For Slot 1, pull the M.2 heatsink directly away from the motherboard to break the seal of the thermal tape, then slide the M.2 heatsink down and out from behind the CPU heatsink.
+ - For both slots, the existing M.2 drive (if installed) will pop up at a 30-degree angle from the motherboard.
+
+![M.2 slots](./img/m2-slots.webp)
+
+3. Remove the existing M.2 drive by pulling it out of the slot.
+4. Insert the new M.2 drive into the slot and hold it in place.
+5. Replace the M.2 heatsink and/or M.2 screw(s).
+ - Because Slot 1 is always populated in factory configurations, the M.2 thermal tape should already be applied and exposed on the M.2 heatsink. The thermal tape is shown below.
+
+![M.2 thermal tape](./img/m2-thermal-tape.webp)
+
+6. Replace the CPU duct, GPU, side brace, and top case as applicable.
+
+## Replacing the CPU fans:
+
+Thelio Spark B1-N2 contains two CPU fans. One is mounted on the CPU duct, and one is mounted on the CPU heatsink.
+
+The heatsink-mounted CPU fan is built onto the cooler's plastic molding. While it can be removed, replacements generally can't be obtained separately from the heatsink.
+
+**Tools required:** Cross-head (Phillips) screwdriver
+**Time estimate:** 25 minutes
+**Difficulty:** Medium ●
+
+### Steps to replace the duct-mounted CPU fan:
+
+1. Follow the steps above to [remove the top case](#removing-the-top-case) and [remove the CPU duct](#removing-the-cpu-duct).
+2. Free the fan cable from the velcro loop, highlighted cyan below.
+
+![CPU duct fan bracket screws](./img/cpu-duct-fan-bracket-screws.webp)
+
+3. Unscrew the four screws (two on each side) holding the fan bracket onto the duct.
+ - Removing the bracket from the duct is not required to remove the fan, but it makes installing the fan much easier.
+4. Unscrew the four screws attaching the bracket to the fan.
+
+![CPU duct fan screws](./img/cpu-duct-fan-screws.webp)
+
+5. When reinstalling the fan into the CPU duct:
+ - The spinning side should face inward (towards the front of the chassis).
+ - The cable should point towards the closed corner of the top side of the duct (the top-right corner, when viewed from the back); the side of the fan where the cable originates should match the side of the duct with the velcro strap.
+ - Overtightening the fan bracket's screws may cause fan noise; if the fan is creating excessive noise, try slightly loosening some of the screws.
+
+### Steps to replace the heatsink-mounted CPU fan:
+
+1. Follow the steps above to [remove the top case](#removing-the-top-case) and [remove the CPU duct](#removing-the-cpu-duct).
+ - For easier access to the fan tabs, it's also recommended to [remove the side brace](#removing-the-side-brace) and [remove the dedicated GPU](#replacing-the-gpu) (if installed).
+2. If the heatsink-mounted fan is still plugged in, unplug it from the top splitter board in the front corner of the machine.
+
+![CPU heatsink fan clips and connector](./img/cpu-heatsink-fan.webp)
+
+3. Pull the top and bottom edges of the fan's plastic molding away from the heatsink it's clipped onto; the fan can be pulled away from the heatsink once the plastic molding's tabs are held far enough away from the heatsink.
+4. Repeat the process for the bottom clip, then pull the fan and clips away from the CPU heatsink.
+5. When reinstalling the CPU heatsink fan, the side with a stationary cover should face the heatsink, while the spinning side should face the front of the chassis.
+ - The cable should point towards the bottom inner corner (bottom-left when viewed from the back of the case.)
+
+## Replacing the CPU cooler and CPU:
+
+The CPU cooler dissipates heat from the CPU to the heatsink, where the CPU fans expel it from the system. Depending on your climate and the age of the machine, replacing the thermal paste between the CPU and the cooler/heatsink may help the system run cooler.
+
+The CPU uses an Intel LGA 1700 socket. The CPU cooler is an [Arctic Freezer 7 X Rev 3](https://www.arctic.de/us/Freezer-7-X/ACFRE00077A#specs).
+
+**Tools required:** Cross-head (Phillips) screwdriver, thermal paste
+**Time estimate:** 45 minutes
+**Difficulty:** High ●
+
+### Steps to remove the CPU cooler/thermal paste:
+
+1. Follow the steps above to [remove the top case](#removing-the-top-case), [remove the side brace](#removing-the-side-brace), [remove the CPU duct](#removing-the-cpu-duct), and [remove the GPU](#replacing-the-gpu).
+ - Unplug the [heatsink-mounted CPU fan](#steps-to-replace-the-heatsink-mounted-cpu-fan) unless it's already been removed.
+2. While holding the CPU cooler in place so it doesn't fall, loosen the screws on the top and bottom of the CPU cooler holding it onto the mounting bracket.
+ - If you unscrew the screws too far, the 90-degree clips will detatch from the vertical mounting bar. Reattach them facing inwards when reinstalling the cooler.
+
+![CPU cooler screws](./img/cpu-cooler-screws.webp)
+
+3. Pull the cooler away from the CPU, alternating between the top and bottom to free the 90-degree clips from the mounting bracket.
+4. Using a paper towel, clean the existing thermal paste off of the heatsink and CPU. You may also use a small amount of rubbing alcohol if the old paste is dried or difficult to remove.
+
+![Thermal paste removal](./img/thermal-paste-removal.webp)
+
+### Steps to replace the CPU:
+
+1. Place the computer on its side so the motherboard is facing up.
+2. [Remove the RAM](#replacing-the-ram) to provide easier access to the cooler mounting bracket's plastic retention pins.
+3. Pull the plastic retention pins out of the four corners of the cooler mounting bracket, then remove the cooler mounting bracket.
+
+![CPU cooler mounting bracket](./img/cpu-cooler-mounting-bracket.webp)
+
+4. Push the locking lever outward until it's able to spring away from the motherboard.
+ - Caution: the locking lever may spring up with significant force when freed.
+
+![CPU locking lever](./img/cpu-locking-lever.webp)
+
+5. Flip the CPU holder away from the CPU.
+ - The CPU holder opens in the opposite direction from the locking lever.
+
+![CPU holder raised](./img/cpu-holder-raised.webp)
+
+6. Carefully lift the CPU out of the CPU socket.
+ - Be careful not to bend any of the gold pins on the CPU socket, and do not touch the gold pads on the CPU.
+
+![CPU (removed)](./img/cpu-removed.webp)
+
+7. Gently place the new CPU into the socket.
+ - The triangle on the CPU should be oriented to match the triangle on the CPU cover, pointing towards the bottom left of the motherboard.
+8. Flip the CPU cover back onto the CPU and push the locking lever down into place.
+9. Reinstall the cooler mounting bracket by lining it up with the holes in the motherboard and pushing the plastic retention pins back into place.
+ - Ensure that the transparent sleeves in the corners of the mounting bracket are pulled outwards to the `1700` position.
+ - The orientation of the cooler mounting bracket doesn't matter. By default, the `1700` number is on the top and bottom of the bracket, while the `1200` number is on the left and right.
+
+![CPU cooler mounting bracket corner sleeves](./img/cpu-cooler-mounting-bracket-corner-sleeves.webp)
+
+### Steps to install the thermal paste/CPU cooler:
+
+1. Draw an `X` shape of thermal paste onto the CPU.
+
+![Thermal paste application](./img/thermal-paste-application.webp)
+
+2. Place the CPU cooler onto the CPU; while holding it in place, tighten the screws on the top and bottom of the vertical mounting bar to tighten the 90-degree clips onto the mounting bracket.
+ - The cooler should be oriented so the fan is on the right side (towards the front of the case).
+ - The 90-degree clips must be oriented inward to fasten onto the mounting bracket.
+
+![CPU cooler mounting bracket & 90-degree clips](./img/cpu-cooler-mounting-clips.webp)
+
+3. Set the computer upright, then reinstall the cooler-mounted CPU fan (if necessary), RAM, CPU duct, GPU, side bracket, and top case.
+
+## Replacing the power supply:
+
+The power supply unit (PSU) can be replaced with another unit of the same model. One possible preinstalled model is the [Thermaltake Toughpower GX2 600W (80+ Gold)](https://thermaltakeusa.com/products/toughpower-gx2-600w-ps-tpd-0600nnfagu-2#tab-label-specification).
+
+The PSU is not modular, so all of its cabling will need to be unplugged and removed, then the new PSU's cabling will need to be run through the system and connected.
+
+**Tools required:** Cross-head (Phillips) screwdriver
+**Time estimate:** 45 minutes
+**Difficulty:** Medium ●
+
+### Steps to replace the power supply:
+
+1. Follow the steps above to [remove the top case](#removing-the-top-case), [remove the side brace](#removing-the-side-brace), and [unplug the GPU](#replacing-the-gpu).
+2. Locate and unplug all of the cables emanating from the power supply (shown below), including the following:
+
+![PSU cabling source](./img/psu-cables-source.webp)
+
+- The 8-pin CPU power cable labeled `ATX12V1` near the top-left of the motherboard, highlighted green below.
+- The 24-pin motherboard power cable labeled `ATXPWR1` on the right side of the motherboard, highlighted yellow below.
+
+![PSU cabling to the motherboard & CPU](./img/psu-cables-motherboard.webp)
+
+- The 4-pin Berg connector labeled `POWER1` on the Thelio Io board.
+
+![PSU cabling to the Thelio Io board](./img/psu-cables-thelio-io.webp)
+
+- The 4-pin Berg connector labeled `POWER0` on the SATA backplane.
+
+![PSU cabling to the SATA backplane](./img/psu-cables-sata.webp)
+
+3. Unscrew and remove the PSU bracket.
+ - One screw is located on the opposite side of the case.
+
+![PSU bracket screws](./img/psu-bracket-screws.webp)
+
+4. Unscrew the four screws holding the PSU in from the back of the case.
+
+![PSU back screws](./img/psu-screws.webp)
+
+5. Remove/replace the PSU.
+ - The replacement PSU should be installed with the fan facing the bottom of the case.
+ - Hold the PSU up to the screwholes in the back of the case while attaching it.
+6. Run the new PSU's wires through the system (securing them with velcro straps where necessary), then plug in the new PSU's wires into the motherboard (including the CPU plug), Thelio Io board, SATA backplane, and dedicated GPU (if installed).
+
+## Replacing the Thelio Io board:
+
+Named after Jupiter's moon Io, the Thelio Io daughterboard handles the front power button and fan control. Thelio Spark B1-N2 uses [Thelio Io version 2](https://github.com/system76/thelio-io/tree/92c2a60b6d6acc0f9d51d819cba07ad28e2b03f3). If the Thelio Io board becomes defective, it can be replaced using the instructions below.
+
+**Tools required:** Cross-head (Phillips) screwdriver
+**Time estimate:** 30 minutes
+**Difficulty:** High ●
+
+### Steps to replace the Thelio Io board:
+
+1. Follow the steps above to [remove the top case](#removing-the-top-case).
+ - The [CPU duct](#removing-the-cpu-duct) and [side brace](#removing-the-side-brace) can optionally be removed to provide easier access to the cabling.
+2. Use the cutouts on the front right corner of the chassis to unplug all cabling from the Thelio Io board.
+ - The topmost connector requires pulling the white tab while unplugging.
+
+![Thelio Io cabling cutout](./img/thelio-io-cabling-cutout.webp)
+
+3. Unscrew the two screws holding the daughterboard on from the front of the chassis.
+
+![Thelio Io drive cage screws](./img/thelio-io-screws.webp)
+
+4. Screw in the new Thelio Io board and reconnect the wiring.
+
+### Thelio Io wiring guide:
+
+![Thelio Io wiring guide](./img/thelio-io-board.webp)
+
+1. When wiring the Thelio Io board, refer to the port labels and the following guide.
+ - `FANOUT1`/`CPU FAN` - to the top fan splitter (connecting to the [CPU fans](#replacing-the-cpu-fans)).
+ - `FANOUT4`/`AUX FAN` - to the bottom fan splitter (below the [CPU fan splitter](#replacing-the-cpu-fans)).
+ - `FANOUT2`/`INTAKE FAN` - to the [bottom case fan](#replacing-the-bottom-case-fan).
+ - `FANOUT3`/`GPU FAN` - to the [side brace](#removing-the-side-brace) fan splitter (disconnected by default).
+ - `FANIN1`/`MOTHERBOARD FAN INPUT` - to the `CPU_FAN1` header at the top right of the motherboard, highlighted cyan below.
+
+ ![Motherboard CPU output header](./img/motherboard-fan-header.webp)
+ - `POWER1`/`POWER INPUT` - to the [power supply](#replacing-the-power-supply).
+ - The white plastic backing needs to be held away from the connector to unplug this cable from the Thelio Io board.
+ - `PFP1`/`FRONT PANEL` - to the [power button receptacle](#troubleshooting-the-power-button) on the front panel.
+ - On the Thelio Io board, the wire color order (from top to bottom) is red, black, blue, black.
+ - On the power button receptacle, the wire color order (from left to right) is red, black, blue, black.
+ - `PMB1`/`MOTHERBOARD` - to the `PANEL1` header at the bottom right of the motherboard, highlighted green below.
+ - On the Thelio Io board, the wire color order (from top to bottom) is red, black, blue, black.
+ - On the motherboard, the wire color order (from left to right) is red, black, blue, black.
+ - `USB` - to the `USB_3_4` header on the bottom edge of the motherboard, highlighted yellow below.
+ - A small clip needs to be held down to unplug this cable from the Thelio Io board.
+ - This port can alternatively be connected to the `USB_5_6` header if the `USB_3_4` header is connected to the wireless card.
+
+ ![Motherboard power button & USB headers](./img/motherboard-power-usb.webp)
+
+## Replacing the SATA backplane:
+
+The SATA backplane provides two 2.5" SATA data and power connectors for the [2.5" drive cage](#addingremoving-25-storage-drives). The part number and version for the SATA backplane is [thelio-io-sata_2.2](https://github.com/system76/thelio-io-hardware/tree/91814370002f762ac01cd1dd99dcbb43336352ab/pcb-thelio-io-sata).
+
+**Tools required:** Cross-head (Phillips) screwdriver
+**Time estimate:** 30 minutes
+**Difficulty:** Medium ●
+
+### Steps to replace the SATA backplane:
+
+1. Follow the steps above to [remove the top case](#removing-the-top-case), then [remove the 2.5" drive cage cover and all 2.5" SATA drives](#addingremoving-25-storage-drives).
+ - The [CPU duct](#removing-the-cpu-duct) can optionally be removed to provide easier access to the cabling.
+2. Use the cutouts on the front right corner of the chassis to unplug the 4-pin Berg power connector (highlighted cyan below) and the two SATA data cables (highlighted green below) from the SATA backplane.
+
+![SATA backplane cabling cutout](./img/sata-backplane-cabling-cutout.webp)
+
+3. Unscrew the four screws holding the drive cage onto the chassis (highlighted red above), then remove the drive cage from the chassis.
+ - This step is optional if you can remove the four SATA backplane screws (highlighted yellow above and below) from the drive cage without removing it from the chassis. The Thelio Io cabling partially obstructs the screws, so removing the cage is suggested.
+
+![2.5" drive cage screws](./img/25-drive-cage-screws.webp)
+
+4. Unscrew the four SATA backplane screws from the drive cage, then push the SATA backplane out through the front of the drive cage.
+
+![SATA backplane screws](./img/sata-backplane-screws.webp)
+
+5. Place the new SATA backplane into the drive cage and secure it with the four SATA backplane screws, then reinstall the drive cage (if necessary).
+6. Plug the 4-pin Berg power connector and SATA data cables into the SATA backplane.
+ - The order of the SATA data cables shouldn't matter as long as your operating system and software is configured to address disks by UUID (e.g. `/dev/disk/by-id/...`) instead of by letter (e.g. `/dev/sd_`).
+ - By default, the `DATA1` port connects to the innermost SATA connector on the motherboard, and the `DATA0` port connects to the outermost SATA connector on the motherboard.
+7. Reinstall the CPU shroud (if necessary), any 2.5" drives that were removed, the 2.5" drive cage cover, and the top case.
+
+## Replacing the top I/O:
+
+Thelio Spark B1-N2 includes a top I/O module providing audio and USB ports. This module's part number is `MYS7523 Rev. 4.0`.
+
+If the top ports are damanged or become defective, they can be replaced using the steps below.
+
+**Tools required:** Cross-head (Phillips) screwdriver
+**Time estimate:** 30 minutes
+**Difficulty:** Medium ●
+
+### Steps to replace the top I/O:
+
+1. Follow the steps above to [remove the top case](#removing-the-top-case) and [remove the CPU duct](#removing-the-cpu-duct).
+ - You can optionally [remove the side brace](#removing-the-side-brace) for easier access to the wiring.
+2. Unplug the `HD_AUDIO1` header at the bottom-left corner of the motherboard, below the wireless card.
+
+![Top I/O audio header](./img/top-io-headers-audio.webp)
+
+3. Unplug the `F_USB3_5_6` header (highlighted cyan below) and `F_USB3_TC_1` header (highlighted green below) along the right edge of the motherboard, between the RAM and the 2.5" drive cage.
+
+![Top I/O USB headers](./img/top-io-headers-usb.webp)
+
+4. Unscrew the two front screws holding the top I/O board onto the chassis.
+
+![Top I/O screws](./img/top-io-screws.webp)
+
+5. Remove the top I/O board from the system.
+6. Insert the new top I/O board into the system and screw it into place.
+7. Reconnect the audio and USB headers.
+8. Replace the side brace (if necessary), CPU shroud, and top case.
+
+## Troubleshooting the power button:
+
+If the front power button doesn't power the machine on or doesn't light up when the system is powered on, try the following troubleshooting steps:
+
+1. Ensure the system powers on normally using the internal power button.
+2. Reseat the front power button to ensure it's making proper contact.
+3. Check the wiring for the front power button.
+4. Replace the front power button, if necessary.
+
+**Tools required:** Cross-head (Phillips) screwdriver (optional)
+**Time estimate:** 20 minutes
+**Difficulty:** Medium ●
+
+### Steps to power the machine on using the internal power button:
+
+1. Follow the steps above to [remove the top case](#removing-the-top-case).
+2. Ensure the system is plugged into power, and the power supply switch is in the 1 (On) position.
+3. Push the small button labeled `POWER` on the Thelio Io board.
+
+![Internal power button](./img/thelio-io-power-button.webp)
+
+4. If the Thelio Io `POWER` button powers the machine on, then the issue is either the front power button or its connection to the Thelio Io board. [Check the front power button wiring](#steps-to-check-the-front-power-button-wiring).
+5. If the Thelio Io `POWER` button does not work, then the issue is either the Thelio Io board or its connection to the motherboard. [Check the wiring between the Thelio Io board and the motherboard](#thelio-io-wiring-guide).
+
+### Steps to check the front power button wiring:
+
+1. Follow the steps above to [remove the top case](#removing-the-top-case).
+2. On the back of the power button, the four pins should be connected to the four-wire connector as follows:
+
+![Power button wiring](./img/power-button-wiring.jpg)
+
+3. On the front power button receptacle, the four-pin connector should have the red wire on the left and the black wire on the right (when viewed from the back of the computer.)
+ - If necessary, you can [remove the 2.5" drive cage](#replacing-the-sata-backplane) for easier access to the power button receptacle's connector.
+
+![Power button receptacle](./img/power-button-receptacle.webp)
+
+4. The front power button receptacle should plug into the `PFP1` port on the Thelio Io board, with the red wire on the top (see the [Thelio Io wiring guide](#thelio-io-wiring-guide).)
+
+### Steps to replace the power button:
+
+1. Follow the steps above to [remove the top case](#removing-the-top-case).
+2. Follow the instructions in the [Replace the Thelio Power Button](https://support.system76.com/articles/thelio-power-button/) support article.