#321
OFFLINE
Haba1962
-
- Пользователи
-
- 4 сообщений
Начинающий летчик
- Город:Сургут
- Коптер:Inspire 2
Отправлено 23 Апрель 2018 — 12:27
Спасибо!
-
0
#322
OFFLINE
Vital
Vital
-
- Пользователи
-
- 3 сообщений
Начинающий летчик
- Город:P-K
Отправлено 24 Май 2018 — 02:44
Всем привет! Стала сама выключатся запись видео. Сек 15-20 пишет и выключается. Куда копать?
спасибо
-
0
#323
OFFLINE
pento
Отправлено 24 Май 2018 — 06:59
Стала сама выключатся запись видео. Сек 15-20 пишет и выключается.
У меня на мавике такое было. После форматирования SD карты исправилось.Форматировал прямо из джиги.
-
1
#324
OFFLINE
Pravsha
Pravsha
-
- Пользователи
-
- 2 сообщений
Начинающий летчик
- Город:Белгород
- Коптер:Inspire 2
Отправлено 25 Май 2018 — 11:33
Здравствуйте.
Inspire 2.
Возникла проблема: нет видео с камеры. Сама камера крутится-вертится штатно. Выходит ошибка: Camera Sensor Error и Air Encoder Error (0x400000).
Забугорные сайты рекомендуют сбросить до заводских настроек и снова обновиться до последней версии. Мне не помогло.
Версии прошивки:
Коптер: 01.02.0100
Пульт: 01.01.0010
Камера: 01.08.22.02
RAW Module: 00.00.00.00 (не знаю что это)
Буду благодарен за мысли что делать?
-
0
#325
OFFLINE
Shuraley
Shuraley
- Город:Москва
- Коптер:DJI F4, DJI Inspire 2, Hubsan x4
Отправлено 25 Май 2018 — 01:07
Pravsha,скорее всего плохой контакт камеры с тушкой — посмотрите, протрите. У меня подобное бывает — после включения приходится ждать иногда минуту, пока появится изображение, иногда помогает (возможно совпадение) покрутить при включенном коптере место соединения, когда просто достаточно вытащить/вставить из пилотского пульта шнур который ведет к смартфону (не знаю в чем связь, но сразу появляется изображение.
-
0
#326
OFFLINE
Pravsha
Pravsha
-
- Пользователи
-
- 2 сообщений
Начинающий летчик
- Город:Белгород
- Коптер:Inspire 2
Отправлено 25 Май 2018 — 01:15
Shuraley, А при включенном питании можно камеру отключать? Мануал предостерегает это делать )
-
0
#327
OFFLINE
Shuraley
Shuraley
- Город:Москва
- Коптер:DJI F4, DJI Inspire 2, Hubsan x4
Отправлено 26 Май 2018 — 10:21
Pravsha, я не говорю про отключение — шевелим не нажимая кнопку для отстегивания- там есть маленький, но ход. Мануал то говорит-а вот ещё тогда вопрос-почему при переходе из транспортировочного положения он не выключается потом чтобы пристегнуть камеру, как это происходит при переходе в транспортировочное при выключенном коптере если нажать 5 раз он сложится и выключится снова.
-
0
#328
OFFLINE
ners
ners
-
- Пользователи
-
- 37 сообщений
Начинающий летчик
Отправлено 28 Май 2018 — 04:52
Pravsha,У меня возникла такая проблема, после опрокидывания коптера с небольшой высоты, сантиметров с 70-80см.
Оказалось, что порвался шлейф соединяющий камеру с дроном. Заменил и все заработало. Правда пришлось разобрать весь коптер)))
Прикрепленные изображения
Сообщение отредактировал ners: 28 Май 2018 — 05:04
-
0
#329
OFFLINE
Vital
Vital
-
- Пользователи
-
- 3 сообщений
Начинающий летчик
- Город:P-K
Отправлено 09 Июнь 2018 — 06:55
Качество видео и фото стало хуже. (мутноватое) От чего может быть? Линза чистая)
-
0
#330
OFFLINE
vadson
vadson
-
- Пользователи
-
- 25 сообщений
Начинающий летчик
- Город:Minsk
- Коптер:P4p
Отправлено 22 Июнь 2018 — 05:01
Доброго дня! Подскажите, где выгоднее приобрести аккумуляторы для инспайра. Спасибо. Прикупил себе на днях. 1 комплект, как то совсем не хватает не на что.
-
0
#331
OFFLINE
DmitryK
DmitryK
-
- Пользователи
-
- 29 сообщений
Начинающий летчик
- Город:Пермь
- Коптер:DJI Inspire 2&Phantom 4 Pro
Отправлено 26 Июнь 2018 — 11:18
vadson, тоже интересует данный вопрос, поддерживаю. Поделитесь опытом, кто где покупает?
-
0
#332
OFFLINE
Gelos
Gelos
-
- Пользователи
-
- 13 сообщений
Начинающий летчик
- Город:Barguzin
- Коптер:Phantom
Отправлено 28 Июнь 2018 — 10:41
DmitryK, В Китае покупаю) в России дороговато)
Сообщение отредактировал Gelos: 28 Июнь 2018 — 10:44
-
0
#333
OFFLINE
vadson
vadson
-
- Пользователи
-
- 25 сообщений
Начинающий летчик
- Город:Minsk
- Коптер:P4p
Отправлено 01 Июль 2018 — 12:52
поделитесь ссылкой. где в Китае
-
0
#334
OFFLINE
Vital
Vital
-
- Пользователи
-
- 3 сообщений
Начинающий летчик
- Город:P-K
Отправлено 03 Июль 2018 — 01:01
Как вывести на фото и видео дату съёмки? Есть такая возможность?
-
0
#335
OFFLINE
vadson
vadson
-
- Пользователи
-
- 25 сообщений
Начинающий летчик
- Город:Minsk
- Коптер:P4p
Отправлено 05 Июль 2018 — 04:42
Сегодня произошёл инцидент, с высоты 16 метров коптер резко начал терять высоту, разогнался до 7м/с. Ударившись об землю гимбалом включил отпускание шасси. Падал во вращении, потом как не в чем не бывало, ошибок не каких нету. Куда копать? Единственное сейчас при откалиброванном компасе Камера гимбала смотрит под 45 гр. если пройти калибровку заново смотрит ровно, стоит с помощью пульта наклонить гимбал,как опять поворачивает гимбал на все те же 45гр в сторону по оси уав и немного заваливает по роллу.
Сообщение отредактировал vadson: 05 Июль 2018 — 04:43
-
0
#336
OFFLINE
Gelos
Gelos
-
- Пользователи
-
- 13 сообщений
Начинающий летчик
- Город:Barguzin
- Коптер:Phantom
Отправлено 10 Июль 2018 — 06:11
-
0
#337
OFFLINE
Georg
Georg
- Город:Москва
- Коптер:Inspire 2 Phantom 4 Pro Mavic Pro Platinum
Отправлено 03 Август 2018 — 12:42
Сегодня дрон словил глюк. Отлетал заряд до 31%. Стал уже было сажать, но в последний момент решил еще сделать заход над речкой. Самолетный взлет и на высоте 100 метров дрон разворачивает камеру против часовой стрелки на полный оборот до упора , а сам начинает крутиться в противоположную сторону. Стики поворотов не слушает вообще. Отзывается только вверх-вниз и осталось полное управление правым стиком. Переключаю ATTI. Вращение снизилось но не прекратилось. На команды поворота по прежнему не реагирует. По карте начал тянуть к себе правым стиком и одновременно снижаться. Под дроном река. Над рекой провода. Как сажать вращающийся дрон ума не приложу. А его еще притащить как то надо. Солнце яркое, камера смотрит в сторону, визуально его не видно. По карте довел ближе и мягко посадил. Перегрузил дрон. Взлетел. Все работает как и прежде. У кого то подобное было?
Добавлено позже (03 Август 2018 — 12:42)
Разобрались. Причина такого поведения дрона лежала на поверхности. Продолжаем летать.
Сообщение отредактировал Georg: 03 Август 2018 — 12:44
-
0
#338
OFFLINE
Kolbasatka
Kolbasatka
- Город:Томск
- Коптер:Mavic 2 Pro, xiaomi redmi note 8 pro
Отправлено 07 Август 2018 — 08:55
Сегодня обратил внимание на маркировку маунтов пропеллеров. перед левый CW2, перед зад CCW2, перед право CCW2, а вот зад право -CW1. Позвонил товарищу, спросил. У него схожая ситуация. Разницы в повороте CW2 и CW1 (направление вращения) фиксаторов пропов нет, да и логически быть не может. С чем связана различная маркировка фиксаторов пропеллеров, как думаете?
-
0
#339
OFFLINE
RomX
RomX
- Город:Советская Гавань
Отправлено 11 Сентябрь 2018 — 04:46
Сегодня произошёл инцидент, с высоты 16 метров коптер резко начал терять высоту, разогнался до 7м/с. Ударившись об землю гимбалом включил отпускание шасси. Падал во вращении, потом как не в чем не бывало, ошибок не каких нету. Куда копать? Единственное сейчас при откалиброванном компасе Камера гимбала смотрит под 45 гр. если пройти калибровку заново смотрит ровно, стоит с помощью пульта наклонить гимбал,как опять поворачивает гимбал на все те же 45гр в сторону по оси уав и немного заваливает по роллу.
Вам надо раз магнитить саму камеру
Добавлено позже (12 Сентябрь 2018 — 00:46)
Добавлено позже (03 Август 2018 — 12:42) Разобрались. Причина такого поведения дрона лежала на поверхности. Продолжаем летать.
а в чём причина была?
-
0
#340
OFFLINE
YAA
YAA
- Город:Т
- Коптер:Mavic2Z,P
Отправлено 03 Ноябрь 2018 — 02:29
Выявились проблемы с батареями для Matrice 200 и Inspire 2 (отключаются и падают «на пол-зарядки»).
До выяснения — их полеты временно ограничены в Великобритании…
https://www.dpreview…ng-from-the-sky
Matrice 200 series models and the Inspire 2 have had temporary flying restrictions
applied to them as they use the DJI TB50 and TB55 battery packs that are suspected of failing mid-flight.
Сообщение отредактировал YAA: 03 Ноябрь 2018 — 02:29
-
0
Содержание
- Mavic Pro Aircraft encoder error 0x800000
- #1 OFFLINE retif100
- #2 OFFLINE andrew_by
- Подвес — настройка, проблемы, ошибки, камера (Mavic Pro)
- #681 OFFLINE Sergey111
- #682 OFFLINE aleks8989
- #683 OFFLINE RomanSimfer
- #684 OFFLINE Yoda
- #685 OFFLINE ACDS
- #686 OFFLINE Yoda
- #687 OFFLINE ACDS
- #688 OFFLINE dimdiman
- #689 OFFLINE Micha
- #690 OFFLINE dimdiman
- #691 OFFLINE Micha
- Обсуждение (Inspire 2)
- #321 OFFLINE Haba1962
- #322 OFFLINE Vital
- #323 OFFLINE pento
- #324 OFFLINE Pravsha
- #325 OFFLINE Shuraley
- #326 OFFLINE Pravsha
- #327 OFFLINE Shuraley
- #328 OFFLINE ners
- Прикрепленные изображения
- #329 OFFLINE Vital
- #330 OFFLINE vadson
- #331 OFFLINE DmitryK
- #332 OFFLINE Gelos
- #333 OFFLINE vadson
- #334 OFFLINE Vital
- #335 OFFLINE vadson
- #336 OFFLINE Gelos
- #337 OFFLINE Georg
- #338 OFFLINE Kolbasatka
- #339 OFFLINE RomX
- #340 OFFLINE YAA
Mavic Pro Aircraft encoder error 0x800000
#1 OFFLINE retif100
- Город: Москва
- Коптер: DJI Mavic Pro
После креша есть проблема с мавиком, заменил разбитый подвес, пробовал подключать несколько точно рабочих подвесов но изображение с камеры не появляется в приложении, при этом стабилизация работает нормально, выводится ошибка Aircraft encoder error 0x80000.
Шлейфы подключаемые к подвесу от коптера не порваны.
Подскажите в чем может быть дело?
#2 OFFLINE andrew_by
Летчик со стажем
- Город: Москва, метро Сокол — ЦСКА — Зорге — Полежаевская
Источник
Подвес — настройка, проблемы, ошибки, камера (Mavic Pro)
#681 OFFLINE Sergey111
- Город: Skadovsk
- Коптер: Phantom 4
#682 OFFLINE aleks8989
- Город: Санкт-Петербург
- Коптер: dji
Уважаемые, а такая ошибка встречалась у кого нибудь? Air Encoder Error (0x3c000008)
Уважаемые, а такая ошибка встречалась у кого нибудь? Air Encoder Error (0x3c000008)
#683 OFFLINE RomanSimfer
Летчик со стажем
- Город: Симферополь
- Коптер: MINI2
Подскажите пожалуйста, как побороть желе на видео? Такое ощущение как будто вибрация передаётся.
У меня исчезла тряска на любых пропах и плохих демферах, когда я сделал все гейны в GO4 на 80%.
#684 OFFLINE Yoda
- Город: Реж
#685 OFFLINE ACDS
Опытный летчик АС
- Город: Южно-Сахалинск
- Коптер: M2P, AE2P
рекомендую отдать Poster1
#686 OFFLINE Yoda
- Город: Реж
Сообщение отредактировал Yoda: 17 Апрель 2020 — 05:41
#687 OFFLINE ACDS
Опытный летчик АС
- Город: Южно-Сахалинск
- Коптер: M2P, AE2P
не факт что он прочтет быстро, может проще ему ЛС вопрос продублировать?
#688 OFFLINE dimdiman
- Город: Воронеж
Добрый день. Mavic pro (первая версия) зацепился за ветки на высоте 4 метра и упал на камни. Порвался шлейф подвеса, косичка была цела, но порвался один волосок. Заказал с али экспресса не оригинал шлейф и косичку. Поменял шлейф, у косички обрезал один этот волосок (одну жилу), менять не стал посчитал, что он не будет влиять на видеосигнал. При полётах, стал пропадать видео-сигнал, (сигнал с пультом был), когда коптер даже не далеко, а просто висит надо мной метров в 20-30. Пробовал и на планшете Sony и на телефоне Хонор. Периодичность пропадания сигнала не выявлена, может отлетать без потери минут 20 и тут же взлететь на другой батарее и сигнал пропадает минут через 10. Иногда помогает передёрнуть кабель из планшета. Dji go 4.1.22 зелёная. До краша не было практически потери сигнала, бывала улетал за 4 км. Вопрос: 1) Может ли одна порванная жила на косичке влиять на передачу видеосигнала? 2) Зачем так много жил на косичке? P.S. Моё мнение: жилы идут из платы из двух групп (обвёл на фото), Сигнал идёт по этим двум каналам, а множество жил в каждом канале для дубляжа сигнала, на случай если какие то жилы порвутся
#689 OFFLINE Micha
Опытный летчик АС
- Город: Саратов
- Коптер: MAVICи
Так вы поменяйте косичку, раз уже заказали, и убедитесь. верно ваше «мнение» или нет. Процедура не сложнее чем замена плоского шлейфа подвеса. Странно что сразу не поменяли.
Сообщение отредактировал Micha: 06 Май 2020 — 12:34
#690 OFFLINE dimdiman
- Город: Воронеж
Micha , Я перед тем как менять шлейф управления, включил мавик дома с разбитым подвесом и увидел что видео передаётся, на смартфон. Из-за этого подумал что порванный один волосок не имеет значения. Тем более косичка не оригинал и поэтому не стал менять сразу. Сегодня отлетал 1,5 аккумулятора, сигнал изображения не пропал. Но теперь страшно лететь туда, где не будет визуальной с ним связи и в случае пропадание видеолинка рассчитывать только на слепой авто возврат домой.
#691 OFFLINE Micha
Опытный летчик АС
- Город: Саратов
- Коптер: MAVICи
Источник
Обсуждение (Inspire 2)
#321 OFFLINE Haba1962
- Город: Сургут
- Коптер: Inspire 2
#322 OFFLINE Vital
- Город: P-K
Всем привет! Стала сама выключатся запись видео. Сек 15-20 пишет и выключается. Куда копать?
#323 OFFLINE pento
Летчик со стажем
- Город: М.О.
Стала сама выключатся запись видео. Сек 15-20 пишет и выключается.
#324 OFFLINE Pravsha
- Город: Белгород
- Коптер: Inspire 2
Возникла проблема: нет видео с камеры. Сама камера крутится-вертится штатно. Выходит ошибка: Camera Sensor Error и Air Encoder Error (0x400000).
Забугорные сайты рекомендуют сбросить до заводских настроек и снова обновиться до последней версии. Мне не помогло.
RAW Module: 00.00.00.00 (не знаю что это)
Буду благодарен за мысли что делать?
#325 OFFLINE Shuraley
Опытный летчик АС
- Город: Москва
- Коптер: DJI F4, DJI Inspire 2, Hubsan x4
Pravsha ,скорее всего плохой контакт камеры с тушкой — посмотрите, протрите. У меня подобное бывает — после включения приходится ждать иногда минуту, пока появится изображение, иногда помогает (возможно совпадение) покрутить при включенном коптере место соединения, когда просто достаточно вытащить/вставить из пилотского пульта шнур который ведет к смартфону (не знаю в чем связь, но сразу появляется изображение.
#326 OFFLINE Pravsha
- Город: Белгород
- Коптер: Inspire 2
Shuraley , А при включенном питании можно камеру отключать? Мануал предостерегает это делать )
#327 OFFLINE Shuraley
Опытный летчик АС
- Город: Москва
- Коптер: DJI F4, DJI Inspire 2, Hubsan x4
#328 OFFLINE ners
Pravsha ,У меня возникла такая проблема, после опрокидывания коптера с небольшой высоты, сантиметров с 70-80см.
Оказалось, что порвался шлейф соединяющий камеру с дроном. Заменил и все заработало. Правда пришлось разобрать весь коптер)))
Прикрепленные изображения
Сообщение отредактировал ners: 28 Май 2018 — 05:04
#329 OFFLINE Vital
- Город: P-K
Качество видео и фото стало хуже. (мутноватое) От чего может быть? Линза чистая)
#330 OFFLINE vadson
- Город: Minsk
- Коптер: P4p
Доброго дня! Подскажите, где выгоднее приобрести аккумуляторы для инспайра. Спасибо. Прикупил себе на днях. 1 комплект, как то совсем не хватает не на что.
#331 OFFLINE DmitryK
- Город: Пермь
- Коптер: DJI Inspire 2&Phantom 4 Pro
vadson , тоже интересует данный вопрос, поддерживаю. Поделитесь опытом, кто где покупает?
#332 OFFLINE Gelos
- Город: Barguzin
- Коптер: Phantom
DmitryK , В Китае покупаю) в России дороговато)
Сообщение отредактировал Gelos: 28 Июнь 2018 — 10:44
#333 OFFLINE vadson
- Город: Minsk
- Коптер: P4p
поделитесь ссылкой. где в Китае
#334 OFFLINE Vital
- Город: P-K
Как вывести на фото и видео дату съёмки? Есть такая возможность?
#335 OFFLINE vadson
- Город: Minsk
- Коптер: P4p
Сообщение отредактировал vadson: 05 Июль 2018 — 04:43
#336 OFFLINE Gelos
- Город: Barguzin
- Коптер: Phantom
#337 OFFLINE Georg
Летчик со стажем
- Город: Москва
- Коптер: Inspire 2 Phantom 4 Pro Mavic Pro Platinum
Сегодня дрон словил глюк. Отлетал заряд до 31%. Стал уже было сажать, но в последний момент решил еще сделать заход над речкой. Самолетный взлет и на высоте 100 метров дрон разворачивает камеру против часовой стрелки на полный оборот до упора , а сам начинает крутиться в противоположную сторону. Стики поворотов не слушает вообще. Отзывается только вверх-вниз и осталось полное управление правым стиком. Переключаю ATTI. Вращение снизилось но не прекратилось. На команды поворота по прежнему не реагирует. По карте начал тянуть к себе правым стиком и одновременно снижаться. Под дроном река. Над рекой провода. Как сажать вращающийся дрон ума не приложу. А его еще притащить как то надо. Солнце яркое, камера смотрит в сторону, визуально его не видно. По карте довел ближе и мягко посадил. Перегрузил дрон. Взлетел. Все работает как и прежде. У кого то подобное было?
Добавлено позже (03 Август 2018 — 12:42)
Разобрались. Причина такого поведения дрона лежала на поверхности. Продолжаем летать.
Сообщение отредактировал Georg: 03 Август 2018 — 12:44
#338 OFFLINE Kolbasatka
Летчик со стажем
- Город: Томск
- Коптер: Mavic 2 Pro, xiaomi redmi note 8 pro
Сегодня обратил внимание на маркировку маунтов пропеллеров. перед левый CW2, перед зад CCW2, перед право CCW2, а вот зад право -CW1. Позвонил товарищу, спросил. У него схожая ситуация. Разницы в повороте CW2 и CW1 (направление вращения) фиксаторов пропов нет, да и логически быть не может. С чем связана различная маркировка фиксаторов пропеллеров, как думаете?
#339 OFFLINE RomX
- Город: Советская Гавань
Сегодня произошёл инцидент, с высоты 16 метров коптер резко начал терять высоту, разогнался до 7м/с. Ударившись об землю гимбалом включил отпускание шасси. Падал во вращении, потом как не в чем не бывало, ошибок не каких нету. Куда копать? Единственное сейчас при откалиброванном компасе Камера гимбала смотрит под 45 гр. если пройти калибровку заново смотрит ровно, стоит с помощью пульта наклонить гимбал,как опять поворачивает гимбал на все те же 45гр в сторону по оси уав и немного заваливает по роллу.
Вам надо раз магнитить саму камеру
Добавлено позже (03 Август 2018 — 12:42) Разобрались. Причина такого поведения дрона лежала на поверхности. Продолжаем летать.
#340 OFFLINE YAA
Летчик со стажем
- Город: Т
- Коптер: Mavic2Z,P
Выявились проблемы с батареями для Matrice 200 и Inspire 2 (отключаются и падают «на пол-зарядки»).
До выяснения — их полеты временно ограничены в Великобритании.
Matrice 200 series models and the Inspire 2 have had temporary flying restrictions
applied to them as they use the DJI TB50 and TB55 battery packs that are suspected of failing mid-flight.
Сообщение отредактировал YAA: 03 Ноябрь 2018 — 02:29
Источник
Table of Contents
Overview
Flashing via serial port
Flashing u-boot by serial port
Flashing kernel
Flashing encrypted partition
Flashing Root Filesystem
Fix FPV restricted to 8 fps
Overview
Several DJI products use DM3xx family DaVinci media processors from Texas Instruments. Since the NAND memory chips which DJI uses to store their firmware can often stop working or lose data after several months without powering on, there is sometimes a need to re-flash part of the firmware, or even replace the chip and re-flash all partitions of the firmware. This page will explain the procedure.
Replacing whole NAND chip
When going the chip replacement route, you may first check whether some data can be still salvaged from the board. There are some files on the NAND which are unique to every drone, and can’t be completely recovered when lost. Read the info on 8 fps issue for details.
Flashing via serial port
It is possible to boot the chip into a mode which allows programming it via serial port. Since the board requires 3.3V serial interface, you will need USB to TTL converter (aka FTDI adapter) which supports this voltage.
Connect your 3.3V TTL converter to service pads. While this depends on markings of specific TTL converter, usually RX should be connected to TX and vice versa. Don’t worry about connecting RX and TX incorrectly, switching them will not damage anything, it just won’t work. The pad names depend on the board you have:
- for Ph3 Pro Gimbal Top board, the names are
368_U0_RXP
,368_U0_TXP
andGND
. - for Inspire X5 Camera Live View Encoder board, the names are
RXP
,TXP
andGND
. - for GL300a Interface board (WM323_INTERFACE_V2 or P00928.??), the names are
UART0_RX
,UART0_TX
andGND
. - for GL300 HDMI board, the names are
368_RX
,368_TX
andGND
. - for Lightbridge Air Unit Encoder board, the names are
U_RX
,U_TX
andGND
. - for Lightbridge Ground Unit board, the names are
RXD
,TXD
andGND
. - for N1 Video Encoder board from Matrice 100, the names are
U0_RX
,U0_TX
andGND
. - for Ph2 Vision+ WiFi module and the WM301 Live View Encoder board, the names are
UART0_RX
,UART0_TX
andGND
is Ground. - for the FC200 Live View Encoder board inside egg camera of Ph2 Vision, the names are
TP2
(RX),TP1
(TX) andTP3
is Ground.
If your TTL converter has a 5V power output, you may also choose to power your board from it, completely disconnecting it from aircraft. Be careful with that — connecting power from the drone and from TTL at the same time may overheat and damage some of the components. If you want to work on your board disconnected, connect power to a service pad marked 5V
. The board will draw up to 700mA of current (over 1000 mA if it also contains Ambarella) — connecting it to low-power USB will cause random resets and transmission errors.
Flashing u-boot by serial port
If after tapping to the serial interface, you see no message, or booting does not get to loading kernel, then you should re-flash u-boot images. When u-boot is good, it will display the message Loading from nand0, offset 0x??????
.
To re-flash u-boot, you should boot the chip into a mode which allows programming it via serial port.
To switch the boot mode, short the Boot Select service pad to 3.3V
. Marking of Boot Select pad depends on board:
- for Ph3 Pro Gimbal Top board, you have to short two pads —
BT00
andBT01
. - for Inspire X5 Camera Live View Encoder board, the two pads are
BTSEL00
andBTSEL01
. - for GL300a Interface board (WM323_INTERFACE_V2 or P00928.??), the name is
BTSELV
. - for GL300 HDMI board, the name is
BTSEL
. - for Lightbridge Air Unit Encoder board, the name is
BSEL
, but markings are rarely printed. - for Lightbridge Ground Unit board, the name is
BSEL
. - for N1 Video Encoder board from Matrice 100, the name is
BTSEL00
. - for Ph2 Vision+ WiFi module and the WM301 Live View Encoder board, the name is
BOOT
. - for the FC200 Live View Encoder board inside egg camera of Ph2 Vision, there is no pad, but a specific resistor is connected to the boot select input of the chip.
After the pad is connected, use TI utilities on connected PC to flash your new image:
sfh_DM36x -nandflash -v -p "COM21" ubl1.img u-boot.img
If you typed the correct port name, and service pads are shorted properly, you should see Target: BOOTME
message. You have to press Ctrl+C to get back to a prompt, and then run the command again. The second time it will work, resulting in message Operation completed successfully.
. Example for full log from the flashing:
----------------------------------------------------- TI Serial Flasher Host Program for DM36x (C) 2009, Texas Instruments, Inc. ----------------------------------------------------- Flashing NAND with ubl1.img and u-boot.img. Attempting to connect to device com21... Waiting for the DM36x... Target: BOOTME BOOTME commmand received. Returning ACK and header... ACK command sent. Waiting for BEGIN command... Target: BEGIN BEGIN commmand received. Sending CRC table... CRC table sent.... Waiting for DONE... Target: DONE DONE received. Sending the UBL... UBL sent.... Target: DONE DONE received. UBL was accepted. UBL transmitted successfully. Waiting for SFT on the DM36x... Target: Starting UART Boot... Target: BOOTUBL BOOTUBL commmand received. Returning CMD and command... CMD value sent. Waiting for DONE... Target: DONE DONE received. Command was accepted. Sending the UBL image Waiting for SENDIMG sequence... Target: SENDIMG SENDIMG received. Returning ACK and header for image data... ACK command sent. Waiting for BEGIN command... Target: BEGIN BEGIN commmand received. Image data sent... Waiting for DONE... Target: DONE DONE received. All bytes of image data received... Target: Writing UBL to NAND flash Target: Unprotecting blocks 0x00000001 through 0x00000018. Target: Number of blocks needed for header and data: 0x0x00000001 Target: Attempting to start in block number 0x0x00000001. Target: Erasing block 0x00000001 through 0x00000001. Target: Writing header and image data to Block 0x00000001, Page 0x00000000 [...] - above 2 messages will show for a sequence ob blocks Target: Erasing block 0x00000018 through 0x00000018. Target: Writing header and image data to Block 0x00000018, Page 0x00000000 Target: Protecting the entire NAND flash. Target: DONE Sending the Application image Waiting for SENDIMG sequence... Target: SENDIMG SENDIMG received. Returning ACK and header for image data... ACK command sent. Waiting for BEGIN command... Target: BEGIN BEGIN commmand received. Image data sent... Waiting for DONE... Target: DONE DONE received. All bytes of image data received... Target: Writing APP to NAND flash Target: Unprotecting blocks 0x00000019 through 0x00000032. Target: Number of blocks needed for header and data: 0x0x00000003 Target: Attempting to start in block number 0x0x00000019. Target: Erasing block 0x00000019 through 0x0000001B. Target: Writing header and image data to Block 0x00000019, Page 0x00000000 [...] - above 2 messages will show for a sequence ob blocks Target: Erasing block 0x0000002E through 0x00000030. Target: Writing header and image data to Block 0x0000002E, Page 0x00000000 Target: Protecting the entire NAND flash. Target: DONE Target: DONE Operation completed successfully.
You will need the unencrypted images of TI DaVinci Linux and the U-boot bootloader to do the flashing — files ubl1.img
and u-boot.img
. Depending on the board you’re fixing, these are stored in appropriate modules within firmware update:
- for GL300a board (WM323_INTERFACE_V2 or P00928.??) and HDMI board, the module is m1300,
- for Inspire 1 GL658 SDI board and Inspire 2 RC001 Interface board, the module is m1301,
- for WM320 Gimbal top board, the module is m0800,
- for Inspire X5 Camera Live View Encoder board, the module is also m0800,
- for FC200 Live View Encoder board the images are not part of updates; you can get them directly here.
Download the correct firmware package, and extract it with the tools provided within dji-firmware-tools repository.
For more sources of information, you can look at the description of the flashing procedure for Lightbridge for some details.
There is also a P3X-specific tutorial for Gimbal Top board, created by SunsetCatcher; you should be able to find links to his ph3pns.zip archive on PhantomPilots.
TI Serial Flashing tool
This method is based on Serial Boot and Flash Loading Utility provided by Texas Instruments. See «Obtaining the software» and «Versions for Other Devices» chapters of that page to download a version for the correct processor series.
Flashing kernel
If at the serial interface you see kernel boot error, or Recovery Kernel is booted, or kernel stops booting — you should reflash the kernel image. For example, this is how booting Recovery Kernel looks like:
U-Boot Product Vesion : DJI-DEC-Uboot-1.0-rc0(2015-11-02) U-Boot 2010.12-rc2-svn3214-Dji (Nov 02 2015 - 19:39:56) Cores: ARM 486 MHz DDR: 360 MHz I2C: ready DRAM: 128 MiB NAND: 128 MiB Bad block table found at page 65472, version 0x01 Bad block table found at page 65408, version 0x01 *** Warning - bad CRC, using default environment . Net: Ethernet PHY: GENERIC @ 0xff DaVinci-EMAC Press ESC to abort autoboot in 1 seconds . Loading from nand0, offset 0x4a0000 ** Unknown image type Wrong Image Format for bootm command ERROR: can't get kernel image! . Loading from nand0, offset 0x900000 Image Name: Linux-2.6.32.17-davinci1 Created: 2015-02-12 3:09:59 UTC Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 3665856 Bytes = 3.5 MiB Load Address: 80008000 Entry Point: 80008000 ## Booting kernel from Legacy Image at 80700000 ... Image Name: Linux-2.6.32.17-davinci1 Created: 2015-02-12 3:09:59 UTC Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 3665856 Bytes = 3.5 MiB Load Address: 80008000 Entry Point: 80008000 Loading Kernel Image ... OK OK . Starting kernel ... . [ 0.000000] Kernel Product Vesion : DJI-GRC-Kernel-1.0-rc8(2014-11-21) [ 0.000000] Linux version 2.6.32.17-davinci1 (u@dji) (gcc version 4.3.3 (Sourcery G++ Lite 2009q1-203) ) #1 PREEMPT Thu Feb 12 11:09:57 HKT 2015 [ 0.000000] CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177 ...
If both primary and recovery kernel is corrupted, the booting will end at U-Boot command line:
Loading from nand0, offset 0x4a0000 ** Unknown image type Wrong Image Format for bootm command ERROR: can't get kernel image! Loading from nand0, offset 0x900000 ** Unknown image type Wrong Image Format for bootm command ERROR: can't get kernel image! Dji-Pro #
Note that u-boot tries to load primary kernel after message Loading from nand0, offset 0x4a0000
, and recovery kernel is tried only if primary failed, with message Loading from nand0, offset 0x900000
. The offsets at which kernel images are located inside NAND, depend on memory map used within specific product — see pages about your module (m0800/m1300/m1301) for proper memory map. There are some products which do not have recovery kernel, and there is only one kernel. For these platforms, u-boot will only show one message about Loading from nand0
.
Usually you will want to flash the primary kernel, uImage
. For most boards, you can get it from firmware update (see chapter about flashing bootloader for firmware module marking). For specific boards:
- for Ph3 Pro Gimbal Top board, you need to extract
P3X_FW_V??.??.????.bin
and then module m0800 from inside. - for Inspire X5 Camera Live View Encoder board, extract
WM610_FW_V??.??.????.bin
and then module m0800 from inside, - for GL300a board and HDMI board, extract
C1_FW_v??.??.????.bin
and then module m130? from inside. - for Inspire 2 RC Interface board, extract
RC001_FW_V??.??.????.bin
and then module m1301 from inside, - for WM301 Live View Encoder board, firmware update only modifies Ambarella programming, but you can get the image directly here.
- for FC200 Live View Encoder board the image is also not part of updates; you can get it directly here.
- for other boards, you’re on your own
If your Recovery Kernel is also damaged, you may also flash the special recovery image uImage_recovery
. It is not a part of firmware update, so you need to find a proper image:
- for GL300a board and HDMI board, you can get it here,
- for WM320 Gimbal top board, it is here,
- for Inspire X5 Camera Live View Encoder board, it is here,
- for other boards, you’re on your own.
It might be better to use the primary kernel image to flash both copies of kernel. The Recovery Kernel is different only because it is never updated automatically by DJI firmware updates — it stays as it was when going out of factory. This means the Recovery Kernel is just a very old version of the ordinary kernel.
Preparations
To reflash the kernel, you need to press the ESC
key just when your board gets power, so that you end up in u-boot console. Next press Enter
to get rid of any additional ESC
stokes left in input buffer:
Press ESC to abort autoboot in 1 seconds Dji-Pro # Unknown command '' - try 'help' Dji-Pro #
Now, you need to load a new kernel image to DRAM, and from there, flash it to NAND memory.
Let’s start by cleaning a portion of DRAM which we will use:
Dji-Pro # mw.b 0x80008000 0xFF 0x460000
Next we need to put our kernel image into that location. There are two ways:
Loading kernel via serial using ModemY
The transfer over serial is very slow and cumbersome. It requires compatible terminal client. On Windows, you can use ExtraPuTTY. On Linux, Minicom can support it.
First, initiate the transfer on DaVinci side:
Dji-Pro # loady 0x80008000 115200 ## Ready for binary (ymodem) download to 0x80008000 at 115200 bps...
Then, use proper function in your terminal to select the target file. The transfer will last some time — for 4MB kernel, it should take around 13 minutes. After it finishes, you will see:
xyzModem - CRC mode, 1(SOH)/3971(STX)/0(CAN) packets, 4 retries ## Total Size = 0x003e09c0 = 4065728 Bytes Dji-Pro #
Loading kernel via USB stick
This is the method I’d suggest. It is fast and reliable, especially for boards which by design have USB connector linked to the DaVinci chip. On some boards, the USB output comes from Ambarella — in such case, using the DaVinci USB requires manually soldering a female USB connector to proper pins. The method was tested with 2GB sd-card formatted to FAT32 and inserted into USB Card Reader. Some USB sticks were not detected by the DM3xx USB controller — it is best to try a few of them.
If your board does not have USB connector to DaVinci, you’ll have to solder it:
- for Gimbal top board, use two pins (pin1 and pin2) of the connector which goes to OFDM for USB
D+
andD-
. The power pin of your female USB connector should go to 5V supply, and ground pin to a ground associated to the 5V supply you used. Pin map using standard USB wire colors:
wire | color | solder point |
---|---|---|
Vbus | red | 5V service pad |
GND | black | GND service pad |
D+ | green | Gimbal-to-OFDM ribbon cable pin1 |
D- | white | Gimbal-to-OFDM ribbon cable pin2 |
In some of the gimbal boards, USB is controlled by GPIO pin of the DM3xx chip; if usb start
shows no information about USB device connected, then it may be required to switch the proper GPIO pin by software. It is not fully known how to do this, or which of GPIO pins is used. If USB just doesn’t want to work on your board, use serial transfer instead.
- for other boards, find the proper place where DM36x USB output is
Copy the kernel image on your USB stick, and put it into USB slot of your board. Then, execute the following:
Dji-Pro # usb start Dji-Pro # usb storage
The second command isn’t really needed, but it will show you your USB device, so that you know it is functioning. Now, start the loading process:
Dji-Pro # fatload usb 0 0x80008000 uImage
On success, you should see something like:
reading uImage . 4065728 bytes read Dji-Pro #
Flashing the kernel from DRAM
Be careful, you are now going to make changes to your NAND memory. Do not lose or add any zeros in the offsets.
Select one of the following chapters, based on memory map used in your device. DaVinci modules in most products use the typical memory map.
Flashing the kernel from DRAM on typical NAND memory map
To write Primary Kernel, execute the following commands:
Dji-Pro # nand erase 0x04a0000 0x460000 Dji-Pro # nand write 0x80008000 0x04a0000 0x460000
In case you are writing Recovery Kernel, run the commands below instead:
Dji-Pro # nand erase 0x0900000 0x460000 Dji-Pro # nand write 0x80008000 0x0900000 0x460000
You can write the same kernel image over the two locations. But if the recovery kernel works, there is no reason to overwrite it.
Flashing the kernel from DRAM on FC200
The first use of DM36x by Dji, FC200 camera from P2V, has a bit different memory map and requires different addresses; kernel is also compressed there, and therefore smaller:
Dji-Pro # nand erase 0x0680000 0x300000 Dji-Pro # nand write 0x80008000 0x0680000 0x300000
In case you are writing Recovery Kernel, run the commands below instead:
Dji-Pro # nand erase 0x0980000 0x300000 Dji-Pro # nand write 0x80008000 0x0980000 0x300000
You can write the same kernel image over the two locations. But if the recovery kernel works, there is no reason to overwrite it.
Flashing the kernel from DRAM on RC001
The memory map within Inspire 2 RC has a different layout; kernel is usually smaller, but there is no reason not to rewrite the whole partition:
Dji-Pro # nand erase 0x0580000 0x400000 Dji-Pro # nand write 0x80008000 0x0580000 0x400000
There is no recovery kernel partition for this product, so that is all.
Flashing encrypted partition
If the encrypted partition gets damaged, Linux will stop booting — kernel module responsible for encryption will freeze. In such case, the system freezes soon after the message:
encrypt device:at88 found
If this happens, you may want to reflash this partition. It is not a part of firmware update, so you need to find a proper image:
- for GL300a board and HDMI board, you can get it here.
- for WM320 Gimbal top board, it is here.
- for Inspire X5 Camera Live View Encoder board, here is one, and here different one from another board,
- for other boards, you’re on your own — but one of the images above will probably work
Note: this partition is different for every specific board instance; do not reflash it unless you are having issues you know are related to it! Some products (P2 series, Inspire RC001) do not have that partition at all.
The procedure is almost the same as for flashing kernel, so it will not be explained in detail. Commands:
mw.b 0x80008000 0xFF 0xa0000 usb start usb storage fatload usb 0 0x80008000 dm365_secret.bin nand erase 0x0d60000 0xa0000 nand write 0x80008000 0x0d60000 0xa0000
Flashing Root Filesystem
The Ubi File System is able to correct its errors and mark would-be bad sectors in advance, so it is unusual for it to get corrupted. It is also the hardest component to recover. Do not flash the UbiFS unless error messages explicitly say it is damaged!
The UbiFS partitions cannot be just written by nand write
as all the others, because it contains EC blocks supported by NAND hardware. Writing them this way would make them possible to read only once, after that EC block would be damaged.
While u-boot has UbiFS support, it is unfinished in the old version provided in firmwares. Do not use it — it will damage your UbiFS even further.
The only viable option is to flash the new UbiFS image from Linux. To run Linux independently of the UbiFS Root Filesystem, we will need another root — Recovery Root Filesystem. It needs to be as small as possible, but still have all the tools required to work with UBI partitions. You can get it here.
Getting a Root Filesystem image
You will need a valid UbiFS Root Filesystem image, the one we want to recover. It is not a part of firmware update, so you need to find one:
- for GL300a board and HDMI board, you can get it here.
- for Inspire 2 RC001 HDMI board, you can get it here.
- for WM320 Gimbal top board, it is here,
- for Inspire X5 Camera Live View Encoder board, here is a version which was never updated (factory FW), and here is one that got some updates,
- for WM301 Live View Encoder board, it is here,
- for FC200 Live View Encoder board, it is here,
- for other boards, you’re on your own.
Keep the image handy — we will need it after we’ll manage to boot Linux.
Flashing Recovery Root Filesystem
Since we have no unused space on the disk to fit our partition, we will have to temporarily sacrifice something else. For most boards, the best candidate is our primary kernel — it will be easy to recover it later, and it is far from encrypted partition which we don’t want to accidentally overwrite.
If you don’t understand the commands, or want to use serial instead of USB, read flashing kernel section.
Flashing Recovery Root Filesystem on typical NAND memory map
We will now overwrite the primary kernel with our Recovery Root Filesystem.
To load the Recovery Root FS, insert USB stick with the partition image, boot to u-boot Console and execute:
mw.b 0x82000000 0xFF 0x400000 usb start usb storage fatload usb 0 0x82000000 dm365_recovery_rootfs.bin
That will place the Recovery Root FS image in DRAM (you may also do the same using serial transfer). Next, you want to flash it, sacrificing primary kernel:
nand erase 0x04a0000 0x400000 nand write 0x82000000 0x04a0000 0x400000
That’s it — now we should be able to boot. Read Booting to Linux chapter below.
Flashing Recovery Root Filesystem on FC200
For FC200 camera from P2V, with its specific memory map, flashing Recovery Root Filesystem will overwrite both kernels. We will have to deal with that.
To load the Recovery Root FS, insert USB stick with the partition image, boot to u-boot Console and execute:
mw.b 0x82000000 0xFF 0x400000 usb start usb storage fatload usb 0 0x82000000 dm365_recovery_rootfs.bin
That will place the Recovery Root FS image in DRAM (you may also do the same using serial transfer). Next, you want to flash it, sacrificing both kernels:
nand erase 0x0680000 0x400000 nand write 0x82000000 0x0680000 0x400000
Now you have no valid kernel on the NAND. So to boot Linux, you need to write a third kernel somewhere further, I’d suggest just after the Recovery Root FS, at 0x0a80000. To load and flash the kernel, execute:
fatload usb 0 0x80008000 uImage nand erase 0x0a80000 0x300000 nand write 0x80008000 0x0a80000 0x300000
For more info on these commands, see chapter on Flashing kernel.
After the kernel is flashed, we should be able to boot. Read Booting to Linux chapter below.
Flashing Recovery Root Filesystem on RC001
If you are fixing Inspire 2 RC board, there is no recovery kernel — only primary. But the place for kernel is large enough to store Recovery Root FS, and we also have the logo partition which is empty, so there is a way to fit both the kernel and the Recovery Root FS on the NAND:
- flash Recovery Root FS into Kernel partition
- flash the kernel into U-boot logo partition
To load the Recovery Root FS, insert USB stick with the partition image, boot to u-boot Console and execute:
mw.b 0x82000000 0xFF 0x400000 usb start usb storage fatload usb 0 0x82000000 dm365_recovery_rootfs.bin
That will place the Recovery Root FS image in DRAM (you may also do the same using serial transfer). Next, you want to flash it, sacrificing the kernel:
nand erase 0x0580000 0x400000 nand write 0x82000000 0x0580000 0x400000
Now you have no valid kernel on the NAND. So to boot Linux, you need to overwrite U-boot logo at 0x0280000. To load and flash the kernel, execute:
fatload usb 0 0x80008000 uImage nand erase 0x0280000 0x300000 nand write 0x80008000 0x0280000 0x300000
For more info on these commands, see chapter on Flashing kernel.
After the kernel is flashed, we should be able to boot. Read Booting to Linux chapter below.
Booting to Linux with Recovery Root FS
Now we are able to boot our Recovery Kernel, pointing it to our Primary Kernel partition for Root Filesystem location. But if started normally, the u-boot would set the kernel parameters so that they point to original Root Filesystem. We need to land in U-boot console, and there change the Root Filesystem location in kernel parameters before starting the kernel.
Booting with Recovery Root FS on typical NAND memory map
To start recovery kernel with rootfs placed on primary kernel partition, boot to u-boot Console and execute:
env set bootargs 'console=ttyS0,115200n8 rw dm365_imp.oper_mode=0 video=davincifb:vid0=0,10K:vid1=0,10K:osd0=1920x1080X16,8100K mem=96MB davinci_enc_mngr.ch0_output=COMPOSITE loglevel=8 davinci_enc_mngr.ch0_mode=pal root=/dev/mtdblock1 rootfstype=cramfs ip=off lpj=1077248' nboot 80700000 0 900000 bootm 80700000
Booting with Recovery Root FS on FC200
To start your third kernel with rootfs placed on primary kernel partition, boot to u-boot Console and execute:
env set bootargs 'console=ttyS0,115200n8 rw dm365_imp.oper_mode=0 video=davincifb:vid0=OFF:vid1=OFF:osd0=480x272x16,4050K mem=96MB davinci_enc_mngr.ch0_output=LCD davinci_enc_mngr.ch0_mode=480x272 loglevel=8 root=/dev/mtdblock2 rootfstype=cramfs ip=192.168.1.10:192.168.1.5:192.168.2.2:255.255.255.0::eth0:off' nboot 80700000 0 a80000 bootm 80700000
Booting with Recovery Root FS on RC001
To start your kernel from U-boot logo partiton with rootfs placed on kernel partition, boot to u-boot Console and execute:
env set bootargs 'console=ttyO0,115200n8 rw mem=128M rw notifyk.vpssm3_sva=0xbffd0000 ddr_mem=512M vram=32M lpj=2998272 loglevel=8 root=/dev/mtdblock3 rootfstype=cramfs ip=192.168.1.10:192.168.1.5:192.168.2.2:255.255.255.0::eth0:off' dcache on nand read.os 0x80007fc0 0x00280000 0x300000 dcache off bootm 0x80007fc0
The actual Root Filesystem flash operation
When the Linux is started with different rootfs, you can format the UbiFS partition with new image. The commands below assume that UbiFS partition is visible as mtd2
— make sure it is the case before executing the commands:
cd /tmp; mkdir sdcard mount /dev/sda sdcard ubiformat /dev/mtd2 --sub-page-size=512 --vid-hdr-offset=2048 -f sdcard/dm365_root_ubifs.ubi
If you do not have USB connector to read the image from, you can use ramdisk (/tmp
) to temporarily store an image transferred by serial. In such case, use lrz
tool available in the Recovery Root Filesystem to receive binary ymodem transmission.
To check whether the filesystem is functional, try:
ubiattach -m 2 --vid-hdr-offset=2048
If this resulted in details on file system blocks and no error information, UbiFS is restored! Now, booting from Recovery Kernel should work without using our Recovery Root Filesystem. Restart the board; since the Primary Kernel does not contain a valid Kernel, u-boot will boot Recovery kernel automatically.
If the Linux system boots properly, we can restore the Primary Kernel to finish the process. Follow the instructions above to do that.
Fix FPV restricted to 8 fps
When Encrypted Partition or Root Filesystem are re-flashed, the First Person View Video on Mobile Device will come back but only at 8 frames per second. This chapter will focus on explaining and providing a fix for this issue.
Modules m0100 (Ambarella App), m0800 (DaVinci Processor) and m0400 (Gimbal Controller) share access to ATSHA204 chip, which provides safe storage for a cryptographic key. Using that chip, these modules can encrypt data in a way which is hard to break — because there is no way to extract key from ATSHA204. They do not use the key from ATSHA204 directly — instead, it is used to store another key within persistent storage of each of the modules, and they are stored in encrypted form.
In case of DaVinci Media Processor, there are two copies stored — one as the entire Encrypted Partition, and second as /etc/key.bin
within the Root Filesystem. If these were damaged, they’re not easy to recover.
The encryption capability is used at startup, to verify whether all modules share the same key. If that verification fails, DaVinci processor will continuously re-try encryption pairing, forever. Since encryption is computationally expensive, that will degrade FPV video to 8 fps.
As a side note — if that same verification fails in Ambarella App, the module will enter AuthorityLevel=0 mode. In this mode, it will ignore most commands. If your Ambarella works, but refuses to start recording or to take a photo — this might be the cause.
To fix the issue when the encryption keys were damaged, the best approach is to mod the firmware so that it will ignore encryption fail at startup. In case of DaVinci, encode_usb
binary needs to be modified and copied back to the Root Filesystem. In case of Ambarella App, the sys
partition needs to be modified. Modifications can be performed using *_hardcoder.py
scripts from this repository. Some details are provided within these scripts.
Why we can’t just pair these chips again, you ask? The factory pairing DUML command can be easily triggered on the gimbal, but it won’t be able to update key within ATSHA204 chip — it was irreversibly sealed during first pairing. So to do the pairing again, you’d have to replace that chip. Without replacing it, the only way is to workaround the issue by fixing encode_usb
.
Air encoder error 0x4
можно и на последней все выключить.
на иосе тоже можно?
мне на днях 4-я прошка пришла
пробовал с 4.1.3 джигой — вылезла ошибка air encoder error 0x40
думал подвес или шлейф битые
обновился сперва до последней прошивки — ошибка осталась
потом поставил последнюю джигу 4.1.24 — ошибка исчезла
кто в курсе с 4.1.10 ( эта вроде последня версия джиги где можно менять конфиги) ошибка air encoder error 0x40 вылезает?)
NFZ и лимиты к версии джиги никакого отношения не имеют.
туплю
речь сейчас про NFZ и лимиты
а у меня вопрос по включению 5ггц — увеличению сигнала и дальности полета ))
с новой прошивкой можно это сделать?
чера провел тест “микроволновкой” своему мавику. Как тут такое проводили? У меня чтобы я не делал в пределах квартиры (мавик в закрытой печи панасоник), сигнал всегда 5 палок и понять работают-ли конфиги не вышло.
Немного как ,я делал. Антенны на пульте не раскрывал. Для чистоты опытов уходил на другой этаж. (печка на кухне, а кухня почти по середине квартиры). С раскрытыми антеннами надо дальше было бегать. Конфиги реально работают. DJI GO 4.1.3 сейчас 4.1.8 все рус. Обнаружил такую вещь. Сигнал на пульте с конфигом уменьшается на одну палку изначально даже рядом. Но дальность работы увеличивается хотя вроде как сигнал слабее. Оставил FCC+BOOST . За городом немного пролетел удаление 1400 метров высота 70 м. Воздух -8. Из машины. Сигнальные палки даже не моргнули. Акк был не свежий дальше не полетел.
p.s. Пришли с Али пропы 8331 вот ещё думаю переходить или нет.
Самое то последняя версия.
А по каким признакам, или по каким-то новым функциям? На чём основано это утверждение?
Просто бывает еще такая тенденция, которая к сожалению не редка в миру обновляемого ПО, когда с новой версией появляются и новые глюки. Или когда в новых версиях разработчики по тем или иным причинам убирают некоторый прежний функционал, а он был нужен (пусть даже не всем, но например конкретно тебе).
Всегда как не зайду, вижу у всех разные умозаключения, ещё эти классные опыты с духовками, микроволновками, удочками. Я не осуждаю, но реально смешно звучит)) 😛
Привык проверять всё, что здесь написано, у зарубежных товарищей. Там всегда по делу и чётко, без духовок, как то обходятся) 😎
Снятие ограничений высоты, NFZ, и тд. ❗ 😈
Все эти вещи никак не связаны с DJI Go, они меняются в параметрах дрона, до определённых версий прошивок. у меня Dji matrice 600pro, P4p, I2, могу сказать только про них.
V 1.0.1.20 matrice
V 01.03.0509 p4p
V01.0.0330 I2
Собственно до этих прошивок все параметры есть и меняются прекрасно.
Если хочется, что то посвежее то как уже писалось выше делаем франкиштейн, убирая модули 0305, 0306, 0905 и гоняем с новыми плюшками, например с поддержкой x7 на i2.
Смена мощности сигнала, поддержка частот 5,8 и тд. ❗ 😈
Тут уже давали ссылки на гитхаб, где всё подробно описано. Берёшь приложение и патчишь его от всего что тебя бесит, патчи работают с 4.1.3 до 4.1.15 на данный момент. и вот тебе счастье, и 5,8 и факелогин, и FCC, и блок на обновления, slave пульт для i2, тоже работает без проблем не ссыте) лично я на таком приложении и летаю, никаких проблем, galaxy tab s2 ниразу не упало, кажется, что даже стабильнее официального)
Что можно патчить
Для яблочников есть три способа
1)проще всего свалить из рашки полетать там выключить все гпс, инет прочее и спокойно пользоваться офлайн девайсом на руси…но сваливать туды где FCC разрешён) я так делал, работает)
2) у кого есть железо для спуфинга может и на руси штаты эмулировать
3) есть айпады без gps и gsm, тут поможет vpn или прокси на вашем wifi , это способ для ленивых айтишников)
для юзверей i2 не советую ставить последнюю 300 прошивочку, i2 может норм работать, а потом хуяк и в триподе навечно остаться. Пока не знаю с чем связано, видел такую же проблему у ф4п… гейны в стандарте, беггинер мода нет, лишние параметы не менялись, просто взял и затупил сам по себе. пока не прошьёшь обратно не проснётся 😃 😵
про часовые бомбы на прошивках
Нам хомячкам переживать не стоит, умные дяди уже давно не раз получали рут на дронах, собственно дамболдор не просто так появился 😒
Источник
Обсуждение (Inspire 2)
#321 OFFLINE Haba1962
- Город: Сургут
- Коптер: Inspire 2
#322 OFFLINE Vital
- Город: P-K
Всем привет! Стала сама выключатся запись видео. Сек 15-20 пишет и выключается. Куда копать?
#323 OFFLINE pento
Летчик со стажем
- Город: М.О.
Стала сама выключатся запись видео. Сек 15-20 пишет и выключается.
#324 OFFLINE Pravsha
- Город: Белгород
- Коптер: Inspire 2
Возникла проблема: нет видео с камеры. Сама камера крутится-вертится штатно. Выходит ошибка: Camera Sensor Error и Air Encoder Error (0x400000).
Забугорные сайты рекомендуют сбросить до заводских настроек и снова обновиться до последней версии. Мне не помогло.
RAW Module: 00.00.00.00 (не знаю что это)
Буду благодарен за мысли что делать?
#325 OFFLINE Shuraley
Опытный летчик АС
- Город: Москва
- Коптер: DJI F4, DJI Inspire 2, Hubsan x4
Pravsha ,скорее всего плохой контакт камеры с тушкой — посмотрите, протрите. У меня подобное бывает — после включения приходится ждать иногда минуту, пока появится изображение, иногда помогает (возможно совпадение) покрутить при включенном коптере место соединения, когда просто достаточно вытащить/вставить из пилотского пульта шнур который ведет к смартфону (не знаю в чем связь, но сразу появляется изображение.
#326 OFFLINE Pravsha
- Город: Белгород
- Коптер: Inspire 2
Shuraley , А при включенном питании можно камеру отключать? Мануал предостерегает это делать )
#327 OFFLINE Shuraley
Опытный летчик АС
- Город: Москва
- Коптер: DJI F4, DJI Inspire 2, Hubsan x4
#328 OFFLINE ners
Pravsha ,У меня возникла такая проблема, после опрокидывания коптера с небольшой высоты, сантиметров с 70-80см.
Оказалось, что порвался шлейф соединяющий камеру с дроном. Заменил и все заработало. Правда пришлось разобрать весь коптер)))
Прикрепленные изображения
Сообщение отредактировал ners: 28 Май 2018 — 05:04
#329 OFFLINE Vital
- Город: P-K
Качество видео и фото стало хуже. (мутноватое) От чего может быть? Линза чистая)
#330 OFFLINE vadson
- Город: Minsk
- Коптер: P4p
Доброго дня! Подскажите, где выгоднее приобрести аккумуляторы для инспайра. Спасибо. Прикупил себе на днях. 1 комплект, как то совсем не хватает не на что.
#331 OFFLINE DmitryK
- Город: Пермь
- Коптер: DJI Inspire 2&Phantom 4 Pro
vadson , тоже интересует данный вопрос, поддерживаю. Поделитесь опытом, кто где покупает?
#332 OFFLINE Gelos
- Город: Barguzin
- Коптер: Phantom
DmitryK , В Китае покупаю) в России дороговато)
Сообщение отредактировал Gelos: 28 Июнь 2018 — 10:44
#333 OFFLINE vadson
- Город: Minsk
- Коптер: P4p
поделитесь ссылкой. где в Китае
#334 OFFLINE Vital
- Город: P-K
Как вывести на фото и видео дату съёмки? Есть такая возможность?
#335 OFFLINE vadson
- Город: Minsk
- Коптер: P4p
Сообщение отредактировал vadson: 05 Июль 2018 — 04:43
#336 OFFLINE Gelos
- Город: Barguzin
- Коптер: Phantom
#337 OFFLINE Georg
Летчик со стажем
- Город: Москва
- Коптер: Inspire 2 Phantom 4 Pro Mavic Pro Platinum
Сегодня дрон словил глюк. Отлетал заряд до 31%. Стал уже было сажать, но в последний момент решил еще сделать заход над речкой. Самолетный взлет и на высоте 100 метров дрон разворачивает камеру против часовой стрелки на полный оборот до упора , а сам начинает крутиться в противоположную сторону. Стики поворотов не слушает вообще. Отзывается только вверх-вниз и осталось полное управление правым стиком. Переключаю ATTI. Вращение снизилось но не прекратилось. На команды поворота по прежнему не реагирует. По карте начал тянуть к себе правым стиком и одновременно снижаться. Под дроном река. Над рекой провода. Как сажать вращающийся дрон ума не приложу. А его еще притащить как то надо. Солнце яркое, камера смотрит в сторону, визуально его не видно. По карте довел ближе и мягко посадил. Перегрузил дрон. Взлетел. Все работает как и прежде. У кого то подобное было?
Добавлено позже (03 Август 2018 — 12:42)
Разобрались. Причина такого поведения дрона лежала на поверхности. Продолжаем летать.
Сообщение отредактировал Georg: 03 Август 2018 — 12:44
#338 OFFLINE Kolbasatka
Летчик со стажем
- Город: Томск
- Коптер: Mavic 2 Pro, xiaomi redmi note 8 pro
Сегодня обратил внимание на маркировку маунтов пропеллеров. перед левый CW2, перед зад CCW2, перед право CCW2, а вот зад право -CW1. Позвонил товарищу, спросил. У него схожая ситуация. Разницы в повороте CW2 и CW1 (направление вращения) фиксаторов пропов нет, да и логически быть не может. С чем связана различная маркировка фиксаторов пропеллеров, как думаете?
#339 OFFLINE RomX
- Город: Советская Гавань
Сегодня произошёл инцидент, с высоты 16 метров коптер резко начал терять высоту, разогнался до 7м/с. Ударившись об землю гимбалом включил отпускание шасси. Падал во вращении, потом как не в чем не бывало, ошибок не каких нету. Куда копать? Единственное сейчас при откалиброванном компасе Камера гимбала смотрит под 45 гр. если пройти калибровку заново смотрит ровно, стоит с помощью пульта наклонить гимбал,как опять поворачивает гимбал на все те же 45гр в сторону по оси уав и немного заваливает по роллу.
Вам надо раз магнитить саму камеру
Добавлено позже (03 Август 2018 — 12:42) Разобрались. Причина такого поведения дрона лежала на поверхности. Продолжаем летать.
#340 OFFLINE YAA
Летчик со стажем
- Город: Т
- Коптер: Mavic2Z,P
Выявились проблемы с батареями для Matrice 200 и Inspire 2 (отключаются и падают «на пол-зарядки»).
До выяснения — их полеты временно ограничены в Великобритании.
Matrice 200 series models and the Inspire 2 have had temporary flying restrictions
applied to them as they use the DJI TB50 and TB55 battery packs that are suspected of failing mid-flight.
Сообщение отредактировал YAA: 03 Ноябрь 2018 — 02:29
Источник
Quote:
Originally Posted by kiwipete88 Cheers Ed,what we ended up doing was making the I2 rc the master,with iPad,and all seems good,no image transmission dropouts. Pete. So you are usng Go 4 on the iPad. Are you able to use Go 4 on the CS/Cendence? We have only seen this on M210 with RTK and dual cameras. This is being addressed in future firmware/Apps. But the quick fix was to use the I2 RC as the master and the Cendence as the slave. |
|
Sign up now to remove ads between posts |
Quote:
Originally Posted by Tahoe Ed So you are usng Go 4 on the iPad. Are you able to use Go 4 on the CS/Cendence? We have only seen this on M210 with RTK and dual cameras. This is being addressed in future firmware/Apps. But the quick fix was to use the I2 RC as the master and the Cendence as the slave. Yep,go4 app on air2,we tried the CS on I2 rc running go4 app,all good there. |
|
Quote:
Originally Posted by kiwipete88 Yep,go4 app on air2,we tried the CS on I2 rc running go4 app,all good there. That will be an excellent inspection or SAR set up. |
|
|
Quote:
Originally Posted by kiwipete88 Yep,go4 app on air2,we tried the CS on I2 rc running go4 app,all good there. We have the twin gimbal setup,just haven�t installed it yet,so running Z30 on single setup for intial tests,eventually we want to run the XT alongside the Z30. VERY Nice 😀 Seeing a LOT of M200 and especially M210 being bought, this craft is really flying out the door in the Inspection side and most reports are that they are VERY impressed, some teething issues but nothing fantastic. Blade and Jon Mcbride have been showing RTK and that�s looking bang on too, Z hold especially impressive. |
Quote:
Originally Posted by Mad_angler1 VERY Nice 😀 Seeing a LOT of M200 and especially M210 being bought, this craft is really flying out the door in the Inspection side and most reports are that they are VERY impressed, some teething issues but nothing fantastic. Blade and Jon Mcbride have been showing RTK and that�s looking bang on too, Z hold especially impressive. Mad,it is a very nice machine,beautiful to fly and has huge potential in the inspection side for us,if we can prove this setup to the client,we will more than likely get 3 or 4 M210 RTKs,big dollars at around 50k plus each $AU,with XT & Z30. |
|
|
Quote:
Originally Posted by kiwipete88 Mad,it is a very nice machine,beautiful to fly and has huge potential in the inspection side for us,if we can prove this setup to the client,we will more than likely get 3 or 4 M210 RTKs,big dollars at around 50k plus each $AU,with XT & Z30. Being a hex addict, I bet you (or your insurer) would feel a lot more comfortable if all that $$ was hanging under a redundant power train ! Maybe the M300 series. |
|
Mounting the Gimbal plates.
|
||||
|
I have just set up a Matric 200 and 210 for a client . The 200 went together fairly smoothly and seems happy with it’s X5S camera. The 210 is giving the following error. Aircraft Encoder Error (0x100000) All firmware and software are fully up to date. I have tried the known good camera from 200 on this vehicle with no difference. The gimbal does receive power, and I can point it up and down, but no live video. The FPV camera and all other systems seem to be in good working order. Thoughts? |
|
Quote:
Originally Posted by g00bd0g I have just set up a Matric 200 and 210 for a client . The 200 went together fairly smoothly and seems happy with it’s X5S camera. The 210 is giving the following error. Aircraft Encoder Error (0x100000) All firmware and software are fully up to date. I have tried the known good camera from 200 on this vehicle with no difference. The gimbal does receive power, and I can point it up and down, but no live video. The FPV camera and all other systems seem to be in good working order. Thoughts? Single or dual mount? |
Quote:
Originally Posted by Dave Pitman Being a hex addict, I bet you (or your insurer) would feel a lot more comfortable if all that $$ was hanging under a redundant power train ! Maybe the M300 series. And you�d be right,I guess a parachute is the only option at this stage. |
|
|
From FB |
Quote:
Originally Posted by Mad_angler1 From FB That is one expensive rig. |
|
Last edited by Tahoe Ed; Oct 26, 2017 at 08:18 AM.
|
|
|
that must be almost touching the ground, needs some leg extensions there…………….lovely setup tho |
I’d love to know the flight time on that one… |
|
|
Just seen this one too, what a pic Credit below Lots of love for this craft out there. |
Введение в реверсинг с нуля используя IDA PRO. Часть 8
| Редактировалось 25 июн 2017
Мы уже увидели в деле основные инструкции, сейчас давайте продолжим работу с ЗАГРУЗЧИКОМ.
Способ работать, когда мы не имеем много опыта по статическому реверсингу состоит в том, чтобы комментировать и переименовывать инструкции и области, чтобы иметь лучшую ориентацию по коду и этим мы делаем большую часть своей работы. По мере того, как Вы больше практикуетесь в статическом реверсинге, то можно добиться больше и больше успехов в реверсинге, даже почти без использования отладчика или, иногда, вообще без отладчика.
Обычно, существуют тяжеловесные программы, которые Вы не должны полностью реверсить, а только одну или несколько её функций, в некотором определённом месте.
IDA даёт нам возможность взаимодействовать с ней так, чтобы получить от неё лучшие результаты реверсинга, как никакой другой инструмент. Но эти результаты будут зависеть также и от опыта пользователя.
Знаменитая фраза звучит так — «Не стрела виновата, а лучник”, здесь это правило применяется полностью, необходимо практиковаться и улучшать использование IDA‘ы, если мы даже потерпим неудачу или не получим хорошего результата, мы должны улучшать наш уровень и практиковаться больше и чаще, IDA — это не простой инструмент и он имеет тысячи и тысячи возможностей, что позволяет нам каждый день узнавать что-то новое про неё, когда мы используем её.
Давайте начнём изучать статический анализ на примере КРЭКМИ CRUEHEAD‘а. Не важно, найдём ли мы решение сейчас или, если это необходимо, закончим его потом, когда мы дойдем до части про ОТЛАДЧИК. Важная вещь состоит в том, чтобы научиться работать с ЗАГРУЗЧИКОМ и улучшать наше с ним отношения по работе.
Если мы зайдём в пункт меню VIEW->OPEN SUBVIEW->SEGMENTS мы увидим сегменты, которые загружает ЗАГРУЗЧИК в автоматическом режиме.
Мы видим, что, например, ЗАГОЛОВОК по адресу 0x400000 перед секциями, не загружен, так как так настроено в настройках, когда он загружен в первый раз и мы нажимаем везде OK, он загружает только некоторые исполняемые секции автоматически без ЗАГОЛОВКА.
Мы видим, что после ИМЕНИ секций, у нас есть адреса их начала START и конца END, затем столбцы RWX, которые говорят мне имеют ли они первично разрешения чтения или READ(R), записи или WRITE(W) и выполнения или EXEC(X).
Затем, мы видим два столбца с именами D и L, которые соответствуют ОТЛАДЧИКУ и ЗАГРУЗЧИКУ, мы видим, что столбец ОТЛАДЧИК пустой, потому что он вызывается, когда мы загружаем программу в режиме ОТЛАДЧИКА и только тогда показывает загруженные сегменты в него, а L показывает, что загружает ЗАГРУЗЧИК и затем какие-то другие столбцы, которые не очень важны нам.
В этом случае не обязательно загружать заголовок, мы уже видели в предыдущей части, что когда мы переименовываем одну инструкцию и помещаем переход по адресу 0x400000, IDA помечает её в красный цвет как адрес, который не загружен в ЗАГРУЗЧИК.
Если я хотел бы загрузить ЗАГОЛОВОК снова — я просто опять открываю CRACKME.EXE
Я говорю IDA’е затереть проект или OVERWRITE весь предыдущий анализ и делаю снова новый.
Я ставлю галочку напротив MANUEL LOAD и нажимаю OK.
IDA спрашивает у меня, хочу ли я изменить вручную БАЗУ, откуда будет загружен исполняемый файл и я нажимаю на OK соглашаясь со значением, которое она сама подставила.
А теперь меня спрашивают (вручную и поодиночке) какие сегменты я хочу загрузить, и я нажимаю везде YES.
Теперь у меня есть загруженные в ЗАГРУЗЧИК все секции, включая даже ЗАГОЛОВОК и теперь мы можем изменять больше ДАННЫХ.
Всё это, обычно, не нужно делать, но хорошо помнить про это.
Сейчас я буду сохранять СНИМОК с помощью пункта меню FILE->TAKE DATABASE SNAPSHOT и я буду изменять переход JMP 0x400000 как ранее.
Мы видим, что уже адрес 0x400000 не отмечен в красный цвет и IDA говорит мне, что это ImageBase, мы можем даже пойти и посмотреть на него, просто кликнув по имени ImageBase.
Здесь мы видим заголовок по адресу 0x400000 с его тэгом ImageBase и содержимым, которое опознано как заголовок и IDA показывает нам его поля.
Хорошо, давайте вернёмся к предыдущему снимку, до того как мы всё изменили с помощью VIEW->DATABASE SNAPSHOT MANAGER и нажимаем там RESTORE.
Конечно, во всех упражнениях по отладке или ревериснгу строки играют ключевую роль, чтобы привести нас в важные области, если они существуют, они могут нам помочь, давайте посмотрим в меню VIEW->OPEN SUBVIEW→STRING, что же мы там видим ?
Сейчас, поскольку есть больше секций, то есть и больше обнаруженных строк, как и раньше, если мы запускаем CRACKME.EXE вне IDA мы видим, что в меню HELP есть пункт REGISTER и нас просят ввести USER и PASS и если мы вводим что-нибудь от себя, нам покажут сообщение NO LUCK THERE, MATE!.
Мы ищем эту строку в списке IDA’ы.
Если мы сделаем двойной щелчок на этой строке.
Мы видим по адресу 0x402169 содержимое, которой является строка, мы знаем, что если мы нажмём D на этом адресе строка рассыпется на байты.
И если, мы нажмём A на адресе, то мы восстановим строку, а если нажмём X, то увидим две ссылки, которые IDA показывает в правой стороне более комфортно для нас.
Мы видим, что из двух разных функций вызывается наша строка, одна вызывается из функции sub_401362, а другая из функции sub_40137E и оба выше адреса, где мы сейчас находимся. Вот почему в столбце НАПРАВЛЕНИЕ, IDA показывает UP в обоих случаях.
Мы знаем, что это две разные функции, потому что IDA показывает нам адреса ссылок как имя функции + XXXX и если они принадлежат только одной функции она должна изменить только XXXX, но сохранить первую часть, здесь оба sub_ различны — вот почему функции разные.
Это первая ссылка, а вторая находится ниже.
У нас есть области, где нам показывается плохое сообщение, когда мы вводим неправильные USER и PASSWORD, мы будем стараться пройти как можно дальше насколько это возможно без отладчика, если кто-то захочет увидеть и проверить эту часть в отладчике OLLYDBG, просто поместите BP на оба адреса и посмотрите, что произойдёт если мы введем данные, которые первоначально не правильные, сейчас для начала эта помощь полезна, но идея состоит в том, чтобы всё меньше и меньше пользоваться такой помощью, а больше работать с IDA, мы могли бы также поместить BP в оба блока в IDA и увидеть, что останов произойдёт также, но с использование IDA DEBUGGER, я думаю лучше оставить это на потом.
Давайте возьмем первую из двух ссылок.
Мы видим, что есть CALL к API функции MessageBox, которая показывает такие сообщения как NO LUCK THERE MATE и она получает строку NO LUCK как аргумент для заголовка окна и NO LUCK THERE MATE как текст для окна.
Мы видим, что другая ссылка точна такая же, это означает, что плохое сообщение может быть показано с двух разных мест возможно сравнивая разные вещи, и чтобы показывать хорошее сообщение мы будем избегать их оба.
Если мы посмотрим ссылки на адрес 0x401362 с помощью X, мы увидим единственное место перед тем, как идти туда, давайте переименуем функцию по адресу 0x401362 на имя, которое сообщит нам, что она делает, например CARTEL_ERROR.
Нажмём N на адресе и напишем наше новое имя.
Теперь если мы перейдем к ссылке.
Здесь мы видим блок, который приводит нас к CARTEL_ERROR до принятия решения, которое принимается в программе, в первую очередь, так как, когда я буду делать реверсинг, я хочу видеть нужные мне вещи с помощью первого взгляда и сразу т. е. видеть блоки ошибок или плохие сообщения, для этого я закрашиваю их в красный цвет для подсветки.
Здесь есть иконка, с помощью которой можно изменить цвет, многие скажут, что это ненужная вещь, но в сложных функциях иметь подсвеченные блоки — очень важно.
И здесь у нас есть условный переход, который мы не будем анализировать сейчас, потому что он переходит в блок или в другой, но давайте посмотрим во внутрь блока по адресу 0x40124C, войдём в этот CALL по адресу 0x40134D с помощью ENTER.
Здесь мы видим несколько возможных хороших строк, которые также были в списке строк, но так как сообщение об ошибке появлялось, это давало нам строку с ошибкой, мы подумали и решили, что лучше начинать анализ здесь, потому что это может быть ложная строка хорошего сообщения, но как мы видим, программа решает прийти сюда или в зону плохого сообщения, мы видим, что очень вероятно, что всё же это правильное решение.
Эту функцию мы переименуем в CARTEL_BUENO.
И перекрасим блок, который приносит нас сюда, в салатовый цвет.
И также мы будем работать с другими частями программы, чтобы можно было легко возвращаться назад, мы находимся сейчас в JZ по адресу 0x401243 и идём в JUMP->MARK POSITION и вводим имя, которое вело бы нас к DECISION_FINAL.
Мы видим, что в меню JUMP->JUMP TO MARKED POSITION появляется список со всеми нашими отметками, которые мы сделали раньше и мы можем перейти к любой из них, которая нам нужна, если мы теряемся в программе.
Это означает, что теоретически, если мы пропатчим этот JZ и изменим его на JNZ даже будучи неправильным он будет переносить наc всегда к GOOD WORK, и предыдущее сообщение об ошибке не появится перед нами, давайте посмотрим так ли это.
Я правлю переход с помощью KEYPATCH.
И сохраняю изменения с помощью APPLY PATCH TO INPUT FILE.
И мы видим, что мы пропатчили переход, но теперь в другом месте покажется другое сообщение об ошибке, которое мы не пропатчили.
Если мы введем такие данные, мы увидим, что выводятся два первых сообщения об ошибке, а затем хорошее, давайте посмотрим, сможет ли мы пропатчить другое сообщение об ошибке.
Если с помощью пробела мы выйдем из графического режима.
Мы видим, что JB будет совершать переход, который приведёт нас к сообщению об ошибке, пунктирная линия слева показывает мне переход, так что если я занопаю это место, программа не будет совершать переход и будет продолжена со следующей инструкции не приходя сюда.
Мы видим здесь другое сообщение об ошибке, которое я покрасил в оранжевый цвет, ниже мы проанализируем этот крэкми полностью, но сейчас очевидно, что здесь происходит сравнение с числом 41, что есть буква A в ASCII коде и если введенное число ниже 41 (JB), то нам показывается сообщение об ошибке, так что мы видим, если в последней попытке ввести числа вместо букв в поле имени, становится очевидно, что числа ниже 41 (0 = 30, 1 = 31, 2 = 32, и т.д.) следовательно, когда крэкми обнаруживает, что в имени есть числа, то нам показывается сообщение об ошибке, так что давайте пропатчим это дело (здесь мы не можем изменить JB на JNB, потому что если ….. невъехал
).
Вернёмся назад в графический режим.
Мы видим, что будем заполнять наш код с помощью байта 0x90 до следующей инструкции, так что, надеюсь, программа не перестанет работать.
Всё хорошо, но блоки стали беспорядочными и смотрятся всё это уродливо, поэтому я делаю правой щелчок мышкой и выбираю LAYOUT GRAPH и теперь всё смотрится намного лучше.
Мы видим, что здесь есть NOP‘ы и блок ошибок остаётся изолированным и программа больше не может прийти туда.
Я сохраняю изменения таким же образом, как и раньше.
Мы видим, что сейчас принимаются любые данные.
Хорошо, это только начало, очевидно, мы просто пропатчили крэкми, чтобы просто войти в контакт со статическим реверсингом и начать его понимать, далее мы увидим как отреверсить крэкми полностью и даже сделаем кейген для него, но это будет в других главах, сейчас же, мы идём медленно и мы это видим.
До встрече в 9-ой главе.
Рикардо Нарваха
yashechka
Ростовский фанат Нарвахи
- Регистрация:
- 2 янв 2012
- Публикаций:
- 90
Комментарии
-
кофейник 11 май 2020
По возможности замените «….. невъехал
» на
«Замена JB на JNB сделает нелегитимными буквы. (В оригинале «условие перехода будет инвертировано»).» или как Вам больше понравится.
Огромное спасибо за Вашу работу.
Очень помогает жить.
Здоровья, удачи. -
LastNoob 10 авг 2018
Еще нужно после всего проделанного изменить Entry Point на новую, ибо в таком случае программа начнет работать с секции UPX1, затем перепишет все пропатченные байты в секции с OEP
-
yashechka 28 апр 2018
И Вам спасибо что читаете
-
Trixter 27 апр 2018
Я новичок в реверсе, но в целом имел не плохую общую базу,курс пушка конечно, сегодня вечерком первые 8 уроков прошарашил, крякнул первый exe-шник и ещё, на 7ю версию IDA PRO не ставится KEY PATCH, приходится руками каждый раз nop-ать.
Спасибо за материал, пока что всё рабочее. -
yashechka 30 янв 2018
Посмотрите курс введение в отладку с нуля, там описывается алгоритм генерации строки для крякми круехэда.
-
yashechka 30 янв 2018
>>Например, в креках от фантома есть строка с паролем, его можно увидеть, можно ли найти его и здесь?
Нет. У фантома это пример с жестковшитым серийником, это не защита вообже. Такое было в 2002 году. Hardcoded -
yashechka 30 янв 2018
>>Интересно, конечно, но как можно найти, с чем сравнивает введеный пароль программа?
Там функция. От введённой строки высчитывается строка -
LastNoob 30 янв 2018
Интересно, конечно, но как можно найти, с чем сравнивает введеный пароль программа?
Например, в креках от фантома есть строка с паролем, его можно увидеть, можно ли найти его и здесь? -
kamai 27 окт 2017
Касательно того, почему нельзя заменить jb на jnb, дело в том, что вводе имени в поле «NAME» придется вводить ТОЛЬКО цифры, и появится окошко «GREAT WORK». При вводе имени с буквами и просто вводе букв, всегда будет появляться сначала окошко «NO LUCK THERE, MATE». Поэтому это JB приходиться забивать NOP-ами
-
yashechka 9 сен 2017
Спасибо Прэслер, Вы молодец, что пришли, располагайтесь, не стесняйтесь, у нас тут уютно и тепло.
-
onRetn 21 июл 2017
Здравствуйте. Только сегодня узнал о вашем ресурсе и про публикации статей-переводов. Благое дело вы делаете.
Но, человек по натуре я любопытный, и с детства мне твердили «совмещай любимое с полезным». По этому, я всем рекомендую почитать сперва данную статью на English, и потом по желанию читать перевод. Можно одновременно убить двух зайцев.
Вопрос к переводчикам. Как вы считаете, как English версия удовлетворяет оригиналу Spanish? Как более детально автор изложил то, что было описано в самом оригинале?
-
yashechka 19 июл 2017
Скоро добавлю, Вы не только смотрите ошибки, а ещё как читается. Я стараюсь чтобы всё было в склад и попад. Чтобы было красиво. Но иногда не получается перефразировать.
-
yashechka 1 июл 2017
Я на сайте выложу, у себя, только я их ещё не делал, сделаю как первые 10 переведу, подготовил пока стиль расскраски только.
-
Fail 28 июн 2017
@Всего один лайк?
Один человек что-ли читает?@
Ну так еще жеж многие просто читают, не лайкая) Даже в акк не заходя)
-
Alexey 27 июн 2017
rudolfninja, просто попробуйте сохранить эту страницу как пдф, должно хорошо получиться. В хроме правая кнопка мыши — печать — сохранить как пдф
-
rudolfninja 25 июн 2017
Я имел в виду, вашу версию перевода =)
-
rudolfninja 24 июн 2017
Яшка, спасибо большое за труды. Реально круто!
А есть откуда все это можно скачать в pdf? -
virtuha 18 июн 2017
yashechka Вчера, в 08:58
Всего один лайк?Один человек что-ли читает?
Выходные же)) Думаю, что в будни народ активизируется. Ну и когда статья из песочницы выйдет, лайков больше будет))
-
yashechka 17 июн 2017
Всего один лайк?
Один человек что-ли читает?
Страница 1 из 2
Изучая операционные системы Linux, я знаю следующее:
- В реальном режиме будут использоваться адреса ниже 0x10000
- Защищенный режим использует 4G для 32 бит, а пользовательское пространство может использовать 2/3 G
- Виртуальная память для программы будет начинаться с 0x40000 и выше
Итак, что ниже 0x400000, это зарезервировано?
2 ответа
Лучший ответ
Как говорит Максим, его просто нет на карте. Страницы в этой области помечаются как «отсутствующие» в таблицах страниц ЦП, поэтому доступ к ним вызывает сбой страницы; и ядро знает, что они не поддерживаются какой-либо физической памятью, файлом или пространством подкачки, поэтому такая ошибка страницы будет обработана путем доставки сигнала ошибки сегментации (SIGSEGV) процессу, обычно убивая его.
Желательно, чтобы по крайней мере самая нижняя страница виртуального адресного пространства программы не отображалась, чтобы доступ к адресу 0 (разыменование нулевого указателя) вызывал ошибку сегментации вместо того, чтобы позволить программе с ошибками продолжать работу. Также хорошо оставлять более крупную область неотображенной, так как, например, если программа пытается получить доступ к p[i]
, где p
— нулевой указатель, а i
несколько больше 4096, программа выполнит снова получить segfault. В 32-битном режиме значение 0x400000
удобно, поскольку оно составляет 4 МБ и соответствует одной записи в каталоге страниц. См. https://wiki.osdev.org/Paging для введения в разбиение на страницы x86.
1
Nate Eldredge
17 Дек 2020 в 17:56
Итак, что ниже 0x400000, это зарезервировано?
Это виртуальное адресное пространство, которому не сопоставлена физическая память. Дополнительные сведения см. В таблице страниц.
Вы можете просмотреть сопоставления виртуального адресного пространства процесса с помощью:
cat /proc/<pid>/maps
Базовый адрес 0x400000
несколько произвольный, а рандомизация адресного пространства (по умолчанию включена) загружает исполняемые файлы по разным адресам при каждом запуске. Вы можете наблюдать эффект рандомизации адресного пространства, запустив cat /proc/self/maps
дважды и заметив, что исполняемый файл cat
загружается по разным адресам при каждом запуске (при условии, что cat
является исполняемым файлом, а не встроенной оболочкой) в).
1
Maxim Egorushkin
17 Дек 2020 в 17:52