Faits :
A.
A._, ressortissant kosovar né en 1971, a fait l'objet d'une ordonnance pénale rendue le 11 décembre 2009 par le Juge d'instruction du canton de Fribourg, le condamnant à vingt jours de privation de liberté, et révoquant le sursis à une précédente condamnation à trois mois d'emprisonnement. Cette ordonnance a été notifiée par publication dans la Feuille officielle. A._ a été arrêté le 20 mai 2014 pour une nouvelle infraction à la loi sur les étrangers, ainsi qu'une violation de la LCR. Il a été mis en détention à l'établissement de Bellechasse. L'ordonnance pénale du 11 décembre 2009 lui a été notifiée le même jour, et il a immédiatement déclaré faire opposition. Celle-ci n'est toutefois parvenue au Ministère public du canton de Fribourg que le 26 mai 2014.
B.
Le 27 mai 2014, le Ministère public a entendu A._ en tant que prévenu et opposant à l'ordonnance pénale. Le même jour, il a demandé au Tribunal des mesures de contrainte (Tmc) sa mise en détention pour des motifs de sûreté pour deux mois en raison du risque de fuite.
Par ordonnance du 29 mai 2014, le Tmc a admis partiellement la demande et ordonné le placement en détention provisoire jusqu'au 10 juin 2014. A défaut d'acte d'accusation, la détention requise ne pouvait être que de la détention avant jugement. Le risque de fuite était élevé puisque le prévenu avait sa famille au Kosovo et aucune attache avec la Suisse. La durée requise, de deux mois, était manifestement disproportionnée compte tenu des actes qui restaient à effectuer (dépôt du rapport de police et de l'acte d'accusation).
C.
Par arrêt du 6 juin 2014, la Chambre pénale du Tribunal cantonal fribourgeois a rejeté le recours formé par le prévenu et confirmé l'ordonnance du Tmc. Avant réception de l'opposition à l'ordonnance de condamnation, le Ministère public pouvait penser que le prévenu se trouvait en exécution de peine et n'avait pas à requérir la détention provisoire. Le prévenu - qui avait délibérément renoncé à l'assistance d'un avocat au moment de son arrestation - pouvait demander sa mise en liberté après avoir formé opposition. Une irrégularité entachant la première période de détention ne devait de toute façon pas conduire à une mise en liberté, car les conditions de la détention étaient réunies. Le prévenu ne contestait ni l'existence de soupçons suffisants, ni le risque de fuite, et les mesures de substitution proposées (dépôt de documents d'identité et port d'un bracelet électronique) n'étaient pas suffisantes.
D.
Agissant par la voie du recours en matière pénale, A._ demande au Tribunal fédéral de réformer l'arrêt cantonal en constatant une violation du principe de célérité, en lui allouant une indemnité de 1'800 fr. en raison du caractère illicite de la détention subie entre le 20 et le 29 mai 2014, et en mettant les frais de la procédure cantonale (soit 200 fr.) à la charge de l'Etat de Fribourg. Il demande l'assistance judiciaire.
La Chambre pénale a renoncé à formuler des observations. Le Ministère public conclut au rejet du recours dans la mesure où il est recevable. Le recourant a déposé de nouvelles observations le 3 juillet 2014, exposant qu'il a été remis en liberté par décision du 18 juin 2014 du Tmc mais que son recours demeurerait recevable puisqu'il tend à une indemnisation, à une constatation de violation de la CEDH et à une répartition des frais qui lui soit favorable. Il persiste dans ses conclusions.

