Files
timelapse-common/guide_raspi.md
2025-03-12 15:13:43 +00:00

88 lines
2.2 KiB
Markdown

Voici une solution complète pour votre Raspberry Pi :
1. **Système d'exploitation minimal** :
Installez Raspberry Pi OS Lite (version sans interface graphique) :
```bash
sudo apt update && sudo apt upgrade -y
sudo apt purge wolfram-engine libreoffice* -y
sudo apt clean && sudo apt autoremove -y
```
2. **Optimisation du boot** :
Editez `/boot/cmdline.txt` et ajoutez ces paramètres :
```
quiet splash logo.nologo consoleblank=0 loglevel=0
```
3. **Script Python** (`/home/pi/smile_request.py`) :
```python
import os
import requests
try:
response = requests.get(
'https://timelapse.kerboul.me/api/smile',
headers={'accept': 'image/jpeg'},
timeout=10
)
if response.status_code == 200:
print("Requête réussie!")
# Pour la maquette, attente d'une entrée utilisateur
input("Appuyez sur Entrée pour éteindre...")
else:
print(f"Erreur: {response.status_code}")
except Exception as e:
print(f"Erreur: {str(e)}")
finally:
os.system('sudo shutdown -h now')
```
4. **Auto-start avec systemd** :
Créez le service `/etc/systemd/system/smile.service` :
```ini
[Unit]
Description=Smile API Request Service
After=network.target
[Service]
Type=oneshot
ExecStart=/usr/bin/python3 /home/pi/smile_request.py
WorkingDirectory=/home/pi
User=pi
[Install]
WantedBy=multi-user.target
```
5. **Permissions sudo sans mot de passe** :
Editez `/etc/sudoers` avec `sudo visudo` et ajoutez :
```
pi ALL=(ALL) NOPASSWD: /sbin/shutdown
```
6. **Activation et finalisation** :
```bash
sudo systemctl daemon-reload
sudo systemctl enable smile.service
sudo apt install python3-requests -y
```
**Fonctionnement** :
- Démarrage ultra-rapide en mode console (~10-15s)
- Exécution automatique du script
- Requête HTTP GET avec gestion d'erreur
- Extinction après exécution (avec confirmation manuelle pour test)
**Pour tester sans redémarrer** :
```bash
python3 /home/pi/smile_request.py
```
**Personnalisation possible** :
- Modifier le timeout dans le script Python
- Ajouter un délai avant extinction avec `shutdown -h +1`
- Sauvegarder l'image reçue (ajouter un traitement de réponse)
Cette configuration permet un cycle complet démarrage->requête->extinction en moins de 30 secondes (selon la connexion réseau).