Media shot-list for esp32/ble-bidirectional.md (L5: Bidirectional BLE). Part of the draft-lesson finalization tracked in #122.
⚠️ This page lives on the unmerged esp32-bluetooth branch. Goes live when that branch merges. Carries the "in draft form" banner. Currently has zero media of any kind.
Shot list — desk work (drawable in software)
Shot list — bench/capture (hardware + screen recording)
Demos span phone app (nRF Connect) and browser (Web Bluetooth) screen capture plus the breadboard.
Also blocked on (code/hosting, tracked here)
Suggested hero
The "magic moment" browser→BLE→hardware clip (~20s). Draft caption:
Send data from your phone or web browser to control an ESP32's hardware in real time — BLE's structured power meets Web Bluetooth for a browser-based interface.
Placement (hero-first standard)
Put the hero block immediately after the TOC --- — before any intro prose, the draft banner, or note box (slot: TOC → hero → optional note → prose; see #123). Markup: <video autoplay loop muted playsinline aria-label="..."> for a local clip (use controls instead of autoplay if it has audio), or <div class="iframe-container"><iframe ... title="descriptive..."></iframe></div> for YouTube — followed by a **Video.**/**Figure.** caption with {: .fs-1 }.
Media shot-list for
esp32/ble-bidirectional.md(L5: Bidirectional BLE). Part of the draft-lesson finalization tracked in #122.Shot list — desk work (drawable in software)
Shot list — bench/capture (hardware + screen recording)
FF0000/00FF00/0000FF), onboard NeoPixel changing color per write. (ble-bidirectional.md:295 TODO)Also blocked on (code/hosting, tracked here)
BLENeoPixelControl.ino,BLEUartService.inotomakeabilitylab/arduinoESP32/Bluetooth/.Suggested hero
The "magic moment" browser→BLE→hardware clip (~20s). Draft caption:
Placement (hero-first standard)
Put the hero block immediately after the TOC
---— before any intro prose, the draft banner, or note box (slot: TOC → hero → optional note → prose; see #123). Markup:<video autoplay loop muted playsinline aria-label="...">for a local clip (usecontrolsinstead of autoplay if it has audio), or<div class="iframe-container"><iframe ... title="descriptive..."></iframe></div>for YouTube — followed by a**Video.**/**Figure.**caption with{: .fs-1 }.