Skip to content

Commit ae76446

Browse files
swoboda1337claude
andcommitted
Update README with full build instructions and usage examples
- Add link to ESPHome documentation - Document both HTTP and embedded modes - Add SHA256 generation commands for all platforms - Reorganize for clarity Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
1 parent e190d73 commit ae76446

File tree

1 file changed

+56
-11
lines changed

1 file changed

+56
-11
lines changed

README.md

Lines changed: 56 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
# ESP-Hosted Firmware
22

3-
Pre-built [ESP-Hosted](https://github.com/espressif/esp-hosted) co-processor firmware binaries for use with ESPHome's [ESP32 Hosted](https://esphome.io/components/update/esp32_hosted/) component.
3+
Pre-built [ESP-Hosted](https://github.com/espressif/esp-hosted) co-processor firmware binaries for use with ESPHome's [ESP32 Hosted](https://esphome.io/components/esp32_hosted/) component.
4+
5+
For full documentation, see the [ESP32 Hosted Update](https://esphome.io/components/update/esp32_hosted/) page.
46

57
## Supported Targets
68

@@ -15,28 +17,50 @@ Only targets supporting SDIO transport are built:
1517

1618
## Usage
1719

18-
1. Download the appropriate firmware binary for your co-processor from the [GitHub Page](https://esphome.github.io/esp-hosted-firmware/).
20+
Pre-built firmware binaries and manifests are available at [esphome.github.io/esp-hosted-firmware](https://esphome.github.io/esp-hosted-firmware/).
21+
22+
### HTTP Mode (Recommended)
23+
24+
Automatically fetch and update firmware from the manifest:
25+
26+
```yaml
27+
http_request:
28+
29+
update:
30+
- platform: esp32_hosted
31+
type: http
32+
source: https://esphome.github.io/esp-hosted-firmware/manifest/esp32c6.json
33+
update_interval: 6h
34+
```
35+
36+
### Embedded Mode
37+
38+
Embed the firmware binary into your device's flash:
39+
40+
1. Download the firmware binary from the [GitHub Page](https://esphome.github.io/esp-hosted-firmware/)
1941
2. Place the `.bin` file in your ESPHome configuration directory
20-
3. Configure the update component in your ESPHome YAML:
42+
3. Generate the SHA256 hash (see below)
43+
4. Configure the update component:
2144

2245
```yaml
2346
update:
2447
- platform: esp32_hosted
25-
firmware: coprocessor-firmware.bin
26-
# SHA256 hash from the .sha256 file
27-
expected_checksum: "abc123..."
48+
type: embedded
49+
path: network_adapter_esp32c6.bin
50+
sha256: de2f256064a0af797747c2b97505dc0b9f3df0de4f489eac731c23ae9ca9cc31
2851
```
2952

30-
## Building Locally
53+
## Building Custom Firmware
3154

32-
To build the firmware locally:
55+
To build firmware locally, you'll need to set up the ESP-IDF environment:
3356

34-
```bash
35-
# Clone ESP-IDF
57+
```sh
58+
# Clone and setup ESP-IDF
3659
git clone -b v5.5.1 --recursive https://github.com/espressif/esp-idf.git
3760
cd esp-idf
3861
./install.sh esp32c6 # or your target
39-
source export.sh
62+
source export.sh # for Linux/macOS
63+
# export.bat # for Windows
4064
cd ..
4165
4266
# Create project from ESP-Hosted example
@@ -50,6 +74,27 @@ idf.py build
5074
# Output: build/network_adapter.bin
5175
```
5276

77+
After building, copy the firmware to your ESPHome configuration directory:
78+
79+
```sh
80+
cp build/network_adapter.bin /path/to/your/esphome/config/
81+
```
82+
83+
### Generating SHA256 Hash
84+
85+
For embedded mode, you need the SHA256 hash of your firmware binary:
86+
87+
```sh
88+
# Linux/macOS
89+
sha256sum network_adapter.bin
90+
91+
# Windows PowerShell
92+
Get-FileHash -Algorithm SHA256 network_adapter.bin
93+
94+
# Windows Command Prompt
95+
certutil -hashfile network_adapter.bin SHA256
96+
```
97+
5398
## Versioning
5499

55100
Releases are tagged with the ESP-Hosted version used (e.g., `v2.7.0`).

0 commit comments

Comments
 (0)