Главная Проекты Идеи Soft О авторе
 

Библиотека для стыковки IgorPlug2 и SlyControl.

Рис. 1 Внешний вид окна настройки новой библиотеки.

План.

       1) Вступление.
       2) Информация для продвинутых пользователей.
       3) Установка библиотеки.

       AA) Быстрый старт проекта IgorPlug2 - тут.

       A) Прошивки и драйвера - тут.
       Б) Библиотека для стыковки IgorPlug2 и SlyControl - Эта страница.
       В) Программный Осциллограф для экспериментов - тут.
       Г) Стандартная реализация IgorPlug2 - тут.
       Д) Управляемое реле на основе IgorPlug2 - тут.
       Е) Технические характеристики ПТК - тут.
       Ж) Методика выбора пульта ДУ для IgorPlug - тут.
       З) Виды кодировок ПДУ - тут.
       И) Варианты дизайна печатных плат - тут.
       К) USB Key на основе IgorPlug2 - тут.
       Л) Список часто задаваемых вопросов FAQ - тут
       М) Драйвер для IgorPlug2 доработанный пользователями - тут.

       X) Обратная связь - тут.

Вступление.

       Данная модифицированная библиотека предназначена для тех пользователей, у кого проблемы с распознаванием коротких посылок (до 33 бит)* на оригинальном IgorPlug, а также для пользователей с аналогичными проблемами, пользующихся IgorPlug-Tiny совместимыми моделями и всех пользователей IgorPlug2 rev.8 и выше ( IgorPlug2 rev.6 и IgorPlug2 rev.8 являются устаревшими и рекомендуется обновить их хотя бы до rev.9Mini).
       Ну и на всякий случай напомню, прошивки для всех модификаций проекта IgorPlug2 (IgorPlug2, IgorRele, HID joystick и т.д.) лежат на странице "Прошивки и драйвера", которая находится - тут.

   * - Для оригинального IgorPlug и IgorPlug-Tiny клонов стек приёмника составлял всего 36 байт (по 1 байту на принимаемый бит, плюс 3 из них служебные). Если посылка пульта содержала больше 33 бит и различия в кнопках приходились именно на не принятый хвост посылки, то все кнопки распознавались одинаково.

Рис. 2 Внешний вид окна настройки библиотеки.

       По существу штатная библиотека, поставляемая вместе с SlyControl (не путать с библиотекой входящей в драйвер IgorPlug), болела практически теми же детскими недугами как и оригинальный IgorPlug. То есть, обрабатывала только первые байты посылки, путала кодировки (любимой фичей было распознать кодировку в качестве RC5). Все это на некоторых кодировках приводило к потере части управляющих битов, в результате чего на таких пультах большая часть кнопок получала одинаковые ХЭШи.
       Про IgorPlug-Tiny клонов надо упомянуть отдельно. Они (как и IgorPlug2 rev.8) имели постоянный масштаб. Но как выяснилось, введение постоянного масштаба потребовало компенсации длинных импульсов в начале посылки при работе с некоторыми пультами, а в отличии от IgorPlug2 rev.8 (который эту проблему обходил применением интеллектуального сжатия) в IgorPlug-Tiny клонах не было реализовано вообще ничего. В результате они аппаратно отказывались работать с такими пультами или выдавали длинну только последних 33х бит от всех посылки.
       Ситуация ещё усугублялась тем, что штатная библиотека была рассчитана на переменный масштаб посылки и любая попытка ввести единый масштаб (то есть, подружить её с IgorPlug2 rev.8 или с клонами IgorPlug-Tiny) вводила штатную библиотеку в полный ступор (ХЭШи не вычислялись совсем).
       Отдельно хочу напомнить что для совместимости со сторонним софтом, не понимающим длинные посылки, в 9 и 10 версиях прошивки встроен режим совместимости. И при обучении (описанном в Краткой инструкции - От Пользователей) достаточно поставить галочку и после обучения все посылки данного пульта будут преобразованы. При этом в систему отправляется посылка данных - вида, которая стабильно распознаётся любым устаревшим софтом.
       При работе над созданием модифицированной библиотеки мы использовали несколько разнотипных приёмников и универсальный пульт дистанционного управления, что позволило вылечить систему от "детских" недугов, а также найти и исправить множество разнотипных глюков и нестыковок...
       Продвинутые пользователи могут настроить скрипт программы SlyControl и управлять с помощью пульта дистанционного управления: мышью, эмулировать нажатие клавиш на клавиатуре, привязать к заданной кнопке операции с битами порта и многое другое.

Информация для продвинутых пользователей.

       Помимо того, что плагин генерирует события "REMOTE" при приёме команд от пульта ДУ (как ему и положено), в нём реализована функция ActionManual. Возможные параметры и возвращаемые значения приведены в таблице N1. По форме IgorPlug(Action, Param [, Value] [, BitN]). Пример использования приведён в архиве.

