arduino duemilanove и i2c

smog
Offline
Зарегистрирован: 27.06.2014

Уже неделю пытаюсь получить хоть какой-то результат по шине i2c от Ардуины.

Пробовал подключать и это:

http://www.electronshik.ru/item/10-dof-mems-imu-sensor-1109790

и к Rasperberry Pi как slave - никакого результата. Подключаю вроде правильно (на A4 и А5 пины) + общая земля.

Упорно виснет на Wire.endTransmission(); в случае с датчиком, а с Rasperberry Pi как master и Ардуино как slave - master не видит адреса Ардуинки. Если пины не подключать не виснет, но естественно ничего и не находит. A4 и А5 проверил: работают нормально. Даже атмегу менял (благо была в запасе) на такую же - без результата. На датчике питание горит - вроде рабочий. Rasperberry Pi точно рабочая. Да и вероятность того, что я спалил всё и сразу стремится к 0. Так же пробовал подтягивать резисторами SDA и SCL к питанию - безрезультатно.

Может кто подскажет хоть в какую сторону копать ? Уже всё перепробовал и идеи кончились.

leshak
Offline
Зарегистрирован: 29.09.2011

[потерто]

Упс.... сорри.

Проглючило, че-то мне привиделось что у вас DUE

 

smog
Offline
Зарегистрирован: 27.06.2014

Неужели никто не сталкивался с похожим и не может подсказать ?

smog
Offline
Зарегистрирован: 27.06.2014

UPD: Подключил 2 ардуинки по i2c. Друг друга увидели, а значит они по крайней мере точно рабочие. Остаётся проблема: их не видит rasperberry pi, настроенная как мастер, и не один из них не видит датчики (в описании вопроса) т.е. работают только друг с другом.

Как их всех передружить ?

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

smog пишет:

UPD: Подключил 2 ардуинки по i2c. Друг друга увидели, а значит они по крайней мере точно рабочие. Остаётся проблема: их не видит rasperberry pi, настроенная как мастер, и не один из них не видит датчики (в описании вопроса) т.е. работают только друг с другом.

Как их всех передружить ?

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

smog
Offline
Зарегистрирован: 27.06.2014

Спасибо,что ответили.

