Перейти к публикации

Рекомендованные сообщения

Опубликовано:

Пабло со своим сыном mcp3201  возле дома @WG_Magners. Фото в цвете

Ну че там как Вы?) 

318a893f13f5573daf0e70cc6261182f_L.jpg

Опубликовано:
30 минут назад, Graphene сказал:

Ну че там

Что-то на проджект-менеджерском)

 

Не получается пока за эти дела сесть( может кто-то из местных программеров успеет глянуть быстрее чем я? Я так понимаю, для воспроизведения нужно наличие и TLE, и MCP?

Опубликовано:
2 часа назад, WG_Magners сказал:

Что-то на проджект-менеджерском)

 

Не получается пока за эти дела сесть( может кто-то из местных программеров успеет глянуть быстрее чем я? Я так понимаю, для воспроизведения нужно наличие и TLE, и MCP?

Да. TLE мешает mcp. Или наоборот. Тлешка работает в любых вариантах, mcp начинает глючить по шкале при работе вместе с тле. Как вроде неправильно кушает данные. 

Ещё бы посмотреть, как будут другие mcp работать, которые двух и выше канальные. 

Опубликовано:

Бета версия v1.7.0b4
Пока что без релиза на гитхабе, просьба потестить, ничего ли не отстегнулось

Изменения:

  • Починена раскладка кнопок в HID репорте (больше не должно быть смещения кнопок при отключении их вывода)
  • Починена работа динамической мертвой зоны (работало некорректно, если ось была откалибрована)
  • Offset теперь применяется к любой оси одинаково в не зависимости от источника
  • Починены граничные условия для осей с источником энкодером (значение больше не накапливается дальше границ калибровки при вращении энкодера)
  • Хотфикс работы MCP32xx вместе с другими SPI датчиками специально для @Graphene (всё еще возможны проблемы при работе на одной шине датчиков с разными режимами CPOL/CPHA, полное исправление будет позднее)
  • Всякое по мелочам
     

FreeJoy_1_7_0b4.zip

  • Нравится 1
  • Спасибо! 5
Опубликовано:
18 минут назад, WG_Magners сказал:

Бета версия v1.7.0b4
Пока что без релиза на гитхабе, просьба потестить, ничего ли не отстегнулось

Изменения:

  • Починена раскладка кнопок в HID репорте (больше не должно быть смещения кнопок при отключении их вывода)
  • Починена работа динамической мертвой зоны (работало некорректно, если ось была откалибрована)
  • Offset теперь применяется к любой оси одинаково в не зависимости от источника
  • Починены граничные условия для осей с источником энкодером (значение больше не накапливается дальше границ калибровки при вращении энкодера)
  • Хотфикс работы MCP32xx вместе с другими SPI датчиками специально для @Graphene (всё еще возможны проблемы при работе на одной шине датчиков с разными режимами CPOL/CPHA, полное исправление будет позднее)
  • Всякое по мелочам
     

FreeJoy_1_7_0b4.zip 65 \u041a\u0431 · 1 скачивание

Вэу! Круто, спасибо буду тестить (уже завтра -_-) ! А причина какая была с МСРшками?

Опубликовано:
18 минут назад, Graphene сказал:

Вэу! Круто, спасибо буду тестить (уже завтра -_-) ! А причина какая была с МСРшками?

Некорректно отрабатывает последовательное чтение датчиков, у которых отличаются режимы SPI

Опубликовано:
22 часа назад, WG_Magners сказал:

Бета версия v1.7.0b4
Пока что без релиза на гитхабе, просьба потестить, ничего ли не отстегнулось

Изменения:

  • Починена раскладка кнопок в HID репорте (больше не должно быть смещения кнопок при отключении их вывода)
  • Починена работа динамической мертвой зоны (работало некорректно, если ось была откалибрована)
  • Offset теперь применяется к любой оси одинаково в не зависимости от источника
  • Починены граничные условия для осей с источником энкодером (значение больше не накапливается дальше границ калибровки при вращении энкодера)
  • Хотфикс работы MCP32xx вместе с другими SPI датчиками специально для @Graphene (всё еще возможны проблемы при работе на одной шине датчиков с разными режимами CPOL/CPHA, полное исправление будет позднее)
  • Всякое по мелочам
     

FreeJoy_1_7_0b4.zip 65 \u041a\u0431 · 3 скачивания

Предварительно работает в той конфигурации, в которой обнаружен баг. До загрузки шкала скачет, с 4й бэтой отрабатывает как положено. Моё уважение!

Попутно вопросы:
1) точно не знаю, во фриджое ли дело. При подключении устройств на его основе, на клавиатуре иногда активируются капс и скролл лок. Все лампочки на клаве горят, но сам капс например на печать текста не влияет. Было ли у кого-то такое?
2) При подключении кабеля иногда как вроде статикой пробивает. Есть металлические девайсы с землей на корпус, есть пластиковые. При подключении слышен звук "перетыкания" устройств в винде. Причём достаточно даже экраном коснуться. Как уберечься от такого схемотехнически или может быть это только у меня такое по кабелям/разьемам. Тазик не заземлён. Грешу конечно на слабые юсбишники/бп. Уже писал.

  • ХА-ХА 1
