Add Pico 2 W Bluepad32 AIO backend
This commit is contained in:
parent
287ef24fef
commit
f451e27f8c
17 changed files with 1263 additions and 24 deletions
82
bluepad32_config/btstack_config.h
Normal file
82
bluepad32_config/btstack_config.h
Normal file
|
|
@ -0,0 +1,82 @@
|
|||
#ifndef _PICO_BTSTACK_BTSTACK_CONFIG_H
|
||||
#define _PICO_BTSTACK_BTSTACK_CONFIG_H
|
||||
|
||||
// Based on Bluepad32's official Pico W configuration. ENABLE_BLE and
|
||||
// ENABLE_CLASSIC are supplied by the corresponding Pico SDK BTstack targets.
|
||||
#define ENABLE_LOG_INFO
|
||||
#define ENABLE_LOG_ERROR
|
||||
#define ENABLE_PRINTF_HEXDUMP
|
||||
#define ENABLE_SCO_OVER_HCI
|
||||
|
||||
#ifdef ENABLE_BLE
|
||||
#define ENABLE_GATT_CLIENT_PAIRING
|
||||
#define ENABLE_L2CAP_LE_CREDIT_BASED_FLOW_CONTROL_MODE
|
||||
#define ENABLE_LE_CENTRAL
|
||||
#define ENABLE_LE_DATA_LENGTH_EXTENSION
|
||||
#define ENABLE_LE_PERIPHERAL
|
||||
#define ENABLE_LE_PRIVACY_ADDRESS_RESOLUTION
|
||||
#define ENABLE_LE_SECURE_CONNECTIONS
|
||||
#else
|
||||
#error "BP32: ENABLE_BLE should be defined"
|
||||
#endif
|
||||
|
||||
#ifdef ENABLE_CLASSIC
|
||||
#define ENABLE_L2CAP_ENHANCED_RETRANSMISSION_MODE
|
||||
#define ENABLE_GOEP_L2CAP
|
||||
#else
|
||||
#error "BP32: ENABLE_CLASSIC should be defined"
|
||||
#endif
|
||||
|
||||
#if defined(ENABLE_CLASSIC) && defined(ENABLE_BLE)
|
||||
#define ENABLE_CROSS_TRANSPORT_KEY_DERIVATION
|
||||
#endif
|
||||
|
||||
#define HCI_OUTGOING_PRE_BUFFER_SIZE 4
|
||||
#define HCI_ACL_PAYLOAD_SIZE (1691 + 4)
|
||||
#define HCI_ACL_CHUNK_SIZE_ALIGNMENT 4
|
||||
#define MAX_NR_AVDTP_CONNECTIONS 1
|
||||
#define MAX_NR_AVDTP_STREAM_ENDPOINTS 1
|
||||
#define MAX_NR_AVRCP_CONNECTIONS 2
|
||||
#define MAX_NR_BNEP_CHANNELS 1
|
||||
#define MAX_NR_BNEP_SERVICES 1
|
||||
#define MAX_NR_BTSTACK_LINK_KEY_DB_MEMORY_ENTRIES 2
|
||||
#define MAX_NR_GATT_CLIENTS 1
|
||||
#define MAX_NR_HCI_CONNECTIONS 4
|
||||
#define MAX_NR_HID_HOST_CONNECTIONS 1
|
||||
#define MAX_NR_HIDS_CLIENTS 1
|
||||
#define MAX_NR_HFP_CONNECTIONS 1
|
||||
#define MAX_NR_L2CAP_CHANNELS 6
|
||||
#define MAX_NR_L2CAP_SERVICES 5
|
||||
#define MAX_NR_RFCOMM_CHANNELS 1
|
||||
#define MAX_NR_RFCOMM_MULTIPLEXERS 1
|
||||
#define MAX_NR_RFCOMM_SERVICES 1
|
||||
#define MAX_NR_SERVICE_RECORD_ITEMS 4
|
||||
#define MAX_NR_SM_LOOKUP_ENTRIES 3
|
||||
#define MAX_NR_WHITELIST_ENTRIES 16
|
||||
#define MAX_NR_LE_DEVICE_DB_ENTRIES 16
|
||||
|
||||
// Keep controller buffers and controller-to-host flow control enabled to avoid
|
||||
// overrunning the shared CYW43 bus.
|
||||
#define MAX_NR_CONTROLLER_ACL_BUFFERS 3
|
||||
#define MAX_NR_CONTROLLER_SCO_PACKETS 3
|
||||
#define ENABLE_HCI_CONTROLLER_TO_HOST_FLOW_CONTROL
|
||||
#define HCI_HOST_ACL_PACKET_LEN 1024
|
||||
#define HCI_HOST_ACL_PACKET_NUM 3
|
||||
#define HCI_HOST_SCO_PACKET_LEN 120
|
||||
#define HCI_HOST_SCO_PACKET_NUM 3
|
||||
|
||||
// Persistent Classic and BLE pairing databases use Pico flash-backed TLV.
|
||||
#define NVM_NUM_DEVICE_DB_ENTRIES 16
|
||||
#define NVM_NUM_LINK_KEYS 16
|
||||
|
||||
// Bluepad32 does not provide malloc to BTstack.
|
||||
#define MAX_ATT_DB_SIZE 512
|
||||
|
||||
#define HAVE_EMBEDDED_TIME_MS
|
||||
#define HAVE_ASSERT
|
||||
#define HCI_RESET_RESEND_TIMEOUT_MS 1000
|
||||
#define ENABLE_SOFTWARE_AES128
|
||||
#define ENABLE_MICRO_ECC_FOR_LE_SECURE_CONNECTIONS
|
||||
#define HAVE_BTSTACK_STDIN
|
||||
|
||||
#endif // _PICO_BTSTACK_BTSTACK_CONFIG_H
|
||||
13
bluepad32_config/sdkconfig.h
Normal file
13
bluepad32_config/sdkconfig.h
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
#pragma once
|
||||
|
||||
// Bluepad32's Pico W example configuration, limited to one live controller.
|
||||
#define CONFIG_BLUEPAD32_MAX_DEVICES 1
|
||||
#define CONFIG_BLUEPAD32_MAX_ALLOWLIST 1
|
||||
#define CONFIG_BLUEPAD32_GAP_SECURITY 1
|
||||
#define CONFIG_BLUEPAD32_ENABLE_BLE_BY_DEFAULT 1
|
||||
|
||||
#define CONFIG_BLUEPAD32_PLATFORM_CUSTOM
|
||||
#define CONFIG_TARGET_PICO_W
|
||||
|
||||
// 2 == Info
|
||||
#define CONFIG_BLUEPAD32_LOG_LEVEL 2
|
||||
Loading…
Add table
Add a link
Reference in a new issue