   }
 }
 
+void initLCD() {
+  lcd.createChar(0, downline);
+  lcd.createChar(1, midline);
+
+  lcd.begin(16, 2);
+
+  // write top of logo
+  lcd.write(byte(0));
+  lcd.write(byte(1));
+  lcd.write(byte(0));
+
+  // set to bottom
+  lcd.setCursor(0, 1);
+
+  // write bottom of logo
+  lcd.write(byte(0));
+  lcd.write(byte(1));
+  lcd.write(byte(0));
+
+  lcd.setCursor(3, 0);
+
+  lcd.print("miscr v0.11");
+
+  lcd.setCursor(3, 1);
+
+  lcd.print("pre-release");
+
+  delay(1000);
+
+  lcd.clear();
+  lcd.setCursor(0, 0);
+  lcd.print("miscr ready.");
+}
+
 void setup() {
   // Begin serial connection
   Serial.begin(115200);
 
-  // Print welcome message
+  // Print welcome message to serial connection
   Serial.println("miscr v0.1 [enter \"?\" for commands and \"$\" for status]\n");
+
+  // Initialise LCD
+  initLCD();
 
   // Initialise motors
   sX.begin();

/* limitations under the License.                                           */
/****************************************************************************/

// Taken from the RAMPS test code file...
#define SDPOWER            -1
#define SDSS               53


#define PS_ON_PIN          12
#define KILL_PIN           -1

byte downline[8] = {
  B10000,
  B01000,
  B10100,
  B01010,
  B00101,
  B00010,
  B00001,
};

byte midline[8] = {
  B10101,
  B10101,
  B10101,
  B10101,
  B10101,
  B10101,
  B10101,
};

/*
 * Alias for the digitalWrite and pinMode functions
