Dans cet article, nous allons découvrir comment installer Pi-hole avec un écran LCD.
La référence de l'écran est XPT2046 Touch 3.5" RPI Display 480x320 16bit.
Introduction
Nous allons installer Pi-hole sur un Raspberry PI 3B.
Pi-hole est utilisé pour bloquer les requêtes indésirables et les URL que vous ne voulez pas charger sur le réseau. Il vous protège des trackers et optimise le trafic de votre réseau.
Installation
1. Préparer raspbian
Tout d'abord, flashez votre disque SD depuis Etcher ou une autre application.
Attendez quelques minutes que le disque soit prêt.
2. Mettre à jour les dépendances
Connectez-vous à votre Raspberry Pi et mettez à jour les dépendances.
sudo apt-get update -y && sudo apt-get upgrade -y
Attendez de bonnes minutes... pendant ce temps, buvez un bon cappuccino. ☕
Installez curl et git si ce n'est pas disponible de base sur votre petite machine :
sudo apt-get install curl -y && sudo apt-get install git -y
3. Installer Pi-hole v5
Puis, quand tout est bon, vous pouvez commencer à installer Pi-hole.
Vous pouvez cloner depuis le dépôt de Pi-hole ou directement curl avec cette commande :
curl -sSL https://install.pi-hole.net | bash
Quand on vous demande si vous voulez installer sur votre Raspberry et mettre en IP statique, cochez oui, et souvenez-vous de l'IP.
Choisissez ensuite votre DNS préféré. Vous pouvez en mettre plusieurs si vous le désirez. C'est modifiable après l'installation.
Vous pouvez sélectionner des listes de blocage :
✨ J'ai d'ailleurs une liste énorme avec plus de 1 000 000 domaines/IP bloquées.
Le dépôt de cette liste sur GitHub.
N'hésitez pas à ajouter vos propres domaines/IP.
Il vous demandera également si vous souhaitez un panel web.
Je vous recommande fortement de laisser validé afin que vous puissiez de n'importe où dans le réseau local vous connecter au Raspberry Pi
avec un mot de passe et gérer votre DNS/liste noire et voir vos statistiques.
4. Configuration du panel web
Dès que vous avez terminé l'installation de Pi-hole, il vous donnera l'adresse de l'hôte local et le mot de passe généré.
Pour modifier le mot de passe :
sudo pihole -a -p
Ceci est un aperçu du panneau lorsque vous êtes connecté 🎉
Mettre en place l'écran LCD
La partie la plus compliquée est là !
Il se peut que certaines choses que j'ai écrites ne marche pas avec vous, ou qu'il n'est pas indispensable de faire.
1. Installer l'écran LCD sur le Raspberry Pi
Partie simple à réaliser, il suffit de mettre sur les branches du RPI le Display.
J'ai trouvé une vidéo YouTube qui vous démontre comment la positionner.
2. Installer PADD
PADD est un logiciel qui permet de voir les données transmises par Pi-hole sur votre écran.
Le projet a été repris par Pi-hole, et même s'il y a quelques erreurs, il est toujours utilisable.
Pour l'installer et faire en sorte qu'il soit exécutable :
cd ~
wget -N https://raw.githubusercontent.com/pi-hole/PADD/master/padd.sh
sudo chmod +x padd.sh
Faites en sorte que PADD s'exécute au lancement du RPI :
# Run PADD
# If we're on the PiTFT screen (ssh is xterm)
if [ "$TERM" == "linux" ] ; then
while :
do
./padd.sh
sleep 1
done
fi
Si vous le souhaitez, vous pouvez tester le script et le visualiser depuis un votre terminal :
./padd.sh
Ce qui donne :
Après avoir tout fait, vous devez redémarrer votre machine.
3. Faire en sorte que l'écran s'éteigne la nuit
Sur le wiki de PADD,
ils vous démontrent comment faire en sorte que l'écran s'éteigne la nuit.
Le script marche avec cron, pour le modifier, faites sudo crontab -e
:
# PiTFT+ SLEEPY TIME
# Turn off the PiTFT+ at midnight
00 00 * * * sh -c 'echo "0" > /sys/class/backlight/soc\:backlight/brightness'
# Turn on the PiTFT+ at 8:00 am
00 08 * * * sh -c 'echo "1" > /sys/class/backlight/soc\:backlight/brightness'
Les possibles erreurs
Durant mon installation, j'ai eu quelques erreurs dont une où l'écran ne voulait pas s'allumer.
Je l'ai donc forcé à le faire avec adafruit.
Installation d'Adafruit
Installons déjà les prérequis :
sudo apt-get install python3-pip -y
Puis adafruit depuis le dépôt GitHub :
cd ~
git clone https://github.com/adafruit/Raspberry-Pi-Installer-Scripts.git
Et enfin, on va installer Adafruit :
cd Raspberry-Pi-Installer-Scripts
sudo python3 adafruit-pitft.py --display=35r --rotation=90 --install-type=console
Ce script va modifier /boot/config.txt pour faire en sorte qu'adafruit-pitft s'exécute au lancement du RPI.
Voir comment procéder manuellement
sudo nano /boot/config.txt
Insérez à la fin :
[all]
hdmi_force_hotplug=0
dtparam=spi=on
dtparam=i2c1=on
dtparam=i2c_arm=on
dtoverlay=pitft35-resistive,rotate=90,speed=20000000,fps=20
dtoverlay=piscreen,speed=16000000,rotate=90
Des erreurs de type "invalid number"
Si vous avez ce genre d'erreur qui s'affiche sur votre écran :
/home/pi/padd.sh: line 900: printf: 0,3: invalid number
/home/pi/padd.sh: line 244: printf: 42,236: invalid number
/home/pi/padd.sh: line 873: printf: 9,1: invalid number
/home/pi/padd.sh: line 900: printf: 0,91: invalid number
Laissez la locale du Raspberry Pi sur en_GB.UTF-8
,
une issue est en cours et donc affiche des erreurs sur le Display. (Voir l'issue sur GitHub)
Sources :
Publié le 13 juin 2022