Jump to content

Makda Mujji

Members
  • Posts

    4
  • Joined

  • Last visited

Everything posted by Makda Mujji

  1. Starting from Trixie, some paths have changed. Here is the complete walkthrough for the process: Install necessary tools (i2c-tools and hwclock are not present by default in Armbian trixie): sudo apt install i2c-tools util-linux-extra Edit armbianEnv.txt: sudo nano /boot/armbianEnv.txt Append i2c0 to the line that says overlays=...: overlays=... i2c0 ("..." denotes some overlays already written, do not delete them). Reboot (compulsory to load i2c module): sudo reboot now Inquire availability of module rtc-ds1307 in the kernel (present in trixie): sudo modinfo rtc-ds1307 If it returns some description, the module is present. If not, then install its driver from GitHub. Open modules file: sudo nano /etc/modules Add line rtc-ds1307 in it. Save and close. Run the following command: sudo i2cdetect -y 0 It should return 68 in the grid: 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- 68 -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- -- Then add module to start up: sudo modprobe rtc-ds1307 sudo echo ds1307 0x68 > /sys/class/i2c-dev/i2c-0/device/new_device The DS1307 should now be available at /dev/rtc1, which you can check: sudo ls /dev/ | grep rtc Initialize rtc1 (once) sudo hwclock --rtc /dev/rtc1 --systohc Create a new file rtc_ds1307.sh: sudo nano /usr/local/bin/rtc_ds1307.sh Add following lines in it: #!/bin/bash echo "Creating entry for rtc_1307 service" | systemd-cat -p info sudo echo ds1307 0x68 > /sys/class/i2c-dev/i2c-0/device/new_device echo "Done" | systemd-cat -p info echo "Symlinking /dev/rtc1 to /dev/rtc" | systemd-cat -p info sudo ln -f -s /dev/rtc1 /dev/rtc echo "Done" echo "Syncing RTC time to system time" | systemd-cat -p info sudo hwclock --hctosys --noadjfile --utc -f /dev/rtc1 echo "Done" Save and exit. Make this file executable: sudo chmod +x /usr/local/bin/rtc_ds1307.sh Create a systemd service to run this script at startup: sudo nano /etc/systemd/system/rtc_ds1307.service Add following lines in it: [Unit] Description=Synchronize system clock to RTC Requires=systemd-modules-load.service After=systemd-modules-load.service ConditionPathExists=/sys/class/i2c-dev [Service] Type=oneshot RemainAfterExit=yes ExecStart=/usr/local/bin/rtc_ds1307.sh [Install] WantedBy=multi-user.target Save and exit. Enable the service: sudo chmod 644 /etc/systemd/system/rtc_ds1307.service sudo systemctl enable rtc_ds1307.service Reboot and check system date time by running: timedatectl
  2. Few changes to above answer: Edit armbianEnv.txt by sudo nano /boot/armbianEnv.txt And append i2c0 instead of i2c overlays=... i2c0 install i2c-tools sudo apt install i2c-tools If your "sudo i2cdetect -y 0" returns 68, run the following commands first: Load rtc-ds1307 by sudo modprobe rtc-ds1307 sudo echo ds1307 0x68 > /sys/class/i2c-adapter/i2c-0/new_device
  3. The 1-bay NAS kit v1.2 has an RTC with option to add CR2032 button cell to keep HW time when system is shut down. But running `timedatectl` when device is booted in offline mode shows RTC is set to 1970-01-01 00:00:00 which defeats the purpose of having the option of CR2032. And yes, the button cell have juice; I've bought it a week ago and tested it before putting it in the kit.
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines