Comment installer Python et PySerial sous Windows ? Voilà une question qui m’est revenue plusieurs fois. Si certains ne jurent que par GNU/Linux, d’autres sont attachés à Windows pour des raisons qui leur sont propres…
Installation de Python et PySerial sur un PC sous Windows
Cet article explique comment installer Python et Pyserial sous Windows, ce qui sera utile en particulier si vous connectez votre PC (portable) à un Arduino.
Il peut aussi servir si vous souhaitez raccorder votre PC Windows à un Raspberry Pi en liaison série ou en USB.
Pourquoi cette installation ?
C’est ce qui se passe actuellement au FabLab Utopi où une ancienne CNC CharlyRobot qui ressemble un peu à celle de l’image de gauche (mais ce n’est pas exactement le même modèle) est en cours de remise en état.
Le boîtier de commande a rendu l’âme. La mécanique équipée de ses moteurs pas-à-pas est maintenant propulsée par un Arduino équipé de blocs de commande externes et « costauds » pour activer les moteurs.
Les premiers essais ont été concluants, mais il faut faire d’autres tests et modifications qui nécessitent l’utilisation d’un PC sous Windows et de programmes utilisant Python et PySerial.
Logiciels utilisés
Cette installation a été faite sur un poste équipé de Windows 10. Il faudra un peu adapter pour une installation sur un autre système Windows mais le principe est le même.
- Version de Python au moment de l’écriture de l’article : Python 3.7.0
- Version de PySerial au moment de l’écriture de l’article : Pyserial 3.4
Il faut que 7zip soit installé sur votre machine.
Vous devez savoir utiliser la ligne de commande sous Windows et être à l’aise pour vous déplacer dans l’arborescence du système.
Installation de Python
Rendez vous sur la page de téléchargement de Python et téléchargez la dernière version.
Lorsque vous avez récupéré le fichier (c’est python-3.7.0.exe), double cliquez dessus pour lancer son exécution. La fenêtre ci-dessus s’ouvre.
Cliquez sur Customize installation, pour gérer vous-même les paramètres d’installation.
Allez, on ne tergiverse pas ! Installez la totalité, cochez toutes les cases qui ne le sont pas. Cliquez ensuite sur Next.
Complétez encore ces quelques cases, puis renseignez le répertoire dans lequel vous voulez installer Python. J’ai choisi C:\Python37-32.
Vous êtes libre de choisir le dossier que vous voulez. Il faudra simplement vous en souvenir :).
La case Add Python to environment variables vous évitera d’aller dans les variables système pour ajouter le chemin d’installation de Python.
Cliquez ensuite sur Install pour démarrer l’installation.
Vous pourrez suivre l’évolution du processus d’installation. Dans la fenêtre vous aurez le nom des éléments en cours d’installation et la barre indiquant la progression.
Attendez patiemment la fin de l’installation, selon la machine que vous utilisez ça sera plus ou moins long…
Tout devrait bien se passer. Vous pouvez cliquer sur Disable path lenght limit. Cette limite de 260 caractères avait été fixée au siècle dernier pour DOS, mais avec les systèmes modernes gourmands en ressources, elle est un peu juste, parfois 🙂
Et si je veux modifier mes variables d’environnement ?
Si vous n’avez pas laissé Python modifier le Path, il va falloir le faire manuellement.
Pour Windows 7 vous pouvez vous référer à cet article.
Pour Windows 10, suivez le guide 🙂
Sous Windows 10, dans Rechercher, tapez Path. Cliquez sur Ouvrir dans la partie droite de la fenêtre, sous Modifier les variables d’environnement système.
Vous arrivez dans les Propriétés Système. Cliquez sur le bouton Variables d’environnement en bas de la fenêtre à droite.
Dans la partie basse de la fenêtre Variables d’environnement : Variables système, cliquez sur Path puis sur le bouton Modifier.
Dans la fenêtre Modifier la variable d’environnement cliquez sur le bouton Nouveau en haut à droite. Une ligne va s’ouvrir en bas de la liste. Saisissez le chemin de Python et de Scripts. Si vous avez choisi le même dossier que moi, il suffit de recopier ce qui est écrit, sinon, débrouillez vous :). Quand c’est fini, cliquez sur OK.
Vérifier vos modifications
Vous pouvez re-ouvrir le path pour vérifier que votre modif a été prise en compte. Si vous le faites manuellement, les lignes sont ajoutées à la fin de la liste, par défaut. Si vous utilisez beaucoup (souvent) Python, il vaut mieux remonter vos lignes au début de la liste (tout en haut) comme ci dessus (utilisez le bouton Déplacer vers le haut). En effet, quand vous lancez un programme que Windows ne connait pas, il examine le Path pour le trouver. Et il commence… par le début de la liste ! donc si votre programme se trouve à la fin, à chaque fois Python parcours TOUTE la liste de répertoires et essaye de trouver le programme demandé (ici Python) à l’intérieur de chaque répertoire. S’il ne le trouve pas, il passe au suivant etc. Vous comprenez pourquoi il vaut mieux que Python soit en début de liste 😀
Les tests
Bon, on passe aux choses sérieuses. Ouvrez une fenêtre de ligne de commande (Exécuter => cmd) Vous pouvez vérifier que le path contient bien un chemin vers Python comme ci-dessus.
Le test consiste à taper python suivi de la touche Entrée sur la ligne de commande. Si tout va bien, vous devez voir la version de Python et le prompt du langage : >>>
Quittez en tapant exit() suivi de la touche Entrée.
Siça ne fonctionne pas… vous avez du rater quelque chose… N’allez pas plus loin tant que cela ne fonctionne pas.
Installation de Pyserial
Pour que Python puisse utiliser les ports de COM du PC, que ce soient les ports physiques RS232 ou les ports de COM via USB, il faut installer la librairie PySerial.
Téléchargement de Pyserial
Rendez vous sur la page de téléchargement de Pyserial et récupérez l’archive.
Celle-ci s’appelle pyserial-3.4.tar.gz et vous ne pourrez la décompacter qu’avec un programme spécialement prévu pour ce genre de fichier, ici ce sera 7zip.
Dans un premier temps décompressez l’archive vers pyserial-3.4.tar. Dans ce répertoire vous trouverez un répertoire dist. Entrez dans ce répertoire. Vous y trouvez une archive pyserial-3.4.tar.
Faites à nouveau un clic droit (image ci-dessus) sur le fichier .tar (eh oui il y a 2 niveaux de compression !) et décompressez l’archive vers le dossier pyserial-3.4.
Pour installer pyserial, il faudra vous positionner dans le répertoire pyserial-3.4 créé à la fin de la chaîne de décompression.
Lancez la commande
1 |
python setup.py install |
ce qui devrait vous donner comme ci-dessus un défilement de lignes et aboutir à une installation de pyserial.
ouf
On revient au prompt (à l’invite de commande) et on peut maintenant tester si pyserial est bien installé. tapez python + Entrée et après les >>> tapez import serial + Entrée.
Python ne proteste pas ? C’est que tout s’est bien passé et que pyserial fonctionne sur cette machine.
Conclusion
Une (petite) digression vers la partie obscure de la force, qui j’espère sera utile à ceux qui rechignent encore à passer leur machine sous GNU/Linux.
Sources
- https://learn.adafruit.com/arduino-lesson-17-email-sending-movement-detector/installing-python-and-pyserial
- http://www.isn.cligniez.fr/ressources/pyserial_install.pdf
- https://www.python.org/ftp/python/3.7.0/python-3.7.0.exe
- https://files.pythonhosted.org/packages/cc/74/11b04703ec416717b247d789103277269d567db575d2fd88f25d9767fe3d/pyserial-3.4.tar.gz
Un simple
pip install pyserial
dans le dossier python/scripts aurait dû suffire non?!
Bonjour c’est possible…
mais j’avoue que je « Pythonne » exclusivement sur Raspberry Pi et qu’il n’y a pas ces problèmes d’installation.
Du coup j’ai repris la doc d’Adafruit (citée en sources) pour Windows et suivi leur méthode.
Bonjour. La solution proposée par téléchargement de l’archive est très pratique, quand par exemple on est derrière un firewall au boulot, et que pip ne fonctionne pas. Donc, bien garder cette solution sous le coude !
merci 🙂
Python depuis un pc sous Windows
Installer Visual Studio Community 2017 en cochant simplement la case ‘Développement Python’ dans l’installer.
Installer PySerial : Dans VS , Menu ‘Outils/Python/Environnement Python’ puis on sélectionne ‘Packages’ dans la liste déroulante et on tape juste PySerial dans le champ de saisie.
Voilà, c’est tout installé en moins de 10 clicks.
Cerise sur le cake, si on possède un Raspberry PI, cette installation permet aussi entre autres choses de développer, déployer et faire du remote debugging de projets Python avec lui 😉
Bonjour, j’ai essayer de configurer pyserial dans cmd impossible pourtant j’ai suivi vos instructions ben rien trouve pas le chemin.
Bonjour Patrick
voyez les commentaires il y a d’autres possibilités d’installation.
sinon difficile de vous dire d’où vient votre souci sans plus de détails 🙂
Suivi vos instructions PAS À PAS et… réussite 🙂
Merci pour ce tutoriel!
Oui ca suffit ! pas besoin de toute cette procédure qui pourrait mettre en erreur plus d’un . D’ailleurs j’utilise toujours PIP c’est plus propre, simple et efficace.
merci pour ce retour 🙂
Bonjour,
Je voulais savoir comment vous lancez cette fameuse commande:
python setup.py install
Dans la console « dos » ou dans la console « python »?
Si c’est dans la console « python » j’imagine qu’il faut naviguer à la racine du dossier ou se trouve ce fichier?
Dans l’attente d’une réponse, merci d’avance!
Suite à bataillage une soirée entière, n’oubliez pas, dans l’invite de commandes cmd « finale, d’activer le répertoire dans l’invite CMD… pour changer cela, taper « CD » + chemin complet.
Voila si vous êtes novices et pas trop patients comme moi cela vous fera garder quelques cheveux sur la tête 😉
merci pour cette précision 🙂
Bonjour, lorsque je lance la commande python serial.py install, l’invité de commmande me renvoie : »Python est introuvable. ExÚcutez sans argument pour procÚder Ó l »…
J’ai essayé l’autre solution proposée, mais étant novice je ne suis pas sur d’avoir perçu le sens des étapes et donc si il faut télecharger serial.py dans le dossier des scripts dans le dossier python.
Bonjour
oui comme indiqué en début d’article « vous devez être à l’aise avec la ligne de commande et l’utilisation de l’arborescence… »
Quand vous lancez cette commande, vous devez être dans le dossier où se trouve pyserial c’est juste au dessus de la ligne de commande dans l’article
« Pour installer pyserial, il faudra vous positionner dans le répertoire pyserial-3.4 créé à la fin de la chaîne de décompression. »
Regardez aussi les commentaires, Tiri précise que pour lancer cette commande il faut d’abord se positionner dans le dossier de Python
cd suivi du nom de chemin complet de l’endroit où vous avez décompressé pyserial
dites moi si ça vous a permis d’avancer
cdt
francois
Bonjour j’aimerais savoir comment je peux afficher l’ensemble de ma commande « sh run » parce qu’ici ils me mettent juste une partie.
import serial
ser = serial.Serial(port= »COM4″,baudrate=9600,parity= »N »,stopbits=1,bytesize=8,timeout=8)
ser.write(b’\n’)
ser.write(b’enable\n’)
ser.write(b’sh run\n’)
output = ser.read(4096)
print(output.decode(‘ascii’))
Merci!
Bonjour
je ne vois pas trop
ou ça se trouve dans l’article ? les lignes que vous mettez sont un programme en python…
cdt
francois
Bonjour,
Je suis bloqué à l’étape de la décompression du fichier serial. Je l’ai décompressé une première fois mais pour la deuxième, je ne comprends pas où je dois le décompresser. Je ne trouve pas le répertoire dist.
Merci d’avance
Bonjour Christophe
désolé je n’ai plus de WIN10 sous la main et depuis la parution de l’article (2018) les choses ont sans doute évolué. Voila ce que je peux vous dire
je viens de faire le test sur un win11
Récupérez le fichier pyserial-3.5.tar.gz et enregistrez le dans un dossier que vous connaissez
Décompressez le normalement dans le même dossier vous trouvez maintenant un dossier pyserial-3.5.tar
ouvrez ce dossier : a l’interieur vous trouvez le fameux dossier dist
ouvrez le dossier dist vous y trouvez pyserial-3.5.tar
décompressez le fichier archive pyserial-3.5.tar
vous devez maintenant avoir un dossier pyserial qui contient le pyserial que vous souhaitez
dites moi si ça fonctionne
cdt
francois
Bonjour,
J’ai fait ce que vous avez dit, j’ai téléchargé le dossier, je l’ai décompressé. Celui-ci a bien le nom de pyserial-3.5tar. Cependant, je ne trouve pas le dossier dist à l’intérieur. Dedans je retrouve des fichiers et dossiers tels que: setup, README.rst, LICENSE, documentation, examples, test, etc.
Christophe
Bonjour Christophe.
effectivement quand on décompresse on obtient directement les fichiers setup… documentation, examples…
donc c’est bon ! ne cherchez pas le fichier dist
cdt
francois
Bonjour,
J’ai finalement réussi à installer pyserial. Le problème venait de l’absence du module setuptools. Après l’avoir installé, j’ai pu installer pyserial sans difficulté.
Merci à vous de continuer à répondre aux commentaires, autant de temps après la publication de votre article.
Bonne journée,
Christophe