Faits:
A. Le 30 juin 2011, X._ a déposé plainte pénale à Lausanne pour faux témoignage contre Y._. Lors d'une audience devant le Tribunal des Prud'hommes de l'arrondissement de Lausanne, le 23 novembre 2009, ce dernier avait déclaré qu'à l'occasion d'une séance du 24 octobre 2008 où la résiliation de son contrat de travail lui avait été signifiée, X._ avait refusé de signer la lettre de résiliation; le plaignant affirmait qu'il avait été pris de malaise et qu'aucun document ne lui avait été soumis pour signature.
Par ordonnance du 23 janvier 2012, le Ministère public de l'arrondissement de Lausanne a refusé d'entrer en matière. Le dossier civil contenait une lettre de résiliation datée du 24 octobre 2008, avec un champ pour la signature du destinataire. Le responsable des ressources humaines avait confirmé la tentative de faire signer ce document. Il n'y avait dès lors pas d'indice de faux témoignage.
B. Par arrêt du 17 avril 2012, la Chambre des recours pénale du Tribunal cantonal vaudois a partiellement admis le recours formé par X._, en constatant une violation du principe de célérité, le Ministère public ayant tardé sans raison à rendre sa décision. Pour le surplus, le recours a été rejeté. Les deux témoins ayant participé à la séance du 24 octobre 2008 avaient confirmé que l'intéressé avait quitté les lieux malgré l'invitation à signer la lettre de licenciement. Par note manuscrite sur ce document, l'un d'entre eux avait confirmé que le licenciement avait bien été signifié à l'intéressé. Le plaignant lui- même reconnaissait avoir rapidement quitté les lieux. Il n'y avait pas de faux témoignage et on ne voyait pas quelle mesure d'instruction était encore envisageable.
C. Par acte du 4 juin 2012, X._ forme un recours en matière pénale par lequel il demande l'ouverture d'une instruction pénale, subsidiairement le renvoi de la cause à la cour cantonale - ou à l'autorité de première instance - pour nouvelle décision dans le sens des considérants. Il demande l'assistance judiciaire et, si nécessaire, la nomination d'un avocat d'office.
La Chambre des recours pénale se réfère à sa décision et le Ministère public conclut au rejet du recours.