Опубликовано: (изменено)
12 часов назад, Graphene сказал:

Тазик не заземлён.

Ну а что вы тогда хочите? Схемотехнически все БП рассчитаны на заземление и имеют симметричный ЭМИ фильтр на входе, средняя точка которого соединена к заземляющей клемме разъема питания. Если она никуда не подключена, то на ней возникает половина напряжения бытовой электросети. Когда человек, являясь проводником электричества, касается корпуса прибора, стоя на бетонном полу, арматура которого заземлена, образуются конденсатор, через который начинает утекать небольшой ток (на этом принципе основана работа УЗО), который и создает ощущение щекотания или пощипывания. Чтобы это избежать, можно выполнить зануление, но тогда упадет эффективность фильтра ЭМИ. Либо соединять все земли устройств в одну, пусть даже плавающую.

Изменено пользователем 3BAG_Orion33
Опубликовано:
7 минут назад, 3BAG_Orion33 сказал:

Ну а что вы тогда хочите? Схемотехнически все БП рассчитаны на заземление и имеют симметричный ЭМИ фильтр на входе, средняя точка которого соединена к заземляющей клемме разъема питания. Если она никуда не подключена, то на ней возникает половина напряжения бытовой электросети. Когда человек, являясь проводником электричества, касается корпуса прибора, стоя на бетонном полу, арматура которого заземлена, образуются конденсатор, через который начинает утекать небольшой ток (на этом принципе основана работа УЗО), который и создает ощущение щекотания или пощипывания. Чтобы это избежать, можно выполнить зануление, но тогда упадет эффективность фильтра ЭМИ. Либо соединять все земли устройств в одну, пусть даже плавающую.

Ну вы же знаете, какое в странах СНГ зануление/заземление) Можно еще БП обновить. Не факт, что в имеющемся там что-то нормальное на входе.
 

Опубликовано: (изменено)

Подскажите, в джое есть возможность настроить кнопку, чтобы сбрасывала ось на 0?

Чтобы нажать и вне зависимости от положения энкодера принудительно выставлялся ноль (ещё лучше, если можно задать своё значение) и он больше не мог влиять на ось, а по отжатию управление осью ему возвращалось?

Изменено пользователем rentainer
Опубликовано:
4 часа назад, rentainer сказал:

принудительно выставлялся ноль

Да. (Функция Center)

4 часа назад, rentainer сказал:

можно задать своё значение

Как будет задаваться это значение?

4 часа назад, rentainer сказал:

отжатию управление осью ему возвращалось