Питается raspberry pi вроде от адекватного бп от HTС на 2А. Явно больше требуемого. Да и запитывал я ардуину в т.ч. от отдельного БП. По поводу разного напряжения на ардуине и raspberry pi, то это компенсируется встроенными резисторами. Да и вроде i2c работает,как я понял, всегда по 5v. Кроме того указанный в теме датчик так же не работает ни с ардуиной, ни с raspberry pi. Вообщем беда :(

trembo
trembo аватар
Offline
Зарегистрирован: 08.04.2011
Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

давайте помотрим дружно на картинку
 

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

а потом почитаем

http://blog.retep.org/2014/02/15/connecting-an-arduino-to-a-raspberry-pi-using-i2c/

в общем гугл в помощь..

скукота... кто бы чего новое придумал. что бы в гуглях не было..а то одно и тоже 

smog
Offline
Зарегистрирован: 27.06.2014

Puhlyaviy

Как я написал в самом начале я пытался найти решение самостоятельно в течение недели. Гуглом пользоваться умею.

Читал и делал по этому примеру - не находит аруину.Ни с подтягивающими резисторами, ни без. 

Тут вот тоже есть похожее: http://www.rootfront.com/article/8104171/2013-07-09/podkljuchenie-raspberry-pi-i-arduino--s-ispolzovaniem-i2c Вообще похожих тем много и если бы решение было в одной из них я бы не беспокоил уважаемых специалистов.

Так же вот wiki по подключению датчиков из топика: http://www.dfrobot.com/wiki/index.php/10_DOF_Sensor_(SKU:SEN0140) по которому тоже не работает (ардуина виснет, а Raspberry Pi просто не находит)

Я допускаю, что у меня руки не от туда (тем более в электронике я не силён), но я уже перепробовал все возможные варианты (кроме разве что выпиливания резисторов из Raspberry Pi) и по идее хоть один из них должен был заработать.

smog
Offline
Зарегистрирован: 27.06.2014

trembo

Пробовал. Виснет на error = Wire.endTransmission(); при подключенном датчике

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

вот же ж.. у всех работает а у него не работает..в задаче вопрос.. почему?

попробуем погадать..

а ты вообще соединял проводками? и каким образом? и какими проводками? чудес не бывает.

smog
Offline
Зарегистрирован: 27.06.2014

Естесственно соединял. SDA малины (или датчиков)  с SDA ардуины(А4), SCL с SCL(А5), землю с землёй. Куча схем и примеров. Ошибиться сложно.

В случае малины питание брал сначало с малины с USB, потом подумал, что мож не хватает и подключил ардуину отдельным БП. В случае с датчиками питание брал +5v с ардуины. Пробовал так же 3.3v с ардуины. Индикация питания у датчиков гадских светилась в обоих случаях.

С малиной на ардуину заливал скетч слейва. На малине проверял по i2cdetect -y 0 ( и 1)

С датчиками на ардуину заливал i2c сканер, а так же примеры от разработчика данного подлого девайса для ардуины.

Пробовал подтягивать SDA и SCL к питанию резисторами на 4.7кОм. в обоих примерах (хоть это и бессмысленно).

Провода и контакты все проверял.

Уже начинаю склоняться к мысли, что спалил и датчики, и малину или изначально брак какой-нибудь т.к. оба девайса брал единовременно в одном магазине :(

trembo
trembo аватар
Offline
Зарегистрирован: 08.04.2011

Скорость проверить ( менять )  пробовали?    100KHz - 400KHz

smog
Offline
Зарегистрирован: 27.06.2014

trembo

Попробовал - не помогает

smog
Offline
Зарегистрирован: 27.06.2014

В состоянии покоя (без обращения к шине) замерил: малина даёт 3.25v на SDA и 1.66v на SCL. Вероятно при 3.3v питания это нормально - уже хорошо. Подключил другую ардуину - реакция та же :(

Подключил ардуину как слейв. Добавил вывод (при работе с i2c) показаний с A4 и A5. Не знаю на сколько верные значения отдаёт ардуина, но при несоединённых проводах оба контакта - 5v, в подключенном состоянии - SDA - 5v, SCL -0v и не изменяется независимо от действий

smog
Offline
Зарегистрирован: 27.06.2014

Puhlyaviy пишет:

скукота... кто бы чего новое придумал. что бы в гуглях не было..а то одно и тоже 

Вот. Придумал. Неужели никто помочь не может ? Я уже не знаю как проверить или хотя бы выявить однозначно горелый датчик или малину. Что сделать, что бы хоть немного приблизится к решению данной проблемы ?

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

Читать и думать что ты делаешь не правильно.

smog
Offline
Зарегистрирован: 27.06.2014

Puhlyaviy пишет:
Читать и думать что ты делаешь не правильно.

Ну что ещё можно почитать и над чем подумать? Я уже всё перепробовал! Просто вариантов не осталось. Спросить больше не у кого. Если вы тоже не знаете как решить эту проблему, то может подскажете как диагностировать неисправность в малине или указанных выше датчиках ? Как вы верно заметили: "чудес не бывает", однако ВСЕ варианты кроме сгоревших всех девайсов перепробованны. Заменено всё, что можно было заменить из имеющегося в наличии. Просто не представляю что ещё можно "читать" или над чем "думать"

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

Ну значит они сломались. Я обычно все железо заказываю в количестве минимум 5 штуки и у боле менее внушающих доверие продавцов.
А то в процессе работы многое случается. Колега вот не дает скучать, 2 прототипа сломал, причем физически сломал в процессе подключения к компьютеру, сильный он! Гы гы. Зато в новой версии я уже это учел.

Так что купите любой датчик с i2c и попробуйте.

smog
Offline
Зарегистрирован: 27.06.2014

Puhlyaviy

Спаиибо. Видимо это единственное, что остаётся. Будет мне наука. 2к за малину и почти столко же за датчики. Печальбеда :(

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

Чет дорого как то. Причем очень.

smog
Offline
Зарегистрирован: 27.06.2014

http://www.electronshik.ru/card/akselerometr-giroskop-magnitometr-barometr-118516

http://www.electronshik.ru/card/minikompyuter-raspberry-pi-model-b-116833

У них и брал. Дешевле в России не видел. Во всяком случае малину

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013
smog
Offline
Зарегистрирован: 27.06.2014

Puhlyaviy пишет:
http://aliexpress.com/item/1017927481.html http://aliexpress.com/item/1625399370.html 2500 в рублях вместе

404 по обоим ссылкам. Тем более это, как я понимаю, долго ждать придётся. Про aliexpress слышал, но не заказывал там ничего пока. Возможно хороший повод попробовать уже наконец :)

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

Ну не знаю.
Лучше день потерять, потом за час долететь (с)гриф. . Но хвост все равно это наше все.

smog
Offline
Зарегистрирован: 27.06.2014

В любом случае спасибо, что откликнулись

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

А датчик не откликается. Скорее проблема в библиотеке. Это целая пачка разных сенсоров. И теоретически i2c позволяет работать с гроздью датчиков. Но на практике не все так просто. Там вроде питание ему нужно.

smog
Offline
Зарегистрирован: 27.06.2014

Да это я знаю, просто датчик и на малине не находится по i2cdetect, и на ардуине через сканер. Мне бы для начала не данные с них получить, а хотя бы адрес увидеть, но тут тоже глухо. Тот факт, что на ардуине попытка передачи виснет даёт надежду на то, что датчик жив

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

Не факт. Это не датчик, это несколько датчиков на одном куске. Я бы поискал соплю или непропай, если бы быдо скучно.

smog
Offline
Зарегистрирован: 27.06.2014

В своей пайке (ножки) искал очень внимательно и прозванивал, а фабричную проверить малость затруднительно. Там плата покрыта чем-то типа плёнки или лака. Дорожки просматриваются, но доступа к ним нет

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

Чет я щас не понял, какая своя пайка? Оно все собраное продается. И смотреть нужно ноги и площадки, не дорожки.

smog
Offline
Зарегистрирован: 27.06.2014

ну под своей пайкой я вообщем-то и подразумевал припаянные ноги к контактным площадкам :-)

Их проверил внимательно.

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

Мдааа.. площадки имеется ввиду PADS, место куда паяют детали при SMD монтаже (я не знаю как они по русски правильно называются). И расматривать из нужно с увеличилкой.

smog
Offline
Зарегистрирован: 27.06.2014

У меня хорошее зрение. И лупу тоже использовал. И прозвонить не забыл :-)

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

Я не представляю каким образом можно прозвонить соединения сенсоров с платой при smd монтаже... там и ног то часто нет.. но вам видней, а мне пофигу. Выкинуть и купить новую. Но не факт что новая будет работать. Есть у меня подозрение про кривые руки.

smog
Offline
Зарегистрирован: 27.06.2014

Ножки. К плате. Прозвонить на контакт между ними. Хотя относительно рук думаю вы правы. Я работаю над этим :)

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

Я ща матом буду ругаться. У СЕНСОРОВ НОГИ.. СЕНСОРОВ А НЕ У ПЛАТЫ... мляяя

smog
Offline
Зарегистрирован: 27.06.2014

их я тоже визуально проверил. Вроде всё хорошо. Но если бы и не было хорошо исправить бы это я не смог.

Спасибо за помощь. Думаю тему можно закрывать т.к. что-то решить тут уже вероятно не получится

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

Можно сдуть все сенсоры и назад их по одному сажать и смотреть.
Но если питание на эту вязанку берете с ардуины. То аржуина не виснет. Ей просто питания не хватает.