2025-03-26 (W) EWC_Soother Bluetooth connection

I implemented the Bypass mode, a quick matter of adding an if-else decision at the beginning of my modifications. The next problem to tackle was the Bluetooth connection. I was unsure if my module (ESP32-WROOM) could do wireless MIDI, but I knew it did not support USB-MIDI. I tried two officially supported libraries, but the first one to compile properly was Control Surface. The example would not work by itself, but when I added it to my code, I saw some signals, which I suspect was an issue where my code and the new library were fighting for who saw a signal first and losing half of the time.

I removed the code that fought with mine and searched the other examples for MIDI commands. I found them, but they were all abstracted into functions like noteOn, noteOff, and changeInstrument. I wanted one that passed arbitrary integers without knowing what they did, but no luck. I added the note commands to my code, and I will have to decide on the other important ones later unless I can find a way to pass any data directly.

I did a torture test with the EWC_Soother's scaling function, but they were unreliable when I sent two noteOff commands in quick succession. I checked the output from the serial feedback, and it said it was sending the correct notes, but I put a MIDI tester on my phone to receive the messages, and they did not agree. The last two messages were both NoteOff(1, 64, 103), but one should have been 60 instead of 64, leaving me with stuck notes.
MIDI monitor

The rest of the posts for this project have been arranged by date.
First time here?

Completed projects from year 1
Completed projects from year 2
Completed projects from year 3
Completed projects from year 4
Completed projects from year 5
Completed projects from year 6
Completed projects from year 7
Completed projects from year 8
Completed projects from year 9
Completed projects from year 10
Completed projects from year 11

Disclaimer for http://24hourengineer.blogspot.com and 24HourEngineer.com

This disclaimer must be intact and whole. This disclaimer must be included if a project is distributed.

All information on this blog, or linked by this blog, is not to be taken as advice or solicitation. Anyone attempting to replicate, in whole or in part, is responsible for the outcome and procedure. Any loss of functionality, money, property, or similar, is the responsibility of those involved in the replication.

All digital communication regarding the email address 24hourengineer@gmail.com becomes the intellectual property of Brian McEvoy. Any information contained within these messages may be distributed or retained at the discretion of Brian McEvoy. Any email sent to this address, or any email account owned by  Brian McEvoy, cannot be used to claim property or assets.

Comments to the blog may be utilized or erased at the discretion of the owner. No one posting may claim property or assets based on their post.

This blog, including pictures and text, is copyright to Brian McEvoy.
2025-03-25

Comments