Faits:
A. Le 6 octobre 2010, A._ a déposé une plainte pénale contre La Poste Suisse en raison d'une erreur d'acheminement d'un pli recommandé, constitutive selon lui d'une violation du secret des postes et des télécommunications (art. 321ter CP).
Le 25 février 2011, le Procureur de l'arrondissement de Lausanne a rendu une ordonnance de non-entrée en matière, considérant que les éléments constitutifs de l'infraction n'étaient pas réunis. Par lettre du 8 mars 2011, A._ a renvoyé cette décision au Ministère public demandant des investigations complémentaires et, le cas échéant, une ordonnance de classement notifiée dans les formes.
Par jugement du 14 mars 2011, la Chambre des recours pénale du Tribunal cantonal vaudois a considéré la lettre précédente comme un recours, et l'a rejeté, aucun indice ne permettant de penser qu'il y ait eu violation intentionnelle du secret postal.
Par arrêt du 14 juin 2011, le Tribunal fédéral a admis le recours formé par A._: la lettre du 8 mars 2011 ne constituait pas un recours, et il appartiendrait au Ministère public d'y répondre formellement. La Chambre des recours pénale a donné suite à cet arrêt le 6 juillet 2011 en renvoyant le dossier au Ministère public afin qu'il réponde à la lettre du 8 mars 2011.
B. Le 16 août 2011, le Procureur de l'arrondissement de Lausanne a indiqué à A._ qu'il n'entendait pas revenir sur son ordonnance de non-entrée en matière, le Ministère public n'étant pas, au surplus, l'autorité de surveillance de La Poste.
Le 22 août 2011, A._ a demandé la récusation du Ministère public. Il estimait que la lettre du 16 août 2011 ne constituait pas une décision formelle, et que le procureur paraissait protéger les auteurs de l'infraction.
Par arrêt du 8 septembre 2011, la Chambre des recours pénale a rejeté la demande de récusation. L'art. 56 let. b CPP n'était pas applicable, le procureur étant intervenu dans la même cause. Il n'y avait pas non plus d'indice de partialité, le magistrat n'ayant aucune raison de camoufler d'éventuelles infractions commises par La Poste.
C. Par acte du 10 octobre 2011, A._ forme un recours contre ce dernier arrêt, dont il demande l'annulation. Subsidiairement, il conclut à la récusation du Tribunal cantonal et de la Chambre d'appel pénale, ainsi qu'à l'annulation des décisions des 9 septembre 2010 et 6 juillet 2011. Il requiert également l'assistance judiciaire et la désignation d'un avocat, subsidiairement une dispense de l'avance de frais.
Le Chambre des recours se réfère à son arrêt. Le Ministère public conclut au rejet du recours.
Considérant en droit:
1. Conformément aux art. 78 et 92 al. 1 LTF, une décision relative à la récusation de magistrats dans la procédure pénale peut faire immédiatement l'objet d'un recours en matière pénale.
1.1 L'auteur de la demande de récusation a qualité pour agir (art. 81 al. 1 LTF). Le recourant a agi dans le délai de trente jours prescrit à l'art. 100 al. 1 LTF. La décision attaquée est rendue en dernière instance cantonale, au sens de l'art. 80 LTF.
1.2 Le recourant demande non seulement l'annulation de l'arrêt attaqué, mais aussi la récusation du Tribunal cantonal ou de la Chambre des recours pénale. Une telle conclusion est nouvelle, et n'a pas fait l'objet d'une procédure de récusation ordinaire, soumise le cas échéant à une autorité cantonale. Elle est, en tant que telle, irrecevable (art. 99 al. 2 LTF). On pourrait certes penser que le recourant invoque ses motifs de récusation pour obtenir l'annulation de l'arrêt cantonal. Comme on le verra ci-dessous (consid. 3), une telle argumentation, pour autant qu'elle soit recevable, doit être écartée. Les conclusions tendant à l'annulation des décisions prises dans le cadre de la procédure pénale sont elles aussi irrecevables puisqu'elles dépassent le cadre du présent litige, limité à la récusation du Ministère public.
2. Le recourant reprend ses griefs à l'encontre du Ministère public. Il estime qu'en vertu de l'arrêt du Tribunal fédéral, celui-ci devait répondre par une décision susceptible de recours à la lettre du 8 mars 2011, laquelle faisait état de faits nouveaux susceptibles d'aboutir à une réouverture de l'enquête. La réponse du 16 août 2011 éluderait l'obligation de rendre une décision formelle, le procureur faisant obstruction à l'enquête afin de protéger le concepteur du système de distribution.
2.1 La cour cantonale a écarté la demande de récusation en considérant, d'une part, que l'art. 56 let. b CPP ne s'appliquait pas (le procureur étant intervenu au même titre que précédemment) et, d'autre part, que les soupçons de partialité au sens de l'art. 56 let. f CPP étaient infondés. Le recourant ne critique pas la première considération, au demeurant conforme au texte de l'art. 56 let. b CPP. S'agissant de la seconde, le recourant reprend ses griefs à l'égard du procureur, qui consistent pour l'essentiel en une critique de la décision de non-entrée en matière et du refus de tenir compte de faits nouveaux. Il estime également que la réponse du 16 août 2011 ne constituerait pas une décision formelle satisfaisant aux exigences du Tribunal fédéral, et que rien ne justifierait la compétence du Procureur de l'arrondissement de Lausanne.
2.2 Selon l'art. 56 let. f CPP, toute personne exerçant une fonction au sein d'une autorité pénale est tenue de se récuser lorsque d'autres motifs, notamment un rapport d'amitié étroit ou d'inimitié avec une partie ou son conseil juridique, sont de nature à la rendre suspecte de prévention. A l'instar de l'art. 34 al. 1 let. e LTF, il s'agit d'une clause générale recouvrant tous les motifs de récusation non expressément prévus aux lettres précédentes de l'art. 56 CPP. Elle permet d'exiger la récusation d'un magistrat dont la situation ou le comportement est de nature à faire naître un doute sur son impartialité (ATF 126 I 68 consid. 3a p. 73). Elle n'impose pas la récusation seulement lorsqu'une prévention effective est établie; il suffit que les circonstances donnent l'apparence de la prévention et fassent redouter une activité partiale du magistrat. Seules les circonstances constatées objectivement doivent être prises en considération; les impressions purement individuelles d'une des parties au procès ne sont pas décisives (ATF 136 III 605 consid. 3.2.1 p. 608; 134 I 20 consid. 4.2 p. 21; 131 I 24 consid. 1.1 p. 25; 127 I 196 consid. 2b p. 198).
2.3 Dans son arrêt du 14 juin 2011, le Tribunal fédéral a invité le Ministère public à répondre formellement à la lettre du 8 mars 2011, celle-ci ne pouvant être considérée comme un recours. Contrairement à ce que soutient le recourant, il n'a pas été précisé que cette réponse devait revêtir le caractère d'une décision susceptible de recours. Le Ministère public a dès lors satisfait à l'arrêt du Tribunal fédéral en indiquant au recourant, par simple lettre, qu'il ne pouvait revenir sur une décision entrée en force. La possibilité d'une telle réponse était d'ailleurs clairement évoquée dans l'arrêt du 14 juin 2011 (consid. 2.2).
Les autres griefs du recourant concernent le bien-fondé de la décision de non-entrée en matière, le refus de prendre en compte des faits nouveaux et la question de la compétence locale. Ils ne sauraient fonder un soupçon de parti pris. En effet, selon la jurisprudence, les actes de procédure erronés commis par un magistrat doivent être réparés par les voies ordinaires de recours, et non par le biais d'une demande de récusation (ATF 116 Ia 135 consid. 3a p. 138). Comme le relève la cour cantonale, le recourant ne fournit aucun indice objectif permettant, comme l'exige l'art. 58 al. 1 CPP, de remettre en cause l'impartialité du procureur de manière à tout le moins plausible. C'est dès lors à juste titre que la demande de récusation a été rejetée.
3. Le recourant prétend aussi que la cour cantonale serait récusable, en tant qu'autorité de surveillance de l'office de poursuites mis en cause par la plainte pénale. Point n'est besoin d'examiner la valeur de cet argument. En effet, selon un principe général concrétisé à l'art. 58 CPP, la partie qui entend récuser une autorité doit présenter sa demande sans délai, et en particulier sans attendre l'issue de la procédure. En l'espèce, le recourant s'est adressé au Tribunal cantonal puis a procédé devant cette juridiction sans demander une quelconque récusation. Il n'est dès lors pas admis à soulever un tel grief après le prononcé de l'arrêt cantonal. Par ailleurs, si la cour cantonale a, comme le lui reproche le recourant, invité le procureur à se déterminer sur la demande de récusation, elle n'a fait qu'appliquer l'art. 58 al. 1 CPP et l'on ne saurait y voir un indice de partialité.
4. Sur le vu de ce qui précède, le recours doit être rejeté, dans la mesure où il est recevable. La démarche du recourant apparaissant dépourvue de chance de succès, l'assistance judiciaire ne peut lui être accordée. Les frais judiciaires sont mis à la charge du recourant, conformément à l'art. 66 al. 1 LTF. Ils seront réduits pour tenir compte de la situation financière du recourant.
Par ces motifs, le Tribunal fédéral prononce:
1. Le recours est rejeté dans la mesure où il est recevable.
2. La demande d'assistance judiciaire est rejetée.
3. Les frais judiciaires, arrêtés à 500 fr., sont mis à la charge du recourant.
4. Le présent arrêt est communiqué au recourant, au Ministère public central et au Tribunal cantonal du canton de Vaud, Chambre des recours pénale.
Lausanne, le 2 décembre 2011
Au nom de la Ire Cour de droit public
du Tribunal fédéral suisse
Le Président: Fonjallaz
Le Greffier: Kurz