48 lines
2 KiB
HTML
48 lines
2 KiB
HTML
<h2>Ontwerpkeuzes BLE OTA voor de Client</h2>
|
|
<p class="subtitle">Hoe krijgt de Client (ESP32) de nieuwe firmware?</p>
|
|
|
|
<div class="options">
|
|
<div class="option" data-choice="android-direct" onclick="toggleSelect(this)">
|
|
<div class="letter">A</div>
|
|
<div class="content">
|
|
<h3>Android App Direct</h3>
|
|
<p>De Client ESP32 start een tijdelijke BLE Server (OTA Service). De Android app verbindt direct met de Client om de firmware te pushen.</p>
|
|
<div class="label">Voordeel: Simpel, hergebruikt Android OTA code.</div>
|
|
<div class="label">Nadeel: Handmatige actie nodig op Client (bijv. knop indrukken).</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="option" data-choice="server-proxy" onclick="toggleSelect(this)">
|
|
<div class="letter">B</div>
|
|
<div class="content">
|
|
<h3>Server Proxy / Relay</h3>
|
|
<p>De Android app stuurt de firmware naar de SylDa_Server. De Server stuurt het door naar de Client via de bestaande BLE verbinding.</p>
|
|
<div class="label">Voordeel: Geen directe verbinding Android-Client nodig.</div>
|
|
<div class="label">Nadeel: Complexer, Server moet grote buffers hebben of flow control.</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="option" data-choice="client-pull" onclick="toggleSelect(this)">
|
|
<div class="letter">C</div>
|
|
<div class="content">
|
|
<h3>Client Pull (via Server)</h3>
|
|
<p>De Server kondigt een update aan. De Client haalt de firmware "chunks" op bij de Server via een nieuwe OTA service op de Server.</p>
|
|
<div class="label">Voordeel: Client heeft controle over tempo.</div>
|
|
<div class="label">Nadeel: Server moet de firmware ergens opslaan (Flash/NVS/SPIFFS?) voordat hij het kan doorgeven.</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="section">
|
|
<h3>Huidige Situatie</h3>
|
|
<div class="mockup">
|
|
<div class="mockup-header">Architectuur</div>
|
|
<div class="mockup-body">
|
|
<pre>
|
|
[Android App] --(BLE OTA)--> [SylDa_Server (ESP32)]
|
|
|
|
|
? --(BLE OTA?)--> [SylDa_Client (ESP32)]
|
|
</pre>
|
|
</div>
|
|
</div>
|
|
</div>
|