Перейти к содержанию
    

Здравствуйте.

Есть вот такой GPS+компас. Внутри стоит модуль GPS, компас 5883 (QMC или HMC) и какая-то микросхема со затертым названием.
I2C микросхемы компаса подключено к микросхеме без названия (предполагаю что это микроконтроллер), а уже от нее
2 вывода идут на разъем и подписаны SDA и SCL.

Так вот, этот компас не получается ни прочесть ни записать конфигурацию в него.

Опытным путем удалось добиться что эта безымянная микросхема отвечает на адрес 0x40 (чтение - 0x81, запись - 0x80).
Не понятно как с ней работать. Поиск информации по форумам и даташитам компасов не дал результатов.

Может кто имел дела с таким устройством, поделитесь таблицей регистров.
Или есть предположения, кто из компасов может быть с адресом 0x40.
Или может быть есть мысли как еще можно добиться от него показаний.


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

compass1.png

compass2.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Микросхема или драйвер/развязка - усиливает I2C от 5883 и UART от Ublox, или микроконтроллер.

Проще прошвырнуться по исходникам engine для коптеров и посмотреть как с ним общаться.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Думал  уже что может быть это просто буфер, но:
- он отвечает по I2C на адрес 0x40, а  у компаса адрес 0x0D
- если встать лог анализатором на выводы I2C между этой микросхемой и компасом, то видна инициализация и чтение компаса (период примерно 20мс).
Судя по обмену компас это QMC5883.

По исходникам смотрел, ничего похожего не нашел, чтобы было с адресом 0x40. Искал и 0x80 и 0x81.

Такое впечатление что китайцы ставят на плату дешевый компас, который представляется более дорогим.
Другого объяснения я не нахожу. Это люди которые за каждый микроцент дерутся, а тут целую микросхему поставили.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

16 hours ago, iamnot said:

который представляется более дорогим.

Да, такое было уже.

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

Можно попробовать, что вам терять? Выпаиваете и с компаса прямо на разъем перемычками.

За интерес ради посмотреть на включение этой мсх - питание, вход от компаса, обвязка, выход... Попытаться как-то идентифицировать. Скорей всего авр какой ни то или микрочип.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Значит у этой микросхемы распиновка такая.
1 -  GND
2 - SCL на компас
3 - SDA на компас
4 - SCL на разъем
5 - SDA на разъем
16 - +3,3В
Остальные никуда не идут. Обвязки тоже никакой :cray:.
Корпус TSOP16 вроде бы.

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

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Думаю нет, так как
- он отвечает по I2C на адрес 0x40, а  у компаса адрес 0x0D
- если встать лог анализатором на выводы I2C между этой микросхемой и компасом, то видна инициализация и чтение компаса (период примерно 20мс).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Это может быть и магнитометр 2D или 3D (кроме компаса), иногда ставят и гроскоп с акселем. А что за устойство где эта плата установлена?

Нужно запросить ID девайса по этому I2C адресу 0x40, если чип отвечает, может удастся определить что за part number, mfg.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Это GPS + компас в одном устройстве. Применяется обычно в коптерах и подобной тематике.
ID устройства можно было бы запросить, но не знаю в каком регистре он находится.

Пробовал читать регистры по порядку начиная с 0 (читаю по 1 байту). первые 8 регистров он шлет данные
0x39 0x0 0x5F 0x00 0x00 0x00 0x20 0xBC.
Если читать 9 и далее то повторяется то есть 9й будет 0x39 и т.д.
Теперь, если читать по несколько байт, то ситуация меняется. Первые 2 байта от каждого регистра читаются со значениями:
0 - 0x39 0x9F, 1 - 0x00 0x30, 2 - 0x5F 0x42, 3 - 0x00 0x00, 4 - 0x00 0x00, 5 - 0x00 0x00, 6 - 0x20 0x00, 7 - 0xBC 0x10.
Остальные 0xFF, причем NAK не шлет, можно хоть до 255 байт прочесть и все будут 0xFF.

Эти регистры на повороты компаса не реагируют, стоят все время в этих   значениях.
:dash2:
 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

18 часов назад, iamnot сказал:

Это GPS + компас в одном устройстве. Применяется обычно в коптерах и подобной тематике.

"В коптерах и подобной тематике" применяются не компасы, а гироскопы. Либо гироскоп + компас. Но главный всё равно - гироскоп.

И Ваш затёртый чип похож по функционалу и корпусу на MPU-6050. Да и как видно по фотке корпус у вас не "TSOP16 вроде бы", а QFN.

У MPU-6050 как раз корпус QFN24, и он имеет два I2C-интерфейса (один (primary) - для подключения к МК, другой (auxiliary) - для опционального подключения компаса (магнетометра)).

Правда адрес по primary у него 0x68 или 0x69, а не 0x40. Так что это возможно какой-то аналог MPU-6050.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Какой же он QFN, когда не то что TSSOP, а вообще широкий SOIC16 ? В QFN там компас, рядышком.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

9 минут назад, rx3apf сказал:

Какой же он QFN, когда не то что TSSOP, а вообще широкий SOIC16 ? В QFN там компас, рядышком.

Я из фотки понял что стёртый - это тот у которого рядом написано "U3". Если речь про соседний чип, то тогда да - это не оно.

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

 

PS: И если U3 - это гироскоп, то какой? Маркировки ни фига не видно. И куда идут его I2C (если они есть)? Связаны ли они с главным чипом или с затёртым чипом?

Уже за эти дни можно было прозвонить дорожки платы и выложить принципиальную схему.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

jcxz, Вы не внимательно читали сообщения.
U3 - это 3-Axis Magnetic SensorQMC5883L. Это установлено лог анализатором по обмену между безымянной микросхемой и компасом.
Вывод SDA компаса идет на 3й вывод TSOP16, SCL на 2й.
Выводы 4 и 5 микросхемы TSOP16 идут на разъем и обозначены на нем SDA и SCL соответственно.

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

28 минут назад, jcxz сказал:

Уже за эти дни можно было прозвонить дорожки платы и выложить принципиальную схему.

Выше в абзаце и выше в сообщениях указано что куда подключается. Именно то что нужно, без лишних подробностей.
Компас -> I2C -> TSOP16 -> I2C -> разъем.
Нужно ли еще что-то рисовать, я думаю человек который в теме, поймет.
 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...