Compare commits

..

16 Commits

Author SHA1 Message Date
Rudis Muiznieks 0d1d09bda5
custom button mapping 2023-09-24 14:36:54 -05:00
Ben V. Brown c7372d21d2
Turn off resample for now (to avoid 56k profile) 2023-09-23 13:58:34 -05:00
Ben V. Brown 16cfcb1002
Port fb tuning values 2023-09-23 13:58:34 -05:00
Ben V. Brown 8e91ed7282
Update decoder 2023-09-23 13:58:34 -05:00
Ben V. Brown 9a747bdaad
Port some rough anc numbers from firmware dump 2023-09-23 13:58:34 -05:00
Ben V. Brown 94e2f92c29
Scratching debug tool for anc poking 2023-09-23 13:58:34 -05:00
Ben V. Brown 64e193ad66
Note WNR is off 2023-09-23 13:58:34 -05:00
Ben V. Brown 33fdf13003
Try higher gain for anc 2023-09-23 13:58:33 -05:00
Ben V. Brown 396ea8e2a7
Update target.mk 2023-09-23 13:58:33 -05:00
Ben V. Brown c5570b96ca
Update target.mk 2023-09-23 13:58:33 -05:00
Ben V. Brown 037cee323a
Update analog_best2300p.c 2023-09-23 13:58:33 -05:00
Ben V. Brown 0a82336258
Add logging to anc init 2023-09-23 13:58:33 -05:00
Ben V. Brown 5678f70284
Cant do inline comments on makefile target config 2023-09-23 13:58:33 -05:00
Ben V. Brown 399f466954
Make warning on no anc VMIC 2023-09-23 13:58:33 -05:00
Ben V. Brown 9c14484f09
Edit config for mics 2023-09-23 13:58:33 -05:00
Ben V. Brown 97c2a54186
Annotate config options 2023-09-23 13:58:29 -05:00
11 changed files with 23 additions and 59 deletions

View File

@ -17,17 +17,11 @@ jobs:
- name: Checkout sources
uses: actions/checkout@v4
- name: Install qemu dependency
run: |
sudo apt-get update
sudo apt-get install -y qemu-user-static
- name: Build images
id: build
uses: redhat-actions/buildah-build@v2
with:
image: ${{ github.repository }}
platforms: linux/amd64, linux/arm64
context: /
tags: ${{ contains(github.ref_name, 'main') && 'latest' || github.ref_name }}-sdk
containerfiles: /Dockerfile

View File

@ -12,6 +12,6 @@ jobs:
run: cd /usr/src/ && ./build.sh || cat /usr/src/log.txt
- name: Archive produced firmware
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v3
with:
path: /usr/src/out/open_source/open_source.bin

View File

@ -41,11 +41,6 @@ RUN apt-get update \
&& curl \
https://armkeil.blob.core.windows.net/developer/Files/downloads/gnu-rm/9-2019q4/gcc-arm-none-eabi-9-2019-q4-major-$(arch)-linux.tar.bz2 | tar -xj -C /src/
RUN apt-get update \
&& apt-get install -y \
minicom \
sudo
ENV PATH="${PATH}:/src/gcc-arm-none-eabi-9-2019-q4-major/bin"
COPY --from=rust_build /usr/src/bestool/bestool/target/release/bestool /usr/local/bin/bestool
COPY . /usr/src

View File

@ -25,7 +25,6 @@ endif
ifeq ($(ANC_ASSIST_ENABLED),1)
CFLAGS_app_anc.o += -DANC_ASSIST_ENABLED
CFLAGS_anc_assist.o += -DANC_ASSIST_ENABLED
ifeq ($(ANC_ASSIST_WNR_ENABLED),1)
CFLAGS_anc_assist.o += -DANC_ASSIST_WNR_ENABLED

View File

