Hubsan X4 FPV H501S - FAQ, инструкции, прошивки, модернизации

Barens1985

Добрый день. У меня возник вопрос по прошивке на высоту выше 250 метров. Какую прошивку использовать? У меня хапсан с про пультом.
Вот моя прошивка
H906A V1.1.6
501SS v2.1.16 V1.1.29
Буду рад любой помощи!

AlexBio

Это надо программу запускать в которой можно менять параметры полёта.

Lesorubeision
tpc:

Через USB в плату наверняка заливается прошивка, возможно есть доступ к SD-карте
и, может, к каким-нибудь служебным файлам с настройками.

По отзывам пользователей Экшн камер, очень трудно найти оригинальную прошивку подходящую для твоего чипа. Поставив раз не родную, потом экшн камеры умирают.
Для того чтобы зайти в режим чтения карты или использования как веб камеру, надо нажать соответсвующие вкладки в выпадающем меню на экшн камере, если такого интерсфейса нет, то после подключения USB кабеля ничего не произойдет. Может за это отвечает контакт ID.
Примечания ИМХО:

  1. Со стороны радиомодуля: Квадратная площадка с четырьмя контактами просто площадка для подключения минуса для внешних подключаемых устройств.
  2. Со стороны Видеочипа: Плата разделена на две половины, там где VBUS контакт это сторона “+”, там где маркировка нанесена это сторона “-”
    Это все лирика. Где микрофон?
tpc
Lesorubeision:

Это все лирика. Где микрофон?

Даташит надо по SPCA6330A. При чём не тот, где две странички, а нормальный с распиновкой и описанием чипа. Пока не нашёл.

Немного про переменные хранящиеся в EEPROM.
Начнём с гироскопа.

EP_GyroBiasX - калибровка (смещение нуля) гироскопа по оси X
EP_GyroBiasY - калибровка (смещение нуля) гироскопа по оси Y
EP_GyroBiasZ - калибровка (смещение нуля) гироскопа по оси Z

EP_GyroBiasT - температурное смещение (калибровка) датчика температуры гироскопа которое вычитается из показаний термометра
EP_GyroTempDriftX - коэффициент масштабирования температурного смещения по оси X
EP_GyroTempDriftY - коэффициент масштабирования температурного смещения по оси Y
EP_GyroTempDriftZ - коэффициент масштабирования температурного смещения по оси Z

Т.е. нормализованные значения показаний гироскопа вычисляются следующим образом:
GyroX_normalized = (EP_GyroBiasX + GyroX * 100.0 + (Termometer - EP_GyroBiasT) * EP_GyroTempDriftX / 100.0) * EP_GyroScaleX / 10000.0
 GyroY_normalized = (EP_GyroBiasY + GyroY * 100.0 +
(Termometer - EP_GyroBiasT) * EP_GyroTempDriftY / 100.0) ​********* EP_GyroScaleY / 10000.0****
​** GyroZ_normalized = (EP_GyroBiasZ + GyroZ * 100.0 +** (Termometer - EP_GyroBiasT) * EP_GyroTempDriftZ / 100.0) ​********* EP_GyroScaleZ / 10000.0********

tpc

EP_GyroScaleX - коэффициент масштабирования показаний гироскопа по оси X
EP_GyroScaleY - коэффициент масштабирования показаний гироскопа по оси Y
EP_GyroScaleZ - коэффициент масштабирования показаний гироскопа по оси Z

Коэффициенты хранятся в десятитысячных долях.

А это, похоже, коэффициенты ортогональности осей. Т.е. поправка на то, что оси могут быть не совсем перпендикулярны.
EP_GyroOrthZx - коэффициент ортогональности между осью Z и осью X.
EP_GyroOrthZy - коэффициент ортогональности между осью Z и осью Y.

Aleksman

