Skip to content

Microphone gain fix#222

Open
habibialireza wants to merge 6 commits into
mainfrom
microphone-gain-fix
Open

Microphone gain fix#222
habibialireza wants to merge 6 commits into
mainfrom
microphone-gain-fix

Conversation

@habibialireza

Copy link
Copy Markdown
Collaborator

No description provided.

JakeSW and others added 6 commits February 17, 2026 11:27
Define UUID 0x1410df99 for DMIC gain control characteristic.
This allows BLE clients to adjust the ADAU1860 digital microphone
gain over Bluetooth.
Add public methods mic_gain_write() and mic_gain_read() to safely
access DMIC_VOL0 and DMIC_VOL1 registers. These methods encapsulate
the private register access functions and allow external code to
control microphone gain for channels 0 and 1.
Implement hw_codec_mic_gain_set(), hw_codec_mic_gain_get_left(),
and hw_codec_mic_gain_get_right() functions. These provide a
hardware abstraction layer for controlling ADAU186x DMIC_VOL
registers with 0.375 dB step resolution across a +24 dB to mute
range.
Add read_dmic_gain() and write_dmic_gain() handlers for the
BT_UUID_DMIC_GAIN characteristic. This allows BLE clients to
read and adjust DMIC gain for left and right channels using
a 2-byte payload [left_reg, right_reg].
Add comprehensive documentation for DMIC microphone gain control
including:
- Hardware register mapping and gain calculations
- BLE protocol specification
- Usage examples
- C/C++ API reference
- Implementation details

Replaces deprecated PDM terminology with DMIC to accurately
reflect the ADAU1860 digital microphone interface.
@habibialireza habibialireza linked an issue Jun 16, 2026 that may be closed by this pull request
@github-actions

Copy link
Copy Markdown

Build output available:
openearable_v2_firmware.elf.zip
openearable_v2_fota.zip

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

FW: make gain configurable for the microphone

2 participants