Wireless classroom conference microphone system – #1

This post is part of a series on designing a wireless microphone system for hybrid online meetings, i.e. with some people present in person and others present online. See also the next post in this series.

Update 22 November 2020 – I split the original post into two pieces to make it easier to follow up and added some information about commercial solutions.

I was chatting with my daughter about the challenges of doing hybrid Zoom or Teams meetings. She was not allowed to go to school for a few days and had to follow lessons online, with the teacher and most students in the class. And I was still stuck in my attic, organizing my own university teaching and meetings remotely. Recently I went to work a few times for meetings, but only a few people came to work in person, and most attended online through Zoom. This is similar to the current school situation for my daughter, where most kids attend in person but some attend online on Teams. I expect that we will have these hybrid online/in-person meetings for quite some time to come; perhaps they might even become the new “normal”.

The challenge with hybrid in-person and online meetings is mainly in the physical room where multiple people are attending in person. The online attendees simply connect to the online meeting the same way as if it were a 100% online meeting. The people present in real life also have their laptops in front of them with the webcam on, but with the speakers and microphone muted. This allows online attendees to see everyone, also those people in the physical room. Only one person in the physical room unmutes the speakers and microphone. This allows the noise- and feedback-suppression of the video conferencing system to do its work and not to amplify the voice of the local attendees through the speakers. If you would have multiple laptops with the speakers and microphones on, you will hear echo’s, and the sound will start feeding back, creating lots of noise.

Amplifying the audio from the online attendees to the people in the physical room is easy, e.g., using some external speakers connected to the laptop. The problem however is with picking up the voice from the attendees in the physical room. In smaller meeting rooms at the university we use table microphones, like the USB Samson UB1 or the analog Philips LFH 9172 which can be daisy-chained. We also have one room with a Polycom video conferencing setup, and are experimenting with microphone arrays for the larger meeting rooms. However, these microphone systems are still quite expensive, not so portable due to the required cabling, and they work best when placed in the middle of a round table with an equal distance to all speakers. I.e., these systems are OK for traditional conference rooms, but not for classrooms or more ad-hoc meeting setups with multiple people in complex spatial arrangements, or when people have to keep a distance from each other.

What if we could give everyone in the room a wireless clip-on lapel microphone? Companies like Sennheiser and Shure have wireless microphone systems for studios and stage performances, but these don’t scale well to a large number of in-person attendees in a classroom or meeting, at least not financially: imagine equipping all kids in a classroom with a €300 microphone.

Shure microfex

Shure microfex

The Shure Microflex wireless conference system provides a solution for relatively flexible setups for conference calls with multiple people on-site and others online. However, it consists of rather bulky wireless gooseneck microphones that are placed on the table in front of the participants. Although being wireless makes it more portable that regular conference systems that have a fixed installation, I don’t think it can be easily taken from one classroom or meeting room to another.

RØDE wireless go

RØDE wireless go

The system I have in mind is perhaps more comparable to the RØDE Wireless GO, which aims at online content creators and consists of a compact clip-on transmitter and a receiver with an analog output that plugs into a camera. The transmitter is to be worn by the presenter or the person being interviewed and has a microphone built-in. Alternatively, you can connect a separate lapel microphone through a 3.5 mm jack plug. The system operates in the 2.4 GHz range, and according to the specifications you can use up to 8 systems in the same location. However, note that this would then consist of 8 transmitters/microphones and 8 receivers, whereas I am looking for a solution with many microphones connected to a single receiver, without an audio mixing panel.

Shure ULX-D digital wireless system

Shure ULX-D digital wireless system

A more professional system that shares some similarities with what I have in mind is the Shure ULX-D digital wireless system. This comes with a bodypack and handheld microphone for mobile use, and a gooseneck or boundary microphone for use on a table. It also includes various receivers, with up to four channels. Multiple systems can be combined and using a rather fancy assignment/management system for the frequencies at which the devices operate, it can scale to a large number of microphones.

2 thoughts on “Wireless classroom conference microphone system – #1

  1. Robert Post author

    Thanks. Let me post a short reply here right now, there will be more in a follow up post.

    I started off exploring this SPH0645 microphone module with a LOLIN32 and with an Huzzah32 ESP-32 board. I2S was not too hard to implement, but it was quite a puzzle to get the order of the bits in the audio stream correct. However, the SPH0645 module has issues with the ESP-32 implementation of I2S, which appear to cause strong distortions (bits being misaligned) at larger volumes. Then I tested a module with an INMP441 microphone, which was easier to implement and decypher.

    I now have a working prototype with two ESP-32 modules, both with a microphone. They send packets of uncompressed 760 samples 16-bits audio over TCP; this was chosen to stay under the 1500 bytes MTU. A small Python script on a Raspberry Pi receives the packets, sums the audio from the two streams, and sends it to a Hifiberry sound card. I also tried UDP, but quicly realized that there will be too many packet collisions and that implementing my own UDP acknowledge-or-resend mechanism would be a lot of work. The delay with TCP is considerably larger than with UDP, but the stream is more constant and does not break up so often.

    I am waiting for more ESP-32 modules to arrive, and for more microphones. With those the next step is to check whether it scales to a larger number. I anticipate that I will have to implement some form of compression to reduce bandwith usage, and that I’ll have to implement some form of audio threshold detection so that the constant soft noise picked up by the microphone does not get transmitted.


Leave a Reply

Your email address will not be published. Required fields are marked *