  * SENSOR DEFINITIONS.
  * =============================================================================
  */
-// Commands that will be sent to the Arduino to request data from sensors.
-const char* DEPTH_SENSOR_LABEL = "depthReading"; // Used to request data from the depth sensor.
-
-DepthSensor depthSensor;
+DepthSensor depthSensor = DepthSensor("depthReading",15); // For now a mock sensor.
+DepthSensor depthSensor2 = DepthSensor("depthReading2",16); // Another mock sensor to make sure the message concatenation works well.
 
 /* =============================================================================
  * TELECOMMAND PROTOCOL DEFINITION.

void setup(void)
/* Prepare to listen to commands over serial and start everything up. */
{
//TODO: do some system checks, like battery level, connections etc.

//TODO: add more motors.
	engine1 = BrushlessDCMotor(ENGINE_LABEL_1, 100, 2200, 800, MOTOR_1_PIN, RELAY_1_PIN); // These pule widths correspond to the currently selected electronic speed controller (ESC) - Turningy EA-
	Serial.begin(engine1.serialBaudRate); // Start serial comms at the same baud rate as the engines.
		
	engine1.setPulseWidth(1100); // Arm the motor by setting the control at zero throttle position.
	delay(25000);
	Serial.println("Armed the motors.");

//TODO: initialise all the sensors etc.
	depthSensor = DepthSensor("depthReading",15);
	
	Serial.println("ROV listening to commands."); //TODO: could add VERSION, ROVMODEL etc. consts somewhere so we know what ROV we're using.
}

const char DATA_DELIMITER[2] = ","; // Splits the command name and value. For some reason has to be size 2.

Module* actuators[] = {&engine1, &engine2, &engine3, &engine4};
Module* sensors[] = {&depthSensor, &depthSensor2};

/* =============================================================================
 * FUNCTIONS DEFINITIONS.