Таблица N1.
Action
Param
BitN
Return
"GetDataPort"
"SetDataPort"
"Data", "Direction"
0...7 or no param for whole byte
@1 - Data
@2 - Direction
"Get232"
"Set232"
"Data", "Bitrate"
@1 - Data
@2 - Bitrate
"GetEEPROM"
"SetEEPROM"
Address



Установка устаревшей версии библиотеки.

       На всякий случай мы оставили прежнюю модификацию библиотеки, которая устанавливалась вместо штатной библиотеки от IgorPlug2.
       Для её установки необходимо заменить штатную библиотеку, расположенную по адресу
C:\Program Files\SlyDiman\SlyControl2\Plugins\RC\IgorPlug,
файлами из архива.
       Только ещё раз уточню: заменить именно файлами из архива, а не просто скинуть папку с файлами, полученную от архиватора, на указанный адрес.

       Пользователь Switch-2k создал видео инструкцию поясняющую настройку программы SlyControl. Инструкция лежит - Тут.

Установка новой версии библиотеки.

       В отличии от первой это полностью самостоятельный набор библиотек. Это сделано из за того, что для программы SlyControl, девайсы IgorPlug и IgorPlug2 оказывались идентичными, а с появлением прошивки под HID joystick плагина потребовалось уже два.
       Поэтому были изменены некоторые файлы и добавлено фото.
       В результате плагины превратились в самостоятельную сущность - свой пункт в Мастере, свой скрипт, немного изменена программная модель плагина, исправлены мелкие недостатки.

       Последовательность установки:

1) Если SlyControl был установлен до этого, то деинсталлировать его
(снести полностью, перезагрузиться, вручную удалить оставшиеся файлы)
2) Поставить SlyControl с нуля
3) Скачать архив с библиотекой
4) Папки irJoy и MegaPlug2 (лежат в архиве из пункта 3 в папке Plugins)
надо скопировать в папку
C:\Program Files\SlyDiman\SlyControl2\Plugins\RC
5) из папки Data содержимое скопировать в папку
C:\Program Files\SlyDiman\SlyControl2\Data
с заменой тех файлов которые там были
6) Запускаем слай, вводим месяц, закрываем слай
7) Запускаем слай выбираем ваше устройство (джой или мегаплаг2)
в мастере кнопка настроить у джоя работает
у мега плага НЕТ (настроить можно потом).
мастер просто проходим настраивать плаги будем из графы модули
на все остальные предложения - читаем, выбираем и нажимаем применить.
8) Идём во вкладку модули, встаём на наш модуль (джой или мегаплаг2)
и жмём на кнопку настроить.
9) Если MegaPlug2. В настройках плага выбрать устройство IgorPlug2
Если irJoy. В настройках плага подкрутить ползунки по вкусу...

Рис. 3 Внешний вид окна настройки библиотеки для HID joystick.

       Ну и далее настраивать так же как и штатный, но если затрудняетесь, то пользователь Switch-2k создал видео инструкцию поясняющую настройку программы SlyControl. Она для устаревшей версии, но разница там только в количестве копируемых файлов, остальное идентично. Инструкция лежит - Тут.
       Данная библиотека пока экспериментальная и поэтому не поддерживает всех модификаций пультов (на данный момент около 75%). Если вам надо под какой то конкретный пульт временно не совместимый с системой, то напишите разработчикам данной библиотеки по адресу электронной почты внизу страницы.

Ограничения.

       Устройство разработано по принципу КАК ЕСТЬ и автор не несёт ответственности за явный (или не явный) ущерб, причинённый в результате повторения.

То есть все эксперименты вы делаете на свой страх и риск.

       Список часто задаваемых вопросов читайте в    FAQ.

       Если у вас возникли вопросы и предложения - пишите мне по адресу внизу страницы

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

       Кошелёк для оплаты накладных расходов на сайт Z158779319858 в системе WebMoney.

       Принимаю только безвозмездную помощь :)


       Все статьи, опубликованные на этом сайте защищены Частью 4 Гражданского Кодекса Российской Федерации. Запрещено полное или частичное копирование материалов без согласия их авторов. Незаконное использование материалов сайта влечет за собой административную ответственность в виде компенсации в размере от 10.000 рублей до 5.000.000 рублей [Ст. 1301, 1250, 1252, 1253 ГК РФ]. При согласованном использовании материалов сайта обязательна активная ссылка на www.mindrunway.ru и указание авторства.



Copyright© 2007-2012 QuickWitted Почта     grani СОБАКА mindrunway РУ
Ссылки
Гостевая
Форум