Skip to content

Commit

Permalink
Initial commit adding BASS in bttester
Browse files Browse the repository at this point in the history
Adding BASS support in bttester
  • Loading branch information
szymon-czapracki committed Sep 23, 2024
1 parent f4702af commit 5ef2315
Show file tree
Hide file tree
Showing 12 changed files with 473 additions and 14 deletions.
2 changes: 2 additions & 0 deletions apps/bttester/pkg.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,10 +32,12 @@ pkg.deps:
- "@apache-mynewt-core/sys/stats"
- "@apache-mynewt-core/sys/shell"
- "@apache-mynewt-nimble/nimble/host"
- "@apache-mynewt-nimble/nimble/host/audio"
- "@apache-mynewt-nimble/nimble/host/util"
- "@apache-mynewt-nimble/nimble/host/services/gap"
- "@apache-mynewt-nimble/nimble/host/services/gatt"
- "@apache-mynewt-nimble/nimble/host/services/dis"
- "@apache-mynewt-nimble/nimble/host/audio/services/bass"
- "@apache-mynewt-nimble/nimble/host/store/config"
- "@apache-mynewt-core/hw/drivers/uart"
- "@apache-mynewt-core/hw/drivers/rtt"
Expand Down
1 change: 1 addition & 0 deletions apps/bttester/src/btp/btp.h
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@
#define BTP_SERVICE_ID_MESH 4
#define BTP_SERVICE_ID_GATTC 6
#define BTP_SERVICE_ID_BAP 14
#define BTP_SERVICE_ID_BASS 14

#define BTP_SERVICE_ID_MAX BTP_SERVICE_ID_BAP

Expand Down
17 changes: 16 additions & 1 deletion apps/bttester/src/btp/btp_bap.h
Original file line number Diff line number Diff line change
Expand Up @@ -84,11 +84,26 @@ struct bap_bap_broadcast_source_stop_cmd {
} __packed;

#define BTP_BAP_BROADCAST_SINK_SETUP 0x0a

#define BTP_BAP_BROADCAST_SINK_STOP 0x0f
struct btp_bap_broadcast_sink_stop_cmd {
uint8_t addr_type;
ble_addr_t address;
uint8_t broadcast_id[3];
} __packed;

#define BTP_BAP_SET_BROADCAST_CODE 0x17
struct btp_bap_set_broadcast_code_cmd {
uint8_t bd_addr_type;
ble_addr_t addr;
uint8_t source_id;
uint8_t broadcast_code[16];
} __packed;

#define BTP_BAP_BROADCAST_SINK_RELEASE 0x0b
#define BTP_BAP_BROADCAST_SCAN_START 0x0c
#define BTP_BAP_BROADCAST_SCAN_STOP 0x0d
#define BTP_BAP_BROADCAST_SINK_SYNC 0x0e
#define BTP_BAP_BROADCAST_SINK_STOP 0x0f
#define BTP_BAP_BROADCAST_SINK_BIS_SYNC 0x10
#define BTP_BAP_DISCOVER_SCAN_DELEGATOR 0x11
#define BTP_BAP_BROADCAST_ASSISTANT_SCAN_START 0x12
Expand Down
37 changes: 37 additions & 0 deletions apps/bttester/src/btp/btp_bass.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/

#ifndef H_BTP_BASS_
#define H_BTP_BASS_

#include "nimble/ble.h"
#include <stdint.h>

#ifndef __packed
#define __packed __attribute__((__packed__))
#endif

/* BAS Service */
/* commands */
#define BTP_BASS_READ_SUPPORTED_COMMANDS 0x01
struct btp_bass_read_supported_commands_rp {
uint8_t data[0];
} __packed;

#endif /* H_BTP_BASS_ */
10 changes: 10 additions & 0 deletions apps/bttester/src/btp/btp_gap.h
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@ struct btp_gap_read_controller_index_list_rp {
#define BTP_GAP_SETTINGS_PRIVACY 13
#define BTP_GAP_SETTINGS_CONTROLLER_CONFIG 14
#define BTP_GAP_SETTINGS_STATIC_ADDRESS 15
#define BTP_GAP_SETTINGS_EXTENDED_ADVERTISING 17
#define BTP_GAP_SETTINGS_PERIODIC_ADVERTISING 18

#define BTP_GAP_READ_CONTROLLER_INFO 0x03
Expand Down Expand Up @@ -258,6 +259,15 @@ struct btp_gap_set_filter_accept_list_cmd {
ble_addr_t addrs[];
} __packed;

#define GAP_SET_EXT_ADV 0x21
struct btp_gap_set_ext_advertising_cmd {
uint8_t setting;
} __packed;

struct btp_gap_set_ext_advertising_rp {
uint32_t current_settings;
} __packed;

#define GAP_PADV_CONFIGURE 0x22
struct gap_periodic_adv_configure_cmd {
uint8_t flags;
Expand Down
8 changes: 6 additions & 2 deletions apps/bttester/src/btp/bttester.h
Original file line number Diff line number Diff line change
Expand Up @@ -142,12 +142,16 @@ gatt_svr_register_cb(struct ble_gatt_register_ctxt *ctxt, void *arg);
int
gatt_svr_init(void);

#if MYNEWT_VAL(BLE_ISO_BROADCAST_SOURCE)
#if MYNEWT_VAL(BLE_AUDIO)
uint8_t
tester_init_bap(void);
uint8_t
tester_unregister_bap(void);
#endif /* MYNEWT_VAL(BLE_ISO_BROADCAST_SOURCE) */
uint8_t
tester_init_bass(void);
uint8_t
tester_unregister_bass(void);
#endif /* MYNEWT_VAL(BLE_AUDIO) */

#endif /* __BTTESTER_H__ */

Loading

0 comments on commit 5ef2315

Please sign in to comment.