Add selectable BLE-only and Classic-only radio modes

This commit is contained in:
Joey Yakimowich-Payne 2026-09-09 11:40:51 -06:00
commit 595518fe3d
13 changed files with 951 additions and 95 deletions

View file

@ -0,0 +1,17 @@
#pragma once
// Radio policy, independent of the BTstack libraries linked for shared services.
#ifndef SWITCH_PICO_ENABLE_BLE
#define SWITCH_PICO_ENABLE_BLE 1
#endif
#ifndef SWITCH_PICO_ENABLE_CLASSIC
#define SWITCH_PICO_ENABLE_CLASSIC 1
#endif
#if (SWITCH_PICO_ENABLE_BLE != 0 && SWITCH_PICO_ENABLE_BLE != 1) || \
(SWITCH_PICO_ENABLE_CLASSIC != 0 && SWITCH_PICO_ENABLE_CLASSIC != 1)
#error "Bluetooth transport selections must be 0 or 1"
#endif
#if !SWITCH_PICO_ENABLE_BLE && !SWITCH_PICO_ENABLE_CLASSIC
#error "At least one Bluetooth transport must be enabled"
#endif

View file

@ -1,10 +1,12 @@
#pragma once
#include "bluetooth_transport_config.h"
// The AIO firmware exposes one fixed Bluepad32 device slot per USB interface.
#define CONFIG_BLUEPAD32_MAX_DEVICES 4
#define CONFIG_BLUEPAD32_MAX_ALLOWLIST 4
#define CONFIG_BLUEPAD32_GAP_SECURITY 1
#define CONFIG_BLUEPAD32_ENABLE_BLE_BY_DEFAULT 1
#define CONFIG_BLUEPAD32_ENABLE_BLE_BY_DEFAULT SWITCH_PICO_ENABLE_BLE
#define CONFIG_BLUEPAD32_PLATFORM_CUSTOM
#define CONFIG_TARGET_PICO_W