Faits:
A. A._, ressortissant kosovar né en 1971, a été arrêté le 3 novembre 2009 et inculpé, par le Juge d'instruction du canton de Genève, de violation de la LStup. Il lui est reproché d'avoir, le 23 octobre 2009 en Argovie, remis un sac contenant 5 kg d'héroïne aux dénommés B._ et C._ (également inculpés, mais remis en liberté), qui devaient transporter la marchandise jusqu'à Genève. La détention préventive a été prolongée par ordonnances de la Chambre d'accusation genevoise des 10 novembre 2009 et 26 janvier 2010, en raison des risques de fuite et de collusion.
Par ordonnance du 5 février 2010, la Chambre d'accusation a rejeté une demande de mise en liberté. Les charges à l'encontre de A._, confirmées par les déclarations de B._ et C._ ainsi que par l'identification de son numéro de téléphone, étaient suffisantes. Le risque de collusion persistait jusqu'à l'audience de jugement car il était à craindre que l'inculpé ne tente de contacter ceux qui le mettent en cause afin qu'ils se rétractent. Ce risque existait aussi avec le dénommé D._, soit le commanditaire présumé du trafic de drogue, avec lequel l'inculpé avait eu des contacts téléphoniques. Le risque de fuite a lui aussi été confirmé, compte tenu de la nationalité de l'inculpé - lequel aurait cherché, dans un premier temps, à échapper à la justice suisse - et de la gravité des faits. Aucune caution n'était proposée.
B. A._ forme un recours en matière pénale par lequel il demande sa mise en liberté immédiate.
La Chambre d'accusation se réfère à sa décision. Le Ministère public conclut au rejet du recours. Invité à répliquer, le recourant a confirmé les motifs et conclusions de son recours.
Considérant en droit:
1. Le recours en matière pénale (art. 78 al. 1 LTF) est ouvert contre une décision relative au maintien en détention préventive. Le recourant a qualité pour agir au sens de l'art. 81 al. 1 let. a LTF; il a agi en temps utile (art. 100 al. 1 LTF) et les conclusions formées à l'appui de son recours sont recevables au regard de l'art. 107 al. 2 LTF.
2. Le recourant ne nie pas l'existence de charges suffisantes pour justifier son maintien en détention préventive. Il conteste en revanche les risques de fuite et de collusion. A l'égard de ce dernier, il relève que le seul acte d'instruction encore en cours est une expertise psychiatrique pour laquelle son maintien en détention ne serait pas nécessaire. Il n'y aurait pas de risque qu'il tente d'influencer les deux inculpés qui l'ont mis en cause, puisque ceux-ci ont déjà été entendus par la police et le juge d'instruction, et qu'une confrontation a déjà eu lieu. Placé dans une même cellule que le recourant dans l'attente d'une audience, B._ aurait fait part de ses craintes de représailles, mais de manière générale, en précisant qu'il n'avait fait l'objet d'aucune menace de la part du recourant. Quant au risque de collusion avec "D._", il ne serait pas plus vraisemblable qu'à l'égard de B._.
2.1 Le maintien du prévenu en détention peut être justifié par l'intérêt public lié aux besoins de l'instruction en cours (art. 34 let. b et c CPP/GE). Tel est le cas par exemple lorsqu'il est à craindre que l'intéressé ne mette sa liberté à profit pour prendre contact avec des témoins ou d'autres prévenus, afin de tenter d'influencer leurs déclarations. Ce risque doit présenter une certaine vraisemblance (ATF 123 I 31 consid. 3c p. 36, 117 Ia 257 consid. 4c p. 261), et l'autorité doit indiquer, au moins dans les grandes lignes et sous réserve des opérations à conserver secrètes, quels actes d'instruction elle doit encore effectuer, et en quoi la libération du prévenu en compromettrait l'accomplissement (cf. ATF 123 I 31 consid. 2b p. 33/34, 116 Ia 149 consid. 5 p. 152).
2.2 B._ et C._ ont déclaré reconnaître le recourant: celui-ci leur aurait remis la drogue qu'ils devaient transporter jusqu'à Genève. Ils ont également identifié sa voiture et son numéro de téléphone. Le recourant affirme pour sa part qu'il n'a jamais rencontré ses deux coïnculpés. Les déclarations de ces derniers constituent dès lors manifestement un élément important de l'accusation, raison pour laquelle les prévenus ont été placés dans des établissements de détention distincts. Même si une confrontation a déjà eu lieu (au cours de laquelle les prévenus ont maintenu leurs versions respectives), il est sérieusement à craindre que le recourant, une fois remis en liberté, ne tente de faire revenir B._ et C._ sur leurs déclarations, dans la perspective de l'audience de jugement. Cela suffit pour admettre un risque de collusion justifiant à lui seul la détention préventive.
2.3 L'affirmation d'un risque de collusion dispense d'examiner les griefs du recourant en rapport avec le risque de fuite et la possibilité d'une libération sous caution.
3. Le recours doit par conséquent être rejeté, aux frais du recourant (art. 66 al. 1 LTF).
Par ces motifs, le Tribunal fédéral prononce:
1. Le recours est rejeté.
2. Les frais judiciaires, arrêtés à 1000 fr., sont mis à la charge du recourant.
3. Le présent arrêt est communiqué au mandataire du recourant, au Procureur général et à la Cour de justice du canton de Genève, Chambre d'accusation.
Lausanne, le 2 mars 2010
Au nom de la Ire Cour de droit public
du Tribunal fédéral suisse
Le Président: Le Greffier:
Féraud Kurz