diff options
| author | krolyxon <me@krolyxon.com> | 2026-06-08 22:32:54 +0530 |
|---|---|---|
| committer | krolyxon <me@krolyxon.com> | 2026-06-08 22:32:54 +0530 |
| commit | afeaa4ff49239cf5149448e3fda2f0ce4f96e6bf (patch) | |
| tree | 6e1e38493ce75b02b063d5594ea2d9bd41bf2c56 | |
| parent | bad888f834363d0ea0602103c2d6225bc0bbd948 (diff) | |
add web flasher
| -rw-r--r-- | .github/workflows/build-and-deploy.yml | 57 | ||||
| -rw-r--r-- | web-flasher/index.html | 47 | ||||
| -rw-r--r-- | web-flasher/manifest.json | 23 |
3 files changed, 127 insertions, 0 deletions
diff --git a/.github/workflows/build-and-deploy.yml b/.github/workflows/build-and-deploy.yml new file mode 100644 index 0000000..08eecef --- /dev/null +++ b/.github/workflows/build-and-deploy.yml @@ -0,0 +1,57 @@ +name: Build and Deploy Web Flasher + +on: + push: + branches: + - main + +permissions: + contents: read + pages: write + id-token: write + +jobs: + build: + runs-on: ubuntu-latest + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Install PlatformIO + run: | + pip install platformio + + - name: Build Firmware + run: | + pio run + + - name: Copy Firmware Files + run: | + mkdir -p deploy + + cp web-flasher/index.html deploy/ + cp web-flasher/manifest.json deploy/ + + cp .pio/build/*/firmware.bin deploy/ + cp .pio/build/*/bootloader.bin deploy/ + cp .pio/build/*/partitions.bin deploy/ + + - name: Upload Pages Artifact + uses: actions/upload-pages-artifact@v3 + with: + path: deploy + + deploy: + needs: build + + runs-on: ubuntu-latest + + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + + steps: + - name: Deploy + id: deployment + uses: actions/deploy-pages@v4 diff --git a/web-flasher/index.html b/web-flasher/index.html new file mode 100644 index 0000000..26d7510 --- /dev/null +++ b/web-flasher/index.html @@ -0,0 +1,47 @@ +<!DOCTYPE html> +<html> +<head> + <meta charset="UTF-8"> + <title>ORION-RF Installer</title> + + <script + type="module" + src="https://unpkg.com/esp-web-tools@10/dist/web/install-button.js"> + </script> + + <style> + body { + font-family: sans-serif; + max-width: 700px; + margin: auto; + padding: 2rem; + } + + h1 { + text-align: center; + } + + .card { + border: 1px solid #ddd; + padding: 20px; + border-radius: 10px; + } + </style> +</head> +<body> + +<h1>ORION-RF Installer</h1> + +<div class="card"> + <h2>Stable Release</h2> + + <p> + Connect your ESP32-S3 and click Install. + </p> + + <esp-web-install-button manifest="manifest.json"> + </esp-web-install-button> +</div> + +</body> +</html> diff --git a/web-flasher/manifest.json b/web-flasher/manifest.json new file mode 100644 index 0000000..b51e2cb --- /dev/null +++ b/web-flasher/manifest.json @@ -0,0 +1,23 @@ +{ + "name": "ORION-RF", + "version": "latest", + "builds": [ + { + "chipFamily": "ESP32-S3", + "parts": [ + { + "path": "./bootloader.bin", + "offset": 0 + }, + { + "path": "./partitions.bin", + "offset": 32768 + }, + { + "path": "./firmware.bin", + "offset": 65536 + } + ] + } + ] +} |