@ -1531,6 +1531,13 @@ void app_anc_key(APP_KEY_STATUS *status, void *param) {
bool flag = app_anc_work_status();
#if defined(IBRT)
ibrt_ctrl_t *p_ibrt_ctrl = app_tws_ibrt_get_bt_ctrl_ctx();
TRACE(2, "[%s] current_role: %d", __func__, p_ibrt_ctrl->current_role);
if (p_ibrt_ctrl->current_role == IBRT_SLAVE) {
app_anc_notify_master_to_exchange_coef(0, 0);
return;
}
app_anc_status_sync(!flag);
#endif
app_anc_status_post(!flag);

View File

@ -118,12 +118,6 @@ void send_prev_track(void) {
uint8_t action[] = {IBRT_ACTION_BACKWARD};
app_ibrt_if_start_user_action(action, sizeof(action));
}
void send_enable_disable_anc(void) {
uint8_t action[] = {IBRT_ACTION_ANC_NOTIRY_MASTER_EXCHANGE_COEF};
app_ibrt_if_start_user_action(action, sizeof(action));
}
void app_key_single_tap(APP_KEY_STATUS *status, void *param) {
TRACE(2, "%s event %d", __func__, status->event);
@ -213,7 +207,7 @@ void app_key_long_press_down(APP_KEY_STATUS *status, void *param) {
//send_prev_track();
} else {
// Bud's are working as a pair
send_enable_disable_anc();
app_anc_key(status, param);
}
}

View File

@ -11,10 +11,6 @@ RTOS ?= 1
NO_PWRKEY = 0
LIBC_ROM ?= 1
# Extas added by Open source community
CONNECTED_BLUE_LIGHT = 1 # if set to 1, the blue light will flash when connected
# end our extras
export USER_SECURE_BOOT ?= 0
# enable:1
# disable:0
@ -58,36 +54,31 @@ export BT_DEBUG_TPORTS ?= 0
TPORTS_KEY_COEXIST ?= 0
export SNIFF_MODE_CHECK ?= 0
# Merge L+R stream down to mono
AUDIO_OUTPUT_MONO ?= 0
AUDIO_OUTPUT_DIFF ?= 0
# Raise mic bias from 2.2V to 3.3V
DIGMIC_HIGH_VOLT ?= 0
#### ANC DEFINE START ######
export ANC_APP ?= 1
# Feed Forward ANC configuration (external mic)
export ANC_FF_ENABLED ?= 1
# Feed Backward ANC configuration (internal mic)
export ANC_FB_ENABLED ?= 1
# Wind noise reduction mode
export ANC_WNR_ENABLED ?= 0
# Music cancel mode. Conflicts with audio resampling
export AUDIO_ANC_FB_MC ?= 0
export AUDIO_SECTION_SUPPT ?= 0
export AUD_SECTION_STRUCT_VERSION ?= 2
# Music cancel hardware?
export AUDIO_ANC_FB_MC_HW ?=0
export AUDIO_ANC_FB_MC_HW ?=1
export APP_ANC_KEY ?= 1
# Feedback check for feedforward mic. Locked on due to blobs
export ANC_FB_CHECK ?= 1
##### ANC DEFINE END ######
# Build in ANC testing app (closed source)
APP_ANC_TEST ?= 0
export ANC_ASSIST_ENABLED ?= 0
##### ANC DEFINE END ######
# Allow test commands via bluetooth
TEST_OVER_THE_AIR ?= 0
@ -245,7 +236,7 @@ A2DP_LHDC_LARC ?= 1
export FLASH_UNIQUE_ID ?= 1
endif
A2DP_LDAC_ON ?= 1
A2DP_LDAC_ON ?= 0
export TX_RX_PCM_MASK ?= 0
@ -360,8 +351,6 @@ export BT_EXT_PA ?=0
ifeq ($(A2DP_LHDC_ON),1)
AUDIO_BUFFER_SIZE := 140*1024
else ifeq ($(A2DP_LDAC_ON),1)
AUDIO_BUFFER_SIZE := 140*1024
else
AUDIO_BUFFER_SIZE := 100*1024
endif

View File

@ -205,7 +205,7 @@ enum AUD_STREAM_ID_T {
AUD_STREAM_ID_0 = 0,
AUD_STREAM_ID_1,
AUD_STREAM_ID_2,
#ifdef ANC_ASSIST_ENABLED
#ifdef __ANC_ASSIST__
AUD_STREAM_ID_3,
#endif
AUD_STREAM_ID_NUM,
@ -230,7 +230,7 @@ enum AUD_IO_PATH_T {
AUD_INPUT_PATH_NTMIC,
AUD_INPUT_PATH_ANC_WNR, // Wind Noise Reduction
AUD_INPUT_PATH_USBAUDIO,
#ifdef ANC_ASSIST_ENABLED
#ifdef __ANC_ASSIST__
AUD_INPUT_PATH_AF_ANC,
#endif
// Output path

View File

@ -279,7 +279,6 @@ void app_ibrt_ui_perform_user_action(uint8_t *p_buff, uint16_t length) {
ibrt_ctrl_t *p_ibrt_ctrl = app_tws_ibrt_get_bt_ctrl_ctx();
#ifdef ANC_APP
//Doesnt actully get used!!!
app_anc_cmd_receive_process(p_buff, length);
#endif
#ifdef ANC_WNR_ENABLED
@ -353,9 +352,6 @@ void app_ibrt_ui_perform_user_action(uint8_t *p_buff, uint16_t length) {
app_bt_volumedown();
app_ibrt_sync_volume_info();
break;
case IBRT_ACTION_ANC_NOTIRY_MASTER_EXCHANGE_COEF:
app_anc_key(NULL, NULL);
break;
default:
TRACE(2, "%s unknown user action %d\n", __func__, p_buff[0]);
break;

View File

@ -3866,9 +3866,7 @@ int bt_sbc_player(enum PLAYER_OPER_T on, enum APP_SYSFREQ_FREQ_T freq) {
}
#endif
#endif
if (freq < APP_SYSFREQ_52M) {
freq = APP_SYSFREQ_52M;
}
freq = APP_SYSFREQ_52M;
app_sysfreq_req(APP_SYSFREQ_USER_BT_A2DP, freq);
TRACE_AUD_STREAM_I("[A2DP_PLAYER] sysfreq %d", freq);
TRACE_AUD_STREAM_I("[A2DP_PLAYER] sysfreq calc : %d\n",
@ -3888,10 +3886,8 @@ int bt_sbc_player(enum PLAYER_OPER_T on, enum APP_SYSFREQ_FREQ_T freq) {
else if (codec_type == BTIF_AVDTP_CODEC_TYPE_NON_A2DP) {
TRACE(1, "current_a2dp_non_type %d", current_a2dp_non_type);
if (0) {
}
#if defined(A2DP_LHDC_ON)
else if (current_a2dp_non_type == A2DP_NON_CODEC_TYPE_LHDC) {
if (current_a2dp_non_type == A2DP_NON_CODEC_TYPE_LHDC) {
app_overlay_select(APP_OVERLAY_A2DP_LHDC);
}
#endif

View File

@ -1,11 +1,5 @@
#!/usr/bin/env bash
#!/usr/bin/env sh
rightbud=/dev/serial/by-id/usb-wch.cn_USB_Dual_Serial_0123456789-if00
leftbud=/dev/serial/by-id/usb-wch.cn_USB_Dual_Serial_0123456789-if02
read -p "Which bud do you want to connect to UART for? L/R (default L): " -n 1 -r
ttydev=$leftbud
if [[ $REPLY =~ ^[Rr]$ ]]; then
ttydev=$rightbud
fi
sudo minicom -D $ttydev -b 2000000
num=$(find /dev -name 'ttyUSB*' | rev | cut -c 1)
echo "$num"
sudo minicom "port$num"