Форум обсуждения систем  

Вернуться   Форум обсуждения систем "Умный дом", проектов Ардуино, OpenWRT и других DIY устройств > Форум умного дома > Сделай сам > OpenWRT/LEDE

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 28.12.2013, 12:17   #1
uni
Senior Member
 
Аватар для uni
 
Регистрация: 29.10.2013
Адрес: Екатеринбург, Нижневартовск, Энергодар
Возраст: 43
Сообщений: 573
Вес репутации: 599
uni has a spectacular aura aboutuni has a spectacular aura about
Отправить сообщение для uni с помощью ICQ
По умолчанию I2C на GPIO 7 и 29

Кто-нибудь пробовал работать по интерфейсу I2C?

Adding I2C Bus (MR3020 ET I2C AVEC LES GPIO)

If you want to add I2C bus to your MR3020, you can use GPIO 7 and 29. Remove R15 and R17, then add pullup between 3.3v and gpio pin.

Next step, add this line

i2c-gpio-custom bus0=0,7,29

to /etc/modules.d/99-i2c

and load i2c-gpio-custom.

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

Не мог бы кто подсказать как должно выглядеть обращение к выводам 7 и 29 для чтения и записи? Например, из lua. Не знаю ещё как проглотит микросхема работу с 3,3 В в качестве уровней.
__________________
Россия навсегда!
uni вне форума   Ответить с цитированием
Старый 28.12.2013, 22:22   #2
uni
Senior Member
 
Аватар для uni
 
Регистрация: 29.10.2013
Адрес: Екатеринбург, Нижневартовск, Энергодар
Возраст: 43
Сообщений: 573
Вес репутации: 599
uni has a spectacular aura aboutuni has a spectacular aura about
Отправить сообщение для uni с помощью ICQ
По умолчанию Re: I2C на GPIO 7 и 29

Может кто подскажет, как можно указать пакету i2c-tools, что линии SDA и SCL находятся на 7 и 29 выводах?
kmod-i2c-gpio-custom не ставится, требует kmod-i2c-gpio, который отсутствует с списке доступных пакетов... и что делать?

Вот тут написано внятней: Temperature Sensing on the BR-6104K. Будем разбираться.
__________________
Россия навсегда!

Последний раз редактировалось uni; 28.12.2013 в 22:32.
uni вне форума   Ответить с цитированием
Старый 29.12.2013, 01:27   #3
paulerr
Senior Member
 
Регистрация: 04.01.2013
Адрес: Москва
Сообщений: 461
Вес репутации: 1152
paulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond repute
По умолчанию Re: I2C на GPIO 7 и 29

Посмотрите мое сообщение в этой теме.Там правда, не 3020.
Работа с I2C или через i2c-tools, или через отдельную программу.
По 3,3 вольта - смотрите даташит на свой RTC.
paulerr вне форума   Ответить с цитированием
Старый 29.12.2013, 09:20   #4
uni
Senior Member
 
Аватар для uni
 
Регистрация: 29.10.2013
Адрес: Екатеринбург, Нижневартовск, Энергодар
Возраст: 43
Сообщений: 573
Вес репутации: 599
uni has a spectacular aura aboutuni has a spectacular aura about
Отправить сообщение для uni с помощью ICQ
По умолчанию Re: I2C на GPIO 7 и 29

Спасибо, попробую ваш вариант. Только OpenWrt у меня не устанавливает kmod-i2c-gpio-custom из своего репозитория, пишет, что нужен kmod-i2c-gpio, которого там нет вообще. Неохота из-за этого на другую прошивку переходить, не пойму почему нет этого пакета.

Если я использую выводы 7 и 29, то мне нет необходимости выгружать модуль работы со светодиодами?
__________________
Россия навсегда!
uni вне форума   Ответить с цитированием
Старый 29.12.2013, 12:41   #5
paulerr
Senior Member
 
Регистрация: 04.01.2013
Адрес: Москва
Сообщений: 461
Вес репутации: 1152
paulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond repute
По умолчанию Re: I2C на GPIO 7 и 29

Не надо, если они «пустые» http://wiki.openwrt.org/toh/tp-link/...adding.i2c.bus
Цитата:
Только OpenWrt у меня не устанавливает kmod-i2c-gpio-custom из своего репозитория, пишет, что нужен kmod-i2c-gpio, которого там нет вообще
У Вас какая версия OpenWrt? На сайте все пакеты есть. Если Вы ставили trunk, то пакеты должны брать от своей версии.
paulerr вне форума   Ответить с цитированием
Старый 29.12.2013, 19:53   #6
uni
Senior Member
 
Аватар для uni
 
Регистрация: 29.10.2013
Адрес: Екатеринбург, Нижневартовск, Энергодар
Возраст: 43
Сообщений: 573
Вес репутации: 599
uni has a spectacular aura aboutuni has a spectacular aura about
Отправить сообщение для uni с помощью ICQ
По умолчанию Re: I2C на GPIO 7 и 29

Прошил заново ATTITUDE ADJUSTMENT (12.09, r36088). Всё установилось. Время загрузки увеличилось на 20 секунд, видимо, из-за сканирования шины i2c, судя по терминалу загрузки:

Код:
[   39.540000] Custom GPIO-based I2C driver version 0.1.1
[   39.540000] i2c-gpio i2c-gpio.0: using pins 7 (SDA) and 29 (SCL)
Теперь буду подключать RTC DS1307 и пробовать с ним работать.
__________________
Россия навсегда!
uni вне форума   Ответить с цитированием
Старый 30.12.2013, 23:13   #7
uni
Senior Member
 
Аватар для uni
 
Регистрация: 29.10.2013
Адрес: Екатеринбург, Нижневартовск, Энергодар
Возраст: 43
Сообщений: 573
Вес репутации: 599
uni has a spectacular aura aboutuni has a spectacular aura about
Отправить сообщение для uni с помощью ICQ
По умолчанию Re: I2C на GPIO 7 и 29

Всё спаял и косяк - i2cdetect и прочие утилиты работают только до адреса 0x77, а у DS1307 адрес начинается с 0xD0. Дела, придётся считывать всё скриптами вручную. Странное ограничение у i2c-tools.

Я ошибся, часики заработали. Адрес 0x68. Сначала я подтянул резисторы к 5 В, но ничего не считывалось, потом подтянул к 3,3 В, вроде стало считываться и записываться (нужно записать 0 по адресу 0x00: i2cset -y 0 0x68 0x00 0x00, чтобы часики стартовали).

Код:
root@OpenWrt:/# i2cdetect -y i2c-gpio0
     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: -- -- -- -- -- -- -- --
root@OpenWrt:/# i2cget -y 0 0x68 0x00 w
0x0054
root@OpenWrt:/# i2cget -y 0 0x68 0x00 w
0x0059
root@OpenWrt:/# i2cget -y 0 0x68 0x00 w
0x0100
root@OpenWrt:/# i2cget -y 0 0x68 0x00 w
0x0102
root@OpenWrt:/# i2cget -y 0 0x68 0x00 w
0x0104
root@OpenWrt:/#
Теперь буду думать как автоматизировать синхронизацию часиков при загрузке.
__________________
Россия навсегда!

Последний раз редактировалось uni; 07.01.2014 в 15:00.
uni вне форума   Ответить с цитированием
Старый 23.04.2014, 23:59   #8
piglet-animas
Member
 
Регистрация: 14.04.2014
Сообщений: 48
Вес репутации: 0
piglet-animas is an unknown quantity at this point
По умолчанию Re: I2C на GPIO 7 и 29

после добавления в rc.local строчки insmod i2c-gpio-custom bus0=0,7,29
вот такая ошибка?
Custom GPIO-based I2C driver version 0.1.1
[ 53.770000] i2c-gpio: probe of i2c-gpio.0 failed with error -16
piglet-animas вне форума   Ответить с цитированием
Старый 24.04.2014, 00:29   #9
uni
Senior Member
 
Аватар для uni
 
Регистрация: 29.10.2013
Адрес: Екатеринбург, Нижневартовск, Энергодар
Возраст: 43
Сообщений: 573
Вес репутации: 599
uni has a spectacular aura aboutuni has a spectacular aura about
Отправить сообщение для uni с помощью ICQ
По умолчанию Re: I2C на GPIO 7 и 29

Я не знаю кодов ошибок. Здесь исходник нужен, чтобы понять что это означает. Я забил на i2c, т.к. уж очень трудно подпаяться к площадкам в нужных местах. Чуть перегрел и всё отвалилось.
__________________
Россия навсегда!
uni вне форума   Ответить с цитированием
Старый 24.04.2014, 01:13   #10
piglet-animas
Member
 
Регистрация: 14.04.2014
Сообщений: 48
Вес репутации: 0
piglet-animas is an unknown quantity at this point
По умолчанию Re: I2C на GPIO 7 и 29

ясненько, буду копать)
хотя два дня назад все норм запустилось, обе линии определились,
а вот сегодня одна из них отвалилась от платы, пришлось перепаться, можеть чего пригрел=) завтра посмотрю
ps тешусь надеждой подключить дисплей через i2c
кстати никто не знает, где почитать подробнее про работу i2c-tools в openWRT, список команд и тп?

pps i2c возник потому что ds1820 не хочет работать с usb-uart, хотя последний и определяется и digitemp запускается и searching 1-wire, но не находит, возможен вариант, что и сам ds1820 исдох после бесчисленных опытов=)
piglet-animas вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 21:55. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Яндекс.Метрика