diff --git a/midi_test.c b/midi_test.c
index abfff2ebd52e59db6fee9707ac796c6b555f9470..442c22c39bba03f16a1bf100a165f6e6354b3cf2 100644
--- a/midi_test.c
+++ b/midi_test.c
@@ -29,6 +29,7 @@
 #define pin_test(pins,pin) (pins & pin) // test for port pin
 #define bit_test(byte,bit) (byte & (1 << bit)) // test for bit set
 #define bit_delay_time 8.5 // bit delay for 115200 with overhead
+//#define bit_delay_time 31.82 // bit delay for 31250 with overhead
 #define bit_delay() _delay_us(bit_delay_time) // RS232 bit delay
 #define half_bit_delay() _delay_us(bit_delay_time/2) // RS232 half bit delay
 #define char_delay() _delay_ms(10) // char delay
@@ -40,84 +41,65 @@
 #define serial_pin_out (1 << PA1)
 
 #define led_pin (1 << PB2)
-#define input_pin (1 << PA5)
 
 void put_char(volatile unsigned char *port, unsigned char pin, char txchar) {
-   //
-   // send character in txchar on port pin
-   //    assumes line driver (inverts bits)
-   //
-   // start bit
-   //
-   clear(*port,pin);
-   bit_delay();
-   //
-   // unrolled loop to write data bits
-   //
-   if bit_test(txchar,0)
-      set(*port,pin);
-   else
-      clear(*port,pin);
-   bit_delay();
-   if bit_test(txchar,1)
-      set(*port,pin);
-   else
-      clear(*port,pin);
-   bit_delay();
-   if bit_test(txchar,2)
-      set(*port,pin);
-   else
-      clear(*port,pin);
-   bit_delay();
-   if bit_test(txchar,3)
-      set(*port,pin);
-   else
-      clear(*port,pin);
-   bit_delay();
-   if bit_test(txchar,4)
-      set(*port,pin);
-   else
-      clear(*port,pin);
-   bit_delay();
-   if bit_test(txchar,5)
-      set(*port,pin);
-   else
-      clear(*port,pin);
-   bit_delay();
-   if bit_test(txchar,6)
-      set(*port,pin);
-   else
-      clear(*port,pin);
-   bit_delay();
-   if bit_test(txchar,7)
-      set(*port,pin);
-   else
-      clear(*port,pin);
-   bit_delay();
-   //
-   // stop bit
-   //
-   set(*port,pin);
-   bit_delay();
-   //
-   // char delay
-   //
-   bit_delay();
-   }
-
-void put_string(volatile unsigned char *port, unsigned char pin, char *str) {
-   //
-   // print a null-terminated string
-   //
-   static int index;
-   index = 0;
-   do {
-      put_char(port, pin, str[index]);
-      ++index;
-      } while (str[index] != 0);
-   }
-
-#define input_pin (1 << PA5)
+    // send character in txchar on port pin
+    //    assumes line driver (inverts bits)
+    //
+    // start bit
+    clear(*port,pin);
+    bit_delay();
+
+    // unrolled loop to write data bits
+    if bit_test(txchar,0)
+       set(*port,pin);
+    else
+       clear(*port,pin);
+    bit_delay();
+    if bit_test(txchar,1)
+       set(*port,pin);
+    else
+       clear(*port,pin);
+    bit_delay();
+    if bit_test(txchar,2)
+       set(*port,pin);
+    else
+       clear(*port,pin);
+    bit_delay();
+    if bit_test(txchar,3)
+       set(*port,pin);
+    else
+       clear(*port,pin);
+    bit_delay();
+    if bit_test(txchar,4)
+       set(*port,pin);
+    else
+       clear(*port,pin);
+    bit_delay();
+    if bit_test(txchar,5)
+       set(*port,pin);
+    else
+       clear(*port,pin);
+    bit_delay();
+    if bit_test(txchar,6)
+       set(*port,pin);
+    else
+       clear(*port,pin);
+    bit_delay();
+    if bit_test(txchar,7)
+       set(*port,pin);
+    else
+       clear(*port,pin);
+    bit_delay();
+
+    // stop bit
+    set(*port,pin);
+    bit_delay();
+
+    // char delay
+    bit_delay();
+}
+
 
 int main(void) {
     // Set the clock prescaler to 1.
@@ -141,7 +123,7 @@ int main(void) {
         // If it's been 10ms, reset the timer and increment count.
         if (TCNT0 >= 200) {
             TCNT0 = 0;
-            ++count
+            ++count;
 
             // When count reaches 100, turn the LED on and send a note on command.
             if (count == 100) {
@@ -152,9 +134,11 @@ int main(void) {
             }
 
             // When count reaches 200, turn the LED off and send a note off command.
-            else if (++count == 200) {
+            else if (count == 200) {
                 PORTB &= ~led_pin;
-                put_char(&serial_port, serial_pin_out, 144); // note off
+                put_char(&serial_port, serial_pin_out, 128); // note off
+                put_char(&serial_port, serial_pin_out, 70); // note (A4)
+                put_char(&serial_port, serial_pin_out, 100); // velocity
                 count = 0;
             }
         }