Tympan Rev E plus Jabra 85 Earbuds

Will Jabra Elite 85T True Wireless Earbuds earbuds work with Tympan Rev E? Is wireless latency going to be a problem? I am also wanting to use the AIC CODEC shield to increase my connectivity options.

Hi Ron,

We have only ever used the Bluetooth on the Tympan as being a peripheral to a phone. So, in effect, the Tympan was the earphones while the phone was the audio source. It sounds like you want the opposite: for your earphones to be the earphones and for the Tympan to be the audio source. To my knowledge, no one has tried this.

But maybe you’re feeling gutsy? Like maybe you are willing to do a bit of spelunking of the ways of Bluetooth? If so…

The underlying Bluetooth module does support being an audio source. The BT module is a BC127 and Sparkfun has a tutorial where they used it as an audio source, so it can be done.

From my perspective, the biggest challenge is not the Tympan audio stuff…but the biggest challenge is doing the Bluetooth stuff: pairing and connecting. On your phone, you have a nice big screen for seeing which BT devices are out there, for choosing which you want to connect to, and for confirming that you really do want to connect. How would we do this through the screenless Tympan?

The answer is that we humans (you human?) would first work through the connection process manually, writing down the handful of commands needed to connect to your specific headset. Once it works, we’d put those commands into a simple script that tells the Tympan exactly what to do with no human interaction needed. Voila!, your headset works.

To get started, you could use the example sketch “BC127Terminal” that we provide in the Tympan library. It lets you use the Arduino serial monitor to type commands directly to the BC127 BT module and to see its replies.

Next, you figure out what commands to send it to do the discovery, pairing, and connecting. Where does one find the commands? In its documentation! Assuming you have a Tympan RevE, you need the “BC127 Melody v7.3”, from Tympan’s GitHub (or via Google).

Using that doc, you’d find commands that seem promising (none of us ever know what all the words mean…we just choose the ones that seem the most promising) and you use that Tympan terminal program to type them in to give them a try. You need to find commands to:

(1) set the BT device to be a Bluetooth audio source, not sink (see Table 2-6, which says that to switch to source requires a command like SET PROFILES=0 0 0 1 1 0 0 0 0 0 0 0 followed by a WRITE followed by a RESET)

(2) Then, scan for nearby BT units to see if you find your headset (perhaps INQUIRY),

(3) apparently pairing isn’t explicitly necessary…you can just try to connect. Apparently, you type OPEN <your headset's BT ID number> A2DP where the A2DP says that you want to open an audio connection. That’s it!

(4) As a human, you may wish to confirm the connection. Type STATUS

If you get this far, let me know! I can then help you edit your Tympan program so that the the Tympan will route its audio to the bluetooth as if it were the headphones. I think that you’d add just one line to your Tympan program. I think that, in your setup() function, somewhere after myTympan.enable(), you’d add the line:

myTympan.outputSelect(TYMPAN_OUTPUT_HEADPHONE_AND_LINE_OUT);

If you figure out the commands to do the first four steps, we can automate it so that it can happen in the future without your manual interaction. Then, if that works, we can write these commands into a script (including your headsets BT ID number) so that no human interaction is needed…it’ll just work.

Does this interest you? Are you feeling bold? Like a Bluetooth hacker?!? Let’s do it!

Chip

Thank you Chip for getting back to me so quickly. Your enthusiasm is catching.

My first priority is to build my own hearing aid. I conclude that means I must use a wired headset or a pair of wired earbuds. That works for me.

I need to check the forum for headset recommendations.

Regarding Bluetooth, I am keen on hacking. I will call that Phase 2. I’ll order my Rev E and CODEC boards first, and look for a Bluetooth breakout board and whatever useful debug equipment I can find at SparkFun.

-Ron

The BC127 boards at Sparkfun are retired.

  • Henry

@henrylee The supply chain issues with BC127 availability is not really a part of this thread.
We are also unduring our own BC127 sourcing woe. If you are interested in discussing the BC127 availability and use, please start a new thread.
Cheers,
Joel

Hi, an UNelegant workaround may be to use existing Audio cable to bluetooth transmitters that you pair with earbuds. Like:
Amazon.com: ZIIDOO Visible Bluetooth Transmitter and Receiver,4-in-1 Wireless Bluetooth Adapter with Display Screen,Low Latency Bluetooth 5.0 Audio Adapter for TV,PC,Car,Home Stereo System : Electronics

I may try that soon… More JunkInPocket, But??
Regards, Terry

Hi chipaudette ,
Sems like some humans have mastered the Tympan already. (Is that you?)

My bluetooth earbuds are connected to the BC127 .
How do you intend to edit the tympan program?

@chipaudette You there ?

Whoa! The Tympan (via the SerialMonitor) reported that it auto-connected to your BT earbuds?!?! Cool!

I’ve never seen this before. To be honest, I have not tried many BT earbuds, but it still surprises me.
Since it has never happened for me, I’m not sure what needs to be done.

At minimum, we need to route the Tympan’s audio output to the Tympan’s BT module so that the audio can be transmitted to your earbuds. That’s the minimum we need to do. So, try this…

  1. Open nearly any Tympan example. For simplicity, try Examples->01-Basic->BasicGain
  2. In the setup() function, add a call to myTympan.outputSelect(). Maybe make it look like this:
 void setup() {

  //begin the serial comms (for debugging)
  Serial.begin(115200);  delay(500);
  Serial.println("BasicGain: starting setup()...");

  //allocate the dynamic memory for audio processing blocks
  AudioMemory_F32(10); 

  //Enable the Tympan to start the audio flowing!
  myTympan.enable(); // activate the Tympan's audio module

  // /////////// HERE IS THE NEW LINE
  //By default, the Tympan AIC outputs its audio to the headphone jack.  But it can do more!
  //So, let's also enable the AIC's "line out", which the Tympan hardware has routed to the
  //Tympan's Bluetooth module. Maybe this will let audio flow to a set of BT earbuds?
  myTympan.outputSelect(TYMPAN_OUTPUT_HEADPHONE_AND_LINE_OUT);
  // ////////// END OF NEW CODE
  
  //Choose the desired input
  myTympan.inputSelect(TYMPAN_INPUT_ON_BOARD_MIC);     // use the on board microphones
  //myTympan.inputSelect(TYMPAN_INPUT_JACK_AS_MIC);    // use the microphone jack - defaults to mic bias 2.5V
  //myTympan.inputSelect(TYMPAN_INPUT_JACK_AS_LINEIN); // use the microphone jack - defaults to mic bias OFF

  //Set the desired volume levels
  myTympan.volume_dB(0);                   // headphone amplifier.  -63.6 to +24 dB in 0.5dB steps.
  myTympan.setInputGain_dB(input_gain_dB); // set input volume, 0-47.5dB in 0.5dB setps

  // check the volume knob
  servicePotentiometer(millis(),0);  //the "0" is not relevant here.

  Serial.println("Setup complete.");
} //end setup()

Compile and upload that code up to your Tympan. If it works correctly, you should hear the audio from the Tympan’s on-board microphones via your BT earbuds. You should hear the same audio from the Tympan’s (wired) headphone jack as you do from your BT earbuds.

Let me know if it works!

Chip

@Viren03 did you try the above? Will be good to how far you could go with this.
Also which earbud are you using?

@aromanish @chipaudette However simplistic the above code modification , I doubt it may not work because the Auto Pairing with the earbuds might not be sustained after uploading a new sketch. I used the Wireless One plus Nord Buds CE.