Acoustic Test User Guide*
Tool Links
- GX8006 Development Kit (contains acoustic test user guide tools): http://yun.nationalchip.com:10000/l/GFrOHt
- SDK Link: http://gitlab.nationalchip.com/nationalchip/voice-wifi-solution/ovp_aiot/
- Note: Access to this link requires permission. Please contact NationalChip Micro.
1. Acoustic Test Tool Usage*
Refer to the documentation under the Acoustic Test User Guide in the GX8006 Development Kit (http://yun.nationalchip.com:10000/l/GFrOHt).
Tip
The tool includes the recording test firmware. Compilation is not required unless there are specific needs.
2. Recording Firmware Compilation Instructions*
Note
Ensure the SDK build environment is properly set up. If compilation fails, please refer to Environment Setup.
Execute the following commands in the project directory.
2.1. Compile THD Test Firmware (Play White Noise, Single Tone Audio)*
cp configs/acoustic_test_config/speak_test.config .config
make defconfig
make clean;make
2.2. Compile AEC Test Firmware (Play Voice)*
cp configs/acoustic_test_config/aec_test.config .config
make defconfig
make clean;make
2.3. Compile Two-Channel Recording Firmware (No Audio Playback)*
cp configs/acoustic_test_config/bypass_record.config .config
make defconfig
make clean;make
3. Firmware Flashing Instructions*
The firmware is generated in the project's output directory. Flash the mcu_nor.bin file.
Related flashing documentation:
4. FAQ*
4.1. Gain Modification*
- First, copy the configuration file to be compiled, e.g.,
cp configs/acoustic_test_config/speak_test.config .config - Execute the command
make menuconfig - Navigate to
I/O Buffer Settings - Modify
MIC Gainas needed. The default is 26dB.
4.2. Playback Audio Volume Setting*
- First, copy the configuration file to be compiled, e.g.,
cp configs/acoustic_test_config/speak_test.config .config - Execute the command
make menuconfig - Navigate to
Common Function Settings - Then enter
Has voice player - Modify
Set volumeas needed. The default is 100.
The volume step is 10 for this setting. The volume only changes with each increment of 10.
Depending on whether an external PA is used, different volume mapping arrays will be applied. To set the exact gain, modify the array used below according to your requirements.
File path: ovp/common/voice_player/audio_out/audio_out.c
#ifdef CONFIG_ENABLE_EXTERNAL_PA
const int32_t vol_to_db[] = {-26, -24, -22, -20, -18, -16, -14, -12, -10, -8, -6}; // The maximum value in this array cannot be changed to exceed -6
# define SDM_CONFIG_MODE GX_SDM_SAWTOOTH_MODE_AD;
#else
const int32_t vol_to_db[] = {-16, -15, -14, -13, -12, -10, -8, -6, -4, -2, 0}; // The maximum value in this array cannot be changed to exceed 0
# define SDM_CONFIG_MODE GX_SDM_SAWTOOTH_MODE_TD;
#endif
4.3. External PA Control*
Under the default configuration, the external PA control logic is:
- PA off: Drive GPIO7 low.
- PA on: Drive GPIO7 high.
If the external PA control differs from the default logic, please modify it accordingly.
4.3.1. Different GPIO Pin*
Modify as follows:
- Open the configuration menu:
make menuconfig - Navigate to
Common Function Settings - Enter
Has voice player - Enable
Enable External PA - Change
Mute Gpioto the GPIO pin used by the hardware.
4.3.2. Different GPIO Level*
Modify as follows:
- Open the configuration menu:
make menuconfig - Navigate to
Common Function Settings - Enter
Has voice player - Enable
Enable External PA - Change
Mute Levelto the level value corresponding to the external PA off state.
4.3.3. Different Control Method*
Modify the source file: ovp/common/voice_player/audio_out/audio_out.c
Modify the function interface audio_out_set_mute(bool mute) to implement your own control method.