Passaggi per configurare il kernel ottimizzato per l'utilizzo con hat Adafruit e hat Ublox per Raspberry Pi 4
attivazione di Kernel PPS ( flag3 1 ) per ntpsec/ntp
sudo apt install git bc bison flex libssl-dev make libncurses5-dev
git clone --depth=1 --branch rpi-5.10.y https://github.com/raspberrypi/linux
cd linux
make bcm2711_defconfig
make menuconfig
Ho ottenuto le migliori prestazioni modificando quanto segue
per evitare sovrascritture e comunque per identificare meglio con che kernel abbiamo avviato il sistema modificare Local version
General Setup:
Compiliamo kernel e moduli
make prepare
make -j4 zImage modules dtbs
sudo make modules_install
Impostiamo e popoliamo le cartelle che conterrano i nuovi file di avvio e il kernel
sudo mkdir /boot/NTP
sudo mkdir /boot/NTP/overlays-NTP
sudo cp arch/arm/boot/dts/overlays/*.dtb* /boot/ntp/overlays-NTP/
sudo cp arch/arm/boot/dts/overlays/README /boot/NTP/overlays-NTP/
sudo cp arch/arm/boot/dts/*.dtb /boot/NTP/
sudo cp arch/arm/boot/zImage /boot/kernel-ntp.img
Configuriamo il file config.txt in modo che avvii il nuovo kernel, in caso di problemi sarà sufficiente eliminare le tre righe seguenti dal file config.txt per tornare ad avviare il vecchio kernel
sudo sed -i '1ios_prefix=NTP/' /boot/config.txt
sudo sed -i '2ioverlay_prefix=overlays-NTP/' /boot/config.txt
sudo sed -i '3ikernel=/kernel-ntp.img' /boot/config.txt
Le tre righe presenti all'inizio del file config.txt saranno le seguenti:
os_prefix=NTP/
overlay_prefix=overlays-NTP/
kernel=/kernel-ntp.img
se tutto si avvia correttamente verifichiamo la presenza del pps
pi@raspberrypi:~ $ dmesg | grep pps
[ 0.138967] pps_core: LinuxPPS API ver. 1 registered
[ 0.138998] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <
[ 1.631236] pps_ldisc: PPS line discipline registered
[ 1.631734] pps pps0: new PPS source
[ 1.631842] pps pps0: Registered IRQ 62 as PPS source
[ 104.033611] pps pps0: bound kernel consumer: edge=0x1
Possiamo quindi attivare il "flag3 1" su ntp.conf, ntpsec/ntp
server 127.127.20.0 mode 89 iburst prefer minpoll 2 maxpoll 4
fudge 127.127.20.0 flag1 1 flag3 1 time1 0.0 time2 0.025 refid GPS
ottenendo il risultato che potete vedere qui:
https://www.kiokoman.eu.org/index.php/server-ntp-stats