 #define rNoRecentre    11
 #define rSetDuration   12
 #define rReset         13
+#define rDoubleGliss   14
+// array sizes
 #define rDurlength      5
-#define rLength        14
+#define rLength        25
 /*
  * ranges:
     21-39  set halfturns
     40-112 set startpitch
    120-192 set endpitch
-   203-209 tests
+   203-210 tests
  */
 
 char serialIncoming[rLength];
 char newDuration[rDurlength];
 int halfTurns;
 unsigned int duration;
+unsigned int midDuration;
 float startPitch;
+float midPitch;
 float endPitch;
 boolean dir;
 boolean recentre;

            for (byte d=0; d<rDurlength; d++) {
                newDuration[d] = serialIncoming[++i];
            }
            duration = atoi(newDuration);
        } else if (data == rReset) {
            defaults();
        } else if (data < 21) {
            true;
        } else if (data < 40) {

void defaults() {
    halfTurns = 1;
    duration = 500;
    midDuration = 500;
    startPitch = 72;
    midPitch = 48;
    endPitch = 60;
    dir = true;
    recentre = true;
}
