Il ne sera pas perçu de frais judiciaires (cf.art. 64 al. 1 LTF). Par ces motifs, le Tribunal fédéral prononce : 1. Le recours est rejeté. 2. La requête d'assistance judiciaire est admise. 2.1. Il n'est pas perçu de frais judiciaires. 2.2. Me Kathrin Gruber est désignée comme avocate d'office du recourant et une indemnité de 1'000 fr. lui est allouée à titre d'honoraires, à payer par la caisse du Tribunal fédéral.