Considérant en droit:
1. La décision attaquée a été rendue en matière pénale au sens de l'<ref-law>. Elle a un caractère final (<ref-law>) et émane de l'autorité cantonale de dernière instance (<ref-law>). Le recourant a agi en temps utile (<ref-law>).
1.1 Selon l'art. 81 al. 1 let. a et b ch. 5 LTF, la partie plaignante qui a participé à la procédure de dernière instance cantonale est habilitée à recourir au Tribunal fédéral, si la décision attaquée peut avoir des effets sur le jugement de ses prétentions civiles. Constituent de telles prétentions celles qui sont fondées sur le droit civil et doivent en conséquence être déduites ordinairement devant les tribunaux civils. Selon l'<ref-law>, il incombe notamment au recourant d'alléguer les faits qu'il considère comme propres à fonder sa qualité pour recourir (cf. <ref-ruling> consid. 1 p. 356, 249 consid. 1.1 p. 251).
Lorsque, comme en l'espèce, le recours est dirigé contre une décision de non-entrée en matière sur une plainte pénale, il n'est pas nécessaire que la partie plaignante ait déjà pris des conclusions civiles (<ref-ruling> consid. 1.3.1). En revanche, elle doit expliquer dans son mémoire quelles sont ces prétentions et en quoi la décision attaquée pourrait influencer négativement leur jugement, à moins que, compte tenu notamment de la nature de l'infraction alléguée, l'on puisse le déduire directement et sans ambiguïté (<ref-ruling> consid. 2.4 p. 222 et les arrêts cités).
1.2 Le recourant estime que la reconnaissance d'un faux témoignage pourrait lui permettre de remettre en cause la validité du licenciement et d'élever les prétentions civiles correspondantes. Même si un jugement civil a déjà été rendu et confirmé par le Tribunal fédéral (sous réserve du délai de résiliation, porté de deux à trois mois; cf. arrêt 4A_89/2011 du 5 avril 2011), le recourant estime pouvoir en demander la révision. Il ressort toutefois du jugement civil cantonal que l'argument tiré du faux témoignage a été considéré comme tardif, faute pour le recourant d'avoir réagi lors de la déposition litigieuse. Il est dès lors douteux qu'une révision soit envisageable dans un tel cas.
La question peut demeurer indécise car, supposé recevable, le recours devrait de toute façon être rejeté au fond.
2. Le recourant revient longuement sur les circonstances de son licenciement puis sur le déroulement de la procédure devant le Tribunal des Prud'hommes. Il ne ressort toutefois nullement de cet exposé que la cour cantonale aurait établi les faits de manière manifestement inexacte ou en violation du droit. Le Tribunal fédéral est dès lors tenu par les faits tels qu'ils ressortent de l'arrêt attaqué (<ref-law>).
3. Le recourant s'estime en mesure de démontrer que Y._ aurait commis un faux témoignage en prétendant avoir tenté de faire signer au recourant sa lettre de licenciement. Aucune des deux autres personnes présentes à l'entretien n'aurait confirmé la présentation d'une telle lettre ainsi que le refus du recourant de signer ce document. L'une d'entre elle avait inscrit à la main, sur ce même document, que la résiliation du contrat de travail avait été signifiée oralement, sans faire état d'un refus de signer de la part du recourant. L'employeur n'aurait pas non plus invoqué ce fait dans les mois qui ont suivi la réunion. Y._ aurait aussi déclaré ne plus savoir si la lettre de licenciement envoyée ensuite par courrier avait été recommandée, alors qu'il avait lui-même signé ce document.
3. Le recourant s'estime en mesure de démontrer que Y._ aurait commis un faux témoignage en prétendant avoir tenté de faire signer au recourant sa lettre de licenciement. Aucune des deux autres personnes présentes à l'entretien n'aurait confirmé la présentation d'une telle lettre ainsi que le refus du recourant de signer ce document. L'une d'entre elle avait inscrit à la main, sur ce même document, que la résiliation du contrat de travail avait été signifiée oralement, sans faire état d'un refus de signer de la part du recourant. L'employeur n'aurait pas non plus invoqué ce fait dans les mois qui ont suivi la réunion. Y._ aurait aussi déclaré ne plus savoir si la lettre de licenciement envoyée ensuite par courrier avait été recommandée, alors qu'il avait lui-même signé ce document.
3.1 Selon l'<ref-law>, le ministère public rend immédiatement une ordonnance de non-entrée en matière s'il ressort de la dénonciation ou du rapport de police que les éléments constitutifs de l'infraction ou les conditions à l'ouverture de l'action pénale ne sont manifestement pas réunis (let. a). Il peut faire de même en cas d'empêchement de procéder (let. b) ou en application de l'<ref-law> (let. c).
Le principe "in dubio pro duriore" découle du principe de la légalité (art. 5 al. 1 Cst. et 2 al. 2 CPP en relation avec les art. 319 al. 1 et 324 CPP; <ref-ruling> consid. 4.2 p. 91). Il signifie qu'en principe, un classement ou une non-entrée en matière ne peuvent être prononcés par le ministère public que lorsqu'il apparaît clairement que les faits ne sont pas punissables ou que les conditions à la poursuite pénale ne sont pas remplies. Le ministère public et l'autorité de recours disposent, dans ce cadre, d'un pouvoir d'appréciation que le Tribunal fédéral revoit avec retenue. La procédure doit se poursuivre lorsqu'une condamnation apparaît plus vraisemblable qu'un acquittement ou lorsque les probabilités d'acquittement et de condamnation apparaissent équivalentes, en particulier en présence d'une infraction grave (<ref-ruling> consid. 4.1.2 p. 91; <ref-ruling> consid. 2.5 p. 288).
3.2 Lors de l'audition litigieuse, Y._ a déclaré qu'après avoir reçu la nouvelle de son licenciement, le recourant s'était levé assez rapidement, ajoutant: "j'avais devant moi une lettre de licenciement qu'il aurait dû signer. Je lui ai demandé de le faire, il a refusé et a exigé que la suite de l'entretien devrait être mise entièrement par écrit car il se sentait mal. Je lui ai demandé de prendre place, mais il est parti et a été dans son bureau...". Lors de l'audition du même jour, la responsable des ressources humaines a indiqué que le recourant s'était levé au cours de l'entretien, demandant que tout soit mis par écrit, puis déclarant que l'entretien était fini pour lui; Y._ lui avait demandé de s'asseoir. "Il souhaitait lui soumettre la lettre de résiliation. X._ a quitté la salle". Le représentant du service juridique, également présent, a lui aussi confirmé que le recourant avait quitté précipitamment l'entretien. La lettre de résiliation contient par ailleurs un champ destiné à la signature du destinataire, ce qui démontre l'intention de Y._ à cet égard. Elle comporte également une mention manuscrite - signée par les trois personnes présentes - attestant que la résiliation du contrat de travail a bien été signifiée.
Contrairement à ce que soutient le recourant, aucun de ces éléments ne vient infirmer les déclarations de Y._, selon lesquelles le recourant aurait refusé de prendre connaissance de la lettre de licenciement et de la signer. L'envoi ultérieur d'une lettre recommandée peut aussi bien s'expliquer par le refus du recourant de signer la lettre de résiliation.
3.3 Dans ces conditions, le Ministère public n'a pas abusé de son pouvoir d'appréciation en considérant qu'il n'y avait pas d'indice suffisant d'un faux témoignage. Comme le relève la cour cantonale, le recourant n'indique pas non plus quel moyen de preuve pourrait être administré à l'appui de ses accusations.
4. Sur le vu de ce qui précède, le recours doit être rejeté, en tant qu'il est recevable. Le recourant a demandé l'assistance judiciaire et celle-ci peut lui être accordée, sous la forme d'une dispense des frais judiciaires. Il n'est pas alloué de dépens (<ref-law>).

Par ces motifs, le Tribunal fédéral prononce:
1. Le recours est rejeté, en tant qu'il est recevable.
2. La demande d'assistance judiciaire est admise en ce sens qu'il n'est pas perçu de frais judiciaires.
3. Le présent arrêt est communiqué au recourant, au Ministère public de l'arrondissement de Lausanne et au Tribunal cantonal du canton de Vaud, Chambre des recours pénale.
Lausanne, le 7 septembre 2012
Au nom de la Ire Cour de droit public
du Tribunal fédéral suisse
Le Président: Fonjallaz
Le Greffier: Kurz