diff --git a/docs/assets/esphome-starter-kit-button-module-only.jpg b/docs/assets/esphome-starter-kit-button-module-only.jpg
new file mode 100755
index 0000000000..3df7bbd1db
Binary files /dev/null and b/docs/assets/esphome-starter-kit-button-module-only.jpg differ
diff --git a/docs/assets/esphome-starter-kit-button-module.png b/docs/assets/esphome-starter-kit-button-module.png
new file mode 100755
index 0000000000..1057f3ca91
Binary files /dev/null and b/docs/assets/esphome-starter-kit-button-module.png differ
diff --git a/docs/assets/esphome-starter-kit-casita-module-only.jpg b/docs/assets/esphome-starter-kit-casita-module-only.jpg
new file mode 100755
index 0000000000..22e840a138
Binary files /dev/null and b/docs/assets/esphome-starter-kit-casita-module-only.jpg differ
diff --git a/docs/assets/esphome-starter-kit-exploded-with-box-1.png b/docs/assets/esphome-starter-kit-exploded-with-box-1.png
new file mode 100755
index 0000000000..822704686a
Binary files /dev/null and b/docs/assets/esphome-starter-kit-exploded-with-box-1.png differ
diff --git a/docs/assets/esphome-starter-kit-exploded-with-box.png b/docs/assets/esphome-starter-kit-exploded-with-box.png
new file mode 100755
index 0000000000..822704686a
Binary files /dev/null and b/docs/assets/esphome-starter-kit-exploded-with-box.png differ
diff --git a/docs/assets/esphome-starter-kit-fpc-cables-only.jpg b/docs/assets/esphome-starter-kit-fpc-cables-only.jpg
new file mode 100755
index 0000000000..435fcdfff8
Binary files /dev/null and b/docs/assets/esphome-starter-kit-fpc-cables-only.jpg differ
diff --git a/docs/assets/esphome-starter-kit-main-board-1.png b/docs/assets/esphome-starter-kit-main-board-1.png
new file mode 100755
index 0000000000..40f40d0a07
Binary files /dev/null and b/docs/assets/esphome-starter-kit-main-board-1.png differ
diff --git a/docs/assets/esphome-starter-kit-main-board-2.png b/docs/assets/esphome-starter-kit-main-board-2.png
new file mode 100755
index 0000000000..40f40d0a07
Binary files /dev/null and b/docs/assets/esphome-starter-kit-main-board-2.png differ
diff --git a/docs/assets/esphome-starter-kit-main-board-only.jpg b/docs/assets/esphome-starter-kit-main-board-only.jpg
new file mode 100755
index 0000000000..34b95baf6a
Binary files /dev/null and b/docs/assets/esphome-starter-kit-main-board-only.jpg differ
diff --git a/docs/assets/esphome-starter-kit-main-board.png b/docs/assets/esphome-starter-kit-main-board.png
new file mode 100755
index 0000000000..40f40d0a07
Binary files /dev/null and b/docs/assets/esphome-starter-kit-main-board.png differ
diff --git a/docs/assets/esphome-starter-kit-module-board.png b/docs/assets/esphome-starter-kit-module-board.png
new file mode 100755
index 0000000000..6d3014a4c1
Binary files /dev/null and b/docs/assets/esphome-starter-kit-module-board.png differ
diff --git a/docs/assets/esphome-starter-kit-pir-module-only.jpg b/docs/assets/esphome-starter-kit-pir-module-only.jpg
new file mode 100755
index 0000000000..60f8044f2a
Binary files /dev/null and b/docs/assets/esphome-starter-kit-pir-module-only.jpg differ
diff --git a/docs/assets/esphome-starter-kit-pir-module.png b/docs/assets/esphome-starter-kit-pir-module.png
new file mode 100755
index 0000000000..1c6ca920f7
Binary files /dev/null and b/docs/assets/esphome-starter-kit-pir-module.png differ
diff --git a/docs/assets/esphome-starter-kit-temp-hum-module-only-1.jpg b/docs/assets/esphome-starter-kit-temp-hum-module-only-1.jpg
new file mode 100755
index 0000000000..12c7fb18fb
Binary files /dev/null and b/docs/assets/esphome-starter-kit-temp-hum-module-only-1.jpg differ
diff --git a/docs/assets/esphome-starter-kit-temp-hum-module-only.jpg b/docs/assets/esphome-starter-kit-temp-hum-module-only.jpg
new file mode 100755
index 0000000000..76ddcf7228
Binary files /dev/null and b/docs/assets/esphome-starter-kit-temp-hum-module-only.jpg differ
diff --git a/docs/assets/esphome-starter-kit-temp-hum-module.png b/docs/assets/esphome-starter-kit-temp-hum-module.png
new file mode 100755
index 0000000000..909fda0eff
Binary files /dev/null and b/docs/assets/esphome-starter-kit-temp-hum-module.png differ
diff --git a/docs/assets/esphome-starter-kit-whats-in-the-box.png b/docs/assets/esphome-starter-kit-whats-in-the-box.png
new file mode 100755
index 0000000000..e468cf3889
Binary files /dev/null and b/docs/assets/esphome-starter-kit-whats-in-the-box.png differ
diff --git a/docs/assets/sotoh-graphic-detailed.jpg b/docs/assets/sotoh-graphic-detailed.jpg
new file mode 100755
index 0000000000..2a382a5a80
Binary files /dev/null and b/docs/assets/sotoh-graphic-detailed.jpg differ
diff --git a/docs/products/ESPHome-Starter-Kit/first-steps.md b/docs/products/ESPHome-Starter-Kit/first-steps.md
index 0a7432da69..681d864bd5 100755
--- a/docs/products/ESPHome-Starter-Kit/first-steps.md
+++ b/docs/products/ESPHome-Starter-Kit/first-steps.md
@@ -1,11 +1,13 @@
---
-title: ESPHome Starter Kit - First Steps
+title: ESPHome Starter Kit - Introduction
description: Landing page of the ESPHome Starter Kit QR Code.
---
-# Welcome to the ESPHome Starter Kit
+# Welcome to the ESPHome Starter Kit!
Welcome to the start of your ESPHome journey with the all-new **ESPHome Starter Kit**!
+
+
By the end of this wiki you'll know how to:
* Identify each part of your kit
@@ -15,7 +17,7 @@ By the end of this wiki you'll know how to:
Your kit arrives as a single snap-apart panel that includes the ESP32-C6 main board along with a selection of interchangeable modules. The kit also includes three ribbon cables used to connect the modules together.
-
+
## Snapping the panel apart
@@ -29,7 +31,7 @@ Each module is connected to the panel by small breakaway tabs. Follow the steps
2. Gently flex the panel along the tab line until the tab snaps cleanly.
@@ -37,15 +39,34 @@ Each module is connected to the panel by small breakaway tabs. Follow the steps
The kit includes:
+
+
* **ESP32-C6 main board.** The brain of every project you'll build with the kit. It handles Wi-Fi and Bluetooth, runs your ESPHome config, and exposes the GPIO pins the modules plug into.
-* **Motion module.** Detects movement in a room and a great way to get started automating your home. Comes with a separate 3 pin header and PIR motion sensor.
+
+
+
+* **Casita LED and Buzzer module.** The starter kit's notification module, a strip of ten addressable RGB LEDs and a small piezo buzzer behind the ESPHome logo silkscreen. *Use the included stand to show it off!*
+
+
+
+* **Motion module.** Detects movement in a room and a great way to get started automating your home. It comes in two parts, and the PIR sensor easily plugs into the PIR module board.
+
+
+
* **Button module.** Premium feel button perfect to trigger automations for lights and more.
+
+
+
* **Temperature and Humidity module.** Extremely accurate temp and humidity sensor trustworthy enough to track a room comfort level with ease!
-Each module connects to the ESP32-C6 board through the FPC connectors which are the thin white ribbon cables.
+
+
+* **FPC cables.** Each module connects to the main board through the FPC connector using one of the three provided cables. *Tear the brown paper bag open from one of the ends. Please DO NOT use scissors as you could accidentally cut the cables!*
+
+
## Next: bring it online
-Once you've identified your modules and snapped them off the panel, the next step is to connect the ESP32-C6 to your computer and walk through your first ESPHome configuration.
+Once you've identified your modules and snapped them off the panel, the next step is to connect the main board to your computer and walk through your first ESPHome configuration.
Open ESPHome Getting Started
\ No newline at end of file
diff --git a/docs/products/ESPHome-Starter-Kit/modules/button-module.md b/docs/products/ESPHome-Starter-Kit/modules/button-module.md
index e8267ae014..91f34b40f1 100644
--- a/docs/products/ESPHome-Starter-Kit/modules/button-module.md
+++ b/docs/products/ESPHome-Starter-Kit/modules/button-module.md
@@ -1,34 +1,31 @@
---
title: Adding the button module
-description: Wire up the ESPHome Starter Kit button module, add it through ESPHome Device Builder, and verify presses in the web server.
+description: >-
+ Wire up the ESPHome Starter Kit button module, add it through ESPHome Device
+ Builder, and verify presses in the web server.
---
# Adding the button module
The button module is the first input your starter kit gets, and the fastest way to feel ESPHome respond to a physical action. By the end of this tutorial you'll have the button wired to your ESP32-C6, surfaced as a binary sensor in your YAML, and toggling live in the web server when you press it.
-!!! info "Before you start"
+!!! note "Before you start"
Work through the two prerequisites first:
- * [First Steps](../first-steps.md) to snap the button module off the panel.
- * [Getting Started](../setup/getting-started.md) to install ESPHome Device Builder and create your starter kit device.
+ - [First Steps](../first-steps/) to snap the button module off the panel.
+ - [Getting Started](../setup/getting-started/) to install ESPHome Device Builder and create your starter kit device.
----
-
-### Start with your base config
+## Start with your base config
The starter kit project template gets you online, but it doesn't enable the web server yet. Add it now so you have a live page to test the button against after flashing.
1. In ESPHome Device Builder, open your starter kit device and click **Edit**.
-2. Add the `web_server` component, make sure to select version 3
-
+2. Add the `web_server` component, making sure to select version 3.
3. Click **Save**. Don't install yet, the button gets added in the next section.

