cobby
Active Member
- Joined
- Sep 13, 2024
- Messages
- 172
- Likes
- 194
I already mentioned this project in the AIYIMA 800X thread, but now that the software is publicly available, I thought it deserved its own thread.
The result is BP10 DSP Controller: an open-source ESP32-S3 controller with a local web interface for the MVSilicon BP1048 DSP.
It has been working reliably for me and makes the 800X considerably more useful.
GitHub, source code and prebuilt firmware:
https://github.com/CobbyCode/bp10-dsp-controller
For me, the main motivation was the factory Noise Suppressor. Its original configuration was quite annoying at low listening levels, but it can now be adjusted or disabled.
The Pre EQ is probably the most useful part. The 800X firmware exposes ten filter slots with peak, shelving, low-pass, high-pass, band-pass and notch filter types. Some are used for the factory crossover and voicing, while the remaining filters can be used for your own EQ or basic room correction.
BP1048B2 datasheet:
https://www.mvsilicon.com/down/BP1048B2datasheet_V2.1.pdf
To connect it to the AIYIMA 800X, the amplifier plate has to be removed to access the internal USB-A port. Disconnect the subwoofer from mains power before opening it and take the usual precautions around mains-powered electronics.
The full firmware image can be installed using Espressif's browser flasher. After the first start, connect to the temporary bp10-xxxx Wi-Fi network, select your home network and open the controller in a browser.
I have fully tested the fixed AIYIMA 800X profile. Generic-board support is prepared, but not yet tested as thoroughly and currently provides live control only.
Reports from other BP1048 devices are very welcome. Please let me know which board you have and what works or does not work.
BP10 DSP Controller
I wanted access to the full DSP functionality of the AIYIMA 800X without having to connect a Windows PC and use the manufacturer software every time.The result is BP10 DSP Controller: an open-source ESP32-S3 controller with a local web interface for the MVSilicon BP1048 DSP.
It has been working reliably for me and makes the 800X considerably more useful.
GitHub, source code and prebuilt firmware:
https://github.com/CobbyCode/bp10-dsp-controller
What can be controlled?
The current AIYIMA 800X profile provides access to:- 10-band Music Pre EQ with frequency-response preview
- Pre EQ gain
- Noise Suppressor
- Virtual Bass
- Music DRC
- Silence Detector
- configuration backup and restore
- automatic restoration of the DSP settings after power-on
- firmware updates through the web interface
For me, the main motivation was the factory Noise Suppressor. Its original configuration was quite annoying at low listening levels, but it can now be adjusted or disabled.
The Pre EQ is probably the most useful part. The 800X firmware exposes ten filter slots with peak, shelving, low-pass, high-pass, band-pass and notch filter types. Some are used for the factory crossover and voicing, while the remaining filters can be used for your own EQ or basic room correction.
About the BP1048
The BP1048 itself is a fairly capable low-cost audio processor. According to the manufacturer documentation, it contains:- a 32-bit RISC core running at up to 288 MHz
- DSP instructions
- a floating-point unit
- a hardware FFT/IFFT accelerator
- 320 KB internal SRAM
- integrated audio ADCs and DACs
BP1048B2 datasheet:
https://www.mvsilicon.com/down/BP1048B2datasheet_V2.1.pdf
What is required?
- an ESP32-S3 board
- a short USB-A to USB-C data cable
- the prebuilt firmware from the GitHub release
To connect it to the AIYIMA 800X, the amplifier plate has to be removed to access the internal USB-A port. Disconnect the subwoofer from mains power before opening it and take the usual precautions around mains-powered electronics.
The full firmware image can be installed using Espressif's browser flasher. After the first start, connect to the temporary bp10-xxxx Wi-Fi network, select your home network and open the controller in a browser.
Other BP1048 devices
The code also contains experimental automatic discovery for generic MVSilicon ACP devices, including some BP1048 boards sold on AliExpress.I have fully tested the fixed AIYIMA 800X profile. Generic-board support is prepared, but not yet tested as thoroughly and currently provides live control only.
Reports from other BP1048 devices are very welcome. Please let me know which board you have and what works or does not work.
Last edited: