Меню Рубрики

Установка ds3231 raspberry pi

Использование часов реального времени на DS3231 в Raspberry Pi 3 под управлением OSMC в Debian 9 (Stretch)

Настройка часов реального времени на DS3231 в Raspberry Pi 3 под управлением OSMC в Debian 9 (Stretch), для проигрывателя на базе Raspberry Pi 3 модель B (часть 1, часть 2, часть 3, часть 4, часть 5).

1. Добавить в файл /boot/config.txt строки:

systemctl disable fake-hwclock

3. Настроить синхронизацию часов системы с часами реального временем (RTC) при загрузке

добавить в конец файла /etc/rc.local строки:

echo ds3231 0x68 > /sys/class/i2c-adapter/i2c-1/new_device

Найдены дубликаты

Чтобы время было актуальным

Проигрыватель на базе Raspberry Pi 3 модель B (часть 4)

Очередная порция доработок проигрывателя.

Это продолжение, начало здесь: часть 1, часть 2, часть 3.

Теперь прототип имеет следующий вид:

Как видно из фото, для того, чтобы разместить розетку для подключения кабеля питания я перенёс блок питания и релейный включатель/выключатель питания.

Также я установит панель с разъёмами:

Ethernet Удлинитель (30 см)

Также я сделал переходник с Jack, диаметр 3,5 мм, 4 контакта на розетки RCA. Подробно о разъёме для передачи аналогового звука/изображения у Raspberry Pi 3 модель B здесь.

Проигрыватель на базе Raspberry Pi 3 модель B (часть 3)

Вот очередная порция доработок проигрывателя.

Вот теперешний вид прототипа:

Новый имеет 4 порта USB 3.0 и естественно с разъём питания.

Устройство определяется так: 05e3:0610 Genesys Logic, Inc. 4-port hub

1. Он использовал собственный ИК приёмник с интерфейсом USB;

2. При включении для кнопок перемещения курсора выбирался режим «мышь» и чтобы переключиться в режим «клавиатура» нужно было нажимать кнопку Toggle.

Теперь я настроил тот-же ПДУ на работу с KY-022.

Ещё я подключил два игровых пульта Nintendo SNES USB 2.0 (MF01500).

Контроллер в пульте определяется так: 0810:e501 Personal Communication Systems, Inc.

Пульты я использую для игр в RetroPie, хотя ими можно управлять Kodi.

Поскольку я использую OSMC, то и RetroPie я запускаю из него, называется это RetrOSMC.

Домашний медиаплеер из Raspberry Pi

Все началось с покупки телевизора LG 32LB565V. В основном он использовался для консолей PlayStation и изредка для просмотра фильмов с внешнего жесткого диска или флэшки. Но порой игры совсем не играются, фильмы совсем не смотрятся, а залипнуть под приятную картинку очень хочется, особенно под большую тарелку со всякими вкусными ништяками. По тем каналам, что приходят в дом благодаря антенне общего пользования, увидеть что-то приятное и интересное — это событие крайне редкое. Тут то я решил что нужно переходить на IPTV.

Пару лет назад был куплен одноплатный компьютер Raspberry Pi 1 Model B. месяц другой я с ним поигрался и положил на полочку до лучших времен.

И вот, лучшие времена для него наконец настали. Для этого компьютера сейчас существует множество сборок операционных систем на базе Linux для самых разных нужд. Поскольку меня интересует мультимедиа — выбор пал на OSMC (Бывший XBMC).

Несмотря на размеры, Raspberry Pi 1 Model B и Raspberry Pi 2 Model B могут воспроизводить HD-Видео, хотя RP 1 иногда с этой задачей справляется с трудом и может просто повиснуть, если Вы просматриваете какой нибудь HD-канал. А вот HD-фильмы обе спокойно воспроизводят. Поэтому рекомендую использовать именно Raspberry Pi 2.

Характеристики моделей Raspberry Pi:

Raspberry Pi Model B, Одноплатный компьютер на базе процессора Broadcom BCM2835

Тип процессора: bcm2835 arm1176jzfs

Частота процессора: 700 мгц

Оперативная память: 512 мб

Графический процессор: 2-х ядерный videocore iv

Поддерживаемые операционные системы: linux

Установленные интерфейсы: usb, hdmi, ethernet, sd, audio, video, dsi, csi, i

Raspberry Pi 2 Model B, Одноплатный компьютер на базе процессора Broadcom BCM2836

Тип процессора: bcm2836 4-х ядерный cortex-a7

