The Expansion Board

This option might be interesting if you want to further experiment with peripherals supported by the ESP32 microcontroller and audio codec. The Glo board sits in the center-top area and is connected by a few wires.

There are connectors for line in and out, micro-SD card slot, power amp for small speaker or two and also MIDI jack with switch that selects between in and out direction. The keypad is capacitive and there is a LED for every key, either independently controllable or configurabe to be associated with the corresponding key and light up when the key is touched. The driver used is CAP8811 from Microchip which has quite a lot of possibilities, like programmable blinking, dimming or breathing effect (more details in the datasheet).

Here is the first demo that demonstrates MIDI Out and Line-in functionality (it actually shows previous iteration of this board, which used a different keypad controller and did not have LEDs). Glo is sending chord progressions to IKM UNO synth and receiving back the sound, mixing it with the generated soundscape.

Other peripherals

The rest is highly experimental. The speaker does not make much sense to use while microphones are active, however if you want to code a "mini piano" channel, it might be interesting to add it. The driver used is PAM8408, 2x3W stereo Class D audio amplifier which is very simple to control.

Because not all required signals are available, the Micro-SD card slot is wired in 1-bit SPI mode, so it does not reach higher transfer rates than about 40-50kB/sec. This does not allow to play or record audio files in WAV format at standard sampling rate but should be enough for loading a few samples from a larger library (up to 32GB cards were tested).

Optional OLED display is driven by I2C bus and has resolution of 128x64 monochromatic pixels. For example this blue or white display is working well.

The picture below shows the bottom side of the board. There is more positions for passive elements but only those which are marked in white rectangles and have value need to be assembled by default (the rest is for alternative functionality, OLED display with inverted power pins or MIDI with inverted signals).

The next picture is a see-through view from the top, it shows where the Glo board is going and what texts are printed on the top side.

Not all signals need to be connected with Glo board, detailed guide will be provided later. The next picture explains all available signals.

Not the easiest build

Before mounting the Glo board on the expansion, you need to turn it into a hedgehog :) Here I used leftover leads cut from some THT elements. The tricky bit is to put them all into their respective holes. It helps to leave them at various lengths so you can slide them where they belong, one by one.

And here is how it looks completely assembled, the top...

...and the bottom side. Bill of material is here.

If you have any questions or suggestions, feel free to discuss on the forum, in the ESP32 Development category.

<< Back to DIY resources