Наконец-то выкроил время и хочу поделиться своими наблюдениями/впечатлениями от полётов на крайней прошивке (1.1.35) в прошедшее воскресенье. Главное сейчас - ничего не упустить… 😃
Конфигурация: H501S, прошивки 4.2.19, 1.2.12, 1.1.35. Компас новый (0038), GPS из первых (M8Q). В носу корпуса (под капотом) Тигромух. Из модификаций - в квадре антенна управления висит вниз (болтается) по левому борту, в пульте антенну управления установил почти вертикально, перевернув её вверх ногами (внутри корпуса).
Параметры прошивки (безлим по высоте и скорость возврата) изменил утилитой от Олега, позже проверил утилитой H109T (скорее проверил работу самой утилиты после того, как разобрался с причиной её вылета (здесь - rcopen.com/forum/f135/topic468264/947).
Условия полётов: открытая рельефная загородная местность, вдали от видимых и предполагаемых источников каких-либо излучений (низковольтную ЛЭП, проходящую неподалёку вдоль дороги, в счёт не беру). Погода отличная - +25С, ветер 2м/с, порывы до 4м/с (как по прогнозу, так и по ощущениям). Небо чистое, безоблачное.
Отлетал 4 аккума на одном дыхании - 2 в GM, 2 в АМ. Ещё 3 шт. пока не расконсервировал с момента покупки (а зря, позже на поле пожалел об этом).
До этого б о льшую часть времени летал на первом Суперфлаере (4.2.9, 1.2.12, 1.1.22), с ней и буду сравнивать.
Обновлялся с откатом на 1.1.11 и последующей Горизонтальной (неподвижной) калибровкой (т.к. после перепрошивки появился дрейф лишь по крену/тангажу, по яву небыло). Про дрейф описывал подробно здесь - rcopen.com/forum/f135/topic450608/14603
Первая калибровка прошла примерно за 2,5+2 оборота. Все последующие (повторно этот же аккум и остальные 3) - 1+1. Это мне очень понравилось. Т.е. квадр запомнил полученные значения, при последующей калибровке сравнил их и увидев, что они почти не отличаются - не стал мне выносить мозг и дал “зелёный свет”.
Первый взлёт в GM - и сразу жёсткий унитаз. Выровнять до конца не успел, т.к. высота была менее двух метров. Квадрик несильно шлёпнулся вверх ногами на траву. Запечатлелась картинка в памяти - лежит Хабсан вверх брюхом и бьётся в конвульсиях четырьмя пропами. Вот честно - движки не могли раскрутиться (ветки, трава), поэтому дёргались в аварийном старт/стопном режиме, отчего картина получилась душераздирающая 😃. Стало его жалко, поэтому вырубил моторы не дожидаясь таймаута.
И этот момент очень понравился (с унитазом). Т.е. не нужно его перед полётом тестировать FM-ом, RTH и т.д. Некорректная калибровка - тут же неадекватное поведение. Всё понятно и просто. Было бы очень здорово, если бы так было всегда. Но я проверить не смог, т.к. остальные калибровки проходили на ура. В следующий раз просто сменю место полётов, может быть поможет 😃.
Перекалибровал (1+1) и квадрик не узнать. Видно, что ветер - он прям дрожит весь, но точку старается удерживать. Отлетел метров на 10, FM удерживал меня практически посередине (впрочем, как и в 1.1.22 при хорошей калибровке). Стал перемещаться влево/вправо - квадр следил за мной плавно, без рывков (я шёл быстрым шагом), я постоянно был в центре экрана. Когда же останавливался, случалось абсолютно то же, что и на 1.1.22 - FM перемещал меня в угол.
Кстати, не припоминаю, проверял ли на предыдущих прошивках, но на этой, если очень плавно отклонить стик руддера, в FM можно откорректировать своё положение. Если же резче дёрнуть - выходит с режима FM (как и должно быть). Правда, если после корректировки отпустить стик, FM вернёт вас на прежнее место. Так что толку от этой фичи мало.
Включил RTH - квадрик добрал нужную высоту, развернулся ко мне и довольно мягко и плавно полетел домой. Довольно плавно снизился и приземлился, подержал несколько секунд обороты, на которых снижался, затем снизил до холостых и где-то через секунду вырубил полностью. Всё, как по учебнику 😃
Забегая чуть вперёд, расскажу об ещё одном случае с RTH. Значит взлетел, отлетел, включил RTH. И тут по монитору заметил, что летит он немного ракообразно. Решил откорректировать, а заодно и проверить, как работает руддер в этом режиме. Но, т.к. расстояние было довольно близкое (около 10м), поворачивал я его уже перед самым подлётом к точке старта/посадки. И тут началось - Хабсан начал кружить надо мной, как коршун над добычей. Я отошёл чуть в сторону (просто так удобнее было наблюдать, а вовсе не потому, что страшно стало 😁) и стал смотреть, чем это закончится. Диаметр кругов постепенно увеличивался, но совсем не так активно, как в унитазе, поэтому я относительно спокойно 😃 ждал. В какой-то момент, когда мне уже казалось, что это никогда не закончится, квадрик вдруг успокоился и начал садиться. Именно “вдруг”, т.к. я не увидел в его поведении каких-либо изменений перед посадкой. Такое впечатление, что ему просто надоело кружить 😃. Позже на видео я насчитал одиннадцать(!) кругов.
В результате этого “коршунства” Хабсан промахнулся примерно на 2м. Раньше, за всю его относительно недолгую жизнь (меньше года), такого небыло ни разу. Всегда от 0,5 до 1м. Один раз даже в точку попал 😃. Но, в принципе, статистика не точная, т.к. я всегда сажаю в ручном режиме. Автопосадки делал только для тестов.
Важное замечание - кружение это очень легко отличить от настоящего унитаза. Здесь он кружился довольно плавно, равномерно, и самое главное - исключительно креном/тангажом. Т.е. нос всё это время был направлен строго в одну точку (это хорошо было видно позже на видео).
После этого, не приземляясь (подхватив в полуметре от земли) отлетал полностью аккум без каких либо приключений или же крабовой походки. Т.е. имеет место явный косяк только с RTH, а не в целом с калибровкой компаса.
О самих полётах. В GM он стал намного плавнее, вальяжнее. Но, также, стал более инерционным. Т.е. раньше, если я бросал стик крена/тангажа, квадрик тут же довольно резко останавливался. Сейчас он ещё чуть пролетает по инерции и тут же возвращается назад (теоретически на ту позицию, где я бросил стик).
Максимальная скорость в GM, как уже писали выше - 4,8м/с. Скорость подъёма - примерно 4,6м/с, спуска - примерно 3м/с. Скорость в RTH, хоть я и поставил 8м/с (проверял утилитой Н109Т), была не больше 7м/с. Не знаю, почему так, возможно ветер. Но и ветер вроде как боковой был. Х.з…
Полёт вдаль - высота около 50м, дистанция 1100м, управление отличное, видео с небольшими помехами в виде горизонтальных полос где-то после 600м (подозреваю, что из-за того, что я установил в пульте антенну вертикально и обе антенны получились в одной поляризации, отсюда и наводки).
Полёт ввысь - высота 1200м, дистанция около 100м. Управление отличное, видео, начиная с 400м с помехами (полосами), на 1000м и выше почти ничего не видел (летел по приборам 😃).
Ещё одно важное замечание - раньше не проверял это (до модификации антенны), но сейчас заметил, что выставленный вперёд снизу указательный палец (как бы для поддержки пульта) очень сильно глушит видеосигнал. Вплоть до полного исчезновения (на расстояниях 500м+). Убрал палец ближе к стику - картинка восстановилась, даже цвета появились. Подозреваю, что то же самое происходит и с сигналом управления/телеметрии. Пришлось выработать в себе привычку держать руками как бы пол-пульта. Хотя и не очень удобно.
В общем, два аккума отлетал в GM без каких либо сюрпризов. Поведение адекватное и предсказуемое, точку на высоте держал хорошо (смотрел позже по видео), хотя ветер там был посильнее. Вперёд летел ровно, не косился.
Про АМ. Отлетал остальных 2 аккума. Ну, как отлетал - отжигал 😃. Как я уже над ним издевался, как пытался вывести его из себя - не поддался )). Разгон->резкое торможение, разгон->резкий разворот - всё стерпел. Единственный момент не понравился:
И ещё одно важное замечание - при максимальном разгоне происходит очень сильная просадка по высоте. Я его поначалу из-за этого чуть в планету не впечатал. Еле вытянул. После уже учитывал этот момент. На предыдущих прошивках такого не замечал. Из этого выплывает ещё один момент, который надо учитывать - при разгоне тяжело набирает высоту. Но если стик крена отпустить - взмывает вверх намного резвее.
Переключения GPS->ALT, ALT->GPS на ходу (в полёте) выдерживал хорошо, в унитаз не срывался.
В ММ ещё не лихачил, т.к. посчитал, что 4 аккума - слишком мало для полной уверенности в надёжности и стабильности прошивки. Т.е. - продолжение следует 😃
В общем, лично для меня - прошивка FC 1.1.35 имеет право на жизнь в бренном теле нашей S-ки.
З.Ы. Если ещё что-нибудь вспомню - обязательно отпишусь.
З.Ы.Ы. Просьба учесть, что все выводы и замечания, описанные мной выше, сделаны на основании эксплуатации конкретного экземпляра моего квадрика, и у вашего поведение может отличаться. Поэтому не претендую на истину )
З.Ы.Ы.Ы. Т.к. время суток ещё позволяло, а аккумы уже закончились - снял подвес с камерой со своего Фантика 2 и поотжигал один аккум в АМ 😃 Было и прикольно, и страшно 😁 Особенно когда эта махина на скорости пролетела у меня над головой и впечаталась в растущий позади меня высокий куст (забыл за него).