Можно (Функция (Reset)

  • Спасибо! 1
Опубликовано:
4 часа назад, rentainer сказал:

ещё лучше, если можно задать своё значение

А вот это только если прошивку под себя немного подкорректировать и собрать

  • Спасибо! 1
Опубликовано:

Доброго времени суток! 

Пришел к вам из симрейсинга :) 

Для начала: выражаю огромную благодарность и признательность @WG_Magners, @Johnet, @Reksotiv и всем кто помогает этому замечательному проекту!

Прочитал всю ветку и страницы на вики. Есть момент который хотелось бы уточнить.

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

Делал проекты кнопко-коробки на ардуино и подключал кнопки матрицей. Почитав данную ветку решил попробовать сделать при помощи регистров (даже уже приобрел несколько). В ютубе есть хорошее видео по подключению 74HC165 к ардуино, но посмотрев мануал на вики - запутался.

Сразу напишу, что я не специалист в данной теме, а по сему хочу вот что предложить по дополнению раздела инструкции связанной со сдвиговым регистром:

Так как я не спец, и, скорее всего, многие, кто попадет на форум по проекту FreeJoy, почитав тему загорятся сами что-нибудь сварганить, то я предлагаю добавить схему подключения  каскада из трех регистров в форме схемы как сделано на примере кнопок в матрице.

Прикреплю рисунок, что я набросал и прошу знающих помочь в данном вопросе и подсказать правильно ли все связано на схеме, а если нет, то что не так. 

С выводами на кнопки и подтяжкой через 10к резюки все понятно. в даташите указаны ноги к которым подключать, а вот какие соединить между собой в каскад  и что подводить к МК - возникла сложность :( . Заранее приношу извинения за возможно глупый вопрос, но думаю, решение этой проблемки упростило бы понимание многим начинающим самоделкиным

Заранее благодарен!

 

P.S. Под вторым спойлером "чистая" версия, чтобы можно было нарисовать как правильно подключать

 

Скрытый текст

74HC165x3_to_STM32_FreeJoy.thumb.jpg.2ae54f96338e6c070ac9c79f3685bac8.jpg 

Скрытый текст

Clear_74HC165x3_to_STM32_FreeJoy.thumb.jpg.1469d1add9ec14cb556622bb9c1a9b49.jpg

 

 

  • Спасибо! 1
Опубликовано:
4 часа назад, Noob_Saibot сказал:

Прочитал всю ветку и страницы на вики. Есть момент который хотелось бы уточнить.

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

А над фото этой платы изображена схема подключения трех регистров. Что конкретно в ней непонятно?

  • Поддерживаю! 1
Опубликовано:
1 час назад, sergeype сказал:

А над фото этой платы изображена схема подключения трех регистров. Что конкретно в ней непонятно?

Восприятие разное бывает. Я не имею большой практики в этом, потому и то, что над фото платки не разобрал, или разобрал не правильно, потому приложил пример на проверку и попросил подсказать/помочь разобраться, чтобы не перепаивать все по сто раз и не пытаться попасть методом тыка

Опубликовано:
6 часов назад, Noob_Saibot сказал:

Восприятие разное бывает. Я не имею большой практики в этом, потому и то, что над фото платки не разобрал, или разобрал не правильно, потому приложил пример на проверку и попросил подсказать/помочь разобраться, чтобы не перепаивать все по сто раз и не пытаться попасть методом тыка

Раньше была картинка с проводками к плате свигового регистра.. а не вот эти вот ваши схемы для особо умных ?

Было решено, что принципиалка будет информативнее.

Пороюсь, если найду старую картинку, сюда выложу...

Опубликовано:
5 часов назад, Johnet сказал:

Раньше была картинка с проводками к плате свигового регистра.. а не вот эти вот ваши схемы для особо умных ?

Было решено, что принципиалка будет информативнее.

Пороюсь, если найду старую картинку, сюда выложу...

Заранее благодарен! Если честно, то Johnet на Ваш ответ больше всего и надеялся. 

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

Буду ждать с нетерпением ответ. :) 

