Управляем чем угодно откуда угодно

Нужен драйвер SMBus

Виртурилка, 3G/4G, WiFi, моторчики, датчики, GPS и прочее - питание, драйвера, совместимость и т.д.

Re: Нужен драйвер SMBus

Сообщение holmes » 11 апр 2014, 03:34

Чето я слал слал разные команды в батарейку и вдруг она начала отвечать. Некоторые параметры даже были вменяемыми.
Например вольтаж батареи. Однако возвращала попеременно, то нормальный вольтаж, то какое-то слишком большое число (не ясно что это было), хотя я запрашивал именно регистр вольтажа.

Получилось это только 1 раз. После рестарта всего робота воспроизвести успех так и не удалось ... мистика.
Аватара пользователя
holmes
 
Сообщения: 83
Зарегистрирован: 13 ноя 2013, 00:02
Откуда: Мск

Re: Нужен драйвер SMBus

Сообщение phoenix367 » 11 апр 2014, 14:52

А какая частота шины I2C? Возможно стоит ее поменять. Еще вариант - железка работает в master режиме (судя по описанию на сайте она это умеет). Возможно надо сначала каким-то образом активировать slave режим. Третий вариант - плохой контакт соединений разъема - такое тоже бывает и это надо проверить.
phoenix367
 
Сообщения: 193
Зарегистрирован: 09 сен 2013, 00:19

Re: Нужен драйвер SMBus

Сообщение holmes » 11 апр 2014, 17:50

Контакты проверю.
Железка точно работает в slave, это мне сами разрабы написали.
Вчера уже затра.... с ней, написал письмо в поддержку. Сегодня ответили.

Код: Выделить всё
Hi,
 
We use 7 bit addressing(highest 7 bit)
0x70=01110000 in binary format
0x38=00111000
 
So if you look at the 7 MSB bit of 0x70 it could be read as 0111000=0x38
> Is it okay?
So I think it is okay.
 
I attach an SMBUS master which was written in squirrel(sort of C) where you can find the relevant code for communication.


Код я прилагаю.
Там явно видно что номера регистров я использовал правильные, и частота 100кГц. И читает он 2 байта, то есть слово (тип w в i2cget).
Может кто-нибудь посмотреть и предположить в чем проблема может крыться?
Вложения
smbus openups tester 2.c.zip
(3.06 КБ) Скачиваний: 132
Аватара пользователя
holmes
 
Сообщения: 83
Зарегистрирован: 13 ноя 2013, 00:02
Откуда: Мск

Re: Нужен драйвер SMBus

Сообщение holmes » 11 апр 2014, 23:25

И еще странность.
Делаю первый i2cdetect, отрабатывает за пол секунды.
Потом i2cget, пишет Read failed.
Далее опять i2cdetect, и вот тут он начинает сканировать по одному адресу в секунду примерно. И при этом, как видно, не находит устройства на адресе 08 (не знаю что там на этом адресе). Дожидался до конца, вообще ни одного устройства не видит.
Кто-нибудь знает в чем дело?

Код: Выделить всё
[root@virt2real ~]# i2cdetect -y 1
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- 08 -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- 38 -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
[root@virt2real ~]# i2cget -y 1 0x38 0x09 w
Error: Read failed
[root@virt2real ~]# i2cget -y 1 0x38 0x09 w
Error: Read failed
[root@virt2real ~]# i2cget -y 1 0x38 0x09 w
Error: Read failed
[root@virt2real ~]# i2cdetect -y 1
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- ^C


А после каждой попытки чтения в логе появляется очередная пара строк
Код: Выделить всё
Apr 11 23:48:46 virt2real user.err kernel: [  613.959510] i2c_davinci i2c_davinci.1: controller timed out
Apr 11 23:48:46 virt2real user.err kernel: [  613.967063] i2c_davinci i2c_davinci.1: initiating i2c bus recovery


Отключил OpenUPS и надел обратно моторшилд. Ответ был мометально:
Код: Выделить всё
[root@virt2real ~]# i2cdetect -y 1
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- 08 -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: 40 -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: 70 -- -- -- -- -- -- --
Аватара пользователя
holmes
 
Сообщения: 83
Зарегистрирован: 13 ноя 2013, 00:02
Откуда: Мск

Re: Нужен драйвер SMBus

Сообщение holmes » 12 апр 2014, 16:52

Нашел дрова под linux для OpenUPS. http://www.networkupstools.org/download.html
Я правильно понимаю что это надо писать просьбу разработчикам собрать их и, в случае успеха, вкомпилить их в ядро?
Аватара пользователя
holmes
 
Сообщения: 83
Зарегистрирован: 13 ноя 2013, 00:02
Откуда: Мск

Пред.

Вернуться в Железо - заставляем работать

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

cron