Faits: A. A._ a déposé une plainte pénale contre un médecin qui l'avait fait hospitaliser dans un établissement psychiatrique. Dans le cadre de cette procédure, il a requis l'assistance judiciaire gratuite. Par décision du 12 juillet 2011, le Ministère public de l'arrondissement de la Côte a rejeté cette requête. Le 18 juillet 2011, A._ a contesté cette décision devant la Chambre des recours pénale du Tribunal cantonal du canton de Vaud (ci-après: le Tribunal cantonal). Le même jour, A._ a adressé une demande de récusation au Procureur du Ministère public de l'arrondissement de la Côte. Par courrier du 19 juillet 2011, le magistrat visé a transmis la requête au Tribunal cantonal, en précisant qu'il s'opposait à la demande de récusation. Le dossier ne permet pas de déterminer si ce courrier a été communiqué à A._. Par arrêt du 30 août 2011, le Tribunal cantonal a rejeté tant la demande de récusation que le recours contre la décision du 12 juillet 2011. Il a considéré que ce recours était manifestement mal fondé et que le Ministère public avait refusé à juste titre l'assistance judiciaire compte tenu des faibles chances de succès de la cause. B. Agissant par la voie du recours en matière pénale, A._ demande au Tribunal fédéral d'annuler cet arrêt. Il se plaint d'un déni de justice et d'une violation de son droit d'être entendu. Il requiert en outre l'octroi de l'assistance judiciaire. Le Tribunal cantonal a présenté des observations, s'en remettant à justice sur le sort du recours. Le Ministère public ne s'est pas déterminé. Le recourant a renoncé à formuler des observations complémentaires.