Частота процессора: 900мгц

Графический процессор: 2-х ядерный videocore iv

Поддерживаемые операционные системы: linux, windows 10

Установленные интерфейсы: usb, hdmi, ethernet, micro-sd, audio, dsi, csi, i/

Для просмотра IPTV на Raspberry Pi нам понадобятся:

1. Телевизор (Желательно с пультом ДУ, HDMI-входом и поддержкой Simplink — об этом чуть далее, либо с RCA-входом)

2. Выход в интернет (Крайне рекомендуется подключать Raspberry Pi через LAN)

3. Raspberry Pi 1 Model B, а лучше Raspberry Pi 2

4. 8GB SD-карта памяти для Raspberry Pi Model B или Micro-SD для Raspberry Pi 2

5. Корпус для Raspberry Pi (По желанию, но голая плата как то не очень)

7. Micro-USB кабель (питание компьютера)

8. HDMI-кабель или RCA (Raspberry Pi 1 Model B) для подключения к телевизору.

Raspberry Pi 1 Model B имеет оба видеовыхода: HDMI и RCA, в отличии от Raspberry Pi 2, где только HDMI. Аудиовыход есть у обеих моделей и выполнен в виде стандартного 3.5мм джека.

Замечу сразу, что лучше использовать HDMI, т.к. по одному кабелю Вы сможете передавать изображение, звук и управлять компьютером с пульта от телевизора, если последний поддерживает технологию Simplink.

Образ операционки для конкретной модели Raspberry Pi можно бесплатно скачать с сайта osmc.tv.

Теперь этот образ нужно накатить на флэшку и сделать ее загрузочной. Просто перекинуть *.img-файл на нее никакого результата не даст.

Сделать это можно с помощью программы Win32 Disk Imager, либо любой другой, которая умеет записывать обрзазы на флешки и делать их загрузочными.

Если потребуется вернуть флешку в исходное состояние, рекомендую программу SD Formatter

Читайте также:  Установка гидрокорректора фар лада гранта

После завершения «прожига» образа на карту памяти, вставляем ее в Raspberry Pi и включаем.

Инсталляция операционной системы происходит в автоматическом режиме и выполнена предельно просто.

Управлять медиаплеером Kodi на Raspberry PI можно при помощи USB-клавиатуры и мыши, пульта от телевизора, либо через приложение для смартфонов Android или Apple.

В настройках системы нужно убедиться что включена опция TV

Далее включаем и настраиваем PVR IPTV Simple Client

Можно бесконечно блуждать по разным сайтам и форумам в поисках бесплатных IPTV-плейлистов. Зачастую многие из них проработают день, два, или месяц другой, а потом становятся не актуальными. Найти обновляемый и при этом бесплатный плейлист — задача сложная. Лично у меня нет желания копаться в Сети в поисках этих плейлистов и постоянно прописывать их в настройках клиента, поэтому выбор пал на отличный, но платный сервис http://langamepp.com

Там обновляемые плейлисты, пользователю доступно несколько настраиваемых плейлистов. Выбор IPTV-каналов огромен: более 4000. На любой вкус. В том числе и HD. Стоимость — 60 руб./месяц, что довольно приемлемо. Есть пробный бесплатный период в течении семи дней для ознакомления.

Регистрируемся на сайте http://langamepp.com в разделе http://langamepp.com/iptv , настраиваем по вкусу плейлист и вписываем в настройки клиента.

Все, наслаждаемся фильмами и IPTV-каналами 🙂

Помимо IPTV, Kodi умеет воспроизводить практически все известные медиаформаты, есть поддержка разных репозиториев со множеством плагинов для просмотра видео с различных ресурсов.

Ну и программа для смартфона для управления плеером:

источник

Как добавить модуль RTC к Raspberry Pi?

В этом уроке мы научимся отслеживать дату и время на Raspberry Pi и разберемся как использовать модуль RTC.

Raspberry Pi не содержит встроенных часов, которые работают, когда плата выключена. Вместо этого он использует сетевой протокол времени (NTP), который использует соединение Ethernet или Wi-Fi при каждом включении. Чтобы отслеживать время, не используя Интернет для синхронизации каждый раз при загрузке Pi, необходим модуль часов реального времени (RTC).

RTC — это электронное устройство, которое отслеживает текущую дату и время, используя внутреннюю батарею, которая позволяет ему продолжать работу, даже когда основной источник питания выключен. Существуют различные типы модулей RTC для различных нужд.

