{"id":2942,"date":"2025-07-26T16:18:03","date_gmt":"2025-07-26T15:18:03","guid":{"rendered":"https:\/\/workboot.fr\/ciela\/?page_id=2942"},"modified":"2025-07-29T09:55:10","modified_gmt":"2025-07-29T08:55:10","slug":"gpio-sysfs","status":"publish","type":"page","link":"https:\/\/workboot.fr\/ciela\/gpio-sysfs\/","title":{"rendered":"GPIO SYSFS obsol\u00e8te"},"content":{"rendered":"\n<h1 class=\"wp-block-heading\">Pr\u00e9sentation:<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Sysfs<\/strong>&nbsp;(System File System) est un m\u00e9canisme du noyau Linux qui permet d&rsquo;interagir avec les p\u00e9riph\u00e9riques mat\u00e9riels, comme les&nbsp;<strong>GPIO<\/strong>&nbsp;(General Purpose Input\/Output), via des fichiers virtuels dans le syst\u00e8me de fichiers.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">C&rsquo;est une m\u00e9thode simple pour apprendre \u00e0 contr\u00f4ler les broches GPIO depuis un terminal ou des scripts shell, mais elle est aujourd&rsquo;hui consid\u00e9r\u00e9e comme&nbsp;<em>legacy<\/em>&nbsp;(obsol\u00e8te) et remplac\u00e9e par&nbsp;<code>libgpiod<\/code>&nbsp;dans les nouvelles versions de Linux.<\/p>\n\n\n\n<h1 class=\"wp-block-heading\"><strong>&nbsp;Structure de Sysfs pour les GPIO<\/strong><\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Toutes les op\u00e9rations se font via des fichiers dans&nbsp;<code>\/sys\/class\/gpio\/<\/code>&nbsp;:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th class=\"has-text-align-left\" data-align=\"left\">Fichier\/Dossier<\/th><th class=\"has-text-align-left\" data-align=\"left\">Description<\/th><\/tr><\/thead><tbody><tr><td><code>\/sys\/class\/gpio\/export<\/code><\/td><td>\u00c9criture d&rsquo;un num\u00e9ro de GPIO pour l&rsquo;activer<\/td><\/tr><tr><td><code>\/sys\/class\/gpio\/unexport<\/code><\/td><td>\u00c9criture d&rsquo;un num\u00e9ro de GPIO pour le d\u00e9sactiver<\/td><\/tr><tr><td><code>\/sys\/class\/gpio\/gpioXX\/<\/code><\/td><td>Dossier cr\u00e9\u00e9 pour chaque GPIO export\u00e9 (XX = num\u00e9ro)<\/td><\/tr><tr><td><code>direction<\/code>&nbsp;(<code>in<\/code>&nbsp;ou&nbsp;<code>out<\/code>)<\/td><td>D\u00e9finit si la broche est en entr\u00e9e ou sortie<\/td><\/tr><tr><td><code>value<\/code>&nbsp;(<code>0<\/code>&nbsp;ou&nbsp;<code>1<\/code>)<\/td><td>Lit ou \u00e9crit l&rsquo;\u00e9tat logique de la broche<\/td><\/tr><tr><td><code>edge<\/code>&nbsp;(<code>none<\/code>,&nbsp;<code>rising<\/code>,&nbsp;<code>falling<\/code>,&nbsp;<code>both<\/code>)<\/td><td>Configure une interruption (pour les entr\u00e9es)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h1 class=\"wp-block-heading\"><strong>Exemple Pratique : Allumer une LED (GPIO17)<\/strong><\/h1>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>\ud83d\udccc Configuration initiale<\/strong><\/h3>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li><strong>V\u00e9rifier que Sysfs est disponible<\/strong>\u00a0(sur les vieilles versions de Raspberry Pi OS) :<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>ls \/sys\/class\/gpio\/<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">on doit obtenir quelque chose comme \u00e7a:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>bruno@rpi364:~\/Works\/gpio1 $ ls \/sys\/class\/gpio\/\nexport  gpiochip0  gpiochip504  unexport<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Exporter la broche GPIO17<\/strong>\u00a0:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>echo 17 > \/sys\/class\/gpio\/export<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Cr\u00e9e le dossier\u00a0<code>\/sys\/class\/gpio\/gpio17\/<\/code>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Configurer en sortie<\/strong>\u00a0:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>echo out > \/sys\/class\/gpio\/gpio17\/direction<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>\ud83d\udca1 Allumer\/\u00c9teindre la LED<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">En fait la broche GPIO17 va sortir un 1 , ici une tension de 3,3V<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>echo 1 > \/sys\/class\/gpio\/gpio17\/value<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>\u00c9teindre (0V)<\/strong>\u00a0<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">La broche GPIO17 va sortir 0 , ici une tension 0V<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>echo 0 > \/sys\/class\/gpio\/gpio17\/value<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>\ud83d\udd0c Nettoyage (quand termin\u00e9)<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>echo 17 > \/sys\/class\/gpio\/unexport<\/code><\/pre>\n\n\n\n<h1 class=\"wp-block-heading\"><strong>Autre Exemple : Lire un Bouton (GPIO27)<\/strong><\/h1>\n\n\n\n<pre class=\"wp-block-code\"><code>echo 27 > \/sys\/class\/gpio\/export\necho in > \/sys\/class\/gpio\/gpio27\/direction<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Lire l&rsquo;\u00e9tat !<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>cat \/sys\/class\/gpio\/gpio27\/value<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">on a fini ! on d\u00e9branche<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>echo 27 > \/sys\/class\/gpio\/unexport<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Pr\u00e9sentation: Sysfs&nbsp;(System File System) est un m\u00e9canisme du noyau Linux qui permet d&rsquo;interagir avec les p\u00e9riph\u00e9riques mat\u00e9riels, comme les&nbsp;GPIO&nbsp;(General Purpose Input\/Output), via des fichiers virtuels dans le syst\u00e8me de fichiers. [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","_uag_custom_page_level_css":"","footnotes":""},"class_list":["post-2942","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>GPIO SYSFS obsol\u00e8te - workboot<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/workboot.fr\/ciela\/gpio-sysfs\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"GPIO SYSFS obsol\u00e8te - workboot\" \/>\n<meta property=\"og:description\" content=\"Pr\u00e9sentation: Sysfs&nbsp;(System File System) est un m\u00e9canisme du noyau Linux qui permet d&rsquo;interagir avec les p\u00e9riph\u00e9riques mat\u00e9riels, comme les&nbsp;GPIO&nbsp;(General Purpose Input\/Output), via des fichiers virtuels dans le syst\u00e8me de fichiers. [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/workboot.fr\/ciela\/gpio-sysfs\/\" \/>\n<meta property=\"og:site_name\" content=\"workboot\" \/>\n<meta property=\"article:modified_time\" content=\"2025-07-29T08:55:10+00:00\" \/>\n<meta name=\"twitter:label1\" content=\"Dur\u00e9e de lecture estim\u00e9e\" \/>\n\t<meta name=\"twitter:data1\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/workboot.fr\\\/ciela\\\/gpio-sysfs\\\/\",\"url\":\"https:\\\/\\\/workboot.fr\\\/ciela\\\/gpio-sysfs\\\/\",\"name\":\"GPIO SYSFS obsol\u00e8te - workboot\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/workboot.fr\\\/ciela\\\/#website\"},\"datePublished\":\"2025-07-26T15:18:03+00:00\",\"dateModified\":\"2025-07-29T08:55:10+00:00\",\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/workboot.fr\\\/ciela\\\/gpio-sysfs\\\/\"]}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/workboot.fr\\\/ciela\\\/#website\",\"url\":\"https:\\\/\\\/workboot.fr\\\/ciela\\\/\",\"name\":\"workboot\",\"description\":\"Open Source, Open Minds \",\"publisher\":{\"@id\":\"https:\\\/\\\/workboot.fr\\\/ciela\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/workboot.fr\\\/ciela\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fr-FR\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/workboot.fr\\\/ciela\\\/#organization\",\"name\":\"workboot\",\"url\":\"https:\\\/\\\/workboot.fr\\\/ciela\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\\\/\\\/workboot.fr\\\/ciela\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/workboot.fr\\\/ciela\\\/wp-content\\\/uploads\\\/2025\\\/05\\\/logo_ciel-dorian-1.png\",\"contentUrl\":\"https:\\\/\\\/workboot.fr\\\/ciela\\\/wp-content\\\/uploads\\\/2025\\\/05\\\/logo_ciel-dorian-1.png\",\"width\":1024,\"height\":950,\"caption\":\"workboot\"},\"image\":{\"@id\":\"https:\\\/\\\/workboot.fr\\\/ciela\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"GPIO SYSFS obsol\u00e8te - workboot","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/workboot.fr\/ciela\/gpio-sysfs\/","og_locale":"fr_FR","og_type":"article","og_title":"GPIO SYSFS obsol\u00e8te - workboot","og_description":"Pr\u00e9sentation: Sysfs&nbsp;(System File System) est un m\u00e9canisme du noyau Linux qui permet d&rsquo;interagir avec les p\u00e9riph\u00e9riques mat\u00e9riels, comme les&nbsp;GPIO&nbsp;(General Purpose Input\/Output), via des fichiers virtuels dans le syst\u00e8me de fichiers. [&hellip;]","og_url":"https:\/\/workboot.fr\/ciela\/gpio-sysfs\/","og_site_name":"workboot","article_modified_time":"2025-07-29T08:55:10+00:00","twitter_misc":{"Dur\u00e9e de lecture estim\u00e9e":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/workboot.fr\/ciela\/gpio-sysfs\/","url":"https:\/\/workboot.fr\/ciela\/gpio-sysfs\/","name":"GPIO SYSFS obsol\u00e8te - workboot","isPartOf":{"@id":"https:\/\/workboot.fr\/ciela\/#website"},"datePublished":"2025-07-26T15:18:03+00:00","dateModified":"2025-07-29T08:55:10+00:00","inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/workboot.fr\/ciela\/gpio-sysfs\/"]}]},{"@type":"WebSite","@id":"https:\/\/workboot.fr\/ciela\/#website","url":"https:\/\/workboot.fr\/ciela\/","name":"workboot","description":"Open Source, Open Minds ","publisher":{"@id":"https:\/\/workboot.fr\/ciela\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/workboot.fr\/ciela\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fr-FR"},{"@type":"Organization","@id":"https:\/\/workboot.fr\/ciela\/#organization","name":"workboot","url":"https:\/\/workboot.fr\/ciela\/","logo":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/workboot.fr\/ciela\/#\/schema\/logo\/image\/","url":"https:\/\/workboot.fr\/ciela\/wp-content\/uploads\/2025\/05\/logo_ciel-dorian-1.png","contentUrl":"https:\/\/workboot.fr\/ciela\/wp-content\/uploads\/2025\/05\/logo_ciel-dorian-1.png","width":1024,"height":950,"caption":"workboot"},"image":{"@id":"https:\/\/workboot.fr\/ciela\/#\/schema\/logo\/image\/"}}]}},"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false},"uagb_author_info":{"display_name":"admin","author_link":"https:\/\/workboot.fr\/ciela\/author\/admin\/"},"uagb_comment_info":0,"uagb_excerpt":"Pr\u00e9sentation: Sysfs&nbsp;(System File System) est un m\u00e9canisme du noyau Linux qui permet d&rsquo;interagir avec les p\u00e9riph\u00e9riques mat\u00e9riels, comme les&nbsp;GPIO&nbsp;(General Purpose Input\/Output), via des fichiers virtuels dans le syst\u00e8me de fichiers. [&hellip;]","_links":{"self":[{"href":"https:\/\/workboot.fr\/ciela\/wp-json\/wp\/v2\/pages\/2942","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/workboot.fr\/ciela\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/workboot.fr\/ciela\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/workboot.fr\/ciela\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/workboot.fr\/ciela\/wp-json\/wp\/v2\/comments?post=2942"}],"version-history":[{"count":5,"href":"https:\/\/workboot.fr\/ciela\/wp-json\/wp\/v2\/pages\/2942\/revisions"}],"predecessor-version":[{"id":3241,"href":"https:\/\/workboot.fr\/ciela\/wp-json\/wp\/v2\/pages\/2942\/revisions\/3241"}],"wp:attachment":[{"href":"https:\/\/workboot.fr\/ciela\/wp-json\/wp\/v2\/media?parent=2942"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}