Был косяк со схемой. Новая распиновка drive.google.com/file/d/1RmXD-_qZMIb_YpH9ADaOITtLoC5_EA84/view Читай описание видео полностью!!! Там написано про изменения от видео. С mpu6500 слишком много брака, в прошивку добавлены дополнительно mpu6050, BMI160, MPU9250. Проверить mpu6500 можно через ардуину скетчем i2c scanner, определяется адрес 0x68. Если что-то не работает, то скачай прошивку заново, возможно был косяк, либо спроси в комментариях. Если нужна настройка, то советую посмотреть эти видео: -press F, пропали видео по inav- И этот канал ua-cam.com/video/TVm3sI3gOJA/v-deo.html ua-cam.com/video/MsMQjphD8Gw/v-deo.html В комментариях подсказали, что есть и другие прошивки inav для такой же платы, но я не проверял github.com/rizacelik/STM32F411CEU6_INAV_Firmware github.com/EonClaw/DIY-Flight-Controller-STM32F411CEU6 Так же ищи информацию на страницах проектов github.com/iNavFlight/inav/ github.com/betaflight/betaflight/
Блин. Писал-писал комментарий, а он исчез. Наверное из-за ссылок. Ну да ладно, напишу по другому: Сам являюсь обладателем такой макетной платы, и тоже задумал превратить ее в полетный контроллер. Хотя по большому счету проще купить готовый дешевый на f411 чипе, в котором уже будет и гироскоп, и OSD. Поэтому за приложенные исходники спасибо. У некоего Riza Celik есть аналогичный проект. Но он модифицированные исходники не выкладывает, только скомпилированный hex. Сам я попробовал скомпилировать, но так как спецом в микроконтроллерах не являюсь, то побороть inav и выставить правильную частоту не смог. Riza Celik в комментариях упоминал, что надо править inav\src\main\target\system_stm32f4xx.c. Соответственно вопрос: в твоей версии достаточно указать таргет? Или нужно еще где исходники править? И еще: поделись опытом, в какой среде собираешь прошивки?
Хорошо, что подсказали, что кто-то с этим сталкивался. На всякий случай пересобрал прошивки, в описании архив поменял, в нём есть нужные файлы и написано что менять в исходниках, спрашивай, если что-то там непонятно В system_stm32f4xx.c надо добавить или изменить HSE_VALUE на 25000000. В архиве рядом с этим файлом картинка теперь есть, что там менял. Для сборки достаточно указать таргет STMF411. До этого собирал под частоту 24 (make STMF411_24) Частота указана в CMakeLists.txt, хоть она и была неправильная для кварца, но проблем у себя пока не успел заметить, но теперь лучше буду использовать исправленный вариант Собираю в Debian по этой инструкции, в windows как-то сложнее всё настроить github.com/iNavFlight/inav/blob/master/docs/development/Building%20in%20Linux.md В моём случае спаять такую плату было раза в 2 дешевле нужных готовых полётных контроллеров. Большая проблема дешёвых готовых плат это отсутствие I2C для подключения компаса или барометра
@@pawsfpv Кстати да. Еще пол-года назад плат на дешевых F411 не было, и самому собрать полетный контроллер по дендрофекальной технологии (из гумна и палок) было выгодно.
лайк, надо за зиму попробовать собрать, MPU6050 и PPM на inav 5.1 это хорошо, сейчас у меня больше инава 2.5, не поддерживает контроллер и нормально.. .летает.
Протестировал модуль GY-91 с STMF4 на модифицированной INAV 6. При подключении по i2c работает только барометр BMP280. При подключении по SPI работает акселерометр и гироскоп. Компас не завёлся ни в какую. Жду модуль GY-87 с Aliexpress, все датчики оттуда должны завестись. Пока что буду искать в городе у себя магнетометры и барометры, которые подойдут. Тем, кому нужен "Чёрный ящик"(регистратор) советую прикупить чип SPI FLASH, так как на BluePill (STM32F411) есть место на плате под распайку восьминогой SOIC-8. С картой памяти пока не разобрался, но этот вариант, пожалуй будет предпочтительней из за более низкой стоимости. Если ничего не заработает, буду откатываться до INAV 5 и ниже, что поделать.
По inav 6 не подскажу, не моя прошивка. В inav 6 полезу только после официального релиза. На моей прошивке у GY-91 по spi должен работать и компас, но BMP280 только по i2c. У GY-87 на моей прошивке скорее всего не будет работать BMP180 из-за mpu6050. SPI FLASH на моей прошивке не работает, только sd как на моей схеме. Проверял с mpu6500, BMI160. С ними все датчики i2c работают нормально на скорости 400кгц. С mpu6050 не работали мои bmp180 и qmc5883 из-за скорости 800кгц, а на 400кгц не работает mpu6050. Сборки датчиков не пробовал, у меня все отдельные.
@@pawsfpv Только вчера протестировал. GY-87 работает в полном объёме (гиро, аксель, компас и барометр). Только пока не могу разобраться с компасом, неадекватно модель движется в конфигураторе, когда в реальности квад вообще не движется. Скорее всего, нужно найти правильную ориентацию на коптере.
@@AE075G это хорошо, что работает. Я пробовал те же датчики по отдельности, но BMP180 не завёлся, наверное нужен именно GY-87. Компас настраивал методом перебора, но у меня если его не трогать, то и модель не двигалась сама. Если на самолёт ставить контроллер, то проще отключить компас, чем настраивать или искать место, где не будет на него наводок от проводов, из-за этого у меня всё отдельными датчиками, чтобы компас можно было на стойку вынести
Из всех просмотренных видео и анализа, с вашего позволения автор, хочется задать некоторые вопросы: 1) как дела с температурой моторов на этом stm, контроллере? на мультивие вы решили проблему фильтром 20гц. 2) какую альтернативу гиросу mpu6050 вы посоветуете? если он действительно так плох 3) если не работает ppm, то работает pwm, правильно понимаю, соответственно необходимо 5 проводов(throt,yaw,roll,pit,aux) не подскажете ли эти пины на плате?
1) Обычно нагрев моторов решается настройкой PID. В inav через командную строку можно установить set gyro_hardware_lpf = 42HZ или 20HZ, то же самое, как и в мультивию. Разработчики советуют так не делать, но другого решения от вибраций не придумал, из-за хренового крепления акселерометра(стяжки и термоклей) горизонт уплывал настолько, что квадрокоптер падал. 2) Я использовал mpu6500, да и прошивка проверялась в основном с ним, но в комментариях писали, что попадали на подделку (себе заказывал тут aliexpress.ru/item/32703220315.html ). mpu6050 не так и плох, проблема в подключении по i2c, что для современных прошивок медленно из-за чего они и тормозят. 3) Подключения по pwm нет, даже на заводских вариантах такого уже и не найти. Если нужны PPM и mpu6050, то в inav 2.6.1 есть их поддержка, в более новых версиях особо ничего не добавлялось. Можешь написать модель приёмника, возможно есть способ не только по ppm подключить, например, на приёмниках флайскай обычно есть ещё ibus. Для первой проверки плат советую betaflight 4.2.9, как по мне, то и настроить его проще, но если нужно зависание по gps, то тут только inav.
Заметил одну интересную вещь: если прошить inav_5.0.0_STMF411_24.hex, то набрав в CLI команду status мы увидим CPU Clock=96MHz. Если прошить inav_5.0.0_STMF411.hex, то CPU Clock=84MHz. Судя по всему в system_stm32f4xx.c как-то некорректно частоты подправлены. В прошивке от Riza Celik CPU Clock=96MHz
inav_5.0.0_STMF411_24.hex собрана без изменения исходников под кварц на 24MHz, там как минимум время считало неправильно, но при этом даже взлетал без проблем. По команде status можно засечь System Uptime. В inav_5.0.0_STMF411.hex значения взяты из примера от разработчиков для 25MHz от плат STM32F401xx, как наиболее близких к 411, там же по таблице и должно быть в итоге SYSCLK(Hz) 84000000 github.com/iNavFlight/inav/blob/master/src/main/target/system_stm32f4xx.c#L137 Менял PLL_M 25, PLL_N 336, PLL_P 4, PLL_Q 7. Как сделано у Riza не знаю, если только просить его поделиться изменёнными файлами
Итак, припаял к Black Pill флешку windond w25q128, прицепил плату с датчиками GY-87, безродный GPS и приемник HappyModel ELRS ep1. Залил прошивку inav_5.0.0_STMF411.hex. GPS и ELRS завелись, а вот от датчиков определился только барометр BMP085. Прошил собранной прошивкой от Riza Celik. Там GY-87 увиделся полностью, к барометру добавились акселерометр MPU6050, магнетометр HMC5883. Судя по твоему target.h поддержка магнетометра и акселерометра у тебя в прошивку включена, но вот почему то не видится.
Последняя версия inav, которую заставил работать с mpu6050, это 2.6.1, поэтому прошивку inav 5 собирал только для mpu6500. Поддержку делал только для sd карт, если паять w25q128 снизу платы, то думаю при моей распиновке платы он будет только мешать другим выводам. Поддержка HMC5883 добавлена, но этот компас я не проверял, чуть позже найду его и проверю. Попробую сейчас собрать inav 5 для mpu6050, возможно была виновата частота, напишу, что получится
Думаю для работы mpu6050 на inav 3 и новее надо что-то делать в исходном коде, так что у меня только 2.6.1 работает с mpu6050. HMC5883 нашёл и проверил, работает и на inav 5 и на двух прошивках 2.6.1(6500 и 6050), проверялся встроенный из gps bn-880. Именно GY-87 у меня нет, но подключение всех отдельных плат вместе работает нормально на 2.6.1. Попробуй менять скорость i2c, попадались датчики работающие на скорости не выше 400. Флешка w25q128 может мешать каким-то выходам, для её работы нужна пересборка прошивки с учётом куда она подключается. Жаль Riza Celik только hex выложил
Может повезёт и ответит кто) я не понимаю одного. Допустим я подключил esc, датчики , приёмник в стмке. Но как прошивка поможет стмке определить к каким портам я подключил esc, как стмка будет понимать на какой из моторов посылать сигнал , если она сама не знает что у неё на портах. Также и с датчиками, тоже не понимаю.
Ну а как виндовс помогает пользоваться компьютером? Прошивка это как операционная система(та же виндовс), в ней и настраиваешь что куда и как подключено. Посмотри любые видео по настройке полётных контроллеров inav и betaflight, желательно найти где описывают всё для новичков. Любой современный полётный контроллер = стм32+акселерометр
stm32f411ceu6 это сейчас минимум для betaflight и Inav. F401 не поддерживается. Древние прошивки работают с некоторыми F3 и F1, но найти подходящий процессор не реально, отправляют совершенно не то, что надо
@@pawsfpv У меня получилось скомпилировать CleanFlight под отладочную плату на F401, чтобы оно влезло в 256к. Я вырезал из кода все что можно. В общем влезть оно влезло, но не запустилось. Разбираться было лень, да и понятное дело, что это бесперспективно. Поэтому заказал плату на F411
@@vr7365 я могу только ppm, ibus нормально проверить, нет других приёмников. На вкладке configuration телеметрия по умолчанию выключена, её можно попробовать включить, возможно ещё проблема при подключении приёмника к softserial. К сожалению я не программист и решить вряд ли смогу проблему. Прошивка эта ещё не летала, так что аккуратнее со взлётом, если до него дойдёт
Отличная работа! У меня все заработало с inav 5.1 mpu6050, есть только одна проблема, хочу подключить bluetooth к uart2 (A2, A3), но на пине A3 у меня PPM приемник, у Вас в схемах указано что пин (A8) SS_RX может быть использован как вход PPM, буду благодарен, если объясните как это сделать))))
Менялась распиновка, сейчас ppm только на A3. Смотри в описании новую схему. Изначально PPM вообще нет на этой версии inav, это уже костылями прикручен обратно. Можно включить softserial(ss_tx ss_rx) и туда bluetooth на скорости 9600, на более высокой может не заработать. Я softserial проверял только USB-TTL, хоть и тормозило, но работало, от bluetooth отличаться не должно. Если у приёмника есть выход ibus(flysky), то он может работать с softserial. Если стоит mpu6050, то softserial не заработает, только прошивка намертво зависнет. Вот попробуй прошивку с ppm на A8, но я её не проверял. Тут нет softserial, возможно не работает выход led и некоторые сервы или моторы. drive.google.com/file/d/1PrsZhsNdqHO1y18WHo6GA815EvABsjop/view?usp=share_link Пересобрать прошивку не долго, дольше сделать, чтобы всё это вместе работало.
Увидел и про mpu6050, тогда точно без softserial, ещё и часть i2c датчиков отметается, мои bpm180 и qmc5883 точно не работали на 800кгц, работали bmp280 и hmc5883.
@@pawsfpv забыл включить SoftSerial в конфигураторе и он у меня не отображался в портах, в итоге Bluetooth прикрутил на SS, а PPM оставил на UART2, все завелась и работает отлично)) Гироскоп и акселерометр на mpu6050 и барометр на bmp-280 тоже отображаются корректно, GPS на GY-NEO6M UART1 тоже подключается, единственное пока в помещении спутники не проверял. Bluetooth использовал HC-06
@@АндрейХрапин-е1ц Это хорошо, что softserial заработал, у меня с mpu6050 не хотел. С mpu6050 следи в самом низу конфигуратора за загрузкой cpu, некоторые настройки сильно загружают плату. С gps главное, чтобы значок сверху синий постоянно горел. Ещё не у всех neo6m есть ublox, а с nmea inav не хочет работать нормально. Мои gps первый раз несколько часов искали спутники, хоть и лежали у окна. Могу порекомендовать изменить gyro_hardware_lpf на 42, если нет хорошей виброразвязки. У меня горизонт уплывал слишком сильно, только по minimosd понял что происходит, а у тебя можно будет по блютуз посмотреть. А по usb не получалось, всё почему-то начинало сразу работать нормально
Привет.Помоги пожалуйста. Прошил STM32F411 прошивкой Betaflight от Riza.У меня установлен GY-87. Но Betaflight определяет только барометр.Когда я прошиваю на INAV то все работает. А на Betaflight нехочет нивкакую.
@@roboticselectronicsenginee656 Может быть set i2c1_clockspeed_khz = 400 или set i2c1_overclock = OFF ? А так по betaflight 4.4 и выше особо и не подскажу ничего, там теперь надо вручную собирать прошивку, но мне как-то лень разбираться. А по старым прошивкам, то mpu6050(вроде это он в gy-87) ещё в версии 4.3 был отключен и уже тут нужна самосборная прошивка. Могу предложить скачать конфигуратор 10.8 github.com/betaflight/betaflight-configurator/releases/tag/10.8.0 Через него найти прошивку STM32F411 версии 4.2.11 После прошивки в командной строке загрузить, например, мои настройки github.com/p-fpv/FC-stm32f411ceu6-stm32f405rgt6-inav-betaflight/blob/main/betaflight/BTFL_cli_stm32f411_mpu6050_beta4.2.txt Там подключение акселерометра настроено к PB8, PB9 (scl, sda) Остальная схема именно как в видео на 1:05. А чем inav не устроил?
@@pawsfpv Спасибо за инфу. Айнав что то не зашел.Хотел разобраться хорошо. Подскажи пожалуйста где почитать что бы самому собрать прошивку ? Надо проограммить на С ?
@@roboticselectronicsenginee656 знание С там и не нужно, обычно по готовым файлам для других контроллеров делаешь свой вариант, пока не заработает, может помочь если только хоть какое-то умение ковыряться с ардуинами и линуксом. Поищи betaflight build firmware, и на русском вряд ли что-то будет полезное
Подключить контроллер в режиме прошивки(DFU), если удачно, то windows напишет что-то про неизвестное устройство stm32 dfu, включить zadig и установить драйвер. Теперь конфигуратор сможет увидеть контроллер в режиме DFU и загрузить прошивку. После прошивки установить stm32 usb vcp driver, в конфигураторе выбрать нужный com порт и подключиться. (обычно это не com1) Прошивать первым делом бетафлайт, только как он заработает, то можно переходить к пайке или другим прошивкам. Или проблема в настройке портов самой прошивки бетафлайт в конфигураторе?
@@GryzzlyBoss бета 4.3 ещё вроде умела как-то, настройка через командную строку, но примеров настройки уже и не найти. Айнав нет, на официальных прошивках ppm и pwm уже давно нету.
@@GryzzlyBoss осд нет, оно и в заводских дополнительным чипом сделано. Из внешних minimOSD, но настройку в поле через него сделать нельзя. Ещё знаю есть FrskyOSD, но его не пробовал. Если ставить и gps, то все uart заняты будут, а osd на softserial возможно будет подтормаживать, но вряд ли критично. Как вариант минимального решения с осд, я летал со светодиодом WS2812 перед камерой, он заряд показывал
@@hendmei7066 попробую больше конфигуратора, но всё равно не уверен, что получится слишком подробно. Обычно, если заработал акселерометр, то дальше проблем не должно быть В закреплённом комментарии хоть ссылки и на длинные видео по настройке, но многое объяснено, советую начать с роликов по Betaflight
Как-то подзабил, не до полётов у нас. Но если интересно, то есть прошивки проверенные только на столе на stm32f405vgt6(PyBoard V1.1) Схема github.com/p-fpv/FC-stm32f411ceu6-stm32f405rgt6-inav-betaflight/tree/main/inav/Firmware/stm32f405/%D1%81%D1%85%D0%B5%D0%BC%D1%8B%20F405 Inav 6 github.com/p-fpv/FC-stm32f411ceu6-stm32f405rgt6-inav-betaflight/tree/main/inav/Firmware/stm32f405 Если надо, то могу под inav 7 собрать прошивку, но без ppm и mpu6050 Ardupilot, какая-та старая бета 4.4 была github.com/p-fpv/FC-stm32f411ceu6-stm32f405rgt6-inav-betaflight/tree/main/ardupilot Betaflight 4.2, 4.3 будут работать, но надо сидеть и через командную строку весь конфиг делать.
@@hendmei7066 А что за маяк? Если что-то и собирать, то я только по готовой инструкции и умею, и то не всегда получается. Тот же полётник на самом деле не так и сложно собрать, там всего 2 детали готовых надо и всё
На пин 5V, для питания процессора там есть свой стабилизатор на 3.3в. 1:05 Скачай с описания архив или схему, там качество картинки повыше чем в видео. Ножки питания на схеме выделены красным, но одни из них подписаны как 5в, другие 3.3в. Пины 3.3в не силовые, максимум повесить датчик, которому это нужно. Так же на пины B5 и A0 нельзя подавать выше 3.3в
@@dimon87793 тут как и на ардуно можно запитывать через пины 5в, а вот vbat на stm относится к питанию 3.3в, и возможно выгорела часть с часами rtc, если остальное в норме, то наверное это ничему не помешает. Через vbat подключается резервная батарейка, как на rtc модулях для ардуино, чтобы время не сбрасывалось при отключении основного питания
Я пробовал всё. Датчики bmi160, mpu6500. Beta 4.3.1, 4.2.11. INAV от того чувака из комментариев. Нужно ли что-то делать с прошивкой? Как-то указывать датчики?
@@crossboness636 Если ты про inav от rizacelik, то он поддерживает только mpu6050, bmp180, hmc5883, gy-87 Bmi160 не поддерживается. Может быть добавят в betaflight 4.4 В betaflight mpu6500 заработает только после ручной настройки через cli, либо загрузки конфига(BTFL_cli_stm32f411.txt) в cli под мою схему 1:05. В Inav (inav_5.0.0_STMF411.hex) только проверять правильность пайки mpu6500 по схеме 1:05, он должен работать сразу.
@@crossboness636 В cli точно правильно вставлял? Там есть и кнопка для автоматической загрузки. Уверен, что акселерометр точно mpu6500, а не mpu9250 или похожие? Так же проверь точно ли плата с процессором stm32f411ceu6 В Inav должен работать сразу после прошивки без каких-либо дополнительных настроек, проверяй правильность подключения акселерометра, укороти провода, если длинные. В betaflight ручная настройка состоит в том, что сам пишешь нужные команды в cli. Файл конфига обычно уже содержит все нужные команды и их можно автоматически загрузить через конфигуратор. github.com/betaflight/betaflight/blob/master/docs/Cli.md Конфиги для готовых полётников: github.com/betaflight/unified-targets/tree/master/configs/default В betaflight эти команды минимум для работы только акселерометра, только что проверил на 4.3.1 resource SPI_SCK 1 A05 resource SPI_MISO 1 A06 resource SPI_MOSI 1 A07 resource GYRO_EXTI 1 B10 resource GYRO_CS 1 A04 set gyro_1_spibus = 1 save set acc_hardware = MPU6500 ручное указание модели акселерометра, работает и без этого. Обычно все датчики определяются автоматически
Видео с полётом планируется, но сборка от любых других полётных контроллеров inav, betaflight (например, matek411) вроде как совершенно отличаться не должна, ну кроме ручной пайки акселерометра/гироскопа. Если нужна настройка, то советую посмотреть эти видео: ua-cam.com/video/QAjbpFlHeO4/v-deo.html ua-cam.com/video/AKMrBxgE5JI/v-deo.html ua-cam.com/video/VqwcyH5TzQQ/v-deo.html И этот канал ua-cam.com/video/TVm3sI3gOJA/v-deo.html ua-cam.com/video/MsMQjphD8Gw/v-deo.html
@@hendmei7066 Inav поддерживает одновременно самолёты и квадрокоптеры. При первом включении конфигуратор спрашивает тип модели, либо же можно вручную всё перенастроить на вкладе mixer, и там же посмотреть или настроить за что отвечает каждая серва. Справа на 1:42 есть пункт s1-s6, там написано, как выходы установливаются для самолёта или квадрокоптера. Если планируется ставить mpu6050, то он подключается на sda scl, хоть и на 1:42 написано, но предупрежу и тут, что на моих прошивках mpu6050 и ppm работают ТОЛЬКО на на inav 2.6.1
Был косяк со схемой. Новая распиновка drive.google.com/file/d/1RmXD-_qZMIb_YpH9ADaOITtLoC5_EA84/view
Читай описание видео полностью!!! Там написано про изменения от видео.
С mpu6500 слишком много брака, в прошивку добавлены дополнительно mpu6050, BMI160, MPU9250.
Проверить mpu6500 можно через ардуину скетчем i2c scanner, определяется адрес 0x68.
Если что-то не работает, то скачай прошивку заново, возможно был косяк, либо спроси в комментариях.
Если нужна настройка, то советую посмотреть эти видео:
-press F, пропали видео по inav-
И этот канал
ua-cam.com/video/TVm3sI3gOJA/v-deo.html
ua-cam.com/video/MsMQjphD8Gw/v-deo.html
В комментариях подсказали, что есть и другие прошивки inav для такой же платы, но я не проверял
github.com/rizacelik/STM32F411CEU6_INAV_Firmware
github.com/EonClaw/DIY-Flight-Controller-STM32F411CEU6
Так же ищи информацию на страницах проектов
github.com/iNavFlight/inav/
github.com/betaflight/betaflight/
Блин. Писал-писал комментарий, а он исчез. Наверное из-за ссылок. Ну да ладно, напишу по другому:
Сам являюсь обладателем такой макетной платы, и тоже задумал превратить ее в полетный контроллер. Хотя по большому счету проще купить готовый дешевый на f411 чипе, в котором уже будет и гироскоп, и OSD. Поэтому за приложенные исходники спасибо.
У некоего Riza Celik есть аналогичный проект. Но он модифицированные исходники не выкладывает, только скомпилированный hex. Сам я попробовал скомпилировать, но так как спецом в микроконтроллерах не являюсь, то побороть inav и выставить правильную частоту не смог. Riza Celik в комментариях упоминал, что надо править inav\src\main\target\system_stm32f4xx.c. Соответственно вопрос: в твоей версии достаточно указать таргет? Или нужно еще где исходники править?
И еще: поделись опытом, в какой среде собираешь прошивки?
Хорошо, что подсказали, что кто-то с этим сталкивался. На всякий случай пересобрал прошивки, в описании архив поменял, в нём есть нужные файлы и написано что менять в исходниках, спрашивай, если что-то там непонятно
В system_stm32f4xx.c надо добавить или изменить HSE_VALUE на 25000000. В архиве рядом с этим файлом картинка теперь есть, что там менял.
Для сборки достаточно указать таргет STMF411. До этого собирал под частоту 24 (make STMF411_24)
Частота указана в CMakeLists.txt, хоть она и была неправильная для кварца, но проблем у себя пока не успел заметить, но теперь лучше буду использовать исправленный вариант
Собираю в Debian по этой инструкции, в windows как-то сложнее всё настроить
github.com/iNavFlight/inav/blob/master/docs/development/Building%20in%20Linux.md
В моём случае спаять такую плату было раза в 2 дешевле нужных готовых полётных контроллеров. Большая проблема дешёвых готовых плат это отсутствие I2C для подключения компаса или барометра
@@pawsfpv Кстати да. Еще пол-года назад плат на дешевых F411 не было, и самому собрать полетный контроллер по дендрофекальной технологии (из гумна и палок) было выгодно.
Добрый день, ссылка на ваш архив не работает, если проект ещё в силе, можете дать новую?
@g1mounrealle711 напиши в лс во вконтакте.
На компьютере это всё оставалось.
Комментарий не заметил, в спаме был, хз что ютубу не понравилось
лайк, надо за зиму попробовать собрать, MPU6050 и PPM на inav 5.1 это хорошо, сейчас у меня больше инава 2.5, не поддерживает контроллер и нормально.. .летает.
Протестировал модуль GY-91 с STMF4 на модифицированной INAV 6. При подключении по i2c работает только барометр BMP280. При подключении по SPI работает акселерометр и гироскоп. Компас не завёлся ни в какую. Жду модуль GY-87 с Aliexpress, все датчики оттуда должны завестись. Пока что буду искать в городе у себя магнетометры и барометры, которые подойдут. Тем, кому нужен "Чёрный ящик"(регистратор) советую прикупить чип SPI FLASH, так как на BluePill (STM32F411) есть место на плате под распайку восьминогой SOIC-8. С картой памяти пока не разобрался, но этот вариант, пожалуй будет предпочтительней из за более низкой стоимости.
Если ничего не заработает, буду откатываться до INAV 5 и ниже, что поделать.
По inav 6 не подскажу, не моя прошивка. В inav 6 полезу только после официального релиза.
На моей прошивке у GY-91 по spi должен работать и компас, но BMP280 только по i2c.
У GY-87 на моей прошивке скорее всего не будет работать BMP180 из-за mpu6050.
SPI FLASH на моей прошивке не работает, только sd как на моей схеме.
Проверял с mpu6500, BMI160. С ними все датчики i2c работают нормально на скорости 400кгц.
С mpu6050 не работали мои bmp180 и qmc5883 из-за скорости 800кгц, а на 400кгц не работает mpu6050.
Сборки датчиков не пробовал, у меня все отдельные.
@@pawsfpv Только вчера протестировал. GY-87 работает в полном объёме (гиро, аксель, компас и барометр). Только пока не могу разобраться с компасом, неадекватно модель движется в конфигураторе, когда в реальности квад вообще не движется. Скорее всего, нужно найти правильную ориентацию на коптере.
@@AE075G это хорошо, что работает.
Я пробовал те же датчики по отдельности, но BMP180 не завёлся, наверное нужен именно GY-87.
Компас настраивал методом перебора, но у меня если его не трогать, то и модель не двигалась сама.
Если на самолёт ставить контроллер, то проще отключить компас, чем настраивать или искать место, где не будет на него наводок от проводов, из-за этого у меня всё отдельными датчиками, чтобы компас можно было на стойку вынести
Из всех просмотренных видео и анализа, с вашего позволения автор, хочется задать некоторые вопросы:
1) как дела с температурой моторов на этом stm, контроллере? на мультивие вы решили проблему фильтром 20гц.
2) какую альтернативу гиросу mpu6050 вы посоветуете? если он действительно так плох
3) если не работает ppm, то работает pwm, правильно понимаю, соответственно необходимо 5 проводов(throt,yaw,roll,pit,aux) не подскажете ли эти пины на плате?
1) Обычно нагрев моторов решается настройкой PID.
В inav через командную строку можно установить set gyro_hardware_lpf = 42HZ или 20HZ, то же самое, как и в мультивию. Разработчики советуют так не делать, но другого решения от вибраций не придумал, из-за хренового крепления акселерометра(стяжки и термоклей) горизонт уплывал настолько, что квадрокоптер падал.
2) Я использовал mpu6500, да и прошивка проверялась в основном с ним, но в комментариях писали, что попадали на подделку (себе заказывал тут aliexpress.ru/item/32703220315.html ).
mpu6050 не так и плох, проблема в подключении по i2c, что для современных прошивок медленно из-за чего они и тормозят.
3) Подключения по pwm нет, даже на заводских вариантах такого уже и не найти.
Если нужны PPM и mpu6050, то в inav 2.6.1 есть их поддержка, в более новых версиях особо ничего не добавлялось.
Можешь написать модель приёмника, возможно есть способ не только по ppm подключить, например, на приёмниках флайскай обычно есть ещё ibus.
Для первой проверки плат советую betaflight 4.2.9, как по мне, то и настроить его проще, но если нужно зависание по gps, то тут только inav.
Заметил одну интересную вещь: если прошить inav_5.0.0_STMF411_24.hex, то набрав в CLI команду status мы увидим CPU Clock=96MHz.
Если прошить inav_5.0.0_STMF411.hex, то CPU Clock=84MHz. Судя по всему в system_stm32f4xx.c как-то некорректно частоты подправлены.
В прошивке от Riza Celik CPU Clock=96MHz
inav_5.0.0_STMF411_24.hex собрана без изменения исходников под кварц на 24MHz, там как минимум время считало неправильно, но при этом даже взлетал без проблем.
По команде status можно засечь System Uptime.
В inav_5.0.0_STMF411.hex значения взяты из примера от разработчиков для 25MHz от плат STM32F401xx, как наиболее близких к 411, там же по таблице и должно быть в итоге SYSCLK(Hz) 84000000
github.com/iNavFlight/inav/blob/master/src/main/target/system_stm32f4xx.c#L137
Менял PLL_M 25, PLL_N 336, PLL_P 4, PLL_Q 7.
Как сделано у Riza не знаю, если только просить его поделиться изменёнными файлами
@@pawsfpv Риза тоже скомпилил на 24 MHz, тоже не заморачивался
Однозначно лайк!
Классно придумал я тоже хочу очень
Итак, припаял к Black Pill флешку windond w25q128, прицепил плату с датчиками GY-87, безродный GPS и приемник HappyModel ELRS ep1. Залил прошивку inav_5.0.0_STMF411.hex. GPS и ELRS завелись, а вот от датчиков определился только барометр BMP085.
Прошил собранной прошивкой от Riza Celik. Там GY-87 увиделся полностью, к барометру добавились акселерометр MPU6050, магнетометр HMC5883.
Судя по твоему target.h поддержка магнетометра и акселерометра у тебя в прошивку включена, но вот почему то не видится.
Последняя версия inav, которую заставил работать с mpu6050, это 2.6.1, поэтому прошивку inav 5 собирал только для mpu6500.
Поддержку делал только для sd карт, если паять w25q128 снизу платы, то думаю при моей распиновке платы он будет только мешать другим выводам.
Поддержка HMC5883 добавлена, но этот компас я не проверял, чуть позже найду его и проверю.
Попробую сейчас собрать inav 5 для mpu6050, возможно была виновата частота, напишу, что получится
Думаю для работы mpu6050 на inav 3 и новее надо что-то делать в исходном коде, так что у меня только 2.6.1 работает с mpu6050.
HMC5883 нашёл и проверил, работает и на inav 5 и на двух прошивках 2.6.1(6500 и 6050), проверялся встроенный из gps bn-880.
Именно GY-87 у меня нет, но подключение всех отдельных плат вместе работает нормально на 2.6.1.
Попробуй менять скорость i2c, попадались датчики работающие на скорости не выше 400.
Флешка w25q128 может мешать каким-то выходам, для её работы нужна пересборка прошивки с учётом куда она подключается.
Жаль Riza Celik только hex выложил
Может повезёт и ответит кто) я не понимаю одного. Допустим я подключил esc, датчики , приёмник в стмке. Но как прошивка поможет стмке определить к каким портам я подключил esc, как стмка будет понимать на какой из моторов посылать сигнал , если она сама не знает что у неё на портах. Также и с датчиками, тоже не понимаю.
Ну а как виндовс помогает пользоваться компьютером?
Прошивка это как операционная система(та же виндовс), в ней и настраиваешь что куда и как подключено.
Посмотри любые видео по настройке полётных контроллеров inav и betaflight, желательно найти где описывают всё для новичков.
Любой современный полётный контроллер = стм32+акселерометр
а что например на счёт плат c8t6? или f401?
У f401 чипа памяти маловато, прошивка не влезет. Надо хотя бы 512 Кб, а у 401 - 256
stm32f411ceu6 это сейчас минимум для betaflight и Inav.
F401 не поддерживается. Древние прошивки работают с некоторыми F3 и F1, но найти подходящий процессор не реально, отправляют совершенно не то, что надо
@@pawsfpv У меня получилось скомпилировать CleanFlight под отладочную плату на F401, чтобы оно влезло в 256к. Я вырезал из кода все что можно. В общем влезть оно влезло, но не запустилось. Разбираться было лень, да и понятное дело, что это бесперспективно. Поэтому заказал плату на F411
Попробовал вашу прошивку. Почему-то не сохраняет настройки приёмника, а именно crossfire.
На прошивке что вы прикрепляли такой проблемы нет. Эхь. Очень жду апдейтов по этой теме!!!
@@vr7365 я могу только ppm, ibus нормально проверить, нет других приёмников.
На вкладке configuration телеметрия по умолчанию выключена, её можно попробовать включить, возможно ещё проблема при подключении приёмника к softserial.
К сожалению я не программист и решить вряд ли смогу проблему.
Прошивка эта ещё не летала, так что аккуратнее со взлётом, если до него дойдёт
Отличная работа! У меня все заработало с inav 5.1 mpu6050, есть только одна проблема, хочу подключить bluetooth к uart2 (A2, A3), но на пине A3 у меня PPM приемник, у Вас в схемах указано что пин (A8) SS_RX может быть использован как вход PPM, буду благодарен, если объясните как это сделать))))
Менялась распиновка, сейчас ppm только на A3. Смотри в описании новую схему.
Изначально PPM вообще нет на этой версии inav, это уже костылями прикручен обратно.
Можно включить softserial(ss_tx ss_rx) и туда bluetooth на скорости 9600, на более высокой может не заработать.
Я softserial проверял только USB-TTL, хоть и тормозило, но работало, от bluetooth отличаться не должно.
Если у приёмника есть выход ibus(flysky), то он может работать с softserial.
Если стоит mpu6050, то softserial не заработает, только прошивка намертво зависнет.
Вот попробуй прошивку с ppm на A8, но я её не проверял.
Тут нет softserial, возможно не работает выход led и некоторые сервы или моторы.
drive.google.com/file/d/1PrsZhsNdqHO1y18WHo6GA815EvABsjop/view?usp=share_link
Пересобрать прошивку не долго, дольше сделать, чтобы всё это вместе работало.
Увидел и про mpu6050, тогда точно без softserial, ещё и часть i2c датчиков отметается, мои bpm180 и qmc5883 точно не работали на 800кгц, работали bmp280 и hmc5883.
@@pawsfpv забыл включить SoftSerial в конфигураторе и он у меня не отображался в портах, в итоге Bluetooth прикрутил на SS, а PPM оставил на UART2, все завелась и работает отлично))
Гироскоп и акселерометр на mpu6050 и барометр на bmp-280 тоже отображаются корректно, GPS на GY-NEO6M UART1 тоже подключается, единственное пока в помещении спутники не проверял.
Bluetooth использовал HC-06
@@АндрейХрапин-е1ц Это хорошо, что softserial заработал, у меня с mpu6050 не хотел.
С mpu6050 следи в самом низу конфигуратора за загрузкой cpu, некоторые настройки сильно загружают плату.
С gps главное, чтобы значок сверху синий постоянно горел. Ещё не у всех neo6m есть ublox, а с nmea inav не хочет работать нормально.
Мои gps первый раз несколько часов искали спутники, хоть и лежали у окна.
Могу порекомендовать изменить gyro_hardware_lpf на 42, если нет хорошей виброразвязки.
У меня горизонт уплывал слишком сильно, только по minimosd понял что происходит, а у тебя можно будет по блютуз посмотреть.
А по usb не получалось, всё почему-то начинало сразу работать нормально
Привет.Помоги пожалуйста. Прошил STM32F411 прошивкой Betaflight от Riza.У меня установлен GY-87. Но Betaflight определяет только барометр.Когда я прошиваю на INAV то все работает. А на Betaflight нехочет нивкакую.
Это лучше у него и спросить. Можешь попробовать скинуть вывод diff all, но вряд ли он поможет сильно
@@pawsfpv та писал уже но он не отвечает (.Можна как то сменить скорость в прошиве на меньше ? думая ето из за скоросмти на i2c
@@roboticselectronicsenginee656 Может быть set i2c1_clockspeed_khz = 400 или set i2c1_overclock = OFF ?
А так по betaflight 4.4 и выше особо и не подскажу ничего, там теперь надо вручную собирать прошивку, но мне как-то лень разбираться.
А по старым прошивкам, то mpu6050(вроде это он в gy-87) ещё в версии 4.3 был отключен и уже тут нужна самосборная прошивка.
Могу предложить скачать конфигуратор 10.8
github.com/betaflight/betaflight-configurator/releases/tag/10.8.0
Через него найти прошивку STM32F411 версии 4.2.11
После прошивки в командной строке загрузить, например, мои настройки
github.com/p-fpv/FC-stm32f411ceu6-stm32f405rgt6-inav-betaflight/blob/main/betaflight/BTFL_cli_stm32f411_mpu6050_beta4.2.txt
Там подключение акселерометра настроено к PB8, PB9 (scl, sda)
Остальная схема именно как в видео на 1:05.
А чем inav не устроил?
@@pawsfpv Спасибо за инфу. Айнав что то не зашел.Хотел разобраться хорошо. Подскажи пожалуйста где почитать что бы самому собрать прошивку ? Надо проограммить на С ?
@@roboticselectronicsenginee656 знание С там и не нужно, обычно по готовым файлам для других контроллеров делаешь свой вариант, пока не заработает, может помочь если только хоть какое-то умение ковыряться с ардуинами и линуксом.
Поищи betaflight build firmware, и на русском вряд ли что-то будет полезное
У меня не видит ни один порт почему-то
Подключить контроллер в режиме прошивки(DFU), если удачно, то windows напишет что-то про неизвестное устройство stm32 dfu, включить zadig и установить драйвер.
Теперь конфигуратор сможет увидеть контроллер в режиме DFU и загрузить прошивку.
После прошивки установить stm32 usb vcp driver, в конфигураторе выбрать нужный com порт и подключиться. (обычно это не com1)
Прошивать первым делом бетафлайт, только как он заработает, то можно переходить к пайке или другим прошивкам.
Или проблема в настройке портов самой прошивки бетафлайт в конфигураторе?
Это получается нужно только припаять акселерометр к СТМке и сразу можно подключиться к бетафлай?
Да, даже без акселерометра запускается.
Ну и бету выше 4.2/4.3 не поставить, там нужно теперь прошивку собирать, как для айнав
@@pawsfpv а есть возможность подключать приемник по каналам?
@@GryzzlyBoss бета 4.3 ещё вроде умела как-то, настройка через командную строку, но примеров настройки уже и не найти.
Айнав нет, на официальных прошивках ppm и pwm уже давно нету.
@@pawsfpv osd встроенно или нужно отдельный модуль(если да то какой)? Спасибо что отвечаешь)
@@GryzzlyBoss осд нет, оно и в заводских дополнительным чипом сделано.
Из внешних minimOSD, но настройку в поле через него сделать нельзя.
Ещё знаю есть FrskyOSD, но его не пробовал.
Если ставить и gps, то все uart заняты будут, а osd на softserial возможно будет подтормаживать, но вряд ли критично.
Как вариант минимального решения с осд, я летал со светодиодом WS2812 перед камерой, он заряд показывал
Можно попросить вас не столь ёмко сколько подробнее и разжеванее снять что да как
Сложность в пайке или конфигураторе?
@@pawsfpv да в конфигураторе что да как настрой последовательность
@@hendmei7066 попробую больше конфигуратора, но всё равно не уверен, что получится слишком подробно.
Обычно, если заработал акселерометр, то дальше проблем не должно быть
В закреплённом комментарии хоть ссылки и на длинные видео по настройке, но многое объяснено, советую начать с роликов по Betaflight
Как дела продвигаются с F405?
Как-то подзабил, не до полётов у нас.
Но если интересно, то есть прошивки проверенные только на столе на stm32f405vgt6(PyBoard V1.1)
Схема
github.com/p-fpv/FC-stm32f411ceu6-stm32f405rgt6-inav-betaflight/tree/main/inav/Firmware/stm32f405/%D1%81%D1%85%D0%B5%D0%BC%D1%8B%20F405
Inav 6
github.com/p-fpv/FC-stm32f411ceu6-stm32f405rgt6-inav-betaflight/tree/main/inav/Firmware/stm32f405
Если надо, то могу под inav 7 собрать прошивку, но без ppm и mpu6050
Ardupilot, какая-та старая бета 4.4 была
github.com/p-fpv/FC-stm32f411ceu6-stm32f405rgt6-inav-betaflight/tree/main/ardupilot
Betaflight 4.2, 4.3 будут работать, но надо сидеть и через командную строку весь конфиг делать.
@@pawsfpv а можно попросить поработать с маяком
@@hendmei7066 А что за маяк? Если что-то и собирать, то я только по готовой инструкции и умею, и то не всегда получается. Тот же полётник на самом деле не так и сложно собрать, там всего 2 детали готовых надо и всё
@@pawsfpv я тебе чуть позже напишу в вк
На какой пин подавать 5в питания с бека? или она только от 3.3 работает и от usb?
На пин 5V, для питания процессора там есть свой стабилизатор на 3.3в.
1:05 Скачай с описания архив или схему, там качество картинки повыше чем в видео. Ножки питания на схеме выделены красным, но одни из них подписаны как 5в, другие 3.3в.
Пины 3.3в не силовые, максимум повесить датчик, которому это нужно.
Так же на пины B5 и A0 нельзя подавать выше 3.3в
@@pawsfpv о как, а я думал что пины "5в" это выходы, понятно спасибо
@@pawsfpv сначала подал питание на пин "vbat" ничего не произошло... Вроде, а может и спалил ченить😅
@@dimon87793 тут как и на ардуно можно запитывать через пины 5в, а вот vbat на stm относится к питанию 3.3в, и возможно выгорела часть с часами rtc, если остальное в норме, то наверное это ничему не помешает.
Через vbat подключается резервная батарейка, как на rtc модулях для ардуино, чтобы время не сбрасывалось при отключении основного питания
@@pawsfpv да, уже загуглил, 100% погорела, но inav ее видит, моторы крутят, а остальное фигня
Что значит настройка прошивки? Что бы я не делал, не определяется ни один датчик.
Inav или beta? Какая именно версия? Какие датчики припаяны?
Я пробовал всё. Датчики bmi160, mpu6500. Beta 4.3.1, 4.2.11. INAV от того чувака из комментариев. Нужно ли что-то делать с прошивкой? Как-то указывать датчики?
@@crossboness636 Если ты про inav от rizacelik, то он поддерживает только mpu6050, bmp180, hmc5883, gy-87
Bmi160 не поддерживается. Может быть добавят в betaflight 4.4
В betaflight mpu6500 заработает только после ручной настройки через cli, либо загрузки конфига(BTFL_cli_stm32f411.txt) в cli под мою схему 1:05.
В Inav (inav_5.0.0_STMF411.hex) только проверять правильность пайки mpu6500 по схеме 1:05, он должен работать сразу.
И конфиг в cli копировал. Можно подробнее про ручную настройку?
@@crossboness636 В cli точно правильно вставлял? Там есть и кнопка для автоматической загрузки.
Уверен, что акселерометр точно mpu6500, а не mpu9250 или похожие?
Так же проверь точно ли плата с процессором stm32f411ceu6
В Inav должен работать сразу после прошивки без каких-либо дополнительных настроек, проверяй правильность подключения акселерометра, укороти провода, если длинные.
В betaflight ручная настройка состоит в том, что сам пишешь нужные команды в cli.
Файл конфига обычно уже содержит все нужные команды и их можно автоматически загрузить через конфигуратор.
github.com/betaflight/betaflight/blob/master/docs/Cli.md
Конфиги для готовых полётников: github.com/betaflight/unified-targets/tree/master/configs/default
В betaflight эти команды минимум для работы только акселерометра, только что проверил на 4.3.1
resource SPI_SCK 1 A05
resource SPI_MISO 1 A06
resource SPI_MOSI 1 A07
resource GYRO_EXTI 1 B10
resource GYRO_CS 1 A04
set gyro_1_spibus = 1
save
set acc_hardware = MPU6500 ручное указание модели акселерометра, работает и без этого.
Обычно все датчики определяются автоматически
Сними что да как подробнее
Видео с полётом планируется, но сборка от любых других полётных контроллеров inav, betaflight (например, matek411) вроде как совершенно отличаться не должна, ну кроме ручной пайки акселерометра/гироскопа.
Если нужна настройка, то советую посмотреть эти видео:
ua-cam.com/video/QAjbpFlHeO4/v-deo.html
ua-cam.com/video/AKMrBxgE5JI/v-deo.html
ua-cam.com/video/VqwcyH5TzQQ/v-deo.html
И этот канал
ua-cam.com/video/TVm3sI3gOJA/v-deo.html
ua-cam.com/video/MsMQjphD8Gw/v-deo.html
@@pawsfpv сделай пк для самолета прошивкой
@@hendmei7066 Inav поддерживает одновременно самолёты и квадрокоптеры.
При первом включении конфигуратор спрашивает тип модели, либо же можно вручную всё перенастроить на вкладе mixer, и там же посмотреть или настроить за что отвечает каждая серва.
Справа на 1:42 есть пункт s1-s6, там написано, как выходы установливаются для самолёта или квадрокоптера.
Если планируется ставить mpu6050, то он подключается на sda scl, хоть и на 1:42 написано, но предупрежу и тут, что на моих прошивках mpu6050 и ppm работают ТОЛЬКО на на inav 2.6.1
@@pawsfpv хорошо спасибо большоё как контроллер придет спаяю я тебе напишу ты случайно не в чате RC Единомышлеников?
@@pawsfpv а с подключением компаса и GPS будет?