Опубликовано:

Что ж... Спасибо всем кто "откликнулся и помог"! Изучив документацию и другие источники - простой смертный разобрался сам. Первый мой приложенный рисунок (который никто так и не посмотрел) - правильный.

Пожелание: Добавить все же в мануал по подключению 74HC165 не только принципиальную схему, которую понимают знающие, но и ту, которая проще для восприятия не имеющим опыта. Информации изложенной на той странице, чтобы понять что и куда коннектить, начинающим будет мало, нужно искать документацию и прочее, чтобы находить соответствия по распиновке т.п., а это, как мне кажется, немножко рушит концепцию уважаемого WG_Magners насчет доступности к пониманию для большинства простых смертных, а не только имеющим навыки в электронной инженерии и умеющим читать принципиалки и даташиты.

Вопрос закрыт.

Если будет угодно, то модератор может удалить мои посты по причине флуда.

 

P.S. Еще раз: Огромное спасибо выше указанным мной людям за сам данный проект, и за то, что он еще развивается!

Благодарю за внимание.

  • Спасибо! 2
Опубликовано:
02.10.2021 в 15:47, Noob_Saibot сказал:

Что ж... Спасибо всем кто "откликнулся и помог"!

Ладно вы, не дуйтесь.... Ну день рождения был у меня... Ну отпраздновал чуть чуть...

  • ХА-ХА 2
Опубликовано: (изменено)
02.10.2021 в 11:47, Noob_Saibot сказал:

немножко рушит концепцию уважаемого WG_Magners насчет доступности к пониманию для большинства простых смертных

Так уж вышло, что проект вырос скорее в продукт для полупрофессионалов в построении устройств. Мы стараемся сохранять простоту интерфейса по мере возможности, но количество различных настроек уже тяжелоподъёмное для новичка.

Собственно поэтому сейчас нацеленность на универсальность, чем на простоту понимания. Принципиальная схема является универсальным способом показать электрические соединения, а то что вам удалось с ней разобраться только подтверждает это ?

Если заменить картинку из Вики на подобную вашей, то вопросы могут возникнуть (и возникали) у людей, которые используют готовые платы с регистрами, которых существует некоторое количество разных. А ещё нужно будет рисовать две картинки - отдельно для 74HC165 и для CD4021. Поэтому ИМХО лучше описывать подключение к пинам по названию

 

Изменено пользователем WG_Magners
  • Поддерживаю! 1
  • 2 недели спустя...
Опубликовано:

Столкнулся с проблемкой - контроллер прошился без ошибок, hid устройство при подключении по usb определяется, но при попытке считать/записать конфигурацию ничего не происходит. Как с этим бороться?

Скрытый текст

freejoy.thumb.png.7727c020d59b11fab4033a35cc15ea15.png

 

24 минуты назад, LynxD сказал:

Столкнулся с проблемкой - контроллер прошился без ошибок, hid устройство при подключении по usb определяется, но при попытке считать/записать конфигурацию ничего не происходит. Как с этим бороться?

  Показать содержимое

freejoy.thumb.png.7727c020d59b11fab4033a35cc15ea15.png

 

А черт, не тот конфигуратор взял XD

  • Поддерживаю! 1
Опубликовано:

Подскажите, знающие люди, почему может быть очень маленькая скорость отзыва stm32f103, где-то около 1 минуты? Шнуры все рабочие.

В конфигураторе 1.7.0b3 пишет что скорость пакетов 877,235 мс?

Опубликовано:
12 часов назад, A_Bereg_UAA_Bereg_UA сказал:

Подскажите, знающие люди, почему может быть очень маленькая скорость отзыва stm32f103, где-то около 1 минуты? Шнуры все рабочие.

В конфигураторе 1.7.0b3 пишет что скорость пакетов 877,235 мс?

Это с определённым конфигом или с пустым(нажать Reset All и записать на устройство) так же?

