Hiya Dave,

Glad to see I didn't scare you off.

Here's a couple things that might be causing problems, but I don't really see one that will cause it not to work at all.

The sw1on: etc. sections make tests that require the value to be either 0 or 127. Any other value will cause that section to stop functioning.

Since the variables can be any value on power-up, nothing will ever happen. If you put a CLEAR statement at the top of the program it would fix that, but it might be better to change the way it works so that odd values won't cause a problem.

Also in this section:
Code:
ADCIN 5,C1                      ' read expression pot and place value in C1
exp = C1 / 8                    ' convert reading to a midi value from 0-127
If exp <> expout Then           ' check to see if the value has changed
   exp = C1
   HSEROUT [176,11,expout]      ' send exptession out serial port as midi information
Endif
I think you wanted it like this...
Code:
ADCIN 5,C1                      ' read expression pot and place value in C1
exp = C1 / 8                    ' convert reading to a midi value from 0-127
If exp <> expout Then           ' check to see if the value has changed
   expout = exp
   HSEROUT [176,11,expout]      ' send exptession out serial port as midi information
Endif
That's all I see at this point, but I'm still looking.

Best regards,
&nbsp;&nbsp;&nbsp;Darrel