----
-
-### Plug in the button module
+## Plug in the button module
Connect the button module to the ESP32-C6 using one of the FPC ribbon cables that came with the kit. Either FPC connector on the C6 works, top or bottom.
@@ -37,17 +34,13 @@ Connect the button module to the ESP32-C6 using one of the FPC ribbon cables tha
3. Slide one end of the ribbon cable into each connector with the contacts facing the board, then press each latch back down to lock the cable in.
4. Plug the C6 back into your computer.
-** GIF PLACEHOLDER **
+**GIF PLACEHOLDER**
-!!! success "Handle the FPC connectors gently"
+!!! warning "Handle the FPC connectors gently" The latches are small and the ribbon cable is fragile. Lift the latch with a fingernail, slide the cable in, and press the latch down. Never pull on the cable itself.
- The latches are small and the ribbon cable is fragile. Lift the latch with a fingernail, slide the cable in, and press the latch down. Never pull on the cable itself.
+## Add the button component in ESPHome Device Builder
----
-
-### Add the button component in ESPHome Device Builder
-
-ESPHome Device Builder ships an **Add Component** flow that knows the pin layout for every Apollo Starter Kit module. Use it instead of writing the binary sensor by hand, and you'll get the right GPIO and inversion settings on the first try.
+ESPHome Device Builder ships an Add Component flow that knows the pin layout for every Apollo Starter Kit module. Use it instead of writing the binary sensor by hand, and you'll get the right GPIO and inversion settings on the first try.
1. Open your starter kit device in Device Builder and click **Edit**.
2. Click **Add Component** in the editor toolbar.
@@ -56,40 +49,36 @@ ESPHome Device Builder ships an **Add Component** flow that knows the pin layout