Опубликовано:
8 часов назад, A_Bereg_UAA_Bereg_UA сказал:

С любым

эт возможно клон у вас какой то дырявый. у меня так же было с cs32f103

Опубликовано:
21.09.2021 в 23:44, WG_Magners сказал:

Бета версия v1.7.0b4
Пока что без релиза на гитхабе, просьба потестить, ничего ли не отстегнулось

Изменения:

  • Починена раскладка кнопок в HID репорте (больше не должно быть смещения кнопок при отключении их вывода)
  • Починена работа динамической мертвой зоны (работало некорректно, если ось была откалибрована)
  • Offset теперь применяется к любой оси одинаково в не зависимости от источника
  • Починены граничные условия для осей с источником энкодером (значение больше не накапливается дальше границ калибровки при вращении энкодера)
  • Хотфикс работы MCP32xx вместе с другими SPI датчиками специально для @Graphene (всё еще возможны проблемы при работе на одной шине датчиков с разными режимами CPOL/CPHA, полное исправление будет позднее)
  • Всякое по мелочам
     

FreeJoy_1_7_0b4.zip 65 \u041a\u0431 · 18 скачиваний

Возвращаясь к нашим баранам...)
Работает, но изредка залипает один из MCP3201, если использовать их например два. По какой причине и какая последовательность, пока что не выявил. Просто залипает одна из осей до переподключения. Я так понимаю фикс пока что является временным костылём? @WG_Magners

Опубликовано:
4 часа назад, Graphene сказал:

Возвращаясь к нашим баранам...)
Работает, но изредка залипает один из MCP3201, если использовать их например два. По какой причине и какая последовательность, пока что не выявил. Просто залипает одна из осей до переподключения. Я так понимаю фикс пока что является временным костылём? @WG_Magners

Да, можно сказать, палкой подпёр

Опубликовано:
23 часа назад, WG_Magners сказал:

Да, можно сказать, палкой подпёр

Понятно. 

Сегодня обе оси mcp начали барахлить и давать помехи на тле. Или просто он вместе с ними за компанию. 

Импульсные скачки на треть/половину шкалы с возвратом назад. На оси зума сразу заметил, когда fov прыгать стал. 

Троим похоже стало тесно на общих шинах. Стало еще хуже, чем было ?

Опубликовано:

Народ поделитесь правильной ссылкой на алике на нужную платку пожалуйста

Опубликовано:
20.10.2021 в 00:46, WG_Magners сказал:

Да, можно сказать, палкой подпёр

 

предлагаю добавить следующий код(важное выделил жирным) в получение данных от TLE

 

https://github.com/FreeJoy-Team/FreeJoy/blob/master/application/Src/tle5011.c

На строку нумер 91

 

if((x != 32767) && (x != -32768) && (y != 32767) && (y != -32768)
                && (x != 0) && (y != 0))

{

код обработки корректных значений

out = atan2f((float)y_value, (float)x_value)/ M_PI * (float)180.0;
  *angle = out;
  ret = 0;

}

else ret -1;

 

Возможно это и не поможет в случае совмещения с мср, но вдруг.

Полюбому это добавить всёравно нужно. Иногда TLE присылает вот эти граничные величины, безотносительно работает оно от 3.3 или 5В и как быстро опрашивается. Затрудяюсь ответить почему.

 

 

 

  • Нравится 1
  • Поддерживаю! 1
Опубликовано:
1 час назад, l3VGV сказал:

Иногда TLE присылает вот эти граничные величины, безотносительно работает оно от 3.3 или 5В и как быстро опрашивается. Затрудяюсь ответить почему.

Подтверждаю. Наблюдал такое. Причину точную выяснить не удалось. У меня залипало так до перезапуска по питанию. При обнаружения такого эффекта останавливал на некоторое время и запускал снова тактирование 4МГц. Помогало.

  • В замешательстве 1
Опубликовано: (изменено)
25 минут назад, Komaroff сказал:

