Después de las derrotas del ejército auxiliar en las batallas de Vilcapugio y Ayohuma se evacuó el Alto Perú. El nuevo comandante, José Rondeau, ordenó un nuevo avance, contra la opinión del jefe de la vanguardia, coronel graduado Martín Miguel de Güemes, quien pretendía permanecer a la defensiva. Rondeau estableció el cuartel general de vanguardia en Huacalera, mientras Güemes avanzó con sus fuerzas gauchas hacia Yavi, contando con la colaboración del marqués de Yavi. La disidencia pública de Güemes, quien mantenía un mando semi autónomo sobre sus tropas, minó el prestigio de Rondeau. Este respondió reemplazando a Güemes por el coronel Martín Rodríguez como jefe de la vanguardia, ordenándole que entregara a su sucesor los soldados de la División Salta (los gauchos), pero obtuvo una negativa con el argumento de que la división no era parte del ejército y no estaba al mando de Rondeau.