Citation :
J’ ai fait un petit travail récapitulatif afin d’ aider tous ceux qui, comme moi, auraient envie de débloquer à moindre frais leur Seagate Barracuda 7200.11 de capacité 500 GO à 1000 GO ayant le firmware SD15. J’ avais un tel disque de 1000 GO qui du jour au lendemain, sans aucune raison apparente n’ a plus été reconnu par le bios de mon PC. Celui ci bootait même en boucle dés qu’ il arrivait à l’ ouverture de windowx XP. Tout est rentré dans l’ ordre dés que j’ ai enlevé ce disque dur Seagate. Mais d’ après le site de Seagate, je devais me résoudre à perdre 6 mois de photos personnelles à moins de payer le prix fort, ce que je ne pouvais me permettre. Après une recherche un peu fastidieuse sur le net car je ne trouvais que des forums anglophones ou russophones qui parlaient de ce problème, je me suis rendu compte que nous étions nombreux, très nombreux, à rechercher une solution. J’ ai trouvé mon bonheur sur le forum MSFN, avec aujourd’ hui prés de 40 pages à digérer en anglais, de bons conseils mais aussi beaucoup d’ erreurs et beaucoup de désinformations sans doute involontaires dans un climat que l’ on peut juger assez fébrile. Avec cette méthode j’ ai pu récupérer mes données sans aucunes difficultés majeures pour une dépense matérielle d’ environ 10 euros sur Ebay auprès de commerçants en ligne allemands ou anglais. Je n’ ai rien inventé, et rien découvert de cette méthode que je vais détailler, j’ ai tout pris sur MSFN et aussi sur un forum en russe, je l’ ai seulement traduite en français et un peu agrémentée de mon expérience. Ce faisant, je ne fais que respecter l’ esprit d’ entraide qui doit régner sur ce genre de forum. Il semble que le premier à avoir fait état d’ éléments concrets pour débloquer un DD Seagate « busy » soit YURA, dans ce document en polonais : http://yura.projektas.lt/files/sea [...] _ES21.html Fin janvier, Gradius2, un chilien, a eu la bonne idée d’ initier un fil sur le forum MSFN concernant une méthode pour débloquer les DD Seagate « busy ». Mais sans préciser d’ où venait la méthode, sans trop l’ expliquer non plus et semble t’ il avec des fortunes diverses quand à la réussite de l’ opération. Un polonais, Aviko est alors venu tout expliquer et apporter son aide efficacement sur ce forum tout en revendiquant la paternité de cette méthode pour YURA, ce dont le modérateur du forum lui a donné acte après vérification. Je précise encore que mon DD n’ était plus reconnu dans le bios, que je l' ai acheté en juillet 2008 et qu' il dispose du firmware SD15. Il était devenu « busy » comme disent les anglophones, et je n’ ai testé avec succès cette méthode que dans ce seul cas de DD 7200.11 de 1000 go avec firmware SD15. Mais j' ai encore 2 DD Seagate de 500 go avec aussi le firmware SD15 qui ne sont pas encore tombés en panne mais qui sont potentiellement concernés d' après le site Seagate. Donc, avant de vous lancer, vérifiez sur l' étiquette descriptive de votre DD que son firmware est bien le firmware SD15. Le principe de cette méthode consiste à intervenir sur la programmation interne du DD en utilisant un accès qui sert normalement aux tests et au paramétrage en usine de chaque DD. Cet accès se trouve à l’ emplacement des 4 pins donnés par Seagate comme devant servir à commuter à l’ aide d’ un strap le DD en 1,5 Gb/s ou 3 Gb/s pour ce qui concerne la vitesse de transmission maximale, ce qui revient à utiliser la technologie SATA1 ou SATA2. Seulement, il y a deux difficultés, cet accès doit se faire en logique TTL, et il faut aussi connaître le langage spécifique Seagate pour communiquer avec le système logique du DD. L’ idée est donc, connaissant les commandes Seagate utiles ici telles qu’ elles ont été vulgarisées sur le net par Yura, de se servir d’ un adaptateur USB / TTL. Voici donc ce qu’ il s ‘ agit de faire, en plusieurs étapes successives. Etape 1 Il faut se procurer le matériel nécessaire. Un tournevis Torx T6 pour démonter sans dommage le circuit imprimé qui se trouve sur le DD.  Et un adaptateur USB / TTL. On peut utiliser soit un module adaptateur USB / RS232 raccordé à un adaptateur RS232 / TTL , soit un module adaptateur USB / TTL, le tout utilisé vulgairement en robotique, soit comme l’ a en premier suggéré Aviko sur le forum MSFN, un de ces adaptateurs pour téléphone portable qui servent à accéder au téléphone à l’ aide d’ un port USB. L’ avantage de ce dernier est qu’ il n’ a pas besoin d’ alimentation extérieure puisqu’ il est alimenté par le port USB et qu’ il délivre une tension de sortie logique de 3 volts et non 5 comme la plus part des modules adaptateurs. Il se trouve enfin sous la forme de copies chinoises pour quelques euros sur le net. J’ ai pour ma part utilisé un câble CA-42 ( dit aussi DKU 5, je crois ) pour Nokia. Mais beaucoup d’ autres câbles de ce type et pour d’ autres téléphones doivent faire l’ affaire. Il suffit juste de se méfier de ce que les derniers téléphones fonctionnent directement avec les data USB + et - , la transformation des signaux USB en TTL se faisant alors dans le téléphone et pas dans le câble. Je n’ ai pas de connaissances particulières en téléphonie et ne peux conseiller sur ce point sur l’ achat de tel ou tel câble. Ce câble Nokia CA-42 présente donc d’ un côté une prise USB un peu renflée du fait que c’ est de ce côté que se trouve l’ electronique pour passer de signaux USB à des signaux TTL. Et de l’ autre côté une prise spécifique à Nokia qui comporte un peigne de 13 broches. Si on compte 15 broches sur la documentation officielle Nokia c’ est qu’ en fait leurs broches 1 et 15 sont extérieures au peigne : http://pinouts.ru/CellularPhones-N [...] nout.shtml Dés que j’ ai disposé de ce câble, j’ ai démonté la prise Nokia et repéré les couleurs des fils, il y en a 5, qui vont sur les broches 2,3,5,6 et 7, sur le total des 13 broches du peigne. Dans mon cas : Broche 2= fil noir=fil nokia de contrôle Broche 3=fil rouge=+ 5 Volts Broche 5=fil vert= Rx TTL Broche 6=fil blanc=Tx TTL Broche 7=fil blindage du câble, sans couleur= masse TTL Seuls les fils 5, 6 et 7 vont servir. Je les ai pour ma part raccordé à un bout de câble informatique de récupération qui avait un connecteur avec 4 petites broches. J’ ai supprimé la partie plastique du connecteur pour ne garder que les 4 broches. J’ en ai entouré 3, car il me faut disposer de seulement 3 broches, de scotch noir pour éviter les courts circuits lors du raccordement au DD. C’ est seulement dans cette phase que l’ on a besoin d’ un fer à souder, et on peut toujours demander à son beauf, un ami, un copain de travail bricoleur pour réaliser ce raccord:  Il faut ici noter que Rx est le fil réception du câble USB / TTL et que, le moment venu, il faudra donc le raccorder au pin Tx ( transmission ) du DD. De la même façon il faudra raccorder Tx sur le pin Rx et le fil masse TTL sur le pin masse des données sur le DD ( ne pas oublier de connecter cette masse, elle est indispensable à la communication avec la logique du DD ). 
 Une fois que ce câble adaptateur USB / TTL est réalisé, on peut le tester de façon sommaire. Il suffit pour cela d’ ouvrir l’ Hyper terminal Windows. On trouve l’ émulateur Hyperterminal de windows, sous windows XP dans: »Démarrez / Tous les programmes / Accessoires / Communications » . Sous vista on peut utiliser l’ hyperterminal « realterm » de windows server 2008, ce n’ était pas mon cas.
 On peut sauvegarder la future configuration de l’ hyperterminal sous un nom précis et lui attribuer une icône. Il aura fallu au préalable correctement installer le pilote du câble USB / TTL normalement fourni sur CD avec celui ci. Notre câble USB / TTL se trouve donc branché par le port USB au PC et son autre extrémité n’ est pas encore raccordé au DD. A l’ initialisation de l’ hyper terminal il faudra indiquer sur quel port com est installé ce câble USB / TTL. Au cas où on ne serait pas certain du port com à utiliser, ouvrir le gestionnaire de périphérique et regarder dans « ports com et LPT » sur quel port com se trouve notre liaison USB / TTL. En fait ce port com est un port com virtuel puisqu’ on émule notre PC en terminal, mais le numéro de ce port com peut varier au fil des manipulations, si on ferme l’ hyperterminal et qu’ on le rouvre par exemple, et il convient de toujours se méfier sur ce point.
 Paramétrer ce port pour une liaison en 38400 bits/s, 8 bits sans parité, 1 bit d’ arrêt et sans contrôle de flux. Il sera ainsi déjà prêt pour l' étape 4.
 Faire « appliquer » puis « OK », l’ hyper terminal est maintenant paramétré pour notre besoin. On remarque tout d’ abord que lorsque l’ on tape des caractères au clavier, ceux ci n’ apparaissent pas sur l’ écran de contrôle de l’ hyper terminal.
 Ils apparaîtront ultérieurement lorsque le câble sera raccordé au DD car celui ci rendra les caractères en « écho » à l’ hyper terminal. Mais pour l’ instant, rien. On connecte alors avec les doigts les fils Rx et Tx du câble sur la terminaison TTL. Et là, en bouclant donc le câble « émission sur réception » on doit voir les caractères s’ afficher à l’ écran lorsqu’ on les tape au clavier. Sinon on a fait une erreur quelque part. Etape 2 On a préparé avec bonheur le câble de liaison entre le PC émulé en terminal et la logique TTL du disque dur, il faut maintenant préparer le disque dur avant d’ y connecter le câble. Retirer le circuit imprimé du DD en enlevant les six vis torx, les deux plus longues vis sont du côté connexions. Bien remarquer les deux emplacements où le circuit imprimé fait contact avec le corps du DD.
 On laissera libres les contacts moteur, mais on mettra quelque chose d' isolant comme un carton Bristol, un morceau de carte de visite ou un papier fin mais résistant sur le corps du DD à l’ emplacement des contacts des têtes afin de les dissocier du circuit imprimé lorsqu' on le remontera. Il n’ est pas du tout judicieux d’ utiliser une feuille plastique qui risquerait malencontreusement d’ être chargée d’ électricité statique.
 Replacer le circuit imprimé à son emplacement exact et remonter toutes les vis sauf deux ou trois autour de l’ emplacement ou se trouve maintenant le Bristol :
 La manipulation du circuit imprimé doit se faire avec précautions, le tenir si possible par les côtés sans mettre les doigts dessus. Ce faisant, toujours veiller à être déchargé d' électricité statique. Les mêmes conseils s' appliquent ici aussi bien que pour la manipulation d' une carte mère, par exemple. Etape 3 Brancher avec le plus grand soin les connecteurs de l’ extrémité TTL du câble USB / TTL sur le circuit imprimé à l’ endroit déjà indiqué. Connecteurs bien isolés l’ un de l’ autre avec du scotch isolant ou autre, et faisant bon contact sur les pins 2, 3, et 4 de l' emplacement déjà précisé du CI du DD.
 Donc, Tx du câble sur Rx ( pin 4 du circuit imprimé ), Rx du câble sur Tx ( pin 3 du circuit imprimé ) et masse du câble sur masse ( pin 2 du circuit imprimé ). Brancher maintenant le câble d'alimentation SATA sur le DD, et bien attendre que le moteur s'arrête. Attention, ne pas utiliser un adaptateur molex / SATA sous peine de n’ obtenir que des caractères anarchiques sur l’ hyperterminal, utiliser un connecteur SATA disposant du fil orange 3,3 volts pour alimenter le disque dur. Tout est prêt, l’ émulateur hyper terminal est toujours présent à l’ écran du PC, sinon il faut le rouvrir et recommencer les opérations de paramétrage précédentes, le câble USB / TTL relie bien un port USB du PC avec la logique TTL du circuit imprimé du DD, le DD est alimenté par une prise d' alimentation SATA et son moteur s’ est bien arrêté. On peut donc passer à la partie « commandes ». Mais attention encore: Il faudra bien respecter la casse. Minuscules et majuscules doivent bien être respectées. « z » c’ est bien z minuscule, et « Z » c’ est z majuscule. !!!!!! A partir d' ici il faut être au calme, très méticuleux et vérifier à l' écran deux fois plutôt qu' une les commandes que l' on vient de taper au clavier avant de faire "entrée", au risque, au mieux de voir apparaître un code erreur et au pire de faire des dégâts. Etape 4: Réveil logique On fait au clavier touche « Ctrl » et on tape en même temps « z ». Cette commande doit « réveiller » le processeur qui se trouve sur le circuit imprimé du DD, et on doit voir afficher en retour le prompt «F3 T> » sur l’ hyper terminal. Attention, il s' agit de "z" minuscule! Si on arrive à ce point, c’ est presque gagné. Etape 5: Passage au niveau 2 Taper /2 et faire « entrée » pour voir apparaître le prompt F3 2> Etape 6: Arrêt moteur Taper Z et faire « entrée » pour voir répondre : "Spin Down Complete, Elapsed Time 0.153 msecs" le « elapsed time » ne sera pas identique pour tous – tout va bien. Etape 7: Rétablissement des contacts du CI Enlever avec précaution, et en soulevant légèrement le circuit imprimé, le papier cartonné isolant et remonter normalement le circuit imprimé, en replaçant correctement toutes les vis . Le circuit imprimé étant toujours sous tension, il faut faire très attention à ne pas tomber une vis dessus, à ne pas déraper avec le tournevis et proscrire l' emploi de tout autre objet métallique pour cette intervention. Il est probable, mais je n' ai pas essayé, que le début de cette procédure serait tout aussi efficace en laissant le circuit imprimé "en l' air", mais le remontage sous tension du circuit imprimé serait alors autrement plus périlleux et je le déconseille. Etape 8: Démarrage moteur Taper U et faire « entrée » pour voir répondre : "Spin Up Complete, Elapsed Time 9.668 secs". Encore une fois le “elapsed time” ne sera pas le même pour tous et c’ est normal. La partie suivante n’ est pas nécessaire, elle ne sert qu’ à voir si tout est OK en restaurant la configuration par défaut. L’ utiliser lorsque la fin de la procédure ne vient pas correctement au sens ou la logique TTL ne répond pas à la commande « m 0 »finale. La commande F712 n’ est opérante que sur les DD 7200.11 avec le firmware SD15. ( si vous n’ avez pas le firmware SD15, vous devez sauter cette partie) . Taper / et faire « entrée » pour retourner à la racine et voir apparaître le prompt F3 T> Taper alors F712 et faire « entrée » pour voir répondre : Byte:0712: RealTimeUpdatedFlags = 00 00 Byte:0712: Bit:0, HPA_SET_BY_SETMAX = 0 Byte:0712: Bit:1, HPA_SET_BY_SETMAX_EXT = 0 Byte:0712: Bit:2, DCO_SET_ACTIVE = 0 Byte:0712: Bit:3, CONGEN_READ_FROM_MEDIA = 0 <- configuration not loaded from surface Taper F,,22 et faire « entrée » pour voir répondre : Drive Configuration restored to defaults. Taper F712 et faire « entrée » pour voir répondre : Byte:0712: RealTimeUpdatedFlags = 08 00 Byte:0712: Bit:0, HPA_SET_BY_SETMAX = 0 Byte:0712: Bit:1, HPA_SET_BY_SETMAX_EXT = 0 Byte:0712: Bit:2, DCO_SET_ACTIVE = 0 Byte:0712: Bit:3, CONGEN_READ_FROM_MEDIA = 1 <- done C’ est ici la fin de cette partie facultative uniquement prévue pour les DD avec le firmware SD15 Etape 9: Passage au niveau 1 Vous devez avoir le prompt F3 T> à ce moment. Taper /1 et faire « entrée » pour voir apparaître le prompt F3 1> Etape 10: Effacement et re-création du secteur S.M.A.R.T. Taper N1 et faire « entrée », le prompt F3 1> revient Etape 11: Retour à la racine Taper / et faire « entrée » pour voir apparaître le prompt F3 T> Etape 11bis: Coupure de l' alimentation du disque dur Il faut enlever la prise d' alimentation SATA du DD, attendre quelques secondes et rebrancher l' alimentation SATA. Faire Ctrl z sur l' hyper terminal pour voir revenir le prompt F3 T> En cas de difficultés, vérifier que l' hyper terminal soit toujours bien paramétré, bon port com etc... Etape 12: Régénération du disque dur Taper m0,2,2,0,0,0,0,22 (Noter que "m" est en minuscule et que 0 est le zéro). et faire « entrée » pour voir répondre : Max Wr Retries = 00, Max Rd Retries = 00, Max ECC T-Level = 00, Max Certify Rewrite Retries = 0000 User Partition Format 5% complete, Zone 00, Pass 00, LBA 00008DED, ErrCode 00000080, Elapsed Time 0 mins 05 secs User Partition Format Successful - Elapsed Time 0 mins 10 secs Cette commande ne formate pas les données du disque dur, elle formate seulement une zone système cachée du disque dur qui contient des informations erronées sur la gestion du disque dur. Le tout sera suivi du prompt F3 T>, après un temps plus ou moins long. C’ EST FINI: Enlever le cable d’ alimentation SATA du disque dur, enlever les fils RX, TX, et masse. Installer le DD dans un PC ou un boîtier USB / eSata. Le DD doit maintenant parfaitement être reconnu par le bios au démarrage du PC, et fonctionner normalement sans aucunes pertes de données comme cela a été le cas pour moi. Après, updater ou pas le DD avec le dernier firmware , c’ est votre affaire et un autre débat. Toutefois, les firmware mis à disposition sur le site Seagate sont maintenant fiables ( novembre 2009 ). Et le défaut reviendra certainement si vous ne faites pas les mises à jour préconisées par Seagate. Pour mon cas, ayant le firmware SD15 sur mon DD et ayant attendu une heure sans résultat aprés la commande m0..., j’ ai dû tout recommencer en exécutant au passage la partie facultative pour que cela fonctionne, voici exactement la totalité de mon affichage durant la procédure :
 Quelques problèmes récurrents. 1-Si l’ écran affiche des caractères incompréhensibles, c’ est en général que la connexion USB / TTL est mal faite, ou qu’ il y a un problème de masse. 2-Si après la commande « U », l’ hyper terminal affiche : Error 1009 DETSEC 00006008 Spin Error Elapsed Time x secs R/W Status 2 R/W Error 84150180 Cela signifie, au mieux, que le contact circuit imprimé / moteur se fait mal, on peut y remèdier en vérifiant l’ élasticité des contacts de type lamelle ou en nettoyant la partie circuit imprimé de ces contacts avec un chiffon propre et toujours à sec. 3- Comment faire fonctionner une alimentation de PC en dehors du PC et non branchée sur une carte mère afin de disposer d' une alimentation SATA dans de bonnes conditions? En connectant PS_ON à la masse. En principe PS_ON est le fil vert du brochage alimentant la carte mère et on le connecte à une masse de ce connecteur pour faire fonctionner l’ alimentation. 4-Ne pas oublier, comme cela m' est arrivé , de faire ctrl + z pour réveiller la logique du DD, pouvoir obtenir le prompt F3 T> en retour, et pouvoir débuter les commandes! 5-Le DD peut mettre 10, 15 ou 20 minutes pour répondre à la dernière commande "m0....". Faut savoir patienter. 6-La commande "F3 T>i4,1,22 " effaçant la G-LIST, c' est à dire l' endroit où sont éventuellement signalés les secteurs défectueux à la sortie d' usine du disque dur, je ne vois vraiment pas à quoi cette commande peut bien servir pour notre question de récupération de données. Pourtant certains l' ont recommandé dans leurs procédures et c' est à mon avis dangereux, et inutile. Aviko déconseillait fortement son utilisation. Je cite un spécialiste de la récupération de données: "La perte d’informations capitales comme la P-List et la G-list est trop catastrophique pour prendre le risque de s’amuser de cette manière avec ses données." Toute la difficulté est là, on connait les commandes Seagate, on les diffuse mais on ne sait pas vraiment à quoi elles servent et si elles sont dangereuses à utiliser. Il faut donc en être économe et ne faire que le strict nécessaire. Sinon autant utiliser le classique marteau ou le frigo.... 7-Un classique de la non réponse du DD à la commande "ctrl z" est le mauvais branchement des fils Rx / Tx. Dans ce cas, on ne risque rien à les inverser pour voir si la situation peut se débloquer. Cela peut aussi provenir du port com qui a changé suite à plusieurs manips avec l' hyper terminal. 8-Tout ce qui précède concerne les DD "busy", ayant donc le défaut de ne plus être reconnus au démarrage par le bios. Pour les DD présentant le défaut d' être reconnus par le bios mais avec une capacité nulle, LBA=0, il ne faut pas démonter le circuit imprimé et seulement exécuter la dernière commande sur le prompt F3 T>: m0,2,2,0,0,0,0,22 Cela d' après le site MSFN, mais je n' ai pas testé ce cas de figure n' ayant pas eu ce problème de DD qui se retrouve à tort avec une capacité nulle. Et, bien sur, si je me suis attaché ici à donner un éclairage particulier sur une méthode qui a très bien fonctionné pour moi, je ne garanti rien en ce qui vous concerne et vous restez seuls responsables de ce que vous entreprendrez sur votre matériel. Bonne chance.
|