Hubsan x4 H501M waypoints fpv

Эдуард

Понятно. Я не смотрел ещё. Они теперь будут эту Зину проталкивать.

kiws

Немного получилось продвинуться с прошивкой.

Благодаря информации, полученной от Олега, дисассемблировал код.
Вот участок, связанный с определением компаса:

ROM:0000F804 ; ---------------------------------------------------------------------------
ROM:0000F804 PUSH.W {R4-R10,LR} //стёк
ROM:0000F808 MOV R4, R0
ROM:0000F80A VPUSH {D8}
ROM:0000F80E SUB SP, SP, #0x20
ROM:0000F810 ADR R0, aReadyToInitIst ; “Ready to init IST8303\r\n”
ROM:0000F812 BL sub_23FE4 //управление работой шины I2C
ROM:0000F816 MOVS R0, #1
ROM:0000F818 BL sub_1FA7C
ROM:0000F81C MOVS R0, #1
ROM:0000F81E BL sub_1FAA6
ROM:0000F822 LDR R6, =0x20000534
ROM:0000F824 LDR R7, =0x40005400
ROM:0000F826 ADDS R6, R6, #4
ROM:0000F828 MOVS R3, #1 //число регистров для чтения
ROM:0000F82A MOVS R2, #0 //регистр ID
ROM:0000F82C MOVS R1, #0xC //адрес компаса
ROM:0000F82E MOV R0, R7
ROM:0000F830 STR R6, [SP]
ROM:0000F832 BL sub_B750 //Чтение ID регистра компаса
ROM:0000F836 MOVS R5, #0
ROM:0000F838 CBZ R0, loc_F87A //Если не прочитали ID, то выход
ROM:0000F83A LDRB R1, [R6]
ROM:0000F83C ADR R0, aIst83xxIdIsX ; “IST83XX ID is %x\r\n”
ROM:0000F83E BL sub_23FE4 //управление работой шины I2C
ROM:0000F842 MOVS R0, #0x32 ; ‘2’
ROM:0000F844 BL sub_B9C4
ROM:0000F848 MOVS R3, #1 //это надо записать
ROM:0000F84A MOVS R2, #0x40 ; ‘@’ //регистр темп. компенсации
ROM:0000F84C MOVS R1, #0xC //адрес компаса
ROM:0000F84E MOV R6, R7
ROM:0000F850 MOV R0, R7
ROM:0000F852 BL sub_B412 //Настройка температурной компенсации
ROM:0000F856 CBZ R0, loc_F8B4 //Если не получилось с компенсацией, то выход из компаса
ROM:0000F858 MOVS R3, #0xC0 ; ‘L’ //это надо записать
ROM:0000F85A MOVS R2, #0x42 ; ‘B’ //регистр гистерезиса
ROM:0000F85C MOVS R1, #0xC //адрес компаса
ROM:0000F85E MOV R0, R6
ROM:0000F860 BL sub_B412 //Настройка гистерезиса
ROM:0000F864 CBZ R0, loc_F8B6 //Если не получилось с гистерезисом, то выход из компаса
ROM:0000F866 ADD R0, SP, #4
ROM:0000F868 STR R0, [SP]
ROM:0000F86A MOVS R3, #2 //сколько регистров надо прочитать
ROM:0000F86C MOVS R2, #0x9C ; ‘Ь’ //первый регистр смещения
ROM:0000F86E MOVS R1, #0xC //адрес компаса
ROM:0000F870 MOV R0, R6
ROM:0000F872 BL sub_B750 //Тестовое чтение части регистров смещения
ROM:0000F876 CBZ R0, loc_F8D4 //Если не прочитались регистры смещения, то пометка что их нет, и продолжение работы процедуры инициализации компаса
ROM:0000F878 B loc_F8DA //Продолжение с пометкой что регистры смещения есть

И т.д. и т.п.
Явно не увидел чтобы сравнивался регистр ID на значение FF, может это где-то спрятано.
Т.е. большая вероятность что Hubsan H501M настроен на работу разных компасов из серии IST83**, без разницы какой ID, главное чтобы не 0. Но надо чтобы в компасе обязательно были регистры 0, h40, h42.

Artmkas

Сегодня вышло новое обновление на Ios, там что то про GPS и ограничения. Кто силен в китайском?
优化云台调节;
无GPS起飞增加条件限制。

maverickr
Artmkas:

