Hi, I tried running your sketches, had to comment out all the audio parts that I don’t have the libraries. Couldn’t get the start to work with the 'A’s going back and forth. It can be difficult to get that kind of logic to work in all circumstances. In the Ard code you are using serial for 2 purposes: Serial.write(plantMidi); - characters transmitted to Processing, Serial.print("Plant value: "); - information messages. Both these outputs will go to the Processing sketch. This is usually not good unless you’ve specially designed the Processing code to select out what it wants and discard the information messages.
You could try this to work out what’s going on. At each point in the logic of serialEvent(), after each {, insert a statement like print(“a”); (then b,c etc. obviously). From the pattern of what’s printed out you’ll see what’s happening.
Another option would be to try a working example I made. I’m reasonably sure it will work first time. If you like it you could merge parts of your sketches into it.