{"id":172,"date":"2026-03-11T21:24:22","date_gmt":"2026-03-11T20:24:22","guid":{"rendered":"https:\/\/fankepa.com\/?p=172"},"modified":"2026-03-14T21:47:41","modified_gmt":"2026-03-14T20:47:41","slug":"systeme-de-controle-dacces-intelligent-avec-raspberry-pi-et-home-assistant","status":"publish","type":"post","link":"https:\/\/fankepa.com\/?p=172","title":{"rendered":"Projet : Syst\u00e8me de Contr\u00f4le d&rsquo;Acc\u00e8s Intelligent avec Raspberry Pi et Home Assistant"},"content":{"rendered":"\n<p style=\"font-size: 20px; font-style: italic; color: #555; border-left: 4px solid #667eea; padding-left: 20px; margin: 30px 0;\"> Contr\u00f4le par smartphone et verrouillage automatique. Voici comment j&rsquo;ai fait.\n<\/p>\n\n<h2 style=\"color: #333; font-size: 28px; margin-top: 40px;\">\ud83d\udca1 Le probl\u00e8me<\/h2>\n\n<p style=\"font-size: 17px; line-height: 1.8; color: #555;\">\n  Combien de fois avez-vous oubli\u00e9 vos cl\u00e9s ? Combien de fois avez-vous d\u00fb faire un double pour un proche ou un artisan ? J&rsquo;en avais marre de ce syst\u00e8me archa\u00efque. Il fallait une solution moderne, s\u00e9curis\u00e9e et accessible.\n<\/p>\n\n<h2 style=\"color: #333; font-size: 28px; margin-top: 40px;\">\u2728 La solution : Un syst\u00e8me intelligent <\/h2>\n\n<p style=\"font-size: 17px; line-height: 1.8; color: #555;\">\n  Avec un Raspberry Pi, quelques composants \u00e9lectroniques et Home Assistant, j&rsquo;ai cr\u00e9\u00e9 un syst\u00e8me de verrouillage intelligent qui me permet de :\n<\/p>\n\n<ul style=\"font-size: 17px; line-height: 2; color: #555; margin: 20px 0 20px 40px;\">\n  <li>\ud83d\udcf1 <strong>Contr\u00f4ler \u00e0 distance<\/strong> depuis mon smartphone (iOS\/Android)<\/li>\n  <li>\ud83d\udd12 <strong>Verrouillage automatique<\/strong> apr\u00e8s 2 minutes<\/li>\n  <li>\ud83d\udca1 <strong>Notifications en temps r\u00e9el<\/strong> \u00e0 chaque ouverture<\/li>\n  <li>\ud83d\udcca <strong>Historique complet<\/strong> des acc\u00e8s<\/li>\n<\/ul>\n\n<!-- Vid\u00e9o YouTube -->\n<h2 style=\"color: #333; font-size: 28px; margin-top: 40px;\">\ud83c\udfa5 D\u00e9monstration vid\u00e9o<\/h2>\n\n<p style=\"font-size: 17px; line-height: 1.8; color: #555;\">\n  Avant de rentrer dans les d\u00e9tails techniques, voici une d\u00e9monstration du syst\u00e8me en action :\n<\/p>\n\n<div style=\"position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; margin: 30px 0; border-radius: 10px; box-shadow: 0 4px 6px rgba(0,0,0,0.1);\">\n  <iframe style=\"position: absolute; top: 0; left: 0; width: 100%; height: 100%;\" \n    src=\"https:\/\/www.youtube.com\/embed\/jaBvdNTXv4g\" \n    frameborder=\"0\" \n    allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" \n    allowfullscreen>\n  <\/iframe>\n<\/div>\n\n<h2 style=\"color: #333; font-size: 28px; margin-top: 40px;\">\ud83d\udee0\ufe0f Liste du mat\u00e9riel <\/h2>\n\n<p style=\"font-size: 17px; line-height: 1.8; color: #555;\">\n  Voici tout ce dont vous avez besoin pour reproduire ce projet :\n<\/p>\n\n<div style=\"overflow-x: auto; margin: 30px 0;\">\n  <table style=\"width: 100%; border-collapse: collapse; box-shadow: 0 2px 4px rgba(0,0,0,0.1);\">\n    <thead>\n      <tr style=\"background: #667eea; color: white;\">\n        <th style=\"padding: 15px; text-align: left; border: 1px solid #ddd;\">Composant<\/th>\n        <th style=\"padding: 15px; text-align: left; border: 1px solid #ddd;\">Mod\u00e8le<\/th>\n      <\/tr>\n    <\/thead>\n    <tbody>\n      <tr style=\"background: #f8f9fa;\">\n        <td style=\"padding: 12px; border: 1px solid #ddd;\">Microcontr\u00f4leur<\/td>\n        <td style=\"padding: 12px; border: 1px solid #ddd;\">Raspberry Pi 4 (4GB)<\/td>\n      <\/tr>\n      <tr>\n        <td style=\"padding: 12px; border: 1px solid #ddd;\">Servo-moteur<\/td>\n        <td style=\"padding: 12px; border: 1px solid #ddd;\">MG996R 180\u00b0<\/td>\n      <\/tr>\n      <tr>\n        <td style=\"padding: 12px; border: 1px solid #ddd;\">\u00c9cran LCD<\/td>\n        <td style=\"padding: 12px; border: 1px solid #ddd;\">LCD I2C 16&#215;2<\/td>\n      <\/tr>\n      <tr style=\"background: #f8f9fa;\">\n        <td style=\"padding: 12px; border: 1px solid #ddd;\">LED + Divers<\/td>\n        <td style=\"padding: 12px; border: 1px solid #ddd;\">LED RGB, c\u00e2bles, r\u00e9sistances<\/td>\n      <\/tr>\n      <tr>\n        <td style=\"padding: 12px; border: 1px solid #ddd;\">Alimentation<\/td>\n        <td style=\"padding: 12px; border: 1px solid #ddd;\">5V 3A USB-C<\/td>\n      <\/tr>\n    <\/tbody>\n  <\/table>\n<\/div>\n\n<h2 style=\"color: #333; font-size: 28px; margin-top: 40px;\">\ud83c\udfd7\ufe0f Comment \u00e7a fonctionne ?<\/h2>\n\n<p style=\"font-size: 17px; line-height: 1.8; color: #555;\">\n  Le syst\u00e8me repose sur 3 piliers :\n<\/p>\n\n<div style=\"display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 20px; margin: 30px 0;\">\n  \n  <div style=\"background: #f0f7ff; padding: 25px; border-radius: 10px; border-left: 4px solid #2196f3;\">\n    <h3 style=\"color: #1565c0; font-size: 20px; margin-bottom: 15px;\">1\ufe0f\u20e3 Raspberry Pi<\/h3>\n    <p style=\"color: #555; font-size: 15px; line-height: 1.6;\">\n      Le cerveau du syst\u00e8me. Il g\u00e8re le clavier, contr\u00f4le le servo-moteur, affiche les messages sur le LCD et communique avec Home Assistant via MQTT.\n    <\/p>\n  <\/div>\n  \n  <div style=\"background: #f3e5f5; padding: 25px; border-radius: 10px; border-left: 4px solid #9c27b0;\">\n    <h3 style=\"color: #6a1b9a; font-size: 20px; margin-bottom: 15px;\">2\ufe0f\u20e3 Home Assistant<\/h3>\n    <p style=\"color: #555; font-size: 15px; line-height: 1.6;\">\n      La plateforme domotique qui permet de contr\u00f4ler la porte depuis une interface web ou mobile. Synchronisation en temps r\u00e9el, notifications push et historique complet.\n    <\/p>\n  <\/div>\n  \n  <div style=\"background: #e8f5e9; padding: 25px; border-radius: 10px; border-left: 4px solid #4caf50;\">\n    <h3 style=\"color: #2e7d32; font-size: 20px; margin-bottom: 15px;\">3\ufe0f\u20e3 MQTT Protocol<\/h3>\n    <p style=\"color: #555; font-size: 15px; line-height: 1.6;\">\n      Le protocole de communication qui fait le lien entre le Raspberry Pi et Home Assistant. L\u00e9ger, rapide et fiable.\n    <\/p>\n  <\/div>\n  \n<\/div>\n\n<!-- Sch\u00e9ma simplifi\u00e9 -->\n<div style=\"background: #f8f9fa; padding: 30px; border-radius: 10px; margin: 30px 0; text-align: center;\">\n  <h3 style=\"color: #333; font-size: 22px; margin-bottom: 20px;\">\ud83d\udcca Architecture du syst\u00e8me<\/h3>\n  <pre style=\"background: white; padding: 20px; border-radius: 8px; text-align: left; overflow-x: auto; font-size: 14px; color: #333;\">\n                        \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510         \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n                        \u2502 Raspberry Pi \u2502 <\u2500\u2500\u2500\u2500\u2500\u2500 \u2502 Smartphone  \u2502\n                        \u2502   + Python   \u2502  MQTT   \u2502    Home     \u2502\n                        \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518         \u2502  Assistant  \u2502\n                              \u2502                  \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n                              \u25bc\n                        \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n                        \u2502  Servo   \u2502\n                        \u2502  Motor   \u2502\n                        \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n  <\/pre>\n<\/div>\n\n<h2 style=\"color: #333; font-size: 28px; margin-top: 40px;\">\ud83d\udcbb Stack technique<\/h2>\n\n<div style=\"display: flex; flex-wrap: wrap; gap: 10px; margin: 20px 0;\">\n  <span style=\"background: #3776ab; color: white; padding: 8px 16px; border-radius: 20px; font-size: 14px;\">\ud83d\udc0d Python 3.9+<\/span>\n  <span style=\"background: #c51a4a; color: white; padding: 8px 16px; border-radius: 20px; font-size: 14px;\">\ud83e\udd67 Raspberry Pi<\/span>\n  <span style=\"background: #660099; color: white; padding: 8px 16-radius: 20px; font-size: 14px;\">\ud83d\udce1 MQTT<\/span>\n  <span style=\"background: #41bdf5; color: white; padding: 8px 16px; border-radius: 20px; font-size: 14px;\">\ud83c\udfe0 Home Assistant<\/span>\n  <span style=\"background: #2496ed; color: white; padding: 8px 16px; border-radius: 20px; font-size: 14px;\">\ud83d\udc33 Docker<\/span>\n  <span style=\"background: #ff6b6b; color: white; padding: 8px 16px; border-radius: 20px; font-size: 14px;\">\u26a1 GPIO Zero<\/span>\n<\/div>\n\n<h2 style=\"color: #333; font-size: 28px; margin-top: 40px;\">\ud83d\udcda Ressources pour reproduire le projet<\/h2>\n\n<p style=\"font-size: 17px; line-height: 1.8; color: #555;\">\n  Tout le code source et la documentation sont disponibles gratuitement :\n<\/p>\n\n<div style=\"background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); padding: 40px; border-radius: 10px; margin: 30px 0;\">\n  \n  <div style=\"display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 15px;\">\n    \n    <a href=\"https:\/\/github.com\/FILSTOGNO\/smart-door-homeassistant\" target=\"_blank\" style=\"background: white; padding: 20px; border-radius: 8px; text-align: center; text-decoration: none; color: #333;\">\n      <div style=\"font-size: 40px; margin-bottom: 10px;\">\ud83d\udce6<\/div>\n      <strong style=\"color: #667eea;\">Code Source<\/strong>\n      <p style=\"font-size: 13px; color: #666; margin-top: 5px;\">GitHub complet<\/p>\n    <\/a>\n    \n    <a href=\"https:\/\/github.com\/FILSTOGNO\/smart-door-homeassistant\/blob\/main\/README.md\" target=\"_blank\" style=\"background: white; padding: 20px; border-radius: 8px; text-align: center; text-decoration: none; color: #333;\">\n      <div style=\"font-size: 40px; margin-bottom: 10px;\">\ud83d\udcd6<\/div>\n      <strong style=\"color: #667eea;\">Documentation<\/strong>\n      <p style=\"font-size: 13px; color: #666; margin-top: 5px;\">Guide complet<\/p>\n    <\/a>\n    \n    <a href=\"https:\/\/www.youtube.com\/watch?v=jaBvdNTXv4g\" target=\"_blank\" style=\"background: white; padding: 20px; border-radius: 8px; text-align: center; text-decoration: none; color: #333;\">\n      <div style=\"font-size: 40px; margin-bottom: 10px;\">\ud83c\udfa5<\/div>\n      <strong style=\"color: #ff0000;\">Vid\u00e9o YouTube<\/strong>\n      <p style=\"font-size: 13px; color: #666; margin-top: 5px;\">Tutorial vid\u00e9o<\/p>\n    <\/a>\n    \n  <\/div>\n  \n<\/div>\n\n<!-- Conclusion -->\n<div style=\"background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); padding: 50px 30px; border-radius: 10px; margin: 50px 0; text-align: center; color: white;\">\n  <h2 style=\"font-size: 32px; margin-bottom: 20px; color: white;\">\ud83c\udfaf Envie de reproduire ce projet ?<\/h2>\n  <p style=\"font-size: 18px; margin-bottom: 30px; opacity: 0.9; line-height: 1.6;\">\n    Tout le code source est disponible gratuitement sur GitHub. N'h\u00e9sitez pas \u00e0 me poser vos questions en commentaire ou \u00e0 ouvrir une issue sur le projet !\n  <\/p>\n  \n  <div>\n    <a href=\"https:\/\/github.com\/FILSTOGNO\/smart-door-homeassistant\" target=\"_blank\" style=\"background: white; color: #667eea; padding: 15px 30px; border-radius: 5px; text-decoration: none; margin: 10px; display: inline-block; font-weight: bold;\">\n      \u2b50 Voir le projet sur GitHub\n    <\/a>\n    <a href=\"https:\/\/www.youtube.com\/watch?v=jaBvdNTXv4g\" target=\"_blank\" style=\"background: #ff0000; color: white; padding: 15px 30px; border-radius: 5px; text-decoration: none; margin: 10px; display: inline-block; font-weight: bold;\">\n      \ud83d\udcfa Regarder la vid\u00e9o\n    <\/a>\n  <\/div>\n  \n  <p style=\"font-size: 14px; margin-top: 30px; opacity: 0.8;\">\n    \u2b50 Si ce projet vous pla\u00eet, mettez une \u00e9toile sur GitHub ! \u2b50\n  <\/p>\n<\/div>\n\n<!-- Call to action social -->\n<div style=\"background: #f8f9fa; padding: 30px; border-radius: 10px; text-align: center; margin: 40px 0;\">\n  <p style=\"font-size: 16px; color: #555; margin-bottom: 15px;\">\ud83d\udce2 Partagez cet article si vous l'avez trouv\u00e9 int\u00e9ressant !<\/p>\n  <div style=\"display: flex; justify-content: center; gap: 10px; flex-wrap: wrap;\">\n    <!-- Les boutons de partage WordPress appara\u00eetront automatiquement si vous avez un plugin -->\n  <\/div>\n<\/div>\n\n\n<figure class=\"wp-block-post-featured-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1036\" height=\"652\" src=\"https:\/\/fankepa.com\/wp-content\/uploads\/2026\/03\/PO.png\" class=\"attachment-post-thumbnail size-post-thumbnail wp-post-image\" alt=\"\" style=\"object-fit:cover;\" srcset=\"https:\/\/fankepa.com\/wp-content\/uploads\/2026\/03\/PO.png 1036w, https:\/\/fankepa.com\/wp-content\/uploads\/2026\/03\/PO-300x189.png 300w, https:\/\/fankepa.com\/wp-content\/uploads\/2026\/03\/PO-1024x644.png 1024w, https:\/\/fankepa.com\/wp-content\/uploads\/2026\/03\/PO-768x483.png 768w\" sizes=\"auto, (max-width: 1036px) 100vw, 1036px\" \/><\/figure>","protected":false},"excerpt":{"rendered":"<p>Contr\u00f4le par smartphone et verrouillage automatique. Voici comment j&rsquo;ai fait. \ud83d\udca1 Le probl\u00e8me Combien de fois avez-vous oubli\u00e9 vos cl\u00e9s [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":316,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"_glsr_average":0,"_glsr_ranking":0,"_glsr_reviews":0,"footnotes":""},"categories":[1],"tags":[],"class_list":["post-172","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-non-classe"],"_links":{"self":[{"href":"https:\/\/fankepa.com\/index.php?rest_route=\/wp\/v2\/posts\/172","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fankepa.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fankepa.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fankepa.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fankepa.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=172"}],"version-history":[{"count":7,"href":"https:\/\/fankepa.com\/index.php?rest_route=\/wp\/v2\/posts\/172\/revisions"}],"predecessor-version":[{"id":317,"href":"https:\/\/fankepa.com\/index.php?rest_route=\/wp\/v2\/posts\/172\/revisions\/317"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/fankepa.com\/index.php?rest_route=\/wp\/v2\/media\/316"}],"wp:attachment":[{"href":"https:\/\/fankepa.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=172"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fankepa.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=172"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fankepa.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=172"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}