tpc

Переменные акселерометра:
EP_AccScaleX - масштаб показаний акселерометра по оси X
EP_AccScaleY - масштаб показаний акселерометра по оси Y
EP_AccScaleZ - масштаб показаний акселерометра по оси Z

EP_AccMiddleX - средняя точка (смещение) показаний акселерометра по оси X
EP_AccMiddleY - средняя точка (смещение) показаний акселерометра по оси Y
EP_AccMiddleZ - средняя точка (смещение) показаний акселерометра по оси Z

AccX_normalized = (AccX * EP_AccScaleX / 10000.0 - EP_AccMiddleX) / 6.1104
AccY_normalized = (AccY * EP_AccScaleY / 10000.0 - EP_AccMiddleY) / 6.1104
AccZ_normalized = (AccZ * EP_AccScaleZ / 10000.0 - EP_AccMiddleZ) / 6.1104

Переменные магнетометра:
EP_MagMidX - средняя точка (смещение) показаний магнетометра по оси X
EP_MagMidY - средняя точка (смещение) показаний магнетометра по оси Y
EP_MagMidZ - средняя точка (смещение) показаний магнетометра по оси Z

MagX_normalized = (MagX - EP_MagMidX) / 10000.0
MagY_normalized = (MagY - EP_MagMidY) / 10000.0
MagZ_normalized = (MagZ - EP_MagMidZ) / 10000.0

