docs: add Bumble transport documentation#110
Conversation
Resolves intercreate#109. - Add docs/transport/bumble.md: install guide, nrfutil flashing instructions for nRF52840 DK, smpbumble CLI reference, scanning, pairing (interactive PIN and programmatic OOB serial read), and mkdocstrings API directives for all bumble submodules - Add Bumble (BLE) entry to mkdocs.yaml nav
JPHutchins
left a comment
There was a problem hiding this comment.
Looks great, thank you! Please move all of this to the source code instead of this markdown, like the other docs. This is so that all of the docs are available to all people and agents, e.g. from their editor, without needing to use the website.
| ```python | ||
| # save the firmware bytes to a file | ||
| from smpclient.transport.firmware.hci import firmware | ||
|
|
||
| with open("hci_firmware.hex", "wb") as f: | ||
| f.write(firmware) | ||
| ``` | ||
|
|
||
| ```bash | ||
| # flash via JLink | ||
| nrfutil device program --firmware hci_firmware.hex --traits jlink | ||
| ``` |
There was a problem hiding this comment.
Cool! This can be simplified to grab the hci firmware path from its CLI via subshell:
...--firmware=$(python -m zephyr_4_4_0_hci_usb_nrf52840dk_default)...
Because each zephyr HCI package has a __main__ that defaults to outputting the path.
|
|
||
| ```python | ||
| import asyncio | ||
| import serial_asyncio |
There was a problem hiding this comment.
This is not cross platform, do not suggest it. I think that the programmatic example with the input callback is enough to get anyone started.
There was a problem hiding this comment.
Pull request overview
This PR adds documentation for the Bumble-backed BLE transport and exposes it in the MkDocs navigation, addressing the request to document Bumble usage and the optional HCI firmware extra.
Changes:
- Adds a new Bumble transport guide with install, firmware, CLI, scanning, pairing, and API reference sections.
- Adds the Bumble transport page to the documentation navigation.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
mkdocs.yaml |
Adds the Bumble BLE transport page to the docs navigation. |
docs/transport/bumble.md |
Introduces user-facing Bumble transport documentation and API references. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| Bond keys are stored via the `keystore` strategy — see `smpclient.transport.bumble.keystore` for | ||
| the options (`Tempfile`, `Local`, `Custom`, `Memory`). |
There was a problem hiding this comment.
Generally best avoid naming things in docs unless they are under test to avoid maintenance burden of the SSOT violation.
Resolves #109.