Сегодня вышло новое обновление на Ios, там что то про GPS и ограничения. Кто силен в китайском?
优化云台调节;
无GPS起飞增加条件限制。

Optimize the pan/tilt adjustment;
No GPS takeoff increases the condition limit

mazepa2000

А теперь по русски 😃)))
Так на андроид не давно вышло обновление,возможно на яблоко вышло позже или это другое обновление? На Андроиде интересного для нас не фиксили.

Artmkas
mazepa2000:

А теперь по русски 😃)))
Так на андроид не давно вышло обновление,возможно на яблоко вышло позже или это другое обновление? На Андроиде интересного для нас не фиксили.

Это новое обновление, на Андройд с сильной задержкой выходят. Зина на Андройде появилась недавно, а на Ios она уже несколько месяцев.

mazepa2000

Радует.но мало что понял из перевода если честно.

mazepa2000

Ну вот и андроид обновился.Что нового обещают?

mazepa2000

переводчик вот что сказал, по поводу изменений в новой версии андроида.
Оптимизация настройки PTZ;
Нет GPS взлет увеличивает ограничения условий.
может кто то более корректно переведет?

Обновлено
14 декабря 2018 г.
Текущая версия
1.6.3

kiws

Получил “псевдо” японский магнитометр AK8975 из Китая. Испытал его, пока просто подключив к Arduino, без hubsan.
Сразу скажу что его качество заметно уступает нашему IST8303. У нашего показания стабильные и предсказуемые, а у AK8975 хаотично прыгают ±20 градусов. Как будто подделка какая-то. Поможет только усреднение.
Все таки честный, “фирменный” Китай заметно качественнее китайских же реплик других производителей.

Позже попробую все таки подключить новый компас к H501M. Сначала с прошивкой 1.1.7, потом с другой, в которой изменил пару строк проверки компаса специально для AK8975.

mazepa2000

У кто знает,есть от производителя ссылка на обновление прошивки,только официальная,что они рекомендуют нашему зверьку?

kiws
mazepa2000:

У кто знает,есть от производителя ссылка на обновление прошивки,только официальная,что они рекомендуют нашему зверьку?

Официальных ссылок на ихнем сайте не вроде не было. Почему-то сейчас их сайт не открылся у меня.
Анна писала летом что они рекомендуют 1.1.7, а Курскую и 1.1.4 не рекомендуют. Курскую сделали тока если бесконечную калибровку запрашивает.

mazepa2000

1.1.7 где взять? у меня как раз 1.1.4 была,перешил на Курскую,но не летал на ней.

kiws
mazepa2000:

1.1.7 где взять? у меня как раз 1.1.4 была,перешил на Курскую,но не летал на ней.

Вот тут Эдуард целую коллекцию выкладывал.

mazepa2000
kiws:

Вот тут Эдуард целую коллекцию выкладывал.

Спасибо! А там 7 точно официалка? Ибо курская,вроде тоже была под этим номером…

kiws
mazepa2000:

Спасибо! А там 7 точно официалка? Ибо курская,вроде тоже была под этим номером…

Размер прошивки 1.1.7 (в обычном, закодированном виде) 345 540 байт. Можно проверить, соответствует ли в архиве этому числу.
А Курские обе прошивки с номером 1.1.8.

kiws

Подключил AK8975 на H501M с родной прошивкой 1.1.7. Пока результат похож на результат с 38-м компасом. Показания Yaw плавают влево-вправо примерно на 10 градусов. Т.е. квадрокоптер проводит некоторое улучшение показаний, по сравнению с простым чтением на Arduino. Но калибровку не проходит.
Опрос показаний компаса идет с частотой около 200 Герц. Т.е. каждые примерно 5 миллисекунд компас опрашивается.

kiws

А вот с Курской туго, но все же калибровку этот якобы японский компас сейчас прошел. Туго, но откалибровался, оборотов 5…6 сделал по каждой оси. Плохо откалибровался - показания сильно плавают.
Уже что-то.

kiws

Хотите сюрприз?

Полетная прошивка ZINO это переработанная прошивка 1.1.7 от H501M.
В некоторых местах они побитно совпадают. Абсолютно точно, что написаниями этих прошивок занимались одни и те же люди или, во что я больше верю, программист был один.
У H501S и H501A с ZINO и H501M таких совпадений почти нет, ими занимался кто-то другой.

Сейчас клонирую это сообщение на ветке про ZINO.