 // its absolute position (there is no feedback from the motors). Note that the selection of speed
 // values and step sizes are chosen based on the resulting step frequencies the controller must 
 // produce and on resonances the motors might exhibit.   
-byte coarseFine=2; //boot up in a fine mode
 unsigned short maxSpeed[4]={3.5,25,100,750}; //defined in microns per second
 
 

//
// The setup function performs basic operations such as defining the DIO direction of each pin, 
// connecting to a serial device, etc. 
HardwareSerial* SerialComms;
#define HARDWARE_SERIAL_PORT Serial1

void setup() {

  //Initialise loop counters

//
//
// The properties of each axis are defined as separate variables (mostly arrays with a length 
// equal to the number of axes). You can have up 4 axes. 

const byte numAxes=3; //Set this to the number of axes on you system 

// axisPresent
// Allows particular axes to be skipped. Useful for testing. 1 means present. 0 means absent. 
// e.g. if you have one axis the following vector might be {1,0,0,0} Although {0,1,0,0} should 
// also work
bool axisPresent[maxAxes]={1,1,1,0}; 


// gearRatio
// Micrometer gear ratios on X,Y,Z in microns per revolution. Unused axes can have any number. 
unsigned short gearRatio[maxAxes]={635,635,250,635}; 


// fullStep
