RSS лента

extrasensi

Compass init error или как это лечится?

Оценить эту запись
23.02.2018 в 11:30 (1601 Показов)
Пока сбор нового квадра задерживается,а руки чешутся и хочется,чтобы время не прошло зря, я решил попробовать решить проблему с компасом на плате AKM8975.Компас расположен на модуле GPS m8n от readytosky.Выглядит так (компас слева вверху):


Схожие проблемы есть и на других GPS от этого продавана,а после углубления в поиски оказалось,что и вовсе пока существует APM, существует и проблема Bad Compass health,которая в моем случае не решилась ни одним из найденных способов. в Мишн планере был запущен терминал и там я увидел ошибку COMPASS INIT ERROR.Прошивка у меня 3.2.1,оттуда вырезана поддержка CLI,но и этого было достаточно. Значения mx my mz меняются, оффсеты почему-то снова уехали до огромных величин, с металлом рядом компас вроде не держалпроблем от наводок замечено не было ранее при калибровке. Наткнулся на пост на гитхабе.Там такой же компас, только модуль ГПС другой.И ситуация следующая, ПК у человека SP Racing F3 и там не определяется этот компас из-за отсутствующих драйверов этого компаса в прошивке для ПК. Я не шарю в прошивках, но там в обсуждении пишут фразу " I don't think this chip is actually an AK8975 if it's being detected as a HMC5883 .They have different i2c addresses, so there should be no way that it works and detects it when set to HMC5883, yet it does. Also, I just checked and betaflight is detecting it as HMC5883 too."
и ниже следующий пост с фразой:
"With independent program I found out that AKM8975 mag chip is emulating HMC5883 (or strange chip is doing i2c logical translation to HMC5883 registers) so that is why it is detected as HMC5883".
Если сделать вывод,то оба человека пишут,что компас AKM8975 эмулируется неизвестной платой U1 в компас HMC5883,потом плата U1 упаковывает сигналы с ГПС и компаса и отправляет их в ПК. В итоге у 2х человек решилась проблема с извлечением неизвестного чипа (на моем фото он сверху с маркировкой U1). Вот такой вариант:

Вроде правильно понял весь этот пост.
Подводя итог вариантами решения остается софтварный мод прошивки ардукоптер (по аналогии с модом в посте на гитхабе) в части компаса (это для меня вовсе недосягаемо) с не совсем понятными последствиями и железячный мод, с удалением платы U1 и подпаиванием пары проводков.

важный UPD от 11.03.18!!! вариант с отпайкой чипа у меня тоже не заработал!!!в связи с чем едет новый компас.

Обновлено 11.03.2018 в 09:49 [ARG:5 UNDEFINED]

Категории
Без категории