В этой статье мы поговорим о том, как использовать модуль RTC DS3231 с Raspberry Pi в качестве аппаратных часов с использованием нужной библиотеки.

Комплектующие

Для реализации данного урока нам нужно совсем немного комплектующих — плата и часы реального времени:

Подключаем Pi Zero к DS3231

Сначала мы должны подключить модуль RTC к Raspberry Pi Zero. Перед выполнением соединений убедитесь, что Raspberry Pi выключен или отсоединен от питания. Далее мы производим соединения согласно таблице и схеме ниже.

DS3231 имеет рабочее напряжение 3,3 В, поэтому для него требуется напряжение VCC 3,3 В. Мы используем протокол связи I2C для связи модуля RTC с нашим Raspberry Pi Zero.

Настройка модуля RTC

Чтобы настроить модуль RTC, нам нужно включить I2C на нашем Raspberry Pi.

Запустите raspi config на терминале:

$sudo raspi-config

В конфигурационной настройке выбираем: Interfacing Option.

Затем включите I2C, выбрав P5 I2C.

После включения I2C перезагрузите Pi с помощью:

$sudo reboot

Проверка подключения модуля RTC

С включенным интерфейсом I2C мы можем проверить, работает ли наше соединение с модулем RTC.

Перед установкой чего-либо на Pi убедитесь, что прошивка вашего Pi обновлена. Зачастую ошибки, возникающие при установке зависимостей пакетов, происходят из-за устаревшей версии Pi.

$sudo apt-get update -y

$sudo apt-get upgrade -y

Нам нужно установить python-smbus i2c-tools, чтобы увидеть, обнаружил ли наш Raspberry Pi наше соединение I2C с модулем RTC.

На терминале нужно запустить:

$sudo apt-get install python-smbus i2c-tools

$sudo i2cdetect -y 1

Для более старшего Pi 1, запустите:

$sudo i2cdetect -y 0

0x68 — это популярный адрес для часов реального времени, особенно для DS3231. Наличие #68 в адресе означает, что драйвер не использовал адрес. Если адрес UU, то он в настоящее время используется драйвером.

Использование модуля RTC и библиотеки

Попробуем использовать RTC с использованием библиотеки SDL DS3231 (на нашем сайте можно скачать простую библиотеку DS3231).

Для версии Raspberry Pi Zero Lite или Headless нам может потребоваться установить Python, прежде чем двигаться дальше, поскольку он не включен в пакеты, установленные в Raspbian Lite.

$sudo apt-get install python-pip

$sudo apt-get install python3-pip

Затем установите git, чтобы мы могли клонировать библиотеку в git.

$sudo apt install git-all

Теперь клонируем библиотеку и проверяем, можем ли мы использовать RTC с библиотекой RTC_SDL_DS3231.

Для этого введите в терминал команду ниже:

$sudo git clone https://github.com/switchdoclabs/RTC_SDL_DS3231.git

Закончив клонирование, создайте Python файл — RTCmodule.py. Скопируйте код ниже и вставьте в пустой файл .py. Сохраните это.

Разбираем код

Сначала мы импортируем модули, которые мы используем в проекте.

import time

import SDL_DS3231

ds3231 = SDL_DS3231.SDL_DS3231(1, 0x68)

Затем мы печатаем время Raspberry Pi и модуля RTC.

print “Raspberry Pi=\t” + time.strftime(%Y-%m-%d %H:%M:%S”)

print “Ds3231=\t\t%s” % ds3231.read_datetime()

$python RTCmodule.py

Результат должен быть таким же, как на скриншоте ниже:

Как сделать время на DS3231 отличным от часов Pi

Чтобы аппаратные часы DS3231 показывали другое время в сравнении с часами Pi, мы можем использовать команду write_all().

Читайте также:  Установка cs source сервер linux

«ds3231.write_all(seconds, minutes, hours, day, date, month, year, save_as_24h = True)»

  • seconds [0,59], #секунды
  • minutes [0,59], #минуты
  • hours [0,23], #часы
  • day [0,7], #дни
  • date 28, #дата
  • month 9, #месяц
  • year 68 #год

Используем тот же код, что выше, но заменяем ds3231.now() на ds3231.write_all():

Мы видим, что дата и время DS3231 изменились. Но так как этот проект должен использовать RTC на нашем Raspberry Pi, то нам нужно кое-что сделать еще.

Использование модуля RTC на Raspberry

