Официальный сайт поддержки:
http://www.raspberrypi.org/
Документация:
http://raspberrypi.ru - по-русски!
http://www.raspberrypi.org/technical-help-and-resource-documents
http://elinux.org/RaspberryPi_Boards
Date | RAM chip | RAM size, MB | USB |
2011 | Samsung K4P2G324ED AGC1 (168-FBGA, 12×12 PoP) 2Gb 1CH x32 | 256 | LAN9512-JZX |
2011.12 | Samsung K4P4G324EB AGC1 (168-FBGA, 12×12 PoP) 4Gb 1CH x32 | 512 | LAN9512-JZX |
Chip | BCM2835 |
Напряжение питания | 5В |
Потребляемый ток | 700 мА |
RAM | 512 MB |
Интерфейсы | |
Timers | |
Interrupt controller | |
GPIO | |
USB | |
PCM / I2S | |
DMA controller | |
I2C master | |
I2C / SPI slave | |
SPI0, SPI1, SPI2 | |
PWM | |
UART0, UART1 | |
Размеры | http://ru.scribd.com/doc/77785093/Raspberry-Pi-initial-Beta-boards-Mechanical |
Обозначение | Описание |
armv6l | ARMv6 little endian |
armv6h | ARMv6 hard float |
Источник: https://archlinuxarm.org/forum/viewtopic.php?f=31&t=5374
Описывается настройка ОС для работы с модулем RTC на основе DS3231, подключенным по шине I2C.
/boot/config.txt
:dtoverlay=i2c-rtc,ds3231
$ dmesg | grep rtc [ 15.751681] rtc-ds1307 1-0068: rtc core: registered ds3231 as rtc0
date -s
.# hwclock -w
Далее необходимо включить считывание времени из RTC при старте системы.
Проверить, собрано ли ядро с опцией CONFIG_RTC_SYSTOHC
:
cat < /sys/class/rtc/rtc0/hctosys
Если ответ 0, то опция выключена. Тогда остается единственный способ считывания часов при старте - через systemd.
Система может взять время либо из сети, либо из аппаратных часов RTC, если они обнаружены.
За синхронизацию по сети отвечает служба systemd-timesyncd
.
Управлять службой можно через утилиту timedatectl
. Проверить текущие настройки и время можно так:
# timedatectl status Local time: Sat 2017-01-28 10:42:32 UTC Universal time: Sat 2017-01-28 10:42:32 UTC RTC time: Sat 2017-01-28 10:42:32 Time zone: UTC (UTC, +0000) Network time on: no NTP synchronized: yes RTC in local TZ: no
В зависимости от ситуации, настроить синхронизацию по сети:
# timedatectl set-ntp 0 (отключить) # timedatectl set-ntp 1 (включить)
Включение синхронизации по сети эквивалентно разрешению и запуску службы, т.е.
# systemctl enable systemd-timesyncd # systemctl start systemd-timesyncd
Для аппаратных часов можно выбрать трактовку их значения как UTC или как местное время:
# timedatectl set-local-rtc 0 (UTC) # timedatectl set-local-rtc 1 (местное время)
Судя по всему, за синхронизацию системного времени с аппаратными часами отвечает только ядро, если оно собрано с опцией CONFIG_RTC_SYSTOHC
. Никакие штатные сервисы systemd не делают это. Поэтому остается только вариант вручную создать unit для данной службы.
Создаем скрипт /usr/local/sbin/rtc
, который собственно и синхронизирует системное время:
#!/bin/bash hwclock -s
Делаем файл исполняемым.
Создаем правило udev для устройства /dev/rtc0, чтобы systemd получил сигнал о его готовности. Создаем файл /etc/udev/rules.d/rtc.rules
.
KERNEL=="rtc0", TAG+="systemd"
Создаем файл описания службы /etc/systemd/system/rtc.service
с содержанием:
[Unit] Description=Sync time with hardware clock BindsTo=dev-rtc0.device After=dev-rtc0.device Before=netctl-auto@wlan0.service [Service] Type=oneshot ExecStart=/usr/local/sbin/rtc [Install] WantedBy=multi-user.target
Запускаем службу:
systemctl start rtc
Проверяем время через timedatectl status
. Если системное время установлено успешно, смотрим статус службы и разрешаем её запуск при старте системы:
systemctl status rtc systemctl enable rtc
Источники:
https://trick77.com/adding-ds3231-real-time-clock-raspberry-pi-3/
https://www.raspberrypi.org/forums/viewtopic.php?f=63&t=161133
https://wiki.archlinux.org/index.php/Time
https://www.freedesktop.org/software/systemd/man/timedatectl.html
http://unix.stackexchange.com/questions/186899/how-to-wait-for-a-dev-video0-before-starting-a-service
Raspbery Pi 2 зависает от фотовспышки http://habrahabr.ru/post/250047/