2023-03-02 (Th) EWC_Box Mode0 Pseudo-random generation

I imported the core EWC functions that generate pseudo-random notes based on musical scales. I printed the values to my serial port to confirm they were coming at the default rate and were prandom numbers instead of all zeros or large erratic numbers. I routed the values to a MIDI command that talked to the synthesizer, and I heard my notes through a speaker! None of the adjustments were in place, so the system created two messages per second at default volume.

I programmed the blue potentiometer to adjust the velocity from 0 - 127 and confirmed that I could change the volume at will. I worked on the second potentiometer to control the "percent chance to play," which I wrote a function to calculate. The blue encoder controlled tempo based on my previous project's min and max I. I reconsidered and had it control "notes per minute," which is the tempo's reciprocal in this project. I was not going to put the potentiometer values on the screen since I can tell their value at a glance, but I added numeric values next to their labels, then did the same for the encoders.

Two encoders control the upper and lower pitch bounds, and I added a verification so they cannot cross. Both values can be equal, and the algorithm should hover around that point with all subsequent notes. The final addition was a feature that let me change instruments and display the name on the screen. You can see "Ocarina" in red on the left of the example picture.
Mode0 screen

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

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.