diff --git a/ProyectoAndroid/ChessTrack/src/uy/edu/fing/chesstrack/ChessTrackActivity.java b/ProyectoAndroid/ChessTrack/src/uy/edu/fing/chesstrack/ChessTrackActivity.java
index 74ff1a201e66a2e5511a1cbfff015314a83398c8..85591d80a12eeedfaf9f33692f6030a18ca8d9a4 100644
--- a/ProyectoAndroid/ChessTrack/src/uy/edu/fing/chesstrack/ChessTrackActivity.java
+++ b/ProyectoAndroid/ChessTrack/src/uy/edu/fing/chesstrack/ChessTrackActivity.java
@@ -4,6 +4,7 @@ package uy.edu.fing.chesstrack;
 import org.opencv.android.BaseLoaderCallback;
 import org.opencv.android.CameraBridgeViewBase;
 import org.opencv.android.CameraBridgeViewBase.CvCameraViewListener;
+import org.opencv.android.JavaCameraView;
 import org.opencv.android.LoaderCallbackInterface;
 import org.opencv.android.OpenCVLoader;
 import org.opencv.core.Mat;
@@ -25,8 +26,8 @@ public class ChessTrackActivity extends Activity implements CvCameraViewListener
 
 	private static final String TAG = "CHESSTRACK::Activity";
 
-	//	private CameraBridgeViewBase mOpenCvCameraView;
 	private CameraBridgeViewBase mOpenCvCameraView;
+	//private JavaCameraView mOpenCvCameraView;
 
 	private Adquisicion adq;
 	private Calibracion calibrar;
@@ -68,7 +69,7 @@ public class ChessTrackActivity extends Activity implements CvCameraViewListener
 		super.onCreate(savedInstanceState);
 		getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
 		setContentView(R.layout.chess_track_layout);
-		mOpenCvCameraView = (CameraBridgeViewBase) findViewById(R.id.chess_track_layout);
+		mOpenCvCameraView = (JavaCameraView) findViewById(R.id.chess_track_layout);
 		mOpenCvCameraView.setVisibility(SurfaceView.VISIBLE);
 		mOpenCvCameraView.setCvCameraViewListener(this);
 
@@ -148,8 +149,6 @@ public class ChessTrackActivity extends Activity implements CvCameraViewListener
 	public void onCameraViewStopped() {
 	}
 
-
-
 	@Override
 	public Mat onCameraFrame(Mat inputFrame) {
 		// TODO MANEJAR ESTADOS
@@ -162,9 +161,9 @@ public class ChessTrackActivity extends Activity implements CvCameraViewListener
 			Log.i(TAG, "calibrada");
 
 			inputFrame = adq.processFrame(inputFrame);
-			//			Modelador.getInstance().dividirTablero(inputFrame);
-			//			return Modelador.getInstance().dibujarEscaque(2, 3);
-			return inputFrame;
+			Modelador.getInstance().dividirTablero(inputFrame);
+			return Modelador.getInstance().dibujarEscaque();
+			//return inputFrame;
 		}
 
 		return inputFrame;
diff --git a/ProyectoAndroid/ChessTrack/src/uy/edu/fing/chesstrack/modulomodelador/Modelador.java b/ProyectoAndroid/ChessTrack/src/uy/edu/fing/chesstrack/modulomodelador/Modelador.java
index 567328c35d92a7f96d8a0bd4e298c0027b5157f7..1e796315a3c3c65d69af01a755cf21bfc267375c 100644
--- a/ProyectoAndroid/ChessTrack/src/uy/edu/fing/chesstrack/modulomodelador/Modelador.java
+++ b/ProyectoAndroid/ChessTrack/src/uy/edu/fing/chesstrack/modulomodelador/Modelador.java
@@ -53,10 +53,20 @@ public class Modelador {
 		}
 	}
 
-	public Mat dibujarEscaque(int i, int j){
+	public Mat dibujarEscaque(){
 		Mat tmp = Mat.zeros(Calibracion.getInstance().getImagenCalibrada().size(), CvType.CV_8UC4);
-		Mat subm = tmp.submat(new Rect(new Point(0,0) ,escaques[i][j].size()));
-		escaques[i][j].copyTo(subm);
+		Mat subm ; //tmp.submat(new Rect(new Point(0,0) ,escaques[i][j].size()));
+		//escaques[i][j].copyTo(subm);
+		int pos_x = 0;
+		int pos_y = 0;
+		for (int i = 0; i < CANT_FILAS; i++){
+			for (int j = 0; j < CANT_FILAS; j++){
+				subm = tmp.submat(new Rect(new Point(pos_x,pos_y) ,escaques[i][j].size()));
+				escaques[i][j].copyTo(subm);
+				pos_x = (int) (escaques[i][j].size().width*i +1);
+				pos_y = (int) (escaques[i][j].size().height*j +1);
+			}
+		}
 		return tmp;
 	}