Considérant en droit :
1.
Selon l'<ref-law>, le recours en matière pénale est ouvert contre les décisions rendues en matière pénale, dont font partie les décisions relatives à la détention provisoire ou pour des motifs de sûreté (<ref-ruling> consid. 1 p. 23).
1.1. Le recourant ne conteste pas son maintien en détention tel qu'il a été décidé par le Tmc. Il conclut à une constatation d'une violation du principe de la célérité et à une indemnisation pour les jours de détention illicite subie selon lui du 20 au 29 mai 2014. Le recourant dispose sur ce point d'un intérêt juridique actuel à l'annulation ou à la réforme de la décision entreprise (<ref-law>; ATF 1B_369/2013 du 26 février 2014). Sa mise en liberté, ordonnée par le Tmc le 18 juin 2014, ne remet pas en cause son intérêt à recourir sur ce point.
1.2. En tant qu'il statue sur la régularité de la détention subie durant une période écoulée (question distincte du maintien en détention), l'arrêt attaqué pourrait être qualifié de jugement partiel (<ref-law>). On peut toutefois aussi y voir un prononcé incident au sens de l'<ref-law>, puisqu'il pourrait encore appartenir au juge du fond de tenir compte de l'irrégularité de la détention. Quoi qu'il en soit, la jurisprudence considère que les contestations relatives aux conditions et à la légalité de la détention doivent, dans la mesure du possible, être liquidées immédiatement (cf. notamment <ref-ruling> consid. 3.1); il se justifie dès lors d'entrer en matière.
1.3. Contrairement à ce que soutient le recourant, la décision relative à la détention provisoire ne constitue pas une mesure provisionnelle au sens de l'<ref-law>. La limitation des griefs prévue par cette disposition, de même que le principe d'allégation au sens de l'<ref-law> ne s'appliquent donc pas, et le recourant peut, outre les droits constitutionnels, invoquer une violation du droit fédéral (<ref-ruling> consid. 1.2 p. 189; <ref-ruling> consid. 2.4 p. 346; arrêt 1B_326/2013 du 6 mars 2014, consid. 2.2, destiné à la publication).
2.
Le recourant invoque l'art. 5 par. 3 CEDH et 31 Cst. Il relève qu'il a été arrêté le 20 mai 2014 à 6h.20 du matin et que la décision relative à la détention provisoire n'a été rendue que le 29 mai 2014. Il conteste que la détention subie durant cette période ait pu avoir lieu en exécution de l'ordonnance pénale, puisqu'il avait fait immédiatement opposition à celle-ci. La transmission tardive de l'opposition au Ministère public ne lui serait pas imputable. Les délais prescrits aux art. 219 al. 4, 224 al. 2 et 226 al. 1 CPP n'auraient ainsi pas été respectés et le recourant, se fondant sur l'<ref-law>, demande une indemnité de 200 fr. par jour de détention illicite, ainsi que la mise des frais d'arrêt cantonal à la charge de l'Etat.
2.1. La détention provisoire peut être ordonnée, aux conditions de l'<ref-law>, soit en présence de soupçons suffisants et d'un risque de fuite, de collusion ou de réitération. Selon l'<ref-law>, si les soupçons et les motifs de détention sont confirmés, le ministère public propose au Tmc, sans retard mais au plus tard dans les 48 heures à compter de l'arrestation, d'ordonner la détention provisoire ou une mesure de substitution. Le Tmc doit statuer dans les 48 heures suivant réception de la demande (<ref-law>), et donc en tout cas dans les 96 heures après l'arrestation (<ref-ruling>).
2.2. En l'occurrence, il n'est pas contesté que ces délais ont été largement dépassés puisque le Tmc a statué neuf jours après l'arrestation. La cour cantonale a considéré que la détention était initialement subie en exécution de l'ordonnance pénale de 2009, laquelle avait fait l'objet d'un mandat d'arrêt et d'un ordre d'exécution de peine du Service d'application des sanctions pénales et des prisons.
Cette manière de voir ne peut être partagée. En effet, seules les décisions entrées en force au sens de l'<ref-law> peuvent, selon l'<ref-law>, faire l'objet d'un ordre d'exécution (al. 2) ou d'une exécution immédiate (al. 3). Selon l'art. 192 de l'ancien code de procédure pénale fribourgeois (aCPP/FR, applicable aux ordonnances pénales prononcées avant l'entrée en vigueur du CPP selon les art. 453 et 455 CPP), une ordonnance pénale acquiert l'effet d'un jugement passé en force si aucune opposition n'a été formulée dans le délai utile (cf., en droit actuel, l'<ref-law>). Une décision de condamnation ne saurait ainsi être mise à exécution avant l'expiration du délai de recours ou d'opposition (cf. <ref-law>). En cas d'urgence, l'autorité d'exécution peut d'ailleurs, pour garantir l'exécution d'une peine ou d'une mesure, ordonner la détention du condamné pour des motifs de sûreté en saisissant le Tmc du for du Ministère public qui a rendu l'ordonnance pénale (art. 440 al. 1 et 2 let. b CPP).
C'est dès lors à tort que la cour cantonale a considéré que la détention subie avant la décision du Tmc avait été effectuée en exécution de l'ordonnance pénale du 11 décembre 2009. Le recourant avait formé opposition, mais celle-ci n'a été reçue que le 26 mai 2014, sans qu'il soit prétendu ou démontré que ce retard soit imputable au recourant. Si celui-ci avait, dans un premier temps, renoncé à se faire assister d'un avocat et à demander sa mise en liberté, on ne saurait en déduire, comme semble le faire la cour cantonale, qu'il aurait également renoncé à faire sanctionner une irrégularité entachant sa détention.
2.3. Il y a lieu, dès lors, de réformer l'arrêt cantonal et de constater que la détention subie du 20 au 29 mai 2014 ne reposait pas sur un titre valable.
Dans ces conditions, l'irrégularité peut être réparée par une constatation, une admission partielle du recours sur ce point et la mise à la charge de l'Etat des frais de justice (<ref-ruling> consid. 2.2 p. 121 concernant une violation du principe de la célérité; arrêt 1B_160/2013 précité concernant la validité de la demande de mise en détention). Le recourant conclut à une indemnisation immédiate à raison de 200 fr. par jour de détention illicite. Ces conclusions sont prématurées car c'est au juge du fond qu'il appartiendra de tirer les conséquences de l'irrégularité (cf. <ref-law> s'agissant de l'indemnisation). En revanche, le recourant a d'ores et déjà le droit à ce que les frais de justice soient mis à la charge de l'Etat et à ce que de pleins dépens lui soient accordés (<ref-ruling> consid. 2.4 p. 97 et les arrêts cités).
3.
Sur le vu de ce qui précède, le recours doit être admis. L'arrêt attaqué est réformé en ce sens qu'il est constaté que la détention subie du 20 au 29 mai 2014 ne reposait pas sur un titre valable, et que les frais de la procédure cantonale (ch. II du dispositif de l'arrêt attaqué) sont mis à la charge de l'Etat de Fribourg. Le ch. III du dispositif de l'arrêt attaqué est annulé et une indemnité de dépens est allouée à la mandataire du recourant, laquelle comprend l'indemnité de partie pour la procédure cantonale (art. 67 et 68 al. 5 LTF). La demande d'assistance judiciaire pour la procédure devant le Tribunal fédéral devient ainsi sans objet. Conformément à l'<ref-law>, il n'est pas perçu de frais judiciaires.

Par ces motifs, le Tribunal fédéral prononce :
1.
Le recours est admis; l'arrêt attaqué est réformé en ce sens qu'il est constaté que la détention subie du 20 au 29 mai 2014 ne reposait pas sur un titre valable; les frais de la procédure cantonale (ch. II du dispositif de l'arrêt attaqué) sont mis à la charge de l'Etat de Fribourg. Le ch. III du dispositif de l'arrêt attaqué est annulé.
2.
Une indemnité de dépens de 3'000 fr., valant pour la présente procédure et pour la procédure devant la Chambre pénale, est allouée à l'avocate du recourant, à la charge de l'Etat de Fribourg. La demande d'assistance judiciaire pour la procédure devant le Tribunal fédéral est sans objet.
3.
Il n'est pas perçu de frais judiciaires.
4.
Le présent arrêt est communiqué à la mandataire du recourant, au Ministère public et à la Chambre pénale du Tribunal cantonal de l'Etat de Fribourg.
Lausanne, le 8 juillet 2014
Au nom de la Ire Cour de droit public
du Tribunal fédéral suisse
Le Président : Le Greffier :
Fonjallaz Kurz