محمد میرزا در زمان ولیعهدى پدر خود عباس میرزا مأمور فتح هرات گردید و در حین محاصره هرات به علت فوت عباس میرزا، هرات را رها کرد و به مشهد رفت و از آنجا به دستور فتحعلى شاه عازم پایتخت گردید.فتحعلى شاه به پاس خدمات فرزند رشید خود عباس میرزا و علیرغم تمایلات فرزندان متعدد دیگر خود ، محمد میرزا را به ولیعهدى برگزید و او را با عدهاى سپاه به تبریز فرستاد و حکمرانى آذربایجان را به او سپرد.پس از کشته شدن میرزا ابو القاسم قائممقام(صدراعظم ایران)به امر محمد شاه،بعضى از حکام محلى خراسان سر به طغیان برداشتند و ترکمانان از راه گرگان به حمله و تهاجم مبادرت ورزیدند.