Attenzione! Questa è una Pagina di prova. Le informazioni riportate potrebbero essere incomplete, errate e potenzialmente pericolose. Per contribuire alla realizzazione di questa pagina consultare la discussione di riferimento. |
Guida verificata con Ubuntu: 20.04 22.04
Problemi in questa pagina? Segnalali in questa discussione
Introduzione
Il Raspberry Pi è privo di BIOS, pertanto data e ora vengono sincronizzate all’avvio del sistema operativo tramite server NTP con la connessione a Internet. Ne consegue che quando non è connesso alla rete l'ora e la data non saranno aggiornate.
Per uso offline sono pertanto disponibili dei moduli RTC, ossia dei dispositivi muniti di batteria che, collegati ai pin GPIO, possono memorizzare la data.
Le seguenti istruzioni sono dedicate al chip DS3231 (uno dei più comuni, compatibile con Arduino) ma sono valide anche per altri modelli (es: ds1307) con opportune modifiche.
Operazioni preliminari
Per il chip DS3231, il modulo va inserito nei pin 1-3-5-7-9 (con riferimento a questo schema).
Seguire in ogni caso le istruzioni del manuale.
Installazione
- A seconda della versione in uso:
Ubuntu 22.04 e superiori: installare il pacchetto raspi-config .
Ubuntu 20.04: digitare nel terminale i seguenti comandi:
wget https://archive.raspberrypi.org/debian/pool/main/r/raspi-config/raspi-config_20200601_all.deb sudo dpkg -i raspi-config_20200601_all.deb sudo apt -f install
Avviare il programma con il comando:
sudo raspi-config
Nel menu a schermo selezionare Interface option: Configure connection to peripherals e premere Invio.
Dopo selezionare I2C - Enable/Disable automatic loading for I2C kernel module.
Confermare ancora e selezionare Finish.
Riavviare il Raspberry Pi digitando:
sudo reboot
Dopo il riavvio, installare il pacchetto i2c-tools.
Nel terminale digitare:
i2cdetect -y 1
Nell'output dovrebbe comparire uno schema con i dispositivi collegati al bus I2C; il modulo RTC dovrebbe essere indicato da un numero (es: 68).Caricare il relativo modulo del kernel (rtc ds3232 per il chip DS3231) eseguendo il seguente commando:
sudo modprobe rtc-ds3232
Come amministratore creare un file relativo al nuovo device con indirizzo 0x68. È necessario utilizzare l'utente root (disattivato in Ubuntu) per inserire il modulo nel bus I2C. Digitare:
sudo su echo ds3232 0x68 > /sys/class/i2c-adapter/i2c-1/new_device exit
Per impostare data e ora, digitare un comando simile al seguente:
sudo hwclock --set --date "Sun Apr 21 12:00:00 CT 2024"
modificando ovviamente la parte tra virgolette con ora e data correnti.Per rendere effettive le modifiche ai successivi riavvii, aprire con i privilegi di amministrazione e con un editor di testo il file /etc/modules e inserire in fondo in seguente testo:
rtc-ds3232
Aprire o creare con i privilegi di amministrazione il file /etc/rc.local e prima della riga exit 0 inserire le seguenti:
echo ds3232 0x68 > /sys/class/i2c-adapter/i2c-1/new_device sudo hwclock -s
Verifica
- Scollegare il Raspberry Pi dalla rete, se collegata.
- Riavviare o arrestare il sistema.
A sistema riavviato, digitare nel terminale il comando:
date
quindi verificare che ora e data siano corrette.