diff --git a/docs/_images/assembly/add_lidar_cable.webp b/docs/_images/assembly/add_lidar_cable.webp
new file mode 100644
index 0000000..247ce35
Binary files /dev/null and b/docs/_images/assembly/add_lidar_cable.webp differ
diff --git a/docs/_images/assembly/add_motor.webp b/docs/_images/assembly/add_motor.webp
new file mode 100644
index 0000000..8c7007b
Binary files /dev/null and b/docs/_images/assembly/add_motor.webp differ
diff --git a/docs/_images/assembly/add_motor_shim.webp b/docs/_images/assembly/add_motor_shim.webp
new file mode 100644
index 0000000..ccc8670
Binary files /dev/null and b/docs/_images/assembly/add_motor_shim.webp differ
diff --git a/docs/_images/assembly/add_wheel_spacer.webp b/docs/_images/assembly/add_wheel_spacer.webp
new file mode 100644
index 0000000..41c52ce
Binary files /dev/null and b/docs/_images/assembly/add_wheel_spacer.webp differ
diff --git a/docs/_images/assembly/after_mounting_motor.webp b/docs/_images/assembly/after_mounting_motor.webp
new file mode 100644
index 0000000..bc7996a
Binary files /dev/null and b/docs/_images/assembly/after_mounting_motor.webp differ
diff --git a/docs/_images/assembly/all_parts.webp b/docs/_images/assembly/all_parts.webp
new file mode 100644
index 0000000..9e01da3
Binary files /dev/null and b/docs/_images/assembly/all_parts.webp differ
diff --git a/docs/_images/assembly/attach_lidar_cable.webp b/docs/_images/assembly/attach_lidar_cable.webp
new file mode 100644
index 0000000..cdae308
Binary files /dev/null and b/docs/_images/assembly/attach_lidar_cable.webp differ
diff --git a/docs/_images/assembly/attaching_motor_cables.webp b/docs/_images/assembly/attaching_motor_cables.webp
new file mode 100644
index 0000000..3045c86
Binary files /dev/null and b/docs/_images/assembly/attaching_motor_cables.webp differ
diff --git a/docs/_images/assembly/attachment_shim_after.webp b/docs/_images/assembly/attachment_shim_after.webp
new file mode 100644
index 0000000..d807199
Binary files /dev/null and b/docs/_images/assembly/attachment_shim_after.webp differ
diff --git a/docs/_images/assembly/attachment_shim_before.webp b/docs/_images/assembly/attachment_shim_before.webp
new file mode 100644
index 0000000..09b6fde
Binary files /dev/null and b/docs/_images/assembly/attachment_shim_before.webp differ
diff --git a/docs/_images/assembly/battery.webp b/docs/_images/assembly/battery.webp
new file mode 100644
index 0000000..ae850ba
Binary files /dev/null and b/docs/_images/assembly/battery.webp differ
diff --git a/docs/_images/assembly/battery_empty.webp b/docs/_images/assembly/battery_empty.webp
new file mode 100644
index 0000000..3885228
Binary files /dev/null and b/docs/_images/assembly/battery_empty.webp differ
diff --git a/docs/_images/assembly/battery_inserted.webp b/docs/_images/assembly/battery_inserted.webp
new file mode 100644
index 0000000..2bcd89d
Binary files /dev/null and b/docs/_images/assembly/battery_inserted.webp differ
diff --git a/docs/_images/assembly/battery_on_top.webp b/docs/_images/assembly/battery_on_top.webp
new file mode 100644
index 0000000..c55f9c8
Binary files /dev/null and b/docs/_images/assembly/battery_on_top.webp differ
diff --git a/docs/_images/assembly/before_mounting_motor.webp b/docs/_images/assembly/before_mounting_motor.webp
new file mode 100644
index 0000000..5c43147
Binary files /dev/null and b/docs/_images/assembly/before_mounting_motor.webp differ
diff --git a/docs/_images/assembly/bolts.webp b/docs/_images/assembly/bolts.webp
new file mode 100644
index 0000000..945a332
Binary files /dev/null and b/docs/_images/assembly/bolts.webp differ
diff --git a/docs/_images/assembly/both_motor_assemblies.webp b/docs/_images/assembly/both_motor_assemblies.webp
new file mode 100644
index 0000000..c7e3560
Binary files /dev/null and b/docs/_images/assembly/both_motor_assemblies.webp differ
diff --git a/docs/_images/assembly/both_motors_attached.webp b/docs/_images/assembly/both_motors_attached.webp
new file mode 100644
index 0000000..11347a1
Binary files /dev/null and b/docs/_images/assembly/both_motors_attached.webp differ
diff --git a/docs/_images/assembly/cable_bag.webp b/docs/_images/assembly/cable_bag.webp
new file mode 100644
index 0000000..9f7befc
Binary files /dev/null and b/docs/_images/assembly/cable_bag.webp differ
diff --git a/docs/_images/assembly/cable_in_motor.webp b/docs/_images/assembly/cable_in_motor.webp
new file mode 100644
index 0000000..85efab8
Binary files /dev/null and b/docs/_images/assembly/cable_in_motor.webp differ
diff --git a/docs/_images/assembly/circuit_board.webp b/docs/_images/assembly/circuit_board.webp
new file mode 100644
index 0000000..6ab4079
Binary files /dev/null and b/docs/_images/assembly/circuit_board.webp differ
diff --git a/docs/_images/assembly/complete_robot.webp b/docs/_images/assembly/complete_robot.webp
new file mode 100644
index 0000000..95c08c5
Binary files /dev/null and b/docs/_images/assembly/complete_robot.webp differ
diff --git a/docs/_images/assembly/front_skid.webp b/docs/_images/assembly/front_skid.webp
new file mode 100644
index 0000000..fb674ff
Binary files /dev/null and b/docs/_images/assembly/front_skid.webp differ
diff --git a/docs/_images/assembly/front_skid_after.webp b/docs/_images/assembly/front_skid_after.webp
new file mode 100644
index 0000000..09d2ccf
Binary files /dev/null and b/docs/_images/assembly/front_skid_after.webp differ
diff --git a/docs/_images/assembly/front_skid_before.webp b/docs/_images/assembly/front_skid_before.webp
new file mode 100644
index 0000000..c62aca2
Binary files /dev/null and b/docs/_images/assembly/front_skid_before.webp differ
diff --git a/docs/_images/assembly/hex_key.webp b/docs/_images/assembly/hex_key.webp
new file mode 100644
index 0000000..154104b
Binary files /dev/null and b/docs/_images/assembly/hex_key.webp differ
diff --git a/docs/_images/assembly/lidar.webp b/docs/_images/assembly/lidar.webp
new file mode 100644
index 0000000..c9fd0d1
Binary files /dev/null and b/docs/_images/assembly/lidar.webp differ
diff --git a/docs/_images/assembly/lidar_cable.webp b/docs/_images/assembly/lidar_cable.webp
new file mode 100644
index 0000000..236cd11
Binary files /dev/null and b/docs/_images/assembly/lidar_cable.webp differ
diff --git a/docs/_images/assembly/lidar_cable_below.webp b/docs/_images/assembly/lidar_cable_below.webp
new file mode 100644
index 0000000..dc9cb83
Binary files /dev/null and b/docs/_images/assembly/lidar_cable_below.webp differ
diff --git a/docs/_images/assembly/lidar_on_body.webp b/docs/_images/assembly/lidar_on_body.webp
new file mode 100644
index 0000000..f29d006
Binary files /dev/null and b/docs/_images/assembly/lidar_on_body.webp differ
diff --git a/docs/_images/assembly/motor_attachment_shims.webp b/docs/_images/assembly/motor_attachment_shims.webp
new file mode 100644
index 0000000..71d5e86
Binary files /dev/null and b/docs/_images/assembly/motor_attachment_shims.webp differ
diff --git a/docs/_images/assembly/motor_cables.webp b/docs/_images/assembly/motor_cables.webp
new file mode 100644
index 0000000..fed9701
Binary files /dev/null and b/docs/_images/assembly/motor_cables.webp differ
diff --git a/docs/_images/assembly/motor_in_mount.webp b/docs/_images/assembly/motor_in_mount.webp
new file mode 100644
index 0000000..8764812
Binary files /dev/null and b/docs/_images/assembly/motor_in_mount.webp differ
diff --git a/docs/_images/assembly/motor_mounts.webp b/docs/_images/assembly/motor_mounts.webp
new file mode 100644
index 0000000..87bc2af
Binary files /dev/null and b/docs/_images/assembly/motor_mounts.webp differ
diff --git a/docs/_images/assembly/motor_spacing_shims.webp b/docs/_images/assembly/motor_spacing_shims.webp
new file mode 100644
index 0000000..cfc934b
Binary files /dev/null and b/docs/_images/assembly/motor_spacing_shims.webp differ
diff --git a/docs/_images/assembly/motors.webp b/docs/_images/assembly/motors.webp
new file mode 100644
index 0000000..6cb478f
Binary files /dev/null and b/docs/_images/assembly/motors.webp differ
diff --git a/docs/_images/assembly/screw_in_lidar_back.webp b/docs/_images/assembly/screw_in_lidar_back.webp
new file mode 100644
index 0000000..23e821b
Binary files /dev/null and b/docs/_images/assembly/screw_in_lidar_back.webp differ
diff --git a/docs/_images/assembly/small_parts_bag.webp b/docs/_images/assembly/small_parts_bag.webp
new file mode 100644
index 0000000..7e036af
Binary files /dev/null and b/docs/_images/assembly/small_parts_bag.webp differ
diff --git a/docs/_images/assembly/usb_cable.webp b/docs/_images/assembly/usb_cable.webp
new file mode 100644
index 0000000..7676447
Binary files /dev/null and b/docs/_images/assembly/usb_cable.webp differ
diff --git a/docs/_images/assembly/wheel_spacers.webp b/docs/_images/assembly/wheel_spacers.webp
new file mode 100644
index 0000000..f3c7915
Binary files /dev/null and b/docs/_images/assembly/wheel_spacers.webp differ
diff --git a/docs/_images/assembly/wheels.webp b/docs/_images/assembly/wheels.webp
new file mode 100644
index 0000000..059bf87
Binary files /dev/null and b/docs/_images/assembly/wheels.webp differ
diff --git a/docs/assembly.md b/docs/assembly.md
index 6cd0d39..472909f 100644
--- a/docs/assembly.md
+++ b/docs/assembly.md
@@ -6,50 +6,134 @@ This tutorial will guide you through assembling your rover. It should take aroun
First, make sure your kit has all the required materials.
+![All parts](./_images/assembly/all_parts.webp)
+
In the box:
| Item | Quantity | Picture |
| ---- | ---- | ---- |
-| Circuit board | 1 | ![]() |
-| LD-20 lidar | 1 | ![]() |
-| Orange wheels | 2 | ![]() |
-| Motor with encoder | 2 | ![]() |
-| 18650 LiIon battery, 5000 mah | 1 | ![]() |
-| USB-C to C cable | 1 | ![]() |
-| Front skid | 1 | ![]() |
-| Motor mount | 2 | ![]() |
-| Cable bag | 1 | ![]() |
-| Small parts bag | 1 | ![]() |
+| Circuit board | 1 | ![Circuit board](./_images/assembly/circuit_board.webp) |
+| LD-20 lidar | 1 | ![Lidar](./_images/assembly/lidar.webp) |
+| Orange wheels | 2 | ![Two orange wheels](./_images/assembly/wheels.webp) |
+| Motor with encoder | 2 | ![Two motors](./_images/assembly/motors.webp) |
+| 18650 LiIon battery, 5000 mah | 1 | ![18650 battery](./_images/assembly/battery.webp) |
+| USB-C to C cable | 1 | ![USB C to C cable](./_images/assembly/usb_cable.webp) |
+| Front skid | 1 | ![Front skid](./_images/assembly/front_skid.webp) |
+| Motor mount | 2 | ![Motor mounts](./_images/assembly/motor_mounts.webp) |
+| Cable bag | 1 | ![Cable bag](./_images/assembly/cable_bag.webp) |
+| Small parts bag | 1 | ![Small parts bag](./_images/assembly/small_parts_bag.webp) |
In the cable bag:
| Item | Quantity | Picture |
| ---- | ---- | ---- |
-| 4-pin JST GH 1.25mm straight across cable | 1 | ![]() |
-| 6-pin JST PH 2.0mm reversed cables | 2 | ![]() |
+| 4-pin JST GH 1.25mm straight across cable | 1 | ![Motor cables](./_images/assembly/motor_cables.webp) |
+| 6-pin JST PH 2.0mm reversed cables | 2 | ![Lidar cable](./_images/assembly/lidar_cable.webp) |
In the small parts bag:
| Item | Quantity | Picture |
| ---- | ---- | ---- |
-| Motor attachment shims | 2 | ![]() |
-| Motor spacing shims | 2 | ![]() |
-| Wheel spacers | 2 | ![]() |
-| M3-8 machine screw | 3 | ![]() |
-| M2.5 hex wrench | 1 | ![]() |
+| Motor attachment shims | 2 | ![Motor attachment shims](./_images/assembly/motor_attachment_shims.webp) |
+| Motor spacing shims | 2 | ![Motor spacing shims](./_images/assembly/motor_spacing_shims.webp) |
+| Wheel spacers | 2 | ![Wheel spacers](./_images/assembly/wheel_spacers.webp) |
+| M3-8 machine screw | 3 | ![Machine screws](./_images/assembly/bolts.webp) |
+| M2.5 hex key | 1 | ![Hex key](./_images/assembly/hex_key.webp) |
## Motor Subassembly
+Insert a motor cable into one of the motors. Note the ridges on the connector, it can only be installed in one orientation.
+
+![Cable installed in a motor](./_images/assembly/cable_in_motor.webp)
+
+Take a motor and place it in a motor mount.
+
+![Motor in motor mount](./_images/assembly/motor_in_mount.webp)
+
+Add a motor spacing shim on top of the motor.
+
+![Motor with spacing shim installed](./_images/assembly/add_motor_shim.webp)
+
+Repeat with the other motor, making sure the second assembly is mirrored to the first.
+
+![Motor with spacing shim installed](./_images/assembly/both_motor_assemblies.webp)
+
## Body Assembly
-## First Power On
+At the base of the circuit board, there are cutouts for the motor mount to slot into place.
+Insert the circuit board into the gap...
+
+![Inserting the circuit board into the motor mount](./_images/assembly/before_mounting_motor.webp)
+
+... then guide the other end of the motor mount up through the slots in the PCB.
+
+![Guiding the mount up into the board](./_images/assembly/after_mounting_motor.webp)
+
+Place a motor attachment shim over the parts of the motor mount exposed above the board.
+Push the attachment shim up and into place, locking the motor into place.
+The hole in the attachment shim should line up with the bolt hole in the circuit board.
+
+
+
+
+Repeat with the other motor.
+
+![Both motors attached to the board](./_images/assembly/both_motors_attached.webp)
+
+Flip the robot over.
+Insert the motor cables into their connectors.
+
+![Attaching the motor cables](./_images/assembly/attaching_motor_cables.webp)
+
+Insert the LiDAR cable into the bottom of the LiDAR.
+
+![Inserting LiDAR cable into LiDAR](./_images/assembly/add_lidar_cable.webp)
+
+Place the LiDAR on top of the circuit board, making sure the cable passes through the hole.
+
+
+
+
+Using the provided hex key, attach the LiDAR to the rover's body using the bottom two mounting points.
+For now, leave the third screw unattached.
+
+![Attaching the LiDAR using the machine screws](./_images/assembly/screw_in_lidar_back.webp)
+
+On the back, insert the LiDAR cable into its connector.
+
+![Attaching the LiDAR cable](./_images/assembly/attach_lidar_cable.webp)
+
+On the front of the rover, there are cutouts for attaching the skid.
+Line the skid up with the cutouts, and push it on.
+Use the final screw to attach the front skid.
+
+
+
+
+Insert the battery into the back of the rover.
+Take note of polarity - the positive side of the battery (the end with a bump) goes towards the left.
+
+
+
+
+Congrats! Your robot is assembled!
+
+![Completed robot](./_images/assembly/complete_robot.webp)
## Care for Your Rover
+The rover has a USB C port which you can use to charge the battery.
+Two red status LEDs, directly below charging port, show the charging status.
+
+The first LED, labeled CHARGING, lights up when the battery is actively being charged.
+Once the battery is fully charged, this light will turn off.
+
+The second LED, labeled PWR GOOD, lights up when a valid power supply is attached.
+
> [!WARNING]
> **Never charge Little Red Rover unattended.**
>
-> If something goes wrong during the charging process, lithium batteries, like the one contained in the rover, are a serious fire hazard. If the battery becomes hot, smokes, swells, or gives off an odor during charging, immediately stop charging and dipose of the battery safely.
+> If something goes wrong during the charging process, lithium batteries, like the one contained in the rover, are a serious fire hazard. If the battery becomes hot, smokes, swells, or gives off an odor during charging, immediately stop charging and dispose of the battery safely.
## Next Steps