Комментарии

  1. Аватар для cezarepicentr
    Отлично! Взял на заметку!
  2. Аватар для Batkas
    Скорее всего модуль Вы покупали на аллиэкспресе, и Вам по ошибке прислали современный GPS модуль, а он настроен\прошит под современные полётные контролёры и их цапы (например Naza или omnibus и тп).
    Если же Вы используете полётник позавчерашней эпохи - APM, или вчерашнего дня - PIXHAWK, то конечно Вам не нужен перемодулятор. Просто удалите эту микросхему и соедините перемычками. С прошлыми (медленными\тормозными) контролёрами модуль AKM8975 работает напрямую.
    Если требуется быстрая обработка, для скоростного обсчета - оставьте HMC5883 на месте, ибо все современные полетные процессоры не понимают медленных данных от старых датчиков. Они считают, что так медленно элементарный датчик работать не может, соответственно он неисправен и игнорируют его, от чего возникает программный конфликт оборудования.
  3. Аватар для extrasensi
    Цитата Сообщение от Batkas
    Скорее всего модуль Вы покупали на аллиэкспресе, и Вам по ошибке прислали современный GPS модуль, а он настроен\прошит под современные полётные контролёры и их цапы (например Naza или omnibus и тп).
    Если же Вы используете полётник позавчерашней эпохи - APM, или вчерашнего дня - PIXHAWK, то конечно Вам не нужен перемодулятор. Просто удалите эту микросхему и соедините перемычками. С прошлыми (медленными\тормозными) контролёрами модуль AKM8975 работает напрямую.
    Если требуется быстрая обработка, для скоростного обсчета - оставьте HMC5883 на месте, ибо все современные полетные процессоры не понимают медленных данных от старых датчиков. Они считают, что так медленно элементарный датчик работать не может, соответственно он неисправен и игнорируют его, от чего возникает программный конфликт оборудования.
    Борис, громадное спасибо,что подтвердили чьи то догадки на гитхабе.За описанную работу запросили аж 500 рэ
  4. Аватар для alexeykozin
    Уважаемый Борис
    Ваш спитч про невероятные и быстрые современные компасы, поколения полетных контроллеров, перемодуляцию и программные конфликты оборудования безусловно имеет художественную ценность, однако совершенно далек от реальности.

    AKM8975 это совершенно новый китайский чип, с поддержкой в отдельных сборках программного обеспечения, он стоит на целых 50 центов дешевле чем hmc5883L поэтому предприимчивые китайцы стали его ставить на самые дешевые модели навигационных приемников.
    чтобы его поддерживать вкорячили на плату однокристальный контроллер считывающий регистры акм и транслирующий как регистры 5883, но видимо как это обычно бывает накосячили с прошивкой и поэтому нефига не работает как ожидалось.
    решение на пару баксов - не использовать тот компас что на плате а взять за пару баксов платку отдельного компаса с нормальным чипом.

    что касается поколений полетных контроллеров и поддержки всевозможных компасов
    1. скорости обычного HMC5883L для ориентации более чем достаточно, это не гироскоп чтобы его читать 1000раз в секунду.
    2. то что левый китайский чип не работает с апм, пиксом и назой - не проблема полетных контроллеров и их прошивок,
    помимо акм лично я знаю еще 4 модели разнообразных китайских компасов в той или иной мере похожих на hmc5883
    если авторы бэтафляя и инава оперативно стараются поддерживать все многообразие рынка чипов компасов - это похвально,
    но простите в остальном функционале эти прошивки просто младенцы по сравнению с контроллерами с вашей легкой руки названные "позавчерашней эпохи и вчерашнего дня"

    добрый совет, займитесь прозой, вам подойдет стиль женского романа,
    там добрый читатель, он легко верит всякой чуши
  5. Аватар для keks_007
    День добрый! Выполнил вышеуказанную процедуру в надежде решить проблему. Точно такая же плата ГПС/компас. Отпаял чип U1, соединил контакты как на картинке ииии....в итоге компас перестал подавать признаки жизни вообще. Раньше были показатели MX.MY.MZ, теперь полная тишина. Компас не работает совсем. Может еще кроме соединения этих дорожек нужно делать?
  6. Аватар для alexeykozin
    Мужики, цена вопроса 100р!!!

    https://ru.aliexpress.com/wholesale?...hText=HMC5883L
    при выборе смотрите чтоб на фотке на чипе было L883
  7. Аватар для SergDoc
    Ещё раз для тех кто с бронепоезда AKM8975 и hmc5883 разные люди... А u1 вообще не человек... В ПО ардупилот не поддерживается компас AKM8975 ( их нет в официальных полетник) а hmc снят с производства - китайцы пошли на хитрость: поставили микроконтроллер, который читает регистры AKM8975 и эмулирует регистры hmc5883, естественно криво. По сей причине с микроконтроллером есть жалобы на плохую жизнь компаса, а без оного компаса вообще нет!!!
  8. Аватар для extrasensi
    Цитата Сообщение от alexeykozin
    Мужики, цена вопроса 100р!!!

    https://ru.aliexpress.com/wholesale?...hText=HMC5883L
    при выборе смотрите чтоб на фотке на чипе было L883
    больше чем 100
    ссылка раз - самый дешевый вариант
    ссылка два - чуть подороже

    П.С. не зря тот китайский магаз зовут редиской (readytosky). проблема с компасом более недели назад была озвучена продавану, но он затихарился напрочь, на сообщения не отвечает!!!
    ну а спор поздно открывать, уже 2 месяца прошло, жаль не сразу занялся проверкой

    буду заказывать по 2й ссылке скорее всего.
    Прошу прощения у keks_007, что подставил его. Сам надеялся до последнего и планировал в субботу разобраться с чипом.

    upd: как быть, если есть на фото
    L883, а в комментариях пишут, что модуль не HMC5883l,а QMC5883L c другой адресацией шины I2C?
    Обновлено 28.02.2018 в 17:50 [ARG:5 UNDEFINED]
  9. Аватар для alexeykozin
    сняли с производства то оригинальный HMC5883L он и стоил то прилично в свое время, то что мы покупаем на ли по доллару за чип это давно поставленная в серию китайская точная копия, хорошая китайская копия. и ее снимать с производства никто не собирается.
    кроме того производители зачастую перезапускают выпуск серий микросхем втч устаревших в случае получения крупной заявки.

    у QMC5883L другой адрес устройства, без изменения кода тоже не будет работать. если продавец обманывает на фото товара L883 а вреале Q883 но надо писать жалобу и требовать возврата денег прилагая фото
  10. Аватар для extrasensi
    Цитата Сообщение от alexeykozin
    сняли с производства то оригинальный HMC5883L он и стоил то прилично в свое время, то что мы покупаем на ли по доллару за чип это давно поставленная в серию китайская точная копия, хорошая китайская копия. и ее снимать с производства никто не собирается.
    кроме того производители зачастую перезапускают выпуск серий микросхем втч устаревших в случае получения крупной заявки.

    у QMC5883L другой адрес устройства, без изменения кода тоже не будет работать. если продавец обманывает на фото товара L883 а вреале Q883 но надо писать жалобу и требовать возврата денег прилагая фото
    очень надеюсь, что изменения в коде будут не шибко большие,если их придется вносить. Я итак решил посмотреть библиотеки ардукоптера под компас АК8975 и есть библиотека под АК8963. На просторах гитхаба нарыл еще и библиотеки под АК8975. Пока не хватает духа их соединить,к тому же в клоне ардукоптера с гитхаба на комп есть только библиотека под 5883