Самодельный джойстик. Руль, штурвал на STM32(USB-HID)

Ғылым және технология

Исходники и прошивка:
goo.gl/WhxWng
Хорошие платы STM32F103C8T6: ali.pub/31y4z1
А есть готовые китайские модули, но изменить там ничего нельзя: ali.pub/31y54a
Обязательно подписывайтесь:
Alexander Guryanov
/ axgxp
AxGxP.pro

Пікірлер: 345

  • @HamsterTime
    @HamsterTime5 жыл бұрын

    Давно ждал выпуск, интересная реализация)

  • @toma-88
    @toma-885 жыл бұрын

    Ребята из ob-dev выложили в свободный доступ библиотеку V-USB, которая реализует HID для AVR, в том числе на копеечном ATtiny 2313. Так что не одним STM32 богат мир микроконтролеров без ардуино. Но за видео спасибо)

  • @evgeniypytikov6662
    @evgeniypytikov66625 жыл бұрын

    Респект и уважуха мастеру

  • @sanyadreyev6291
    @sanyadreyev62914 жыл бұрын

    Ты мне настроение на день сделал! Я бы в жизни не решился такую пипиньку соорудить. Лайк+Подписка. Автор - ЖГИ!

  • @enisykin1299
    @enisykin1299 Жыл бұрын

    ... то, что нужно, огромнейшее спасибо, сам хотел подобное да не решался а тут готовое решение- конструктор

  • @evgeniypytikov6662
    @evgeniypytikov66625 жыл бұрын

    Тема классная надо развивать и улучшать

  • @reutoffreutoff4549
    @reutoffreutoff4549 Жыл бұрын

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

  • @plmeh
    @plmeh4 жыл бұрын

    Как хорошо что я тебя нашел, мучаю леонардо чтобы сделать MIDI контроллер. Начинаю посматривать в сторону STM 32, уже заказал парочку. На русском мало видео по HID на STM 32.

  • @AxGxP

    @AxGxP

    4 жыл бұрын

    Ну вот, есть с чего начать...

  • @81n90
    @81n902 жыл бұрын

    Блин, закинул на яндексе удочку - делал ли кто нить на стм 32 штурвал(недавно подсел на симуляторы, а штурвал от лоджитека - 16к руб.) и тут на тебе - все есть! И я такой - блин, парень, СПАСИБО за труд! Подпишусь! Ан нет - уже оказывается давно подписан )

  • @xxxALFxxx
    @xxxALFxxx5 жыл бұрын

    Привет. Очень интересная тема. Я делал джойстики и педали с помощю проекта ММджой (от Мегамозга). Мне эта тема близка и очень нравится. Хотелось бы видеть ее продолжение и от Вас. Подписываюсь однозначно.

  • @mykhailohorelenkov5844
    @mykhailohorelenkov58445 жыл бұрын

    Как всегда на высоте!)

  • @masterkit9517
    @masterkit95173 жыл бұрын

    Теперь уже джойстик понадобился на 103 stm32, что нужно что бы ваш девайс повторить? какой софт? так понимаю keil не подойдет никак, на видео Atolic вы используете и говорили раньше Atolic, т.е. мне достаточно загрузить ваш код в Atolic и из него в stm32 и джойстик готов? получается даже cubeMX не понадобится, а лишь Atolic и зашить ваш готовый файл? Мне как раз джойстик лишь бы был. А потом попытаюсь разобраться как добавить кнопок если удастся зашить 103 плату если понадобятся кнопки. Предполагаю MIDI аналогично отсылается команда. Есть еще какая то программа показывает содержимое дескриптора подключенного к USB устройства, забыл название. Из той программы вытаскивал дескриптор заводского MIDI инструмента. Так он не отличался почти от STM32 MIDI дескриптора. Программу скачал, забыл название.

  • @Mc3EBs
    @Mc3EBs4 жыл бұрын

    Супер! И Правда, материалы хорошие! НО тебя мало знают. Кто с Альфы, кто с Хамстера сюда приходят. Спасибо, за полезную информацию В доступной форме!

  • @TV-sl8ue
    @TV-sl8ue5 жыл бұрын

    Спасибо гайверу рассказал про топ канал

  • @Vlad13Rus
    @Vlad13Rus3 жыл бұрын

    Изменил прошивку, а как сконфигурировать hex файл для прошивки?

  • @Gigagamer74
    @Gigagamer743 жыл бұрын

    А этой штукой можно будет увеличить рабочий ход МАРС-ов ? Мне стандартный ход МАРС-ов моего Defender Cobra M5 маловат, нужно градусов до 45-ти (даже больше) увеличить ход стика в каждую из четырёх сторон.

  • @user-jf6jn5ux4c
    @user-jf6jn5ux4c Жыл бұрын

    Красавчик. Респект и уважуха

  • @goiiia3774
    @goiiia37745 жыл бұрын

    ЭКОстиль ))) Ништяк ))

  • @donaldtrump1505
    @donaldtrump15055 жыл бұрын

    поччеемммуу ? я не знал о тебе? спасибо алфе, рассказал о тебе

  • @jesterolog7
    @jesterolog74 ай бұрын

    а чи можете підказати номінали Резисторів ? бо як на мене, то 10 кОм ідеально підійшли

  • @user-wv8rj9yh2m
    @user-wv8rj9yh2mАй бұрын

    А в архиве какой файл зашивать в СТМ 32?

  • @telik7035
    @telik7035 Жыл бұрын

    А можно использовать ардуино D1?

  • @E_879
    @E_879 Жыл бұрын

    мммм спасибо джоистик работает

  • @user-ze6tr4bh1x
    @user-ze6tr4bh1x5 жыл бұрын

    Дуже креативно👍

  • @winnerlucky359
    @winnerlucky3594 жыл бұрын

    привет .а педали можно сделать .очень необходима инфа .скиньте пожалуйста сылку где заказать

  • @nikola2692
    @nikola2692 Жыл бұрын

    на ESP32 кто то делал? просто лежит без дела хотел сделать тактильную перчатку для виар но все никак руки не доходят

  • @user-wv8rj9yh2m
    @user-wv8rj9yh2mАй бұрын

    Stm32 а дальше какие буквы? Любые?

  • @mayakalex
    @mayakalex5 жыл бұрын

    Хороший канал, удивительно мало подписчиков. Спасибо за труды, лайк, подписка.

  • @user-rj2lo1hy5m
    @user-rj2lo1hy5m5 жыл бұрын

    Супер!!! Очень классно! Лайк однозначно. А если б еще и рычаг(джойстик) и педали руля-полетал бы на таком! жаль что в программировании дальше бейсика не шарю

  • @bato1903
    @bato19035 жыл бұрын

    Какой колхоз, но елки.... в этом есть какой-то шарм.... деревянное..... как в детстве. Информации маловато, да есть гугл, но тут все таки пример приятнее, нагляднее, удобнее. Раскрой тему шире. Да видео станет больше, но кто захочет тот досмотрет. Удачи и развития твоему каналу и идеям.

  • @user-mh1co5wl9l

    @user-mh1co5wl9l

    5 жыл бұрын

    Я б на принтере напечатал. Сейчас почти все на нем делаю

  • @AxGxP

    @AxGxP

    5 жыл бұрын

    Кто бы то мне переходнички для колес, напечатал?))) Чтоб робота опять под пол запустить.

  • @user-mh1co5wl9l

    @user-mh1co5wl9l

    5 жыл бұрын

    @@AxGxP А стл модель есть

  • @AxGxP

    @AxGxP

    5 жыл бұрын

    @@user-mh1co5wl9l Нет, не создавал пока... Как-то вообще мало деталей с 3D принтера в руках держал, не внушает доверия прочность, по тому, что видел на видео. В дух словах это должен быть шестигранник 7мм, длинной 15-20мм и отверстием 5мм, полумесяц. Насколько оно прочное будет? Толщина стенки получается от 1мм до 2.5-3мм. Реально такое сделать? Или лучше из металла сразу точить?

  • @user-mh1co5wl9l

    @user-mh1co5wl9l

    5 жыл бұрын

    @@AxGxP Смотря какую нагрузку делать??? Если ПЕТГ пластик то там прочность хорошая ну если его при печати не пережечь тогда ломкий становится. вот эта линейка пластика bestfilament.ru/category/plastik-Bestfilament/?tipa_materiala[]=300 еще есть нейлон но я им не пробовал печатать. С него делают допустим шестерни для мясорубки.

  • @maximheavy2107
    @maximheavy21074 жыл бұрын

    Делаю себе панель управления для игры Elite dangerous, Дано: резисторы 4шт, энкодеры 4шт, тумблер без фиксации (on)off(on) 9шт, кнопки 5шт. Потянет ли эта плата такой обвес? На данном этапе стою на распутье между STM32 и Arduino Micro Pro

  • @user-jq7tc7qi5z

    @user-jq7tc7qi5z

    3 жыл бұрын

    пфф, даже Arduino Micro Pro потянет, загугли MMJoy проект. Ну а 32битные с аппаратной интеграцией ЮСБ так и подавно потянет. Глянь чо Лёша Кластер чудит.

  • @bizisoft1
    @bizisoft13 жыл бұрын

    У меня со старых времен лежит штурвал genius. Возможно ли переделать его также переделать под USB?

  • @AxGxP

    @AxGxP

    3 жыл бұрын

    Да, вполне.

  • @Argentum79
    @Argentum795 жыл бұрын

    Круто. И по домашнему лампово... :)

  • @user-wk2fb5mv3h
    @user-wk2fb5mv3h5 жыл бұрын

    Здравствуйте скажите если я хочу добавить ещё четыре оси и 4 кнопки....как исправить размер дискриптора ( те если можно объяснить конкретно в каких строчках что исправить ...и про кратность восьми ещё не понял)...поясните пожалуйста ..прошу не судить я начинающий...Да и на сколько ом или кОм можно применять переменные резисторы ?

  • @AxGxP

    @AxGxP

    5 жыл бұрын

    Сделайте так, как рассказано и показано в видео... Данные к USB передаются целыми байтами(8бит), поэтому нельзя добавить не кратное количество бит. Вот и 4 кнопки как раз поэтому не получится, нужно 8 кнопок добавить. Делайте постепенно, начните с кнопок, а потом к осям перейдете. P.S. Насколько мне известно многие игры не работают с более чем 6-ю осями, из-за ограничений DirectInput.

  • @user-sm6nb5im3i
    @user-sm6nb5im3i3 жыл бұрын

    Вы кнопки подключали через резисторы? Номинал подскажите?

  • @AxGxP

    @AxGxP

    3 жыл бұрын

    Можно без резисторов. Подтяжка включена внутри микроконтроллера. Последовательное включение резисторов применяется чтоб ограничить ток, если вдруг вывод будет запрограммирована как выход, а не как вход. В током случае можно применить резисторы от сотен ом до нескольких килоом. Если при этом ещё и установить параллельно каждой кнопке по конденсатору на 0.1 мкФ, получится фильтр для устранения дребезга контактов.

  • @masterkit9517
    @masterkit95173 жыл бұрын

    boot1 не появляется как кнопка к GND, все другие 7шт. программа видит а boot1 не видит, перемычка снята полностью, из boot1 торчит провод к GND и ничего не происходит 1:11 еще не понятно что такое R4 и что заменить перемычкой

  • @sergeyonikovich
    @sergeyonikovich2 жыл бұрын

    Где всему этому научиться?

  • @Den38ruS
    @Den38ruS3 жыл бұрын

    Добрый день ,подскажите ,на чём лучше собрать джой из 20 кнопок и 4-х энкодеров ?

  • @AxGxP

    @AxGxP

    3 жыл бұрын

    Вот из такого STM32F103C8T6 и собрать. Как раз есть четыре таймера, к которым можно энкодеры подключить. Кроме тактового кварца, USB и SWD остается ещё 23 ноги свободных. Вполне хватает, даже если на прямую от каждой кнопки проводок подключить.

  • @Den38ruS

    @Den38ruS

    3 жыл бұрын

    @@AxGxP Спасибо,попробую разобраться.

  • @masterkit9517
    @masterkit95174 жыл бұрын

    Подскажите пожалуйста как в keil открыть ваш исходник, простите я только после ардуино и ничего тут не понимаю. не считая опыта ардуино

  • @AxGxP

    @AxGxP

    4 жыл бұрын

    В Keil он просто так не откроется, как открыть тоже не подскажу, кейлом давно не пользуюсь из-за ограничения в 32кБ... Да и некоторых фишек в кейле не хватает. Проект создан в Atollic True Studio, в нем и откроется без лишних движений.

  • @masterkit9517

    @masterkit9517

    4 жыл бұрын

    @@AxGxP ок, пойду качать

  • @masterkit9517

    @masterkit9517

    4 жыл бұрын

    @@AxGxP Может в этом Atolic подправить лишь в блоке где устройство как джойстик определяется какую нибудь цифру научным тыком? что бы стало midi устройство

  • @AxGxP

    @AxGxP

    4 жыл бұрын

    @@masterkit9517 Нет, не получится... Нужен другой дескриптор, я давал ссылку на GitHub, где по идее правильный дескриптор прописан.

  • @masterkit9517

    @masterkit9517

    4 жыл бұрын

    @@AxGxP Попытаюсь разобраться

  • @user-bx1ho6zh9s
    @user-bx1ho6zh9s2 жыл бұрын

    как завести этот код на stm32f4?

  • @lllastun
    @lllastun5 жыл бұрын

    чётко

  • @alexandr_rydzenkov
    @alexandr_rydzenkov5 жыл бұрын

    О прям как от деда осталось... не хватает торчащей сбоку лампы... и пятиминутного прогрева

  • @MaximShepard
    @MaximShepard7 ай бұрын

    А возможно вместо переменных резисторов, взять энкодер? С большим количеством "шагов"

  • @AxGxP

    @AxGxP

    7 ай бұрын

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

  • @reutoffreutoff4549

    @reutoffreutoff4549

    2 ай бұрын

    ​@@AxGxPдатчик холла А3144 для этого подойдёт?

  • @k160rg
    @k160rg5 жыл бұрын

    Если делать самодельный джойстик, то делать надо только на датчиках Холла или на магниторезистивных датчиках, а на резисторах проще купить.

  • @winnerlucky359

    @winnerlucky359

    4 жыл бұрын

    а где купить набор заказать с китая ?

  • @_plasticarmor_8789
    @_plasticarmor_8789 Жыл бұрын

    Здравствуйте ,скажите в джойстике "РУС" , если штатные транзисторы заменить на такие, в программном обеспечение надо указывать изменения? Просто приобрёл для симуляторов , а у осей "X"Y" есть свободный ход мертвая зона , калибровка толку не даёт , мертвая зона механическая ...

  • @AxGxP

    @AxGxP

    Жыл бұрын

    Какие ещё транзисторы? Не знаю, что там у вас стоит, но лучше всего делать на магнитах и датчиках Холла.

  • @_plasticarmor_8789

    @_plasticarmor_8789

    Жыл бұрын

    @@AxGxP да у нас магниты и датчики с трудом найти , дорого будет.

  • @AxGxP

    @AxGxP

    Жыл бұрын

    @@_plasticarmor_8789 Разве aliexpress вам не доставляет?

  • @user-kl4xm2yb7p
    @user-kl4xm2yb7p Жыл бұрын

    Осталось приделать 3д-очки, чтобы управлять обзором.

  • @AxGxP

    @AxGxP

    Жыл бұрын

    Без проблем можно сделать...

  • @masterkit9517
    @masterkit95173 жыл бұрын

    Большое вам спасибо! Написал был вам кучу комментариев, но просто сократил их. Даже данная прошивка это невероятная помощь! Вы очень помогли даже одной версией без изменений прошивки. Если будет возможность подсказать как добавить кнопок это будет супер Новый год! Лучший подарок вы уже сделали, сделав данное видео, оно самое ценное из всего ютуба, так как джойстик который понадобился на STM32 заработал мгновенно сразу после прошивки, и проще объяснения не существует в природе как его из 103й платы сделать. С добавлением кнопок с точностью до наоборот для меня, всё непонятно. Джойстиков у меня много, но не для игр, они нужны для набора нот. Один джойстик припаян через реле к плате голосовым управлением, расскажу вам если будет нужно от а до я информацию о управлении голосом, удалось найти настолько уникальную информацию, что её до сих пор можно выкопать лишь на единственном форуме в интернете. Остальные мягко говоря прячут информацию о автозагрузке голосовой платы. Мне удалось найти информацию о загрузке 7 команд при включении платы без ПК. Можно голосом управлять чем угодно 7 слов без ПК, слова хранятся в плате. Если будет нужно расскажу от а до я. Для начала даже вашей прошивки в качестве джойстика хватит как лучшего подарка на Новый год. Но всегда хочется большего. Было бы как в поле чудес супер призом добавление кнопок. И уже даже не мечтаю о сдвиговых регистрах добавить в эту же вашу прошивку. А потом ещё MIDI дескриптор. Это мои мечты. С Новым годом вас! Вы человек года в теме STM32 джойстиков для меня! А значит и в теме MIDI, так как именно ваше видео с самого начала вдохновило на переход на STM32 а в дальнейшем именно ваше видео дало ответ как формируется отправка данных на примере джойстика. Сразу это было сложным, а Atolic сразу показался был вовсе непроходимым, и долгое время изучал мигание лампочками на STM32. Есть практически 4-5 блогеров в ютубе понимающих в STM32 как вы и готовых давать подобные как на данном видео уроки, когда прошил и всё заработало чётко и фантастически точно. Не хочется тратить вам время, но буду невероятно рад если вы как в поле чудес как суперприз дополните, а я вам помогу сбором информации о том же MIDI например, хоть я и туп как пробковое дерево во многих вопросах в STM32 но упорством мне удалось подключить миди устройство и ниже я написал пример дескриптора который заработал сразу. Также я нашёл для дампа дескрипторов любого устройства программу. Вот здесь ссылка на ее скачивание www.thesycon.de/eng/usb_descriptordumper.shtml программа любое USB устройство подключенное в ПК умеет вывести дескриптор устройства. Данная программа очень помогла создать собственное MIDI устройство на 103 STM32, возможно вам пригодится, чуть нашёл такую программу. Она очень поможет тем, кто дескриптор проверять станет на совместимость с уникальными устройствами.

  • @jesterolog7

    @jesterolog7

    5 ай бұрын

    Привіт. Радий тебе тут бачити

  • @Dairon456
    @Dairon4565 жыл бұрын

    Привет от Alpha Mods

  • @jonueflbana6864
    @jonueflbana68643 жыл бұрын

    0:28 Только что собрал USB джойстик - штурвал на arduino (atmega8) без всяких ваших аппаратных USB.))

  • @AxGxP

    @AxGxP

    3 жыл бұрын

    Молодец!

  • @pavelsan1954
    @pavelsan19544 жыл бұрын

    Руль классный ))) Скомпилил код в STM32CubeIDE. В режиме отладки ждёт вот здесь if (bDeviceState == CONFIGURED) В чём может быть проблема?

  • @GoodVrGames

    @GoodVrGames

    4 жыл бұрын

    Точка останова? Там IDE настроить еще правильно надо, чтобы все сразу без костылей работало. В TrueStudio на main всегда точка останова ставиться после создания проекта.

  • @steppeez
    @steppeez4 ай бұрын

    ну, хотя бы для приличья:) опубликовал бы прямо тут в описании или в комменте ещё и шестнадцатеричный дамп машинного кода прошивки в текстовом формате (а не только лишь в формате.rar)

  • @user-zp2kb9xr8y
    @user-zp2kb9xr8y4 жыл бұрын

    Доброго дня! А про Ваш "свисток" и пульт можно поподробнее? Я думаю всем присутствующим будет интересно. Я бы повторил..

  • @AxGxP

    @AxGxP

    4 жыл бұрын

    Что именно? Квадрокоптер? Или машинку? Про машинку есть видео на канале, да и зимние полеты квадрокоптера есть, рекомендую тоже глянуть. Остануться вопросы, пишите.

  • @timtim4494
    @timtim44945 жыл бұрын

    А преднатяг рычагов как-то регулируется?

  • @AxGxP

    @AxGxP

    5 жыл бұрын

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

  • @HBercut
    @HBercut4 жыл бұрын

    Всё тоже самое можно на arduino ide. Библиотек предостаточно.

  • @GoodVrGames

    @GoodVrGames

    4 жыл бұрын

    Писать под STM32 из под ArduinoIDE? Глупость. Если хочется сделать геймпад на ардуино - есть leonardo и joystick. Если хочешь нормально писать код для МК - пересаживайся на нормальные редакторы. Хотя вот PlatformIO очень даже ничего для Arduino. Некоторая прослойка между ArduinoIDE и нормальной IDE для МК. Старый медленный, но удобный wiring в сочетании с администрированием кода через хидеры и сорс файлы.

  • @MrYsupov
    @MrYsupov5 жыл бұрын

    Больше больше видео

  • @SeriousDIMA
    @SeriousDIMA5 жыл бұрын

    Мне было бы интересно сделать 2 джостика для игр

  • @AxGxP

    @AxGxP

    5 жыл бұрын

    Можно и два, и больше. Если подключишь несколько, в системе все они будут видны как отдельные устройства.

  • @KobalyanTV
    @KobalyanTV5 жыл бұрын

    если вам не сложно можете объяснить как в игру отправляются значения с джойстика? можно ли в игру отправить значение углов и тп из программы какой нибуть?

  • @AxGxP

    @AxGxP

    5 жыл бұрын

    В игру отправляется посредством DirectInput, через стандартный драйвер USB-HID. Если хотите из одной программы (из под ОС компьютера) передавать команды другой (игре), то придется перехватывать сообщения DirectInput, а то и сам драйвер подменять. В некоторых играх специально защита против такого сделана, тогда может и проще применить реальное, физическое устройство.

  • @KobalyanTV

    @KobalyanTV

    5 жыл бұрын

    @@AxGxP спасибо огромное суть я понял. но защита то зачем ?

  • @AxGxP

    @AxGxP

    5 жыл бұрын

    @@KobalyanTV Против ботов в MMO играх.

  • @thematrix4305
    @thematrix43055 ай бұрын

    Я подобный себе сделал на свой передатчик что бы на компе летать, удобно не надо отдельно пульт для сима покупать

  • @AxGxP

    @AxGxP

    5 ай бұрын

    Ага, я тоже изначально для этого и делал. Ну а этот вариант, со штурвалом в основном по приколу, для видео.

  • @MaksZags
    @MaksZags5 жыл бұрын

    Напишите название программ симуляторов в которых вы летаете...???

  • @AxGxP

    @AxGxP

    5 жыл бұрын

    ИЛ2 Штурмовик показан и Aerofly RC7. А также Spintires, гряземесево))

  • @_Fomich_
    @_Fomich_5 жыл бұрын

    Привет от Альфа Модс ✋, подписался контент понравился, жалко меня нет в социальных сетях😩

  • @navyguy6099
    @navyguy6099 Жыл бұрын

    А как игра называется? Ил2 штурмовик либо же Битва за Британию (Крылья победы)?

  • @user-uu8ys7bd9w

    @user-uu8ys7bd9w

    3 ай бұрын

    war thunder

  • @user-nz2nv8iq4v
    @user-nz2nv8iq4v3 жыл бұрын

    Как бы на компе все красиво... Но меня больше интересует подключение к XBox ONE

  • @AxGxP

    @AxGxP

    3 жыл бұрын

    Раз там есть USB, значит должно работать... Интерфейс стандартный, если производители XBox специально каких-то граблей не наделали, например чтоб только их лицензионные устройства поддерживались.

  • @user-jq7tc7qi5z
    @user-jq7tc7qi5z3 жыл бұрын

    Объясни, что делать с содердимым архива. Есть STM32CubeIDE. Есть STM32F103C8 с 16МГц кварцем. Скачал/распаковал твой архив. Дальше что?

  • @AxGxP

    @AxGxP

    3 жыл бұрын

    А дальше на хлеб намазывай и закусывай почаще! Более дурацкого вопроса давно не слышал...

  • @user-jq7tc7qi5z

    @user-jq7tc7qi5z

    3 жыл бұрын

    @@AxGxP спасибо, добрый человек, теперь всё сразу прояснилось. так бы и сказал, что не знаешь, а то я-то спьяну подумал, что ты разбираешься. Ладно, интернет большой, поищу кого потолковее.

  • @AxGxP

    @AxGxP

    3 жыл бұрын

    @@user-jq7tc7qi5z давай, давай... Как раз коллег по уму в "интернете" найдешь...

  • @user-jq7tc7qi5z

    @user-jq7tc7qi5z

    3 жыл бұрын

    @@AxGxP ну что ты мелешь? я же нормально спросил. в архиве нет Readme.md или txt. Я не знаю как мне использовать эти файлы в имеющейся среде разработки. А ты вместо помощи ведешь себя как мудак. Зачем? Когда вырастешь, тебе это не пригодится.

  • @_initial-d_
    @_initial-d_9 ай бұрын

    А как подключить usb кабель к stm32?

  • @ironninja1501

    @ironninja1501

    Ай бұрын

    По идее без проблем, там встроенный usb интерфейс

  • @karmanov2004
    @karmanov20045 жыл бұрын

    С отправкой команд +- проясняется, а как принимать и обрабатывать полный круг интерфейса. Я сим гонщик, мне интересно принять обработать перегрузки и передать их моторам.

  • @AxGxP

    @AxGxP

    5 жыл бұрын

    Обратная связь осуществляется по другому интерфейсу. В стандартном USB HID такой возможности нет.

  • @karmanov2004

    @karmanov2004

    5 жыл бұрын

    @@AxGxP вы меня напугали . Может я не так вырзился. Не буду зацикливаться на определённой игре или симуляторе. С контролера(джойстика) охота получить обратную связь, например обороты двигателя.

  • @AxGxP

    @AxGxP

    5 жыл бұрын

    Напишите подробнее, можно с примерами. На контроллере есть педаль, компьютер получает её положение, это и влияет на "ускорение двигателя". По стандартному интерфейсу данные о "работе двигателя" контроллер не получает. Эти данные нужно искать в самой игре-симуляторе, а уже оттуда их вытягивать. Возможно производители уже предусмотрели какой-то интерфейс для обратной связи.

  • @user-jq7tc7qi5z

    @user-jq7tc7qi5z

    3 жыл бұрын

    в USB HID есть прием и передача, но в играх почти нет никакой "обратной связи", приходится ставить спецсофт, что шпионит игру и шлет в геймпад данные.

  • @four-dimensionalperson
    @four-dimensionalperson4 жыл бұрын

    На Леонардо есть

  • @Torin865
    @Torin8653 жыл бұрын

    Какое максимальное количество отчётов можно сделать на ось управление ?

  • @AxGxP

    @AxGxP

    3 жыл бұрын

    До 65536 знаю точно можно, а больше - не уверен. Не достаточно?

  • @Torin865

    @Torin865

    3 жыл бұрын

    @@AxGxP достаточно) спасибо

  • @Torin865

    @Torin865

    3 жыл бұрын

    @@AxGxP в прошивке из описания 254 отчёта на ось?

  • @AxGxP

    @AxGxP

    3 жыл бұрын

    @@Torin865 Вы меня спросили, сколько можно сделать, а не сколько именно в этой реализации... В этой для простоты 256. АЦП у STM32 - 12-бит, так что для аналоговых датчиков делать больше 4096 смысла нет. Спецификация USB-HID точно позволяет передавать 16-бит (65536 значений).

  • @Torin865

    @Torin865

    3 жыл бұрын

    @@AxGxP спасибо

  • @masterkit9517
    @masterkit95173 жыл бұрын

    а как компьютер узнаёт что это именно джойстик? там какой то код нужно где то прописать? именно типа устройства? я вот и джойстик бы сделал, но мне нужно прописать мидиустройство, сконфигурировать сконфигурировал в cubemx как аудиоустройство, ПК видит в списке аудиоустройств отлично как и заводской цифровой рояль в одном списке, а куда следующую строчку писать следующего шага, полный ноль, а помочь во всем интернете некому, я писал вам раньше, но мне бы задать направление куда идти на 1 шаг вперед. Все сконфигурировано в CUBEMX в аудиоустрйойства, нужен следующий шаг хотя бы 1 строку которую изучать.

  • @AxGxP

    @AxGxP

    3 жыл бұрын

    CubeMX, там HAL. Я с HAL не дружу, не подскажу. Ищите по HAL, о USB документацию.

  • @masterkit9517

    @masterkit9517

    3 жыл бұрын

    @@AxGxP Спасибо большое!

  • @masterkit9517

    @masterkit9517

    3 жыл бұрын

    удалось уже в MIDIOX подцепиться через миди аудио устрйоство! Если понадобится пишите, но там еще эндпоинты какие то и упаковать нужно вагоны байтов в локомотив

  • @TheAtomstrike
    @TheAtomstrike4 жыл бұрын

    не нашёл "JoyAxGxP.hex" в архиве. а при попытке скомпилировать проект выдаёт ошибку "Description Resource Path Location Type fatal error: stm32f1xx_hal.h: No such file or directory stm32f1xx_hal_pcd_ex.c /hidtest/Drivers/STM32F1xx_HAL_Driver/Src line 42 C/C++ Problem" при этом такой файл есть: если кликнуть по нему с контролом он открывается. Наверняка нужна какая-то настройка среды, но я теряюсь в догадках где именно. Подскажи, пожалуйста!

  • @AxGxP

    @AxGxP

    4 жыл бұрын

    Вы не мой проект компилируете наверное... У меня HAL не используется, и соответственно ошибок вызывать не может. Всё, что используется - в архиве.

  • @TheAtomstrike

    @TheAtomstrike

    4 жыл бұрын

    @@AxGxP Спасибо за ответ. Действительно я не разобрался с атолликом и он прихватывал файлы из открытых им ранее проектов. Проект скомпилировался. После заливки прошивки есть одна особенность: После подключения к usb компьютера устройство не определяется пока не нажмёшь металлическую кнопку reset. После этого определяется и начинает моргать светодиод.

  • @AxGxP

    @AxGxP

    4 жыл бұрын

    Насколько понимаю, прошили ST-Link-ом и подключаете к USB, без отключения питания с платы. При этом микроконтроллер остается остановленным. Чтоб он запустился нужно выполнить сброс, это возможно сделать и аппаратно, при помощи ST-Link, в Keil была такая птичка. А в Atollic немного сложнее, нужно редактировать скрипт отладчика. Но у них есть видео "TrueSTUDIO Download and reset (no debug)", там всё показано.

  • @TheAtomstrike

    @TheAtomstrike

    4 жыл бұрын

    @@AxGxP Да прошил st-linkом китайским, но подключал к компу без него на холодную. Поискав в st-link utility нашел переключатель BOR level но он у меня неактивный( серенький, обсереный) и не понятно как включить ресет по питанию

  • @trydontcry9564
    @trydontcry95645 жыл бұрын

    годно! вы я так вижу в программном коде разбираетесь, а сложно ли написать код работающей скажем на ардуино нано с подключенным к нему сервомашинкой и рфид модулем rdm6300, получился бы неплохой электромеханический замок, открываемый при помощи бесконтактной карты, удобная система и минимум проводов, неплохая тема для видео на канале, за помощь символическая сумма, что скажете?)

  • @AxGxP

    @AxGxP

    5 жыл бұрын

    С RDM6300 не работал, вижу там стандартный UART интерфейс, думаю сложностей не должно возникнуть. Сервомашинка - все просто. К сожалению нет сейчас в наличии ни ардуино (хотя атмеги есть), ни RDM6300, ни карточек. Так что могу помочь только теоретически.

  • @trydontcry9564

    @trydontcry9564

    5 жыл бұрын

    у меня тоже пока не всё укомплектовано, жду рфид модуль с китая, исторически сложилось что я наделён даром махать паяльником, но голова не работает по написанию кода. Всё верно модуль работает по uart интерфейсу, у меня сейчас установлен замок на съёмной квартире(посмотрите перейдя на мой канал) всё бы ничего но он работает на частоте 13,66 Мгц, и на модуле RC522 который перестаёт работать после суток простоя, программный код написать мне помогли, но и тот как оказалось не идеален и иной раз я не могу попасть в комнату, а с сенсорной кнопика работает всегда. Именно поэтому я хотел бы немного переделать упростить и допилить систему до идеала)

  • @AxGxP

    @AxGxP

    5 жыл бұрын

    @@trydontcry9564 Интересно, почему перестает работать... Не думаю, что проблема в модуле, скорее всего как всегда глюк в ардуино (кривой код, кривые либы и т.д.). Из-за таких вот глюков я и не люблю ардуино и вообще чужими библиотеками не пользуюсь почти.

  • @trydontcry9564

    @trydontcry9564

    5 жыл бұрын

    а исходника то у меня и нет, к тому же модуль другой, в этом и сложность что нужно сделать с нуля

  • @AxGxP

    @AxGxP

    5 жыл бұрын

    @@trydontcry9564 Ну если что, обращайся. Чем смогу - помогу.

  • @user-br3ls3mo4y
    @user-br3ls3mo4y2 жыл бұрын

    Чувак на дворе 21 век а ты резисторы используешь, за место бесконтактных датчиков холла)))))))

  • @SdelayVseSam
    @SdelayVseSam5 жыл бұрын

    Крутой канал у вас, Александр. По сравнению с вашим у меня впечатление, что мой канал совсем слаб. Но у вас есть одно существенное отличие от дедушек, что имеют в разы больше подписчиков, но менее грамотны, чем вы. Собственно из такого канала я и пришёл, где вы поправляли в пояснениях дедушку по ремонту блока питания. Деды объясняют всё по простецки, а ваши видео рассчитаны на нормальный уровень знаний. Для меня ваш канал интересен, но большинству, кто не может даже в мультиметре разобраться- это тёмный лес. Лайк за джой и подписка.

  • @Vlad13Rus
    @Vlad13Rus5 жыл бұрын

    Все припаял куда надо, залил прошивку, но на оси не реагирует, в программке показывает, что они просто так дергаются

  • @AxGxP

    @AxGxP

    5 жыл бұрын

    Скинь фотку, того, что спаял.

  • @Vlad13Rus

    @Vlad13Rus

    5 жыл бұрын

    @@AxGxP Отправил

  • @vladvlad9834
    @vladvlad98344 ай бұрын

    Добрый день! прошил hex, win10 пишет устройство не опознано, подскажите как исправить. Дополняю, определяется если перед втыканием USB нажать кнопку сброс и после подключения к USB (1-2 сек) отпустить ее. Как исправить?

  • @AxGxP

    @AxGxP

    4 ай бұрын

    Или всё-таки не прошилост... Или с разъемом проблема. Ну ещё вариант микроконтроллер неисправный.

  • @vladvlad9834

    @vladvlad9834

    4 ай бұрын

    определяется если перед втыканием в USB нажать кнопку сброс и после подключения к USB (1-2 сек) отпустить ее. Что то посоветуете?

  • @AxGxP

    @AxGxP

    4 ай бұрын

    @@vladvlad9834это у вас платка bluepill? Там на них были версии с ошибкой, посмотрите на плате резистор R10, должен быть 1.5 кОм. Бывает, что там стоит на 10кОм, в таком случае его нужно заменить.

  • @vladvlad9834

    @vladvlad9834

    4 ай бұрын

    да 10к , завтра поменяю. Этот резистор установлен на линии D+ ; от PA12 к +5в , я правильно понял?

  • @vladvlad9834

    @vladvlad9834

    4 ай бұрын

    Поменял резистор, особо ничего не дало 50\50, определянтся через раз. Пробовал поменять конденсатор в цепи сброса, тоже єффекта особо нету

  • @crazysova
    @crazysova5 жыл бұрын

    Да ладно и на ардуине прекрасно работает, проекты Mjoy тому подтверждение.. даже с обратной связью есть.

  • @AxGxP

    @AxGxP

    5 жыл бұрын

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

  • @marklazarus1356
    @marklazarus13566 ай бұрын

    Автор ATMEGA32U4 нет? Неслышал? 🙈

  • @AxGxP

    @AxGxP

    6 ай бұрын

    Видео внимательно слушай, а то походу ты что-то не услышал... Да и ценник за leonardo в $25+ прекрасно помню, не те времена.

  • @Edison_Howard
    @Edison_Howard5 жыл бұрын

    Можно ли купить фонарик?

  • @AxGxP

    @AxGxP

    5 жыл бұрын

    У меня фонарика готового нет, я прошивкой и схемотехникой занимался. А готовый экземпляр только у AlphaMods есть)))

  • @Alex-dc2jq
    @Alex-dc2jq5 ай бұрын

    А какие файлы нужно пршить в мк? Только хекс?

  • @AxGxP

    @AxGxP

    5 ай бұрын

    В HEX есть всё необходимое и достаточное. В этом и прелесть HEX. Круче в этом смысле только ELF, в нем кроме того, что необходимо есть ещё куча дополнительной информации. А скуднее всего в этом смысле BIN файл, его нужно ручками, по конкретным адресам прописывать. Но в не зависимости от того, какой формат хранения прошивки Вы выбрали, в микроконтроллер пропишутся одни и те-же данные, и программа будет выполняться совершенно одинаково. Никаких дополнительных "фюзов" в stm32 вшивать не нужно, они нужны в основном для защиты от считывания, блокировки памяти и т.д.

  • @Alex-dc2jq

    @Alex-dc2jq

    5 ай бұрын

    @@AxGxP спасибо большое, попробую прошить и отпишусь о результате)

  • @Alex-dc2jq

    @Alex-dc2jq

    5 ай бұрын

    @@AxGxP прошил, всё работает отлично 👍

  • @user-cg2fw3kw9d
    @user-cg2fw3kw9d4 жыл бұрын

    Какой огромный код, можно ли написать меньше, и какой это язык? C или ассемблер?

  • @AxGxP

    @AxGxP

    4 жыл бұрын

    Конечно можно, это я по приколу столько написал, скучно просто было... Это Си, неужели его как-то с Асмом можно спутать, или они похожи?

  • @user-cg2fw3kw9d

    @user-cg2fw3kw9d

    3 жыл бұрын

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

  • @AxGxP

    @AxGxP

    3 жыл бұрын

    @@user-cg2fw3kw9d Си и ассемблер принципиально отличаются. Ассемблер ориентирован на конкретный процессор. Си имеет свои стандарты и никак не зависит от процессора. В код на Си можно встраивать вставки на ассемблере, при этом программа станет жестко привязана к железу, на котором должна выполнятся. Про "" первый раз слышу, и даже фантазии не хватает такое представить. Если что-то подобное и существует, то это или явно далеко не ассемблер, или похоже на Си только тем, что программы латиницей пишутся))) Есть какое-то название, у этого чудо-ассемблера? Где он применяется?

  • @user-cg2fw3kw9d

    @user-cg2fw3kw9d

    3 жыл бұрын

    @@AxGxP Вот где я видел ассемблер стилизованный под C:alemorf.ru/pi/4/index.html Как я понял один человек пишет на нем игру для спектрума, "Последнее испытание" по мюзиклу. Отличия этих языков мне известны. Спасибо

  • @AxGxP

    @AxGxP

    3 жыл бұрын

    @@user-cg2fw3kw9d То, про что вы говорите, не имеет никакого отношения к ассемблеру, вообще!

  • @densyaolin
    @densyaolin5 жыл бұрын

    Нифига не понял.но блин интересно))))

  • @GypsyRewind
    @GypsyRewind5 жыл бұрын

    А есть тот же проект, только на библиотеках HAL ? Просто деревянный джойстик.. это что-то, зацепило.. пы.сы. Если тоже самое сделать на оптических дисковых энкодерах, то дискретность честь пострадала, но сигнал был бы стабильнее.. (если не учитывать цены на энкодеры, я не про те, которые в колесике мыши :D )

  • @AxGxP

    @AxGxP

    5 жыл бұрын

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

  • @GypsyRewind

    @GypsyRewind

    5 жыл бұрын

    @@AxGxP Вот точно, про магнитный источник данных я как-то совсем забыл.. спасибо. Ну так а есть ли проект под HAL ? так-то я и с цмсис могу разобраться, прото привычнее по HAL-ом... заранее спасибо

  • @AxGxP

    @AxGxP

    5 жыл бұрын

    HAL не использую... В основном с F103 работаю, тут HAL - слишком громоздко, неоправданно, эти все вложенные функции, колбэки, "скрытые" операции...

  • @GypsyRewind

    @GypsyRewind

    5 жыл бұрын

    @@AxGxP Ну так-то в принципе можно и своих шаблонных функций наделать.. типо: инит, сэтап, обработчики прерываний и дма.. да мало-ли, на что фантазии хватит ))) ..Но имхо, для отладки _"побыстрому"_ и ХАЛа слихвой, А при релизе, можно и вовсе, прамое обращение к регистрам.. грубо говоря..

  • @AxGxP

    @AxGxP

    5 жыл бұрын

    @@GypsyRewind Угораздило меня один раз с HAL связаться, тоже ради того, чтоб USB автоматом мне собрало, и там все было ОК. Но вот кто там UART придумывал, ход его мыслей я так и не понял, долго пытался понять как это все использовать и нафига там оно надо... Вроде в конце свой обработчик переписал и всё.

  • @user-pf7yh2lj7v
    @user-pf7yh2lj7v5 ай бұрын

    На нем кролик летать будет ? 😅

  • @GoodVrGames
    @GoodVrGames4 жыл бұрын

    Эмм. Я по секрету скажу (через полтора года), но вот как раз обведенный на 00:27 МК (atmega16u2) можно запрограммировать на то, чтобы он выполнял роль USB-HID устройства с помощью библиотеки joystick. Не учитывая те платы Arduino, где ядром является как раз аналогичный чип (Леонардо/микро-про на atmega32u4), и где не требуется USB-ASP программатор для заливки прошивки в него. STM32, конечно, в тысячу раз кастомнее и быстрее, но на ардуинке чтобы создать геймпад мне не потребовался бы аналогичный видос. И чтобы устройство стало по истине универсальным - надо придерживаться стандарта x-input, ибо d-input сейчас не во всех приложениях работает, а если и работает, то часто криво.

  • @user-bq6xf6pt3s
    @user-bq6xf6pt3s3 жыл бұрын

    Тёска)

  • @mayakalex
    @mayakalex5 жыл бұрын

    На PS4 подойдет? Ждем как сделать шлем для виртуальной реальности на ардуино)))

  • @AxGxP

    @AxGxP

    5 жыл бұрын

    Должно пойти. Шлем на ардуино тупить будет)) Так-что только STM32!

  • @nyannyan8243
    @nyannyan82434 жыл бұрын

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

  • @FIL_KILLER
    @FIL_KILLER5 ай бұрын

    Когда то купил программатор для stm32, чтобы прошить плату гироскутера, сейчас хочу сделать контроллер для жд симулятора на ардуино, и тут натыкаюсь на это видео, для жд симулятора мне нужно 5 основных осей джойстика. Вот теперь уменя выбор купить ардуино leonardo c встроенной поддержкой usb hid или попытать удачу и купить stm32

  • @AxGxP

    @AxGxP

    5 ай бұрын

    Ну если смотреть например по цене, то STM-ок можно купить несколько за те-же деньги. Этот проект скомпилирован на сколь помню под 3 оси... Если нужно 5 - придется немного переделывать программу. А вообще для чего там 5 осей? Я поездом не управлял, но вроде как там все инструменты дискретные... Ну у паровозов конечно краны всякие есть.

  • @FIL_KILLER

    @FIL_KILLER

    5 ай бұрын

    @@AxGxPНа самом обычном современном поезде, три тормоза динамический(рекуперация) , ручной(стояночный) и тормоз состава(основной) . Газ это уже 4я ось, И реверс, если в обычном локомотиве, он имеет три положения то на паровоз реверс плавный Как-бы реверс и газ меняются местами. Управляешь во основном реверсом.

  • @AxGxP

    @AxGxP

    5 ай бұрын

    @FIL_KILLER что все эти тормоза можно плавно включать? Я думал, у крана машиниста есть несколько позиций и усилие торможения зависит от длительности включения крана. По тяге понятно, только фиксированные позиции, динамическое торможение на сколь понимаю так-же. Тут главное посмотреть, что поддерживает ПО на компьютере, как предусмотрено управление этим всем. Там же можно не только оси передавать, а и до 128 кнопок, если не ошибаюсь.

  • @FIL_KILLER

    @FIL_KILLER

    5 ай бұрын

    @@AxGxPНа тормозе да, несколько положений, на скорости контроллер скорости может иметь 8 позиций как на старых электричках, или 34 позиции как на электовозах. Динамический тормоз аналогичен контроллеру скорости, по числу позиций, ручной тормоз плавный, а тормоз состава имеет около 6 позиций( если не ошибаюсь) . Через оси проще управлять всем этим разнообразием. Я думал привязать переменный резистор к положениями тормоза но это уже когда заморочусь.. Я вдохновился штукой "RailDriver" выпускается совместимой с популярными симуляторами, он стоит 24 тыс на Ebay.

  • @user-su7tj1lr3z
    @user-su7tj1lr3z5 жыл бұрын

    Привет. Снимай видосы по ардуинке . Где живеш?

  • @AxGxP

    @AxGxP

    5 жыл бұрын

    Нет ардуинки, сгорела! Чему был безгранично рад)) Нет смысла тратить время и нервы на arduino, с её глюками и тормозами. Переходите, или лучше сразу начинайте с STM32, это намного удобнее, эффективнее и надежнее. Дешевле и быстрее! Если будут желающие, могу сделать видео, о том как создать первый проект в Atollic TrueStudio, как, с чего начать.

  • @user-su7tj1lr3z

    @user-su7tj1lr3z

    5 жыл бұрын

    Давай будет интересно и о программе и проекты

  • @user-su7tj1lr3z

    @user-su7tj1lr3z

    5 жыл бұрын

    Умный дом на ней к примеру .!

  • @AxGxP

    @AxGxP

    5 жыл бұрын

    @@user-su7tj1lr3z Ок. Подумаю над этим, что и как... Умный дом для начинающих - сильно круто получится, но что-то интересное придумаю.

  • @user-su7tj1lr3z

    @user-su7tj1lr3z

    5 жыл бұрын

    У кого не хватит мозгов к примеру. Как у меня ) продавай готовые проекты - прошитые!

  • @masterkit9517
    @masterkit95174 жыл бұрын

    а вот не нашёл в DT программе миди устройств, он их не знает?

  • @AxGxP

    @AxGxP

    4 жыл бұрын

    Потому, что MIDI это не HID. MIDI это по сути UART на скорости 31250 бод. Можно в принципе заставить его работать через USB-UART, с использованием какого-то специального драйвера, чтоб создать на компьютере виртуальный MIDI порт. Но если хотите красиво, то будет немного сложнее, кроме правильного дескриптора придется самому обрабатывать bulk endpiont. Информацию по этому вопросу найдете по запросу гугл: "Universal Serial Bus Device Class Definition for MIDI Devices".

  • @masterkit9517

    @masterkit9517

    4 жыл бұрын

    @@AxGxP Спасибо большое вам! Просто компьютер при подключении миди устройства всегда пишет подключено миди устройство стандартное. Думал что это HID. Нужно все таки через стандартное миди устройство виндовс подключаться. Нашел эти загуглив дескрипторы, в конце PDF документа по 1й же ссылке гугл нашел эти эндпоинты в конце документа вот такое там пишут Standard MS Interface DescriptorTable B-5: MIDI Adapter Standard MS Interface DescriptorOffsetFieldSizeValueDescription0bLength10x09Size of this descriptor, in bytes.1bDescriptorType10x04INTERFACE descriptor.2bInterfaceNumber10x01Index of this interface.3bAlternateSetting10x00Index of this alternate setting.4bNumEndpoints10x022 endpoints.5bInterfaceClass10x01AUDIO.6bInterfaceSubclass10x03MIDISTREAMING.7bInterfaceProtocol10x00Unused.8iInterface10x00Unused. Если будет информация помогите, и вам напишу если понадобится если что удастся найти. Но что с ними делать даже не представляю. Это по сути полностью тот же джойстик технически, сообщения только туда он будет другие в кавычках посылать и в другое место другому драйверу. Сообщение там можно написать хоть даже "я банан" только вот виндовс не вджойстик должен их послать а в миди устройство стандартное которое виндовс прицепит. Ардуино никогда не потянет проект. Leonardo лежат 3 трупа pro micro от передозировки мультиплексоров, даже дорогими программаторами не удалось восстановить. Дохнут как мухи от дихлофоса leonardo pro micro от нехватки памяти, и глюки бесконечные надоели.

  • @AxGxP

    @AxGxP

    4 жыл бұрын

    @@masterkit9517 ничего конкретного сказать не могу, самому пока не приходилось USB-MIDI интерфейс создавать. Вот нашел, вроде то, что надо: github.com/ripxorip/stm32_usb_midi

  • @masterkit9517

    @masterkit9517

    4 жыл бұрын

    @@AxGxP Спасибо большое!

  • @masterkit9517

    @masterkit9517

    4 жыл бұрын

    @@AxGxP Не знаю только после ардуино как этим воспользоваться, что куда вставлять) Убежал с ардуино из за невозможности на ардуино завершить миди проект, 120 кнопок лезло с мультиплексорами только в 3-4шт. Leonardo. Так Leonardo окирпичились из за переполнения выше 80% памяти в версии pro micro и даже дорогим программатором не удалось их восстановить. С тех пор ардуино даже врагу не желаю.

  • @navyguy6099
    @navyguy6099 Жыл бұрын

    почему за 3 (!) года так мало просмотров????? (((((

  • @AxGxP

    @AxGxP

    Жыл бұрын

    Скорее всего, потому, что STM32 а не Arduino))) А вообще у меня на канале как-то в общем не много смотрят. Формат, подача не многим заходит.

  • @7SecondsOfHappiness
    @7SecondsOfHappiness5 жыл бұрын

    Вібрації ще не вистачає, а так супер

  • @AxGxP

    @AxGxP

    5 жыл бұрын

    Можна зробити дуже реалістичний зворотній зв'язок, на базі асинхронних двигунів. За допомогою зміни струму можна змінювати силу з якою пручається кермо. А змінюючи частоту можна змінювати швидкість з якою воно буде обертатися. Але це вже треба у натуральну величину робить.

  • @shlemkin

    @shlemkin

    5 жыл бұрын

    ​@@AxGxP частота в данном случае практически не играет рояли) чпу - не розетка) асинхронник работает с проскальзыванием, один фиг всем этим управляет МК - векторное, скалярное... для руля, например, нужно брать серво около 1 КВт, малооборотистый но с большим моментом 10 Нм+. и ШИМом в 50+КГц управлять тремя фазами... надо покурить инфы побольше, сам хочу руль Direct Drive сделать с мотором 130ST-M10010 - вместе с драйвером стоит $330 - на таких делают любители, но с дорогущим драйвером мотора и платами в комп - далеко за $1000+ выходит, не камильфо. нужно присосаться к чужим дровам и пилить свою схему управления. по сути управлять нужно только моментом и скоростью, точного позиционирования ведь не надо... а "присосаться к чужим дровам" - cxem.net/mc/mc207.php тут чел заюзал дрова от руля логитеч g25, но там дебильная фича - в центральной позиции руля от дров идет команда отрубать моторы, руль становится вялым как мой рукав) хочу помучить дровишки трастмастер t300 или фанатеки какие. удачи

  • @AxGxP

    @AxGxP

    5 жыл бұрын

    @@shlemkin Про частоту вращения фаз я говорил... Управлять моментом и скоростью, изменяя напряжение и частоту. 1 КВт и руки поотрывать может, 200Вт с головой, как по мне. ШИМ 18кГц вполне достаточно, зачем аж 50? Да и не нужен там такой хитрый драйвер, все самому можно собрать, на транзисторах под управлением того-же STM32F103C8, у него есть комплиментарные выходы под 3 фазы, с dead-time и всеми плюшками.

  • @shlemkin

    @shlemkin

    5 жыл бұрын

    @@AxGxP да да да, перехожу на стм в том числе из за фичи с дед-таймами (еще поглядим, как работает весь этот хлам)). не для ардуинки такое. и юсб есть. драйвер, конечно, нужен не настолько сложный, как для сервы чпу... а может и действительно совсем простой, ибо момент создается из расчета оборотов в том числе, но у нас обороты либо 0 либо ну совсем небольшие, до 300-500 об/мин (если совсем как больной крутишь со всей ненавистью))), а при такой скорости во все формулы наверное можно совать RPM 0 для вычисления частоты/напряжения/тока для получения нужного момента... наверное таки частоту и силу тока регулировать будет достаточно (сам себя обнадежил))) только вот какое дело - как ты "подашь" на руль, например, 5Nm на 3 сек? как быть с пусковыми токами и моментом на старте? что в эти моменты будет происходить с моментом на валу? нужно ли изъёживаться, чтоб момент был ровным со старта? представляешь брусчатку или неровности, когда руль влево/вправо как бешеный сопротивляется/дергает, и очень быстро - все это надо точно передать... нужно учитывать момент инерции ротора? легко себя убедить, что это может быть легко, ровно также потом и убедить себя, что сложно... надо делать и смотреть... а 1 КВт серву надо. там и ротор облегчен, и момент 10Нм норм. в не профи рулях до 8Нм. если 200Вт то только через редуктор, а я говорю о DirectDrive - руль сидит на валу мотора. редукторы/шестерни/ремни - все это источники неточностей, шума и вибрации... ну и напоследок посчитай - 10Nm ~ 1кг/м при диаметре руля 30 см получаем рычаг 15 см 100/15=6,6666 - на ободе руля максимум усилия будет 6 кг (12 в пиковом режиме) - руки не повырывает)) пристегиваться крепче надо))

  • @AxGxP

    @AxGxP

    5 жыл бұрын

    @@shlemkin " как быть с пусковыми токами и моментом на старте" не вижу никаких проблем, тут заморочек с пусковым током не будет, скольжение незначительное, на таких оборотах... Есть у меня моторчик, только вот руля нет, можно было бы попробовать.

  • @masterkit9517
    @masterkit95174 жыл бұрын

    перешёл на STM32 по этой причине - 0:22 и не жалею, keil комфортнее в тысячи раз, настраивается внешний вид, цвет, шрифт, для мигания светодиодом выбираю STM32 чем ардуино. А остальное ардуино многое просто не потянет. Делал миди кнопки, так ардуино даже памяти не имеет. Куда его вообще применять. Если бы кто подсказал ещё как на stm32 нажатия кнопок как миди сообщения в ком порт бросать, а stm32 что бы как миди устройство определился

  • @i-wishbetter-future8963
    @i-wishbetter-future89635 жыл бұрын

    так это круче ардуино леонардо?

  • @AxGxP

    @AxGxP

    5 жыл бұрын

    Значительно круче! А ещё и дешевле.

  • @rbkkk777
    @rbkkk7775 жыл бұрын

    Гуристюк)

  • @LikeOnFilm
    @LikeOnFilm3 жыл бұрын

    ардуинщики не обломаются, а возьмут ардуино на базе ATmega32U4

  • @AxGxP

    @AxGxP

    3 жыл бұрын

    Если деньги лишние, пусть берут!

  • @st1471
    @st14715 жыл бұрын

    Карявка влево вообще не хочет ))

  • @KobalyanTV
    @KobalyanTV5 жыл бұрын

    3 дня замучился с ST-Link V2 прогамматором а потом взял и прошил STM32 через Ардуино нано.... я в шоке! вот так ирония ))

  • @AxGxP

    @AxGxP

    5 жыл бұрын

    О! Месье знает толк в извращениях! А что там мучатся то... 4 провода подключить?

  • @KobalyanTV

    @KobalyanTV

    5 жыл бұрын

    @@AxGxP да угадали) я извращенец + слегка мазохист ) а мучился я с китайским свистком ST-Link V2 который походу битый... у меня нету UART программатора а использовать ардуино как то случайно пришло в голову. спасибо за проект ) замучился с ним слегка, но и много чему научился ) до и вам слегка поднадоел ) не судите строго я только начал изучать микроконтроллеры. ))

  • @AxGxP

    @AxGxP

    5 жыл бұрын

    @@KobalyanTV STM32 ST-Link Utility должен видеть свисток, его серийник, и микроконтроллер к нему подключенный. Если нет, значит дохлый свисток... Удачи! Будут вопросы, постараюсь помочь.

  • @alexandersamol1358

    @alexandersamol1358

    4 жыл бұрын

    @@AxGxP ещё вариант - старая прошивка. Как раз на днях имел дело с оригинальным (не китайским) St-link'ом, который зависал секунд через 30 после подключения. ST-шная утилита также зависала, но можно было успеть увидеть надпись про старое Firmware. После обновления всё нормализовалось.

  • @masterkit9517
    @masterkit95173 жыл бұрын

    Btn = (uint8_t)~((GPIOB->IDR)&0xFF); // buttons здесь порт B так понимаю, а если так сделать Btn = (uint8_t)~((GPIOB->IDR, GPIOC->IDR)&0xFF); // buttons все прошилось но дальше не нажимаются кнопки больше ни B ни C порта, помогите добавить кнопку!!!, мне 8шт. мало. Сократил сообщения написав в одно, что бы не отнимать вам времени. Прошился джойстик сразу через cubeIDE, Atolic не понадобилось устанавливать, cubeIDE прошил и все 8 кнопок заработали, оси мне не нужны были. Мне очень нужно понять как добавить ещё кнопку например с порта C. Одну единственную кнопку для примера, по которому будет понятно как остальные добавить. Сообщений было много, сократил их, что бы не мешать вам лишними сообщениями, может ещё есть способ через сдвиговый регистр и мультиплексор добавить ещё больше кнопок, очень нужно. Не знаю как добавить кнопку, портом целиком или пином.

  • @AxGxP

    @AxGxP

    3 жыл бұрын

    "Btn = (uint8_t)~((GPIOB->IDR, GPIOC->IDR)&0xFF);" - это бред какой-то... Что это должно было значить? Чтоб добавить кнопок нужно соответственно изменить дескриптор USB, а так-же передавать соответствующее количество данных, должно быть кратно одному байту (8-бит). Переменная Btn должна быть соответствующего типа. Сколько кнопок нужно?

  • @masterkit9517

    @masterkit9517

    3 жыл бұрын

    @@AxGxP 16 пусть для начала, дальше там много всё равно не влезет, понадобятся регистры или мультиплексоры, нужно аж 120шт. для цифрового аккордеона)

  • @masterkit9517

    @masterkit9517

    3 жыл бұрын

    ​@@AxGxP сам не соображу, соображу только в какой файл залезть править, в данной прошивке не знаю даже в каком файле дескриптор искать. Дескриптор MIDI устройства делал, но зная где его делать. Кнопки умею только в cubeMX начальную конфигурацию задавать. Шансы самому там найти всё равны ближе к нулю. В ардуино был разобрался и сделал сдвиговые регистры, даже мультиплексор для кнопок, сделал был 120!!!! кнопок, но мощностей не хватило ардуино на 30% проекта, далее ушёл навсегда в STM32. И вот здесь многое понятно, но в STM32 нужен колоссальный опыт программирования, разобраться в буфере хотя бы. Даже не представляю на сколько его увеличить, на какое значение. При том, что возможно многим удалось бы самостоятельно по советам из видео добавить с лёгкостью кнопки дополнительно. В другом проекте делал MIDI дескриптор лишь, но удачно, устройство даже в музыкальных редакторах субклассом определялось. Скорее всего заменив полностью дескриптор в вашей прошивки сделать удалось бы MIDI устройство - вот этот дескриптор отлично работающий если не ошибся с файлом usbd_audio.c • • /* Configuration 1 */ 0x09, /* bLength */ USB_DESC_TYPE_CONFIGURATION, /* bDescriptorType */ 0x65,// LOBYTE(USB_AUDIO_CONFIG_DESC_SIZ), /* wTotalLength 109 bytes*/ 0x00,//HIBYTE(USB_AUDIO_CONFIG_DESC_SIZ), 0x02, /* bNumInterfaces */ 0x01, /* bConfigurationValue */ 0x00, /* iConfiguration */ 0xC0, /* bmAttributes BUS Powred*/ 0x32, /* bMaxPower = 100 mA*/ /* 09 byte*/ /* USB Speaker Standard interface descriptor */ AUDIO_INTERFACE_DESC_SIZE, /* bLength */ USB_DESC_TYPE_INTERFACE, /* bDescriptorType */ 0x00, /* bInterfaceNumber */ 0x00, /* bAlternateSetting */ 0x00, /* bNumEndpoints */ USB_DEVICE_CLASS_AUDIO, /* bInterfaceClass */ AUDIO_SUBCLASS_AUDIOCONTROL, /* bInterfaceSubClass */ 0x00,//AUDIO_PROTOCOL_UNDEFINED, /* bInterfaceProtocol */ 0x00, /* iInterface */ /* 09 byte*/ /* USB Speaker Class-specific AC Interface Descriptor */ 0x09,//AUDIO_INTERFACE_DESC_SIZE, /* bLength */ AUDIO_INTERFACE_DESCRIPTOR_TYPE, /* bDescriptorType */ AUDIO_CONTROL_HEADER, /* bDescriptorSubtype */ 0x00, /* 1.00 */ /* bcdADC */ 0x01, 0x09,//0x27, /* wTotalLength = 39*/ 0x00, 0x01, /* bInCollection */ 0x01, /* baInterfaceNr */ /* 09 byte*/ //---------------------------------------------------------------------------------- //MIDI STREAMING INTERFACE DESCRIPTOR //---------------------------------------------------------------------------------- //Standart MS Interface Descriptor //MIDI Adapter Standart Interface Desc 0x09, // bLength USB_DESC_TYPE_INTERFACE, // bDescriptorType 0x01, // bInterfaceNumber 0x00, // bAlternateSetting 0x02, // bNumEndpoints USB_DEVICE_CLASS_AUDIO, // bInterfaceClass 0x03, //Midistream // bInterfaceSubClass 0x00, // bInterfaceProtocol 0x00, // iInterface // 09 byte //--------------------------------------------------------------------------------- //Class Specific MS Interface Desc //MIDI Adapter Class-Specific Interface Desc 0x07, // bLength 0x24, // bDescriptorType 0x01, // bDescriptorSubtype 0x00, 0x01, // bcdADC 0x41, 0x00, // wTotalLength = 0x41 //7 bytes //--------------------------------------------------------------------------------- //Midi IN Jack Interface Desc //MIDI Adapter MIDI IN JACK Desc (Embedded) 0x06, // bLength 0x24, // bDescriptorType 0x02, // bDescriptorSubtype 0x01, // bJackType 0x01, // bJack ID 0x00, // iJack //6 bytes //---------------------------------------------------------------------------------- //MIDI Adapter MIDI IN JACK Desc (External) 0x06, // bLength 0x24, // bDescriptorType 0x02, // bDescriptorSubtype 0x02, // bJackType 0x02, // bJack ID 0x00, // iJack //6 bytes //---------------------------------------------------------------------------------- //------------------------------------------------------------------------------------ //Midi OUT Jack Interface Desc //MIDI Adapter MIDI OUT JACK Desc (Embedded) 0x09, // bLength 0x24, // bDescriptorType 0x03, // bDescriptorSubtype 0x01, // bJackType 0x03, // bJack ID 0x01, // bNrInputPins 0x02, // baSource ID 0x01, // baSource PIN 0x00, // iJack //9 bytes //---------------------------------------------------------------------------------- //MIDI Adapter MIDI OUT JACK Desc (External) 0x09, // bLength 0x24, // bDescriptorType 0x03, // bDescriptorSubtype 0x02, // bJackType 0x04, // bJack ID 0x01, // bNrInputPins 0x01, // baSource ID 0x01, // baSource PIN 0x00, // iJack //9 bytes //BULK OUT ENDPOINT DESCRUPTOR //---------------------------------------------------------------------------------- //Standart BULK OUT Endpoint Desc 0x09, // bLength 0x05, // bDescriptorType 0x01, // bEndpointNum 0x02, // bmAttributes 0x40, 0x00, // wMaxPacketSize 0x00, // bInterval 0x00, // bRefresh 0x00, // bSyncAddress //9 bytes //---------------------------------------------------------------------------------- //Class Specific MS BULK OUT Endpoint Desc 0x05, // bLength 0x25, // bDescriptorType 0x01, // bDescriptorSubtype 0x01, // bNumEmbMIDIJack 0x01, // baAssocJackID //5bytes //---------------------------------------------------------------------------------- //BULK IN ENDPOINT DESCRUPTOR //---------------------------------------------------------------------------------- //Standart BULK IN Endpoint Desc 0x09, // bLength 0x05, // bDescriptorType 0x81, // bEndpointNum 0x02, // bmAttributes 0x40, 0x00, // wMaxPacketSize 0x00, // bInterval 0x00, // bRefresh 0x00, // bSyncAddress //9 bytes //---------------------------------------------------------------------------------- //Class Specific MS BULK IN Endpoint Desc 0x05, // bLength 0x25, // bDescriptorType 0x01, // bDescriptorSubtype 0x01, // bNumEmbMIDIJack 0x03, // baAssocJackID //5 bytes //----------------------------------------------------------------------------------

  • @AxGxP

    @AxGxP

    3 жыл бұрын

    @@masterkit9517 DirectX не поддерживает больше чем 32 кнопки.

  • @masterkit9517

    @masterkit9517

    3 жыл бұрын

    @@AxGxP Для джойстика чем больше тем лучше выйдет) сколько влезет в 103 плату, столько и отлично. Потом просто планирую MIDI дескриптор вписать туда, сдвиговые регистры цеплять, и там паковать в код джойстика отправляющий в ПК байт или 2 байта не понимаю сам, но понимаю что байт или два точно, а сконфигурировал уже отлично MIDI дескриптор, ПК никак не может дождаться любой байт посланный ему, вполне высока вероятность что ПК даже код кнопки джойстика воспримет как одну из существующих миди команд. Уверен к созданию MIDI подобрался как никогда близко и именно с вами. Отлично понимаю, что заменив дескриптор на миди ваша прошивка вполне может ловить понимаемые ПК байты данной прошивки уже как MIDI сообщения, их не сложно возможно выйдет вписать свои туда байты, например 'hello world', только это будет например HEX сообщение например такое '49' это сообщение уже будет понятно ПК. Оно как раз будет в HEX уже ловить, так как 103 плата это уже для ПК MIDI устройство с дескриптором который удалось было сделать. Пока хорошо было бы освоить добавление кнопок. С дальнейшим исследованием MIDI. Джойстик также нужен чем больше там кнопок, тем лучше. Можно вовсе без аналоговых входов. Так как версия с аналогами в данном видео вполне достаточна.

  • @vrfungamer
    @vrfungamer5 жыл бұрын

    А что за игра?

  • @AxGxP

    @AxGxP

    5 жыл бұрын

    Там несколько игр... На какой минуте интересует?

  • @maxtomchuk1311
    @maxtomchuk13114 жыл бұрын

    Я заметил только 3 оси , ещё 3 потенцеометра где 4 ось??

  • @AxGxP

    @AxGxP

    4 жыл бұрын

    В прошивке...

  • @ps1ofthe1ght73

    @ps1ofthe1ght73

    3 жыл бұрын

    @@AxGxP Здравствуйте,а какой номинал потенциометров

  • @user-jq7tc7qi5z

    @user-jq7tc7qi5z

    3 жыл бұрын

    @@ps1ofthe1ght73 10k

  • @ps1ofthe1ght73

    @ps1ofthe1ght73

    3 жыл бұрын

    @@user-jq7tc7qi5z спасибо,но мне не хватило 10, я поставил 20))

  • @user-jq7tc7qi5z

    @user-jq7tc7qi5z

    3 жыл бұрын

    @@ps1ofthe1ght73 а это не особо-то и важно. можно и 300 Ом, только опасно.

Келесі