Подтверждаю. Наблюдал такое. Причину точную выяснить не удалось. У меня залипало так до перезапуска по питанию. При обнаружения такого эффекта останавливал на некоторое время и запускал снова тактирование 4МГц. Помогало.

 

Хм? Неплохо неплохо. Я помню вы подтверждали данный баг когда я его только встретил.

 

Но, у меня не залипает, только иногда проскакивает. А я опрашиваю предельно часто(15к раз в сек). Прислать может несколько таких странных семплов подряд, однако так чтобы насовсем залипло - такого небывало. 

Изменено пользователем l3VGV
Опубликовано: (изменено)

Не всегда наглухо залипает, но бывает. Насколько помню, наглухо залипало когда я "краш-тест" проводил с коммутацией разъема ТЛЕ5011. Стремно то, что тлешка CRC сумму корректную присылает при упомянутых выше крайних значениях. Кстати, по датащиту максимальный сигнал каналов в штатном режиме должен быть емнип не более 15000.

Изменено пользователем Komaroff
Опубликовано:
6 часов назад, l3VGV сказал:

 

предлагаю добавить следующий код(важное выделил жирным) в получение данных от TLE

 

https://github.com/FreeJoy-Team/FreeJoy/blob/master/application/Src/tle5011.c

На строку нумер 91

 

if((x != 32767) && (x != -32768) && (y != 32767) && (y != -32768)
                && (x != 0) && (y != 0))

{

код обработки корректных значений

out = atan2f((float)y_value, (float)x_value)/ M_PI * (float)180.0;
  *angle = out;
  ret = 0;

}

else ret -1;

 

Возможно это и не поможет в случае совмещения с мср, но вдруг.

Полюбому это добавить всёравно нужно. Иногда TLE присылает вот эти граничные величины, безотносительно работает оно от 3.3 или 5В и как быстро опрашивается. Затрудяюсь ответить почему.

 

 

 

Буду признателен, если оформите Pull Request, а то я могу забыть

  • Нравится 1
Опубликовано: (изменено)

А прошивка встанет на stm32f103c6t6 ? Или тупо памяти не хватит.

Изменено пользователем ZERgyt
Опубликовано:
2 часа назад, ZERgyt сказал:

А прошивка встанет на stm32f103c6t6 ? Или тупо памяти не хватит.

памяти не хватит.

Опубликовано:
14 часов назад, WG_Magners сказал:

Буду признателен, если оформите Pull Request, а то я могу забыть

image.thumb.png.7c5a08003504ed7bbcc8aa7651994d50.png

 

настолько удобно всё теперь можно делать из веб бровузера...

Опубликовано:
3 часа назад, l3VGV сказал:

image.thumb.png.7c5a08003504ed7bbcc8aa7651994d50.png

 

настолько удобно всё теперь можно делать из веб бровузера...

Всё таки ТЛЕ балуется? Уже прогреваю все порты юсб для прошивки.

Опубликовано: (изменено)
21.10.2021 в 13:36, l3VGV сказал:

предлагаю добавить следующий код(важное выделил жирным) в получение данных от TLE

А в версии 1.7.0.4 проблема с tle сохранилась? В analog.c функция map_tle возвращала значение int32_t, которое применялось к int16_t и при граничных значениях датчика получалось переполнение int16_t (180000 * 100 / 549 = 32786 а максимум 32767).

В 1.7.0.4 добавил 

if (x > AXIS_MAX_VALUE) x = AXIS_MAX_VALUE;

else if (x < AXIS_MIN_VALUE) x = AXIS_MIN_VALUE;

потеряли 0.03% с каждой стороны, но у датчика всё равно нет такой точности. 

 

Изменено пользователем Reksotiv
Опубликовано:
4 часа назад, Reksotiv сказал:

А в версии 1.7.0.4 проблема с tle сохранилась?

 

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

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас
×
×
  • Создать...