Media shot-list for esp32/bluetooth-web-serial.md (L3: Bluetooth Web Serial). 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. Only media today: component photos in the materials table.
Shot list — desk work (drawable in software)
Shot list — bench/capture (hardware + screen recording)
Also blocked on (code/hosting, tracked here)
Suggested hero
The Part 5 bidirectional color-mixer screencast (~20–25s). Draft caption:
Bidirectional Bluetooth: drag the hue wheel on screen to set color, turn the pot on the breadboard to set brightness — both control one NeoPixel, and each side sees the other's state in real time.
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/bluetooth-web-serial.md(L3: Bluetooth Web Serial). Part of the draft-lesson finalization tracked in #122.Shot list — desk work (drawable in software)
Shot list — bench/capture (hardware + screen recording)
serial_bar_graph.pyASCII bar chart updating as the pot turns over Bluetooth. (:195)Also blocked on (code/hosting, tracked here)
BluetoothPot.ino,BluetoothColorMixer.inotomakeabilitylab/arduino; hostSerialHueBrightnessTest/on GitHub Pages; verify themakelab.serialCDN URL.Suggested hero
The Part 5 bidirectional color-mixer screencast (~20–25s). 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 }.