На следующем шаге нам нужно настроить DS3231 для использования на Raspberry Pi. Сначала выполните действия, описанные выше.

Мы должны использовать адрес 0x68 RTC. Нам нужно отредактировать файл config.txt и добавить наложение дерева устройств.

$sudo nano /boot/config.txt

Затем отредактируйте конфигурацию Pi и добавьте чип RTC, который вы используете, в конец файла:

dtoverlay=i2c-rtc,ds1307

dtoverlay=i2c-rtc,pcf8523

dtoverlay=i2c-rtc,ds3231

Сохраните и перезапустите Pi, чтобы проверить состояние адреса 0x68.

$sudo reboot

$sudo i2cdetect -y 1

Далее мы должны отключить «фальшивый hwclock», который мешает реальному hwclock нашей RTC.

Чтобы отключить фальшивый hwclock, выполните следующие команды в терминале:

$sudo apt-get -y remove fake-hwclock

$sudo update-rc.d -f fake-hwclock remove

$sudo systemctl disable fake-hwclock

Делаем DS3231 главными часами

Как только мы отключим фальшивый hwclock, мы сможем сделать наши часы реального времени нашими основными часами.

$sudo nano /lib/udev/hwclock-set

и введите следующую строчку:

#if [-e/run/systemd/system];then

#/sbin/hwclock —rtc=$dev —systz —badyear

#/sbin/hwclock —rtc=$dev —systz

Теперь мы готовы проверить, всё ли работает как нужно.

Как синхронизировать время от Raspberry Pi к RTC

Первоначально RTC будет иметь неправильное время. Нам нужно скорректировать время, чтобы мы могли использовать RTC в качестве аппаратных часов.

Для проверки даты запускается RTC:

$sudo hwclock

Чтобы скорректировать время RTC, у нас должно быть соединение Ethernet или Wi-Fi для синхронизации правильного времени из Интернета с нашим модулем RTC.

Чтобы проверить ввод даты и времени в терминале введите:

$ date —date=»Feb 2 2014 13:12:10″

Чтобы установить дату и время вручную. Обратите внимание, что если вы установите это вручную, оно будет автоматически исправлено, если есть подключение к Интернету через Ethernet или Wi-Fi.

Как синхронизировать время от RTC к Pi

Мы также можем установить время Pi на основе времени модуля RTC. Мы можем сделать это, введя:

$sudo hwclock —systohc

$sudo hwclock -w

Мы также можем установить время и дату в нашем модуле RTC, используя:

$sudo hwclock —set —date «Sat Aug 10 08:31:24 PDT 2013»

$sudo hwclock —set —date «8/11/2013 23:10:45»

После синхронизации времени, последний шаг — это вставить батарею в модуль RTC, чтобы он мог хранить дату и время. При следующей загрузке Raspberry Pi дата и время будут автоматически синхронизированы от модуля RTC.

источник

Установка ds3231 raspberry pi

