             lcd.rightToLeft();
             break;
 
+            // reserved for lcd 54 - 74
 
-    }}
-
-
-int char2i(char x){
-    return x - '0';
-}
-
-void parseRun(String cmd){
-    char func = cmd.charAt(0);
-    switch (func){
-        // i2c 16x2 charactors lcd api
-        case 'x':
-            lcdParse(cmd.substring(1));
-            break;
             //---------------
             // motionLogging
-        case 'b':
+        case 75:
             // inverse byte to sink active-low LED
             digitalWrite(motionLED, !cmd.charAt(1));
             break;
-        case 'm':
+        case 76:
             Serial.write(digitalRead(motionSensor));
             break;
 
             // -------------------------
             // 7 Segment display controll
             //character
-        case 'a':
-            lc.setChar(char2i(cmd.charAt(1)), char2i(cmd.charAt(2)), cmd.charAt(3), char2i(cmd.charAt(4)));
+        case 77:
+            lc.setChar(cmd.charAt(1), cmd.charAt(2), cmd.charAt(3), cmd.charAt(4));
             break;
-            //digit d0F1 (digit)(value)(dot)
-        case 'd':
-            lc.setDigit(char2i(cmd.charAt(1)), char2i(cmd.charAt(2)), strtol(cmd.substring(3,4).c_str(), NULL, 16), cmd.charAt(4) - '0');
+        case 78:
+            lc.setDigit(cmd.charAt(1), cmd.charAt(2), cmd.charAt(3), cmd.charAt(4));
             break;
 
-        case 'r': 
-            lc.setRow(char2i(cmd.charAt(1)), char2i(cmd.charAt(2)), strtol(cmd.substring(3).c_str(), NULL, 16));
+        case 79: 
+            lc.setRow(cmd.charAt(1), cmd.charAt(2), cmd.charAt(3));
             break;
 
-        case 'c':
-            lc.setColumn(char2i(cmd.charAt(1)), char2i(cmd.charAt(2)), strtol(cmd.substring(3).c_str(), NULL, 16));
+        case 80:
+            lc.setColumn(cmd.charAt(1), cmd.charAt(2), cmd.charAt(3));
             break;
 
-        case 'l': 
-            lc.setLed(char2i(cmd.charAt(1)), char2i(cmd.charAt(2)), char2i(cmd.charAt(3)), char2i(cmd.charAt(4)));
-            break;
-        case 's':
-            //int state = cmd.chatAt(2).
-            lc.shutdown(char2i(cmd.charAt(1)), char2i(cmd.charAt(2)));
-            lc.setDigit(char2i(cmd.charAt(1)), 1, 10, true);
+        case 81: 
+            lc.setLed(cmd.charAt(1), cmd.charAt(2), cmd.charAt(3), cmd.charAt(4));
             break;
 
-            //intensity
-        case 'i':
-            lc.setIntensity(char2i(cmd.charAt(1)), cmd.substring(2).toInt());
+        case 82:
+            lc.shutdown(cmd.charAt(1), cmd.charAt(2));
+            break;
+
+        case 83:
+            lc.setIntensity(cmd.charAt(1), cmd.charAt(2));
             break;
 
             //clear
-        case '0':
-            lc.clearDisplay(char2i(cmd.charAt(1)));
+        case 84:
+            lc.clearDisplay(cmd.charAt(1));
             break;
 
         default:
-            Serial.println(char2i(cmd.charAt(2)));
+            Serial.print("ERR");
             break;
     }
 }

}

void lcdSetup(){
    lcd.begin(16,2);
    lcd.print("HELLO");



#include "LedControl.h"
#include <Wire.h>
#include <LiquidCrystal_I2C.h>

// pin to sink LED current from 3.3 v source
