MIDI Communication Using ESP32-S3-N16R8

Hello,

I’m working on building a pedalboard for my guitar amp
(Boss Katana 50W MkII).

When I connect the amp to my computer via USB, I can change its settings by sending MIDI commands. For example, the computer can switch to channel 1, enable distortion, or set the volume to a specific value.
The data is sent using SysEx messages, which I already have.
For instance, this message sets the amp to channel 1 (tone preset):

F0 41 00 00 00 00 33 12 00 01 00 00 00 01 7E F7

I’d like to replicate this functionality using an ESP32-S3-N16R8
(from AliExpress), since it should be capable of acting as a USB host.
This way, I could use footswitches connected to the ESP to change my amp settings.

I have some basic programming knowledge, but I’m not sure how to approach sending these commands from the ESP32 to the amp. I assume I’ll need a library to configure the ESP32 as a USB host, along with another library that supports MIDI and SysEx communication.

Has anyone done something similar before, or can point me in the right direction to get started?

Once I understand how to send the data, I should be able to handle the rest myself. I’m using a USB-C to USB-B cable to connect the ESP32 to the amp.

Thanks in advance,
Arne

The related topics may be helpfull. Picking one of many similar libraries is a mix of experience and art. Pick one, check the sample sketches provided by the library then pick one close to what you need or a couple and build out from there.