changeset 11:46f49aa6ab8c

aud-fcdev3b: new spkr0 config with AEC and mic tuning
author Mychaela Falconia <falcon@freecalypso.org>
date Sat, 09 Oct 2021 04:12:55 +0000
parents 7ad65d870b2f
children b57c380d78e7
files aud-fcdev3b/Makefile aud-fcdev3b/spkr0.src
diffstat 2 files changed, 49 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/aud-fcdev3b/Makefile	Mon Aug 02 18:21:55 2021 +0000
+++ b/aud-fcdev3b/Makefile	Sat Oct 09 04:12:55 2021 +0000
@@ -1,4 +1,4 @@
-BINFILES=	mcsi.cfg mcsi.vol spkrmax.cfg spkrmax.vol
+BINFILES=	mcsi.cfg mcsi.vol spkr0.cfg spkr0.vol spkrmax.cfg spkrmax.vol
 INSTDIR=	/opt/freecalypso/aud-fcdev3b
 
 all:	${BINFILES}
@@ -9,6 +9,12 @@
 mcsi.vol:	Makefile
 	tiaud-mkvol 150 $@
 
+spkr0.cfg:	spkr0.src
+	tiaud-compile $< $@
+
+spkr0.vol:	Makefile
+	tiaud-mkvol 150 $@
+
 spkrmax.cfg:	spkrmax.src
 	tiaud-compile $< $@
 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/aud-fcdev3b/spkr0.src	Sat Oct 09 04:12:55 2021 +0000
@@ -0,0 +1,42 @@
+# The official voice call kit for FCDEV3B consists of a SparkFun COM-09151
+# loudspeaker and a CUI CMC-9745-130T microphone.  The present audio mode
+# config has been tuned as follows:
+#
+# 1) AEC is enabled as needed for all not-held-to-ear loudspeaker setups;
+#
+# 2) The microphone gain has been tuned to provide the most natural
+# voice levels to parties on the far end of the call, matching standard
+# phones;
+#
+# 3) The sidetone level has been turned down: the default -5 dB is too loud
+# and causes singing effects with the raised microphone gain.
+
+mic default {
+	gain 8		# tuned for CMC-9745-130T and FCDEV3B mic input circuit
+	output-bias 0	# 2.0V appears to be correct for CMC-9745-130T
+# Mic has very flat frequency response, thus no FIR needed
+}
+
+# We don't have a FIR filter for our SparkFun COM-09151 loudspeaker.  There is
+# no datasheet for this speaker on SparkFun website, thus we don't know its
+# frequency response curve, and even if we got the needed data, the work to
+# create a flattening filter would probably be more than we can justify.
+
+speaker ear {
+	gain 0		# left at default for now
+}
+
+# The canon seems to be to disable the sidetone altogether in loudspeaker
+# setups, but we set it to the lowest level instead, so we keep exercising
+# this chipset feature - our FCDEV3B is unusual in that the loudspeaker
+# is the only way to exercise voice calls.
+
+sidetone -23
+
+# The AEC configuration has been copied from Pirelli DP-L10, or more
+# specifically, Pirelli's loudspeaker mode AEC config.  Unfortunately
+# we lack sufficient Calypso DSP documentation to even understand most
+# of these tunable settings, let alone actually tune them, hence
+# copying Pirelli's config is the best we can do at the moment.
+
+aec-new 2 1 0x14 0xCCC 0xFFF 0x4000 0x32 0x1000 0x1000 0 4 0x60