И, кстати, учтите, что при изменении параметров путём модификации прошивки и отката на 1.1.11 вы все эти калибровки в EEPROM
включая температурный дрифт, средние точки гироскопа, акселерометра и магнетометра вы сбрасываете нафиг в дефолтные значения из прошивки.
По-этому, после такой перепрошивки нужно калибровать всё, что возможно.

Holod33rus

Сегодня есть одно замечание по поводу краболетства,чего я только не делал,калибровал раз 30,поменял компас,(размагниченый)ну никак оно падла не летит ровно!!!Кстати началось с падения с четырех метровой высоты,задел провод,в общем зае@.лся сегодня с ним думал все,отлетал родной,главное заметил такую особенность,ставлю его на определенный курс по компасу должно быть 84-75 примерно,не земле он так примерно и показывает,взлетаю,курс нормальный,даю вперед положение не меняется но курс уходит до 60 по компасу и он начинает лететь боком,в общем через пол дня танцев с бубнами решил перепрошить FC ноль эмоций,(стоит 1.1.35) калибровал перекалибровывал ну никак,пошел перепрошить RX,и что бывы думали)))этот гаденышь полетел как кто то говорил по рельсам!!!так что как я думаю тайна ракообразных надеюсь раскрыта,надо только подтверждение еще людей чьи хапсы страдают краболетством.

