A sketch that includes BTstackLib on a CYW43 board fails with arduino-pico's static_assert: "This library needs Bluetooth enabled. Use the 'Tools->IP/ Bluetooth Stack' menu in the IDE to enable it." There is no such menu here, so it reads as a setting we forgot to expose. What is actually true is simpler: the CYW43439's Bluetooth controller is not emulated — only its WiFi side is — so there is nothing to switch on. Appends that, leaving the compiler's own diagnostic intact above it because the developer still needs the real text. Deliberately a separate helper from humanize_cli_error, which REPLACES arduino-cli's own failures; this one only adds context under a compiler message. Worth knowing for whoever picks up the BT work: this is the honest-failure milestone. Making a BT sketch compile at all means flipping this board's FQBN to ipbtstack=ipv4btcble, which swaps liblwip.a for liblwip-bt.a and costs every sketch on the board ~71 KB flash and ~18 KB RAM — and leaves it reaching HCI_STATE_WORKING while advertising to nobody. The mechanism is mapped in project/pimoroni-pico-plus-2w/STATUS.md. |
||
|---|---|---|
| .. | ||
| boot_images | ||
| esp-idf-template | ||
| __init__.py | ||
| arduino_cli.py | ||
| asm8080.py | ||
| asmz80.py | ||
| board_access.py | ||
| c_compile.py | ||
| chip_compile.py | ||
| esp32_flash_image.py | ||
| esp32_i2c_slaves.py | ||
| esp32_lib_bridge.py | ||
| esp32_lib_manager.py | ||
| esp32_sd_slave.py | ||
| esp32_signals.py | ||
| esp32_spi_slaves.py | ||
| esp32_worker.py | ||
| esp_qemu_manager.py | ||
| espidf_compiler.py | ||
| gpio_shim.py | ||
| qemu_manager.py | ||
| rom_compile.py | ||
| signal_router.py | ||
| stm32_lib_manager.py | ||
| stm32_worker.py | ||
| symbol_extract.py | ||
| wasm_chip_runtime.py | ||
| wasm_chip_slave.py | ||
| wifi_status_parser.py | ||