Hi All, I just received a couple of these very cheap, neat DS3231 based real time clock modules from China (ebay specials) and have spent a good while getting them configured with the latest (m/>

Once you have a nice shiny clean raspbian (or raspbian lite) image running (I used raspbian lite exclusively), and you’ve updated it to latest everything (sudo apt-get update; sudo apt-get upgrade; sudo reboot), you’re ready to start.

There are only two edits you need to do:
1. put the below line into the /boot/config.txt file: (edit it with your favourite editor and type the line in — or copy and paste it from here )

2. edit the /lib/udev/hwclock-set file (sudo nano /lib/udev/hwclock-set) and «comment out» the following lines («comment out» means put a # at the beginning of each of the lines, so they become comments and are ignored by the system)

if [ -e /run/systemd/system ] ; then
exit 0
fi

#if [ -e /run/systemd/system ] ; then
# exit 0
#fi

. and that’s it — that’s all you need to do. Shut down your system, connect the rtc module, then power up and test with the command:

this will read the time directly from the rtc module. If a sensible time string comes back, then you’re cooking! Fully test by powering off the pi, disconnecting network cable (if you’re running wireless, you may need to turn your router off for a bit), plug a screen into the hdmi output of the pi, wait 10 mins, then power it up. Once it’s up, using a locally connected keyboard, log in and type «date» — if the time is correct and not 10 mins slow (or however long you had the pi powered down for) then the system has read the time correctly from the rtc module!!

Some posts have recommended de-installing the fake-hwclock package, or the ntp package — there’s no need to do that — just do the above.

Before settling on the above steps, I tried lots of things from several web posts, including removing packages, downloading stuff, modifying the /etc/init.d/hwclock.sh file etc. I saw some of the rtc corruption that others have seen. But in the end (after re-flashing a new Jessie lite image several times ) the above was all that was needed. I’ve done this on a couple of different pis now, and the above seems to work consistently. So, all good.

Читайте также:  Установка ios mac mini

Re: Install DS3231 Real Time Clock — Latest Info

Following on from the above, here’s a picture of the modules I used (the connector simply plugs onto the first 5 pins of the pi) — here are some useful hwclock commands to test and play. They all need to be run as the root user, so precede with «sudo» if you’re not running as root:

read time directly from rtc module
hwclock -r

update rtc module time from system time (system time should be regularly updated by ntp from the internet if your pi is networked):
hwclock -w

update system time from the rtc module (this should happen on startup):
hwclock -s

and the most fun of all — monitor the «drift» between your system clock and the rtc module:
hwclock -c

the above command will not return to the prompt, it will run continuously, printing the clock drift every 10 seconds, until you interrupt it (with Cntl-C).

Re: Install DS3231 Real Time Clock — Latest Info

Re: Install DS3231 Real Time Clock — Latest Info

Re: Install DS3231 Real Time Clock — Latest Info

I’m presuming that the shape and construction of the module would be irrelevant to it’s operation, if it’s using the same chip (DS3231). So the above instructions should work regardless of the origin of the device itself. Let us know if your experience is different (with a picture if possible) as it would be good to know if certain modules labelled DS3231 behave differently. It may be that there are clone chips or mis-labelled modules out there.

Re: Install DS3231 Real Time Clock — Latest Info

Re: Install DS3231 Real Time Clock — Latest Info

Pin#1 3V3
Pin#3 SDA
Pin#5 SCL
Pin#7 GPIO4
Pin#9 GND

You don’t need pin#7 and that loses access to the default 1-wire pin but the other four are the four wires needed for 3V3 I²C.

Note: Having anything humorous in your signature is completely banned on this forum. Wear a tin-foil hat and you’ll get a ban.

Any DMs sent on Twitter will be answered next month.

This is a doctor free zone.

Re: Install DS3231 Real Time Clock — Latest Info

Re: Install DS3231 Real Time Clock — Latest Info

Re: Install DS3231 Real Time Clock — Latest Info

I’ve installed a DS3231 RTC into a Pi and I have it working nicely, and what I’d like to be able to do is have the RTC automatically updated by NTP every, say, 15 minutes. Should I use a cron task with hwclock -w or is there a better way to do this?

Re: Install DS3231 Real Time Clock — Latest Info

I’ve recently come across an interesting «gotcha» with the otherwise very nice modules. That yellow rimmed object on the bottom isn’t a battery. It’s supercapacitor. This means that if you have a stock of spare RTC modules or you have a module on a Pi which is used sporadically, you are rather likely to find that the RTC module doesn’t work, at least until the cap recharges. I have yet to see any data on how long it takes to recharge the cap or how long the charge on it will keep the RTC running if no other power is available.

So. does anyone know of a «Pi ready» DS3231 RTC module that takes a replaceable battery? (Note all the qualifications. the Adafruit DS3231 module has a replaceable battery, but it comes with male header pins and the pinout doesn’t match the Pi.)

Re: Install DS3231 Real Time Clock — Latest Info

Adafruit have a new one that just plugs into the GPIO header, https://www.adafruit.com/products/3386 PCF8523

I have several Adafruit RTC breakout boards in use. One DS1307 is plugged into a solderless bread board. And wired to my Pi via jumpers and a GPIO breakout board. Adafruit calls them cobblers. That Pi is dedicated to bread boarding circuits so I don’t mind the RTC being hoked up with jumpers.

The other DS3231 is soldered to a Proto Hat. The proto hat is plugged into the GPIO header of my Pi and has a sense hat on top of it. An Astro Pi I guess. https://www.adafruit.com/products/2310 I used a stacking header instead of the one that comes with it.

Re: Install DS3231 Real Time Clock — Latest Info

The DS3231 is designed to work safely with Lithium primary cells — as such it is UL certified *not* to charge. External circuitry is required for that, and these modules do not have that. See https://www.maximintegrated.com/en/app- . vp/id/3816 https://datasheets.maximintegrated.com/en/ds/DS3231.pdf

The cell on mine has one terminal embossed with a «+», leading me to think it isn’t a symmetric supercap.

источник