Drugcowboy

Ребята привет,ткните носом в прошивку 1.1.35,чет листаю листаю,не найду,На Сайте Алексея тоже не вижу

NumLock

В дневнике ссылка на все прошивки.

Aleksman
Drugcowboy:

Ребята привет,ткните носом в прошивку 1.1.35,чет листаю листаю,не найду

Ссылка на предыдущей странице (пост #904) чем Вас не устроила?

А просьбы практически на каждой странице не вести здесь обсуждение, для кого они? Неужели так сложно? Или “назло кондуктору пойду пешком”? Сами же потом напишете, что в теме много мусора, невозможно найти ничего и т.д. …

Drugcowboy

Респект Олег!

Aleksman:

Ссылка на предыдущей странице (пост #904) чем Вас не устроила?

А просьбы практически на каждой странице не вести здесь обсуждение, для кого они? Неужели так сложно? Или “назло кондуктору пойду пешком”? Сами же потом напишете, что в теме много мусора, невозможно найти ничего и т.д. …

Тупанул прошел с сайта лесоруба,не посмотрел,думал общая тема

Andrew2007
Holod33rus:

Всем доброго времени,у одного пилота случилась такое,-(слова автора)-Ребята вот такая бЯда может кто сталкивался какую прошивку не ставлю все ни почём не ловит сам хапсанчик спутники и более того на пульте не отображает вообще что у пульта есть гпс подскажите что такое может кто то сталкивался с такой бЯдой местами уже пробывал датчики менять не помогло!

Мот было у кого что подобное,или соображения на эту тему есть?

Я надеюсь, что этот перевод в порядке.

Я не знаю, исправили ли вы это, но я все равно объясню, как это может кому-то помочь.

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

Другой человек недавно имел левую индуктивность, которая стала разомкнутой.

I had the same problem recently with the standard transmitter. There are two inductors on the transmitter circuit board that can become open circuit. The one on the right became open circuit on mine so I removed the inductor and replaced it with a small piece of copper wire.
Another person recently had the left inductor become open circuit.

J_C_K
tpc:

И, кстати, учтите, что при изменении параметров путём модификации прошивки и отката на 1.1.11 вы все эти калибровки в EEPROM
включая температурный дрифт, средние точки гироскопа, акселерометра и магнетометра вы сбрасываете нафиг в дефолтные значения из прошивки.
По-этому, после такой перепрошивки нужно калибровать всё, что возможно.

Добавлю, что указанными в инструкции к пульту калибровками (доступ к которым происходит быстрыми движениями стика в разные стороны) Вы можете корректно откалибровать все средние точки и коэффициенты ортогональности. Калибровка бародатчика происходит во время проверки систем аппарата при каждом подключении батареи коптера. Магнетометр на разных прошивках калибруется по-разному. На большинстве используемых у нас прошивок - также при каждом подключении батареи (калибровка компаса). А вот к значению температурного смещения стоит отнестись с повышенным вниманием, механизм его калибровки не очень понятен.

tpc

А вот, похоже и калибровка “на бумажках”.
Теперь понятно, почему её называют “калибровкой гироскопа”.
Калибровка расчитывает EP_GyroOrthZx и EP_GyroOrthZy.

Здесь проверяется попадание квадрика носом в каждый из четырёх квадрантов.
Возможно, количество зажжёных зелёных лампочек соответствует номеру квадранта.

За тем EP_GyroOrthZx и EP_GyroOrthZy расчитываются заново и расчитанные значения сохраняются в EEPROM.

EP_GyroOrthZx = (EP_GyroOrthZx / 10000.0 - pitch_angle / heading_angle) * 10000.0
EP_GyroOrthZy = (EP_GyroOrthZy / 10000.0 - roll_angle / heading_angle) * 10000.0

Если roll или pitch первышают 0.6 калибровка будет циклически продолжаться.

Калибровка должна проводиться на ровной поверхности !

Vitosss

ДД, только влился в ряды 501ss. Подскажите, H501A-FC-V1.1.35.hbs. что для 501s, что для 501ss подходят?

Aleks6877

Хочу поделиться установкой поискового маяка “тигромуха” версии Amber, не вскрывая квадрика. После изучения инструкции от Echelon, я решил, не вскрывая квадрика, установить маяк в “фонарь”(золотой колпак). Следуя инструкции, я врезал маяк параллельно шлейфу “материнка”- GPS модуль и на квадрике пропали спутники, а маяк повёл себя странно. Я написал на форум (тем, кто помогал - респект и уважуха) и Константину Сбитневу. Естественно, я тоже не сидел сложа руки. Пришлось разрезать шлейф и “прозвонить” его. Результат несколько шокировал, а именно: чёрный - +4,83В; синий - “общий”; белый - +2,4В; красный - +3,28В. В результате Наших изысканий получилось такое соединение: синий - к черному маяка; черный - к красному маяка; белый - к зелёному маяка.

Получилось как-то так. Плюсы установки маяка в “фонарь” описаны ранее другими форумчанами. Аккумулятор расположен в “горбу” у задней крышки.

Defroster
Aleks6877:

После изучения инструкции от Echelon, я решил, не вскрывая квадрика, установить маяк в “фонарь”…
Пришлось разрезать шлейф и “прозвонить” его. Результат несколько шокировал …

Вероятно этот фрагмент

Echelon:

Важно: при подключении не привязывайтесь к цвету проводов в штатном четырехпроводном шлейфе, ведущему от платы к GPS-модулю. Как показал опыт китайцы могут применять шлейфы с различной цветовой комбинацией и последовательностью проводов. Поэтому подключаться надо к проводам в родном шлейфе «по счету от края», а не «по цвету».

при прочтении упомянутого материала Echelon-а вы упустили из виду. Тем самым создав себе же сложности и вероятно желая пройти данный урок на своих ошибках 😃
Если захотите продолжить дальнейшее обсуждение - пожалуйста в основной теме.

Aleks6877
Defroster:

при прочтении упомянутого материала Echelon-а вы упустили из виду. Тем самым создав себе же сложности и вероятно желая пройти данный урок на своих ошибках Если захотите продолжить дальнейшее обсуждение - пожалуйста в основной теме.

Этот пост я выложил по просьбе Константина Сбитнева, чтобы у других было меньше проблем. А Вам посоветую убрать свой пост, заглянуть на несколько страниц назад в основной теме и посмотреть “обсуждение” и посмотреть как выглядит шлейф “материнка”- GPS модуль прежде чем что-то советовать.

tpc

В свете этого rcopen.com/forum/f135/topic468264/983 выясняется, что калибровка на бумажка это калибровка коэффициентов EP_GyroOrthZx и EP_GyroOrthZy.

Вращать нужно, почему-то, на ровной поверхности. Угол по R и P не должен превышать 0.6. При несоблюдении этого условия алгоритм будет повторяться и огни продолжат загораться.

Скорость вращения, похоже, не принципиальна. Главное, чтобы дрон успел отметиться носом в каждом из четырёх квадрантов. При чём, по всей видимости, во время этого вращения
никаких измерений не производится. Просто нужно, чтобы дрон раскрутили. После описывания полного круга следует некоторая задержка (достаточно большая, наверное 1 с), во время которой
оператор, судя по всему, должен перестать вращать дрона. При остановке вращения дрона ускорение по yaw должно быть не менее 500. После чего снимаются показания положения по осям и из них вычисляются коэффициенты ортогональности. Если углы по R и P в это время менее 0.6, то коэффициенты ортогональности сохраняются в EEPROM и алгоритм заканчивает работу. В противном случае, всё повторяется сначала.