Stereo Boom Bonnet



Speaker separation Example

ODROID-C1+/C2

  • Connect ​the stereo boom bonnet ​to ODROID-C1+/​C2 using an I2S cable, attach a USB keyboard, USB mouse and HDMI monitor, then power up the system.
  • Update the System:
    sudo apt update && sudo apt dist-upgrade


  • To ensure that the stereo boom bonnet kernel modules are loaded on Terminal.
odroid@odroid64:~$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: ODROIDHDMI [ODROID-HDMI], device 0: I2S.27 dit-hifi-0 []
  Subdevices: 0/1
  Subdevice #0: subdevice #0
odroid@odroid64:~$
odroid@odroid64:~$ sudo modprobe snd-soc-pcm5102
odroid@odroid64:~$ sudo modprobe snd-soc-odroid-dac
odroid@odroid64:~$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: ODROIDHDMI [ODROID-HDMI], device 0: I2S.27 dit-hifi-0 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: ODROIDDAC [ODROID-DAC], device 0: I2S.27 pcm5102-0 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
odroid@odroid64:~$
  • Applications → Sound & Video → Sound → Hardware Tab & Output Tab select “ODROID-DAC”

If you have to load the driver every time whenever your ODROID-C1+/C2 starts, simply you can by registering the driver into /etc/modules

odroid@odroid64:~$ su
Password:  /* root password is "odroid" */
root@odroid64:/home/odroid# echo "snd-soc-pcm5102" >> /etc/modules
root@odroid64:/home/odroid# echo "snd-soc-odroid-dac" >> /etc/modules
root@odroid64:/home/odroid# exit
exit
odroid@odroid64:~$ 

Reboot again.

Check it by “aplay -l”:

odroid@odroid64:~$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: ODROIDHDMI [ODROID-HDMI], device 0: I2S.27 dit-hifi-0 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: ODROIDDAC [ODROID-DAC], device 0: I2S.27 pcm5102-0 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
odroid@odroid64:~$

Boom bonnet sound test with sample wav file

odroid@odroid64:~$ aplay -D hw:1,0 testfile.wav

Change default sound output

  • check your sound device number
  • The number zero means the boom bonnet output on C2 Ubuntu 18.04 mate.
odroid@odroid64:~$ pactl list short sources
0	alsa_output.platform-odroid_dac.stereo-fallback.monitor	module-alsa-card.c	s16le 2ch 44100Hz	SUSPENDED
1	alsa_output.platform-odroid_hdmi.stereo-fallback.monitor	module-alsa-card.c	s16le 2ch 44100Hz	SUSPENDED
2	alsa_input.platform-odroid_hdmi.analog-mono	module-alsa-card.c	s16le 1ch 44100Hz	SUSPENDED
  • Set the default with the device number
odroid@odroid64:~$ echo set-default-sink 0 | sudo tee -a /etc/pulse/default.pa

ODROID-C4

  • Connect ​the stereo boom bonnet ​to ODROID-C4 using an I2S cable, attach a USB keyboard/mouse and HDMI monitor, then power up the system.
  • To enable the sound card, you need to modify the DT(Device Tree) file.
  • Install required packages and make a backup DTB file.
root@odroid:~$ sudo apt-get install device-tree-compiler
root@odroid:~$ cp /media/boot/meson64_odroidc4.dtb /media/boot/meson64_odroidc4.dtb.org
  • Change the DTB file to enable the I2C-bus and pcm5102a codec driver.
root@odroid:~$ fdtget /media/boot/meson64_odroidc4.dtb /pcm5102a status
disabled
root@odroid:~$ fdtput -t s /media/boot/meson64_odroidc4.dtb /pcm5102a status "okay"
root@odroid:~$ fdtget /media/boot/meson64_odroidc4.dtb /pcm5102a status
okay
root@odroid:~$
  • Change the DTB file for sound card. Then reboot.
root@odroid:~$ fdtget /media/boot/meson64_odroidc4.dtb /odroid_hifi status
disabled
root@odroid:~$ fdtput -t s /media/boot/meson64_odroidc4.dtb /odroid_hifi status "okay"
root@odroid:~$ fdtget /media/boot/meson64_odroidc4.dtb /odroid_hifi status
okay
root@odroid:~$ reboot
  • You can see that the sound card is enabled.
root@odroid:~$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: ODROIDHDMI [ODROID-HDMI], device 0: SPDIF-dit-hifi dit-hifi-0 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: ODROIDHiFi [ODROID-HiFi], device 0: TDM-B-pcm5102a-hifi pcm5102a-hifi-0 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
root@odroid:~#
  • To test, connect an amplifier to the 3.5mm or streo speaker on the boom bonnet, and then run:
  • Applications → Sound & Video → Sound → Hardware Tab & Output Tab select “ODROID-HIFI”

ODROID-XU4

  • XU4 system doesn't need any software tweak to enable the boom bonnet sound output.

Adding a RCA connector for Lineout

Android supports only 44.1.Khz/16bit output.

Power consumption

1Khz sine wave playback
Full scale with sound clipping : 6 Watt
Lowering output volume to minimize the clipping : 2 Watt

Pop-up noise

Speakers don't generate pop-up noise in power on and off process.
But Earphone output generates pop-up noise in the power-on process.
Normal power-off process doesn't make any noise.