ressources:bios

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
ressources:bios [2026/01/01 21:17] – créée louiressources:bios [2026/01/29 12:08] (Version actuelle) – modification externe 127.0.0.1
Ligne 1: Ligne 1:
 ===== Guide pour flasher un bios ===== ===== Guide pour flasher un bios =====
  
-On appelle ''BIOS''((BIOS signifie à l'origine Basic Input Output System et est le nom du premier standar utilisé par les PCs, le nouveau système s'appelle UEFI mais le terme BIOS est resté)) le logiciel de démarage du PC+==== Présentation ==== 
 + 
 +** Le BIOS ** 
 + 
 +On appelle ''BIOS''((BIOS signifie à l'origine Basic Input Output System et est le nom du premier standar utilisé par les PCs, le nouveau système s'appelle UEFI mais le terme BIOS est resté)) le logiciel de démarage du PC
 + 
 +C'est la premiere chose que le processeur éxecute au démarage du PC. 
 + 
 +Il est possible de le configurer pour démarer sur une clef USB par exemple. 
 + 
 +** Le flash ** 
 + 
 +Le BIOS est stocké sur une puce mémoire ''flash'' sur la carte mère d'un PC. 
 + 
 +Les puces de mémoire flash sont utilisé pour stocké des données dans plusieurs contexte electroniques. C'est un type de mémoire plutot lent et qui n'est pas fait pour être modifié un grand nombre de fois.  
 + 
 +On dit qu'on ''flashe'' un puce mémoire quand on modifie son contenu. 
 + 
 +** Pouquoi ? ** 
 + 
 +Il existe plusieurs cas qui peuvent amener à flasher un BIOS. 
 + 
 +Par exemple :  
 + 
 +  * Le BIOS a été protégé par un mot de passe perdu et on a besoin d'y accéder 
 +  * Le PC s'est éteint pendant une mise à jour du BIOS et le contenu de la puce est devenu corrompu.  
 +  * Le BIOS présent sur le PC bloque des fonctionnalités qui devrait être possible. 
 + 
 +Dans ces cas la, notre but va être de remplacer le contenu de la puce BIOS avec un autre compatible. 
 + 
 +''Remplacer le BIOS est une opération risqué, si le BIOS n'est pas compatible ou si le flashage ne se passe pas bien, le PC ne pourra plus s'allumer.'' 
 + 
 +Voici les grande ligne de l'opération 
 + 
 +  - Ouvrir le PC pour avoir accés à la puce et voir la version de la carte mère. 
 +  - Trouver le code d'un BIOS compatible avec la carte mère du PC 
 +  - Brancher l'appareil qui nous permet de flasher la puce sur la puce et à notre PC. 
 +  - Lancer le programme qui permet de lire l'ancien BIOS deux fois 
 +  - Comparer que les deux fichiers sont bien les même pour confirmer que la lecture c'est bien passé. 
 +  - Lancer le programme qui permet d'écrire le code trouvé précédemment sur la puce. 
 + 
 +==== Flasheurs ==== 
 + 
 +Afin de flasher un puce, il va falloir utiliser un appareil spécialisé que l'on branche à un pc et à la puce. 
 + 
 +  * Raspberry Pico avec pico-serprog 
 +  * Arduino avec serprog 
 +  * ch341a 
 +  * Raspberry avec linux_spi  
 + 
 +Chaque flasheur fonctionne avec un voltage qui est soit de 5 volt soit de 3.3 volt.  
 + 
 +Il existe des puces BIOS qui fonctionne à 5 volt, 3,3 volt ou 1.8 volt. Les plus récente ont tendance à être en 1.8 volt. 
 + 
 +Il ne faut pas essayer de flasher une puce avec un voltage supérieur à celui prévu. 
 + 
 +Pour baisser le voltage d'un flasheur, on utilise un adaptateur. 
 + 
 +==== Logiciel pour flasher ==== 
 + 
 +On utilise [[https://www.flashrom.org/|flashrom]] pour commander au flasheur de flasher. 
 + 
 +** Installation ** 
 + 
 +Il est possible de l'installer sur des dérivé de debian avec  
 + 
 +<code> 
 +sudo apt install flashrom 
 +</code> 
 + 
 +Mais il est préférable de le compiler pour avoir la dernière version du logiciel. 
 + 
 +[[https://www.flashrom.org/dev_guide/building_from_source.html|Ici la documentation]] 
 + 
 +** Utilisation ** 
 + 
 +Flashrom est un lgociel qui s'utilise depuis un terminal. 
 + 
 +Pour l'utiliser nous allons avoir besoin de préciser le flasheur utilisé ainsi que son nom une fois branché. 
 + 
 +Dans le cas d'une raspberry avec [[https://github.com/stacksmashing/pico-serprog|pico serprog]].  
 +Notre flasheur utilise le module serprog, on précise donc cela aprés avoir indiqué ''-p''
 + 
 +La documentation de serprog nous indique que l'ont doit indiqué deux paramètre ''dev'' et ''spispeed'' 
 + 
 +''spispeed'' est mis a 1M par défaut ce qui signifie que la communication entre la puce et le flasheur sera cadensé à 1MHz. 
 + 
 +''dev'' est le nom que le flasheur a pris une fois connecté au PC ainsi que la vitesse de communication entre le PC et le flasheur. 
 + 
 +115200 est la vitesse par défaut et signifie que la quantité d'infoirmation communiqué entre la PC et le flasheur en 1 seconde sera au maximum de 115200 bits. 
 + 
 +Ces valeurs devraient fonctionner avec la plupart des puces et flasheurs mais il peux être intéréssant de ralentir ces vitesses si le flash ne fonctionne pas. 
 + 
 +Pour trouver le nom du flasheur, il nous faut connecter le flasheur puis entrer la commande suivante 
 + 
 +<code>sudo dmesg | more</code> 
 + 
 +Cela devrait nous afficher des messages qui indiquent qu'un nouvelle appareil a été connecté et quelque part dans ce texte devrait se trouvé une phrase du type. 
 + 
 +''Device now attached to ttyACM0'' 
 + 
 +La partie qui nous intéresse est ''ttyACM0''. Sur certain système le nom sera différent. 
 + 
 +Avec tout cela voici a quoi ressemble la commande 
 + 
 +<code> 
 +sudo flashrom -p serprog:dev=/dev/ttyACM0:115200,spispeed=1M 
 +</code> 
 + 
 +Il ne nous reste plus qu'à indiqué si l'ont a envie de lire ou d'écrire sur la puce. 
 + 
 +Pour lire on utilise '-r'
 + 
 +<code> 
 +sudo flashrom -p serprog:dev=/dev/ttyACM0:115200,spispeed=1M -r nom_que_tu_veux.bin 
 +</code> 
 + 
 +Si la lecture réussi, le contenu de la puce devrait être dans ''nom_que_tu_veux.bin'' 
 + 
 +Pour écrire on utilise '-w' en indiquant le fichier contenant le code que l'on veut écrire. 
 + 
 +<code> 
 +sudo flashrom -p serprog:dev=/dev/ttyACM0:115200,spispeed=1M -w le_fichier_qu'on veut écrire.bin 
 +</code> 
 + 
 +==== Trouver un BIOS compatible ==== 
 + 
 +Pour trouver un BIOS compatible, il faut trouver l'identifiant de la carte mère. Il devrait se trouver imprimer sur la carte. 
 + 
 +Une fois le modèle trouvé, plusieurs possiblités 
 + 
 +  * Trouver le BIOS sur [[https://nuage.liiib.re/s/diXobgLQt57DJGY|le cloud de la rebooterie]] 
 +  * Trouver le BIOS sur [[https://www.badcaps.net/forum/troubleshooting-hardware-devices-and-electronics-theory/troubleshooting-laptops-tablets-and-mobile-devices/bios-requests-only|badcaps]]. C'est un forums ou des gens se partagent souvent des BIOS. Il faut s'inscrire pour télécharger des fichiers. 
 +  * Trouver un PC avec le même modèle de carte mèreet en lire le BIOS  
 +  
 +==== Flasher le Bios ==== 
 + 
 +==== Problèmes courants ====
  • ressources/bios.1767298655.txt.gz
  • Dernière modification : 2026/01/29 12:08
  • (modification externe)