----
-
-### What the button YAML does
-
-The block Add Component drops into your config looks like this:
-
-```yaml
-binary_sensor:
- - platform: gpio
- pin:
- number: GPIO6
- inverted: true
- mode:
- input: true
- pullup: true
- id: my_button
- name: "Button"
-```
-
-Each option does something specific:
-
-| Option | What it does |
-| --- | --- |
-| `platform: gpio` | Reads a digital input on a GPIO pin. |
-| `number: GPIO6` | The pin the button module's FPC connector wires to on the ESP32-C6. |
-| `inverted: true` | The pin reads LOW when the button is pressed, so this flips it to an intuitive on/off state. |
-| `mode.input: true` | Configures the pin as an input. |
-| `mode.pullup: true` | Enables the C6's internal pull-up so the pin doesn't float when the button isn't pressed. |
-| `id: my_button` | Internal handle you can reference from automations and lambdas elsewhere in the config. |
-| `name: "Button"` | The friendly name shown in Home Assistant and the web server. |
-
----
-
-### Install the firmware
+??? note "What the button YAML does"
+
+ The block Add Component drops into your config looks like this:
+
+ ```yaml
+ binary_sensor:
+ - platform: gpio
+ pin:
+ number: GPIO6
+ inverted: true
+ mode:
+ input: true
+ pullup: true
+ id: my_button
+ name: "Button"
+ ```
+
+ Each option does something specific:
+
+ | Option | What it does |
+ | --- | --- |
+ | `platform: gpio` | Reads a digital input on a GPIO pin. |
+ | `number: GPIO6` | The pin the button module's FPC connector wires to on the ESP32-C6. |
+ | `inverted: true` | The pin reads LOW when the button is pressed, so this flips it to an intuitive on/off state. |
+ | `mode.input: true` | Configures the pin as an input. |
+ | `mode.pullup: true` | Enables the C6's internal pull-up so the pin doesn't float when the button isn't pressed. |
+ | `id: my_button` | Internal handle you can reference from automations and lambdas elsewhere in the config. |
+ | `name: "Button"` | The friendly name shown in Home Assistant and the web server. |
+
+## Install the firmware
Flash the device so the new web server and button entity go live.
@@ -98,11 +87,9 @@ Flash the device so the new web server and button entity go live.
3. Wait for the compile and flash to finish. First builds can take a few minutes.
4. The device reboots and reconnects to your Wi-Fi on its own.
-## GIF PLACEHOLDER
+**GIF PLACEHOLDER**
----
-
-### Test it in the web server
+## Test it in the web server
With the device back online, the button entity is live on the web server. Open it in a browser on the same network and watch it react in real time.
@@ -110,10 +97,8 @@ With the device back online, the button entity is live on the web server. Open i
2. Find the **Button** entity in the binary sensor list.
3. Press the button on the module. The entity flips from **OFF** to **ON** while the button is held, then back to **OFF** when you release it.
-
+> Web server page showing the Button binary sensor toggling between ON and OFF as the button is pressed.
-## GIF PLACEHOLDER
+**GIF PLACEHOLDER**
!!! success "Your button module is wired up"
-
-
diff --git a/docs/products/ESPHome-Starter-Kit/modules/casita-module.md b/docs/products/ESPHome-Starter-Kit/modules/casita-module.md
index 49fa05a84d..0ee81595ef 100755
--- a/docs/products/ESPHome-Starter-Kit/modules/casita-module.md
+++ b/docs/products/ESPHome-Starter-Kit/modules/casita-module.md
@@ -8,12 +8,12 @@ description: >-
The Casita is the starter kit's notification module, a strip of ten addressable RGB LEDs and a small piezo buzzer behind the ESPHome logo silkscreen. By the end of this tutorial you'll have the lights and buzzer wired to your ESP32-C6, surfaced in your YAML, and ready to flash, animate, or sing in response to anything else you build.
-!!! note "Before you start" Work through the two prerequisites first:
+!!! note "Before you start"
-```
-- [First Steps](../first-steps/) to snap the Casita module off the panel.
-- [Getting Started](../setup/getting-started/) to install ESPHome Device Builder and create your starter kit device.
-```
+ Work through the two prerequisites first:
+
+ - [First Steps](../first-steps/) to snap the Casita module off the panel.
+ - [Getting Started](../setup/getting-started/) to install ESPHome Device Builder and create your starter kit device.
## Start with your base config
@@ -23,6 +23,8 @@ The starter kit project template gets you online, but it doesn't enable the web
2. Add the `web_server` component, making sure to select version 3.
3. Click **Save**. Don't install yet, the Casita gets added in the next section.
+
+
## Plug in the Casita module
Connect the Casita module to the ESP32-C6 using one of the FPC ribbon cables that came with the kit. Either FPC connector on the C6 works, top or bottom.
@@ -45,40 +47,55 @@ ESPHome Device Builder ships an Add Component flow that knows the pin layout for
3. Search for **Casita** and select the Apollo Starter Kit Casita notification component.
4. Click **Add**. Device Builder inserts the light, output, and rtttl blocks into your YAML.
-## What the Casita YAML does
-
-The blocks Add Component drops into your config look like this:
-
-```yaml
-light:
- - platform: esp32_rmt_led_strip
- id: rgb_module
- name: "RGB Module Light"
- pin: GPIO14
- chipset: WS2812
- num_leds: 10
- rmt_symbols: 48
- rgb_order: grb
- default_transition_length: 0s
- effects:
- - addressable_rainbow:
- name: "Rainbow"
- - addressable_twinkle:
- name: "Twinkle"
-
-output:
- - platform: ledc
- pin: GPIO18
- id: buzzer
-
-rtttl:
- id: rtttl_buzzer
- output: buzzer
-```
-
-Each option does something specific:
-
-
Option | What it does |
|---|---|
LED strip | |
| Uses the ESP32's RMT peripheral to drive addressable LEDs with precise timing. |
| The data line going to the first LED on the Casita. |
| Which addressable LED protocol to use. WS2812 is the most common, sometimes also called NeoPixel. |
| The number of LEDs on the Casita module. |
| Color channel order. WS2812 LEDs receive color data in green-red-blue order, so this makes sure red looks red and not green. |
| Low-level RMT setting needed on the ESP32-C6. Leave it at 48. |
| Pre-loaded animations you can select from the web server or trigger from Home Assistant. |
Piezo buzzer | |
| PWM output for driving the buzzer. PWM is how digital pins create audio tones on a piezo. |
| The pin the buzzer is wired to. |
| Internal handle the rtttl component uses to send tones to this output. |
| Internal handle for triggering tunes from automations and lambdas. |
| Tells rtttl to use the buzzer output for playback. |
Option | What it does |
|---|---|
| Reads a digital input on a GPIO pin. |
| The pin the PIR module's FPC connector wires to on the ESP32-C6. |
| Configures the pin as an input. |
| The MH-SR602 drives its output both high and low on its own, so no internal pulldown is needed. |
| Internal handle you can reference from automations and lambdas elsewhere in the config. |
| The friendly name shown in Home Assistant and the web server. |
| Tells Home Assistant this is a motion sensor, so it shows the right icon and works in motion-related templates and blueprints. |
Option | What it does |
|---|---|
| The data and clock pins for the I2C bus the AHT20F speaks on. The starter kit wires them to GPIO1 and GPIO0. |
| Lists every I2C device the board finds at boot, useful for confirming the sensor is connected. |
| The ESPHome platform that drives AHT10, AHT20, and AHT30 sensors. |
| Tells the platform which variant of the chip is connected. |
| Internal handle you can reference from automations and lambdas elsewhere in the config. |
| Two sub-sensors. Each has a |
| How often the sensor reports. 60 seconds is a reasonable default. Lower it for more responsive readings, raise it to cut down on network traffic. |