Remote control driver что это
В IT-сообществе принято считать безусловным злом любой софт, который крадет персональные данные пользователя и приносит огромную прибыль киберпреступникам. Между тем существуют вполне легальные компании, которые разрабатывают и продают трояны.
Нелегальное легально
Неужели действительно кто-то разрабатывает и продает вредоносное ПО легально? Да, только тот же самый софт, за создание которого еще вчера могли привлечь к ответственности, разрабатывается не со злым умыслом, а для решения вполне легитимных задач. Скажем, спецслужбы могут осуществлять с помощью программ, которые совсем недавно использовались как трояны, сбор оперативной информации — где тут вредоносность? Восьмого октября 2011 года крупнейший европейский хакерский клуб Chaos Computer Club (CCC) опубликовал отчет о реверс-инжиниринге трояна, который немецкая полиция якобы использовала не только для сбора пользовательских данных, но и для скрытой установки программного обеспечения на зараженные компьютеры. Власти официально этот факт подтвердили. А в декабре исследователь и завсегдатай форума XDA-developers Тревор Экхарт обнаружил, что ряд современных смартфонов, в том числе Android и iPhone, скрыто следят за действиями пользователей и передают собранную «статистику» производителям. Подробнее об этих двух инцидентах можешь прочитать во врезке. Сейчас же я предлагаю рассмотреть один из таких «легальных троянов» — Remote Control System, узнать, что о нем говорят разработчики, и разобраться, что он на самом деле собой представляет.
Remote Control System
Восстановленная функция выработки ключа A Реквизиты стороны, подписавшей x64-драйвер ndroid-версии малвари
Carrier IQ: легальный троян в смартфонах
Копаясь в прошивке Android-смартфонов фирмы HTC, Тревор Экхарт обнаружил программу, работающую в скрытом режиме и собирающую информацию о нажатиях клавиш на диалере или клавиатуре, просмотре рекламных объявлений, получении СМС, включении и отключении экрана, получении звонков, местоположении и т. д. Дальнейшие исследования показали, что эта программа является детищем фирмы Carrier IQ, которая активно сотрудничает с производителями как смартфонов, так и простых мобильных телефонов. Производитель оборудования получает исходники программы от CIQ, дорабатывает их и внедряет в прошивку устройства. Кроме того, CIQ предоставляет удобный интерфейс для работы с полученными данными.
Элементы кода программы были найдены в прошивках с Sense UI, а также на аппаратах производства Samsung с интерфейсом Touch Wiz. В результате проделанной работы Тревор написал программу, которая позволяет проверить телефон на наличие этого руткита и, если в смартфоне есть права root, попытаться удалить руткит подробнее читай тут.
Обнаружение
Как оказалось, обнаружить троян довольно легко, достаточно лишь загрузиться с загрузочной флешки и прошерстить винчестер зараженного компьютера. RCS создает директорию либо в корне диска C, либо в %APPDATA%, а также генерирует ключ реестра со случайным именем в разделе Run, причем при работе зараженной системы директория и ключ не видны для файл-менеджеров и редакторов реестра. Чуть позже я расскажу, почему, а пока остановлюсь на компонентах трояна.
Модная нынче тенденция реализовывать малварь не в виде exe, а в виде библиотеки dll не обошла стороной и разработчиков RCS. Вообще, версия этого трояна для Windows включает в себя следующие компоненты (имена модулей могут отличаться в зависимости от версии/хозяина):
- Основной модуль 7KOmPPPs.TRK (DLL, x86).
- Файл конфигурации a5jt555f.Qu6.
- Кодек для кодирования речи CrThBBBT.7ar (DLL, x86).
- Дополнительный x64-модуль tms5ggg8.T4t (DLL, x64).
- Драйвер x64 0Cfkvvvw.HiO (SYS, x64).
- Драйвер x86 YDxohhhn.pYS (SYS, x86).
Любой здравомыслящий человек сразу задаст вопрос о скрытой установке x64-драйвера в систему. Здесь нет ничего необычного, разработчики пошли по пути наименьшего сопротивления и просто подписали его своей электронной подписью. К слову сказать, это их и палит (смотри первую иллюстрацию), так как Гугл моментально наводит нас на сайт производителя трояна.
Где собака зарыта?
Сразу скажу, что я коснусь в основном только x86-версии RCS. Как уже отмечалось ранее, основной модуль представляет собой динамическую библиотеку для архитектуры x86. Dll экспортирует восемь функций с ничем не примечательными именами: HFF1, HFF2, . HFF8. Значение ключа реестра в разделе Run, запускающее троян, имеет следующий вид:
— и намекает на то, что в первую очередь необходимо изучить восьмую функцию HFF8. Вообще, закидывая dll в IDA, я думал, что нарвусь на какой-нибудь пакер или навороченную защиту, но и с этим разработчики не стали заморачиваться — антиотладочных средств я не обнаружил, программа имела только защиту против статического анализа кода, которая скорее направлена против антивирусов, нежели реверсера. Поэтому разбирать по косточкам эту малварь было легко, удобно и интересно.
Запуск
Работу функции HFF8 можно логически разделить на несколько блоков. Первый — проверка основных модулей трояна: сначала он проверяет, является ли rundll32.exe текущим процессом, далее перебирает все dll, подгруженные в адресное пространство, затем пытается получить в каждом из них адрес функции HFF1 и сравнивает полученный адрес с уже имеющимся значением. Далее при помощи функции GetModuleFileNameExW троян получает имя своей главной dll (с путем), преобразует его в ASCII и оставляет только имя файла. Путь к файлу и имя файла сохраняются в двух разных буферах в shared-сегменте, где выделена память для данных, доступ к которым нужен другим процессам, в чье адресное пространство также подгружена dll с трояном. Затем каждый символ полученного имени заменяется на другой в соответствии с некоторой таблицей, а новое имя файла (если все предыдущие шаги завершились успешно) копируется в shared-сегмент как имя файла с настройками. Каждый символ имени файла с настройками также кодируется при помощи некой таблицы для преобразования в имя еще одной части трояна. Таким образом и создаются все необходимые имена файлов, которые записываются в shared-сегмент динамической библиотеки. После имен файлов в разделяемый сегмент копируются имена объектов FileMapping. Всего таких объектов три, и их названия имеют префиксы KMS1, KMS2, KMS3. После каждого префикса идет еще восемь hex-значений. Троян считает проверку успешной, если найден основной модуль. Наличие остальных модулей на данном этапе не проверяется.
Второй блок — активация системы маскировки трояна. На этом этапе инициализации троян сначала пытается открыть устройство MSH4DEV1, которое создается x86-драйвером (номер 6 в списке файлов). Если все проходит успешно, то handle устройства сохраняется. Далее выполняется поиск антивирусного ПО, установленного на зараженной машине. Для поиска троян всегда использует один алгоритм: перебирает загруженные в систему драйвера и ищет нужный по определенному имени. Список распознаваемых антивирусов довольно внушителен: Avira, Avast, Eyee, ProcGuard, McAfee, Kerio, Comodo, Panda, TrendMicro, Ashampoo, Kaspersky, AVG, BitDefender и еще пара-тройка экзотических для наших широт продуктов. Учитывая особенности каждого антивируса, троян пытается установить в систему драйвер YDxohhhn.pYS (если он до сих пор не установлен), который копируется в системную директорию Windows и переименовывается в ndisk.sys. Установка выполняется при помощи функций ADVAPI32 типа CreateService, StartService и т. д. Затем троян пытается открыть устройство MSH4DEV1 и найти загруженный драйвер ndisk.sys. Отмечу, что драйвер устанавливается только в том случае, если на компьютере имеется любая антивирусная программа.
Осенью крупнейший европейский хакерский клуб Chaos Computer Club (CCC) опубликовал отчет о «полицейском трое», который, как потом признали власти, действительно применялся силовыми ведомствами для сбора пользовательских данных. Из-за того что в основном модуле трояна имеется строка C3PO-r2d2-POE, ему присвоили имя R2D2. Малварь состоит из DLL с именем mfc42ul.dll и драйвера winsys32.sys для архитектуры x86. При заражении DLL прописывается в ветку реестра SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows\AppInit_/DLLs и, следовательно, подгружается в адресное пространство каждого GUI-приложения. Малварь скрыто делает скриншоты экрана, перехватывает нажатия клавиш клавиатуры, записывает звонки, совершаемые при помощи Skype, и передает всю эту информацию на удаленный сервер. Отмечу, что здесь механизм перехвата звонков такой же, как и в RCS. Самый главный фейл, который допустили разработчики, — это использование во всех версиях малвари фиксированных ключей шифрования и алгоритма AES в режиме ECB при полном отсутствии аутентификации, что позволяет практически любому пользователю интернета управлять зараженной машиной.
В четвертом блоке инициализируются агенты-процедуры сбора пользовательских данных. В процессе инициализации заполняется массив пар ключ-значение, где ключом является идентификатор агента, а значением — структура с указателями на функции первоначальной инициализации, функцию, код которой будет выполняться в другом процессе, и процедуру обработки полученных пользовательских данных. При этом для каждого агента также вызывается функция первоначальной инициализации. В ходе инициализации агентов дешифруется файл с настройками и инициализируются только те сборщики данных, которые указаны в конфиге.
В пятом блоке запускаются удаленные потоки, собирающие пользовательские данные. В запуске принимают участие другие экспортируемые функции: HFF1, HFF2, HFF3. После создаются локальные потоки, которые получают собранные пользовательские данные и обрабатывают их. На этом процедура начальной инициализации завершается, и указанный инициализационный поток погружается в бесконечный цикл (while(true)< Sleep(1000); >).
В ходе инициализации троян также проверяет, не заражена ли уже система. Алгоритм проверки на заражение достаточно прост: троян ищет объекты FileMapping с определенными именами (KMS1. KMS2. KMS3. ), и если находит, то система считается зараженной и процесс инициализации прекращается. Следует сказать несколько слов и о вызове системных функций. Все функции WinAPI вызываются по адресам, которые выдает GetProcAddress. Имена всех вызываемых функций зашифрованы шифром простой замены. Эти имена хранятся в сегменте данных и расшифровываются каждый раз непосредственно перед использованием.
Версия трояна для 64-битных систем в принципе ничем не отличается от версии под x86. В ней используется тот же самый основной модуль, однако после запуска троян проверяет, не является ли система 64-битной, и если является, то в игру вступают dll и драйвер, написанные специально под x64.
Рекламная брошюра RCS
Android-версия RCS
Дальнейший анализ показал, что при запуске троян пытается проэксплуатировать какую-нибудь уязвимость в Android и получить права root (на моем кастомном билде ему это сделать не удалось). RCS также собирает пользовательские данные (SMS, MMS, контакты) и информацию о сети сотовой связи, периодически включает микрофон телефона и записывает разговоры вокруг и передает всё это добро на удаленный сервер. В диспетчере приложений малварь пытается замаскироваться под com.android.service, а при работе ест много памяти и сильно расходует батарею. Вообще, здесь следует отдать должное производителям Dr.Web Light — антивируса для Android, так как он спокойно палит этот троян и выдает пользователю соответствующее предупреждение.
Работа агента
В большинстве случаев код, внедренный в удаленный процесс, делает одно и то же: подгружает в адресное пространство своего процесса dll основного модуля. После этого открываются FileMapping'и (функция HFF4), а на определенные функции устанавливаются хуки (функция HFF3). По завершении этих процедур dll выгружается из адресного пространства процесса, а поток впадает в бесконечный цикл (засыпает на одну секунду, просыпается и засыпает вновь).
При установке хуков проверяется имя текущего процесса. Если оно не попадает в определенный список, то устанавливаются только те хуки, которые направлены на маскировку трояна в системе. Вообще, этот зловред распознает следующие процессы:
Распознавание процессов осуществляется только по именам, поэтому, переименовав RootkitRevealer.exe в ololo.exe, мы сможем легко обнаружить троян. 🙂
Отдельный агент, постоянно сканирующий файловую систему компьютера, подготавливает для передачи файлы с определенными расширениями. Следует упомянуть и еще об одном потоке, который постоянно сканирует список текущих процессов, чтобы заражать новые процессы. Троян запускает новые процессы на компьютере от имени explorer.exe за счет инжекции кода в Эксплорер. Зловред использует крайне забавный способ для мониторинга активности Firefox: загружает из интернета библиотеки mozcrt19.dll, softokn3.dll и mozsqlite3.dll, которые просто посылают запросы к SQLite-базам браузера. Подобным образом троян работает и с некоторыми другими программами.
Реакция антивируса
Отчет Dr.Web Light об обнаруженных вирусах
Summary
Вообще, видео на сайте производителя испугало меня больше, чем сам троян. Его несложно обнаружить и нейтрализовать, к тому же после знакомства с современными средствами создания ботнетов от расковырянной коммерческой малвари остаются весьма противоречивые впечатления. Версия для Android вообще не выдерживает критики — она может испортить жизнь только тем пользователям, которые вообще не следят за своим смартфоном, устанавливают приложения из неизвестных источников и безразлично относятся к количеству подтверждений, запрашиваемых приложениями. На примере этого трояна хорошо видно, что технологии коммерсантов отстают от технологий их криминальных коллег — создателей Zeus, TDSS, SpyEye и других подобных вещей.
Использование нативного интерфейса также причиняет набольшое неудобство — любое нажатие клавиши в процессе прохождения может «обрушить» тест.
Как преимуществом, так и недостатком Selenium RC есть использование Selenium Server Standalone. С одной стороны использование сервера упрощает логирование результатов, что существенно упрощает написание автотестов(на Webdriver приходится ставить различные «костыли», чтобы выяснить где именно произошла ошибка потому, как из-за скорости прохождения тестов это не всегда можно определить визуально), но с другой стороны — увеличивается время прохождения теста и невозможность использовать для тестирования страниц на мобильном устройстве.
Недостатком Webdriver по сравнению с класическим RC есть сложность имитирования действий как, например, наведение курсора мыши. С другой стороны Webdriver как и реальный пользователь не может работать со скрытыми элементами или, например, не сможет ввести текст в поле, полностью перекрытое другим элементом.
Отдельно стоит сказать о работе с JavaScript и AJAX. В Webdriver реализованы механизма ожидания завершения AJAX-запросов: Explicit Waits (явные ожидания) и Implicit Waits (неявные ожидания) (Подробнее здесь Ожидания в Webdriver). В RC для ожидания AJAX приходится использовать средства языка программирования. Также стоит отметить, что Remote Control не всегда корректно работает с JS. Например, selenium.click не может вызвать JS-ивент onMouseDown и приходится гадать, «что же там использовал разработчик?» чтобы написать корректную команду. С Webdriver подобные проблеммы не возникают.
В Selenium Remote Control в процессе развития сформировался достаточно широкий набор комманд, в то время как в Webdriver почти всё сводится к .click или .sendKeys (вобшем-то реальный пользователь может сделать не намного больше, однако, например, простая комманда для снятия скриншота или выбора Ok/Cancel в диалоговом окне не помешала бы). Однако в Webdriver реализовано большее количество локаторов для поиска элемента на странице.
By.id — обращается к элементу по ID;
By.name — обращается по имени элемента name:
By.xpath — обращается к элементу по xpath выражению;
By.tagName — поиск по имени HTML тэга;
By.cssSelector — данный тип локаторов основан на описаниях таблиц стилей (CSS);
By.className — поиск по CSS классу элемента;
By.linkTex — поиск ссылки по тексту;
By.partionalLinkText — поиск ссылки по части текста;
Рассмотрим примеры тестов на RC и Webdriver (Java).
Напишем автотесты, которые заходят на Google, вводят в строку поиска zerg rush, нажимают кнопку поиска, затем после небольшего ожидания снимают скриншот окна.
Из всего выше сказанного видно, что и Remote Control и Webdriver имеют как недостатки так и преимущества. В большом количестве случаев удобнее использовать RC, т.к. большой набор комманд и возможность работать со скрытыми элементами, а также возможность получать логи сервера существенно упрошают и ускоряют (время — деньги) процесс написания и последующего адаптирования тестов. Webdriver же уместно использовать там, где не справляется (плохо справляется) RC, например для перегруженых AJAX-запросами веб интерфейсов или в местах где крайне вожно точно симитировать действия пользователя (следует заметить, что Webdriver и был внедрён потому, что с появлением более новых веб-технологий Selenium RC просто исчерпал себя и необходимость в альтернативном подходе стала очевидной).
Также в Selenium 2 реализована возможность перехода с RC на Webdriver. Подробно описан в оф. документации.
Такой контроллер ещё называют в быту пультом дистанционного управления, блоком радиоуправления, либо дистанционным выключателем.
Где в основном применяется блок управления люстрой и как он работает, я очень подробно расписал в других моих статьях:
Всё, хватит вступления. Переходим непосредственно к теме статьи.
Как устроен контроллер с пультом для люстры
Коротко ещё раз, о чём речь.
Куда подключаются провода контроллера, в этой статье рассматривать не будем. Этому уделено достаточно много внимания в других моих статьях, ссылки выше.
Инструкция по использованию и подключению блока управления дана на его корпусе:
Инструкция по управлению и подключению контроллера светодиодной люстры
Вскрываем корпус дистанционного выключателя. Digital Remote Switch
На фото специально пульт и контроллер положил рядом, чтобы было видно название.
Схема контроллера светодиодной люстры
Напоминаю, что этот дистанционный радиоуправляемый выключатель (блок управления) можно применять не только в люстрах, но и в других электронных устройствах. Можно коммутировать любое напряжение (в разумных пределах, при небольшой доработке печатной платы), и любые токи (ток ограничен током реле, но можно поставить дополнительные контакторы).
Схема контроллера приведена ниже:
Схема контроллера для люстры с пультом управления Sneha B-827
Имея эту схему, можно смело браться за ремонт контроллера, и шансы на успех довольно высоки.
Для подробного рассмотрения схемы я её увеличил, и разбил на 6 условных частей:
Схема контроллера светодиодной люстры, разбитая на части для легкого понимания
Рассмотрим каждую часть по отдельности.
1. Силовое питания и коммутация
В эту часть схемы входят входные и выходные цепи, и контакты реле, через которые питается нагрузка.
Катушки реле входят в 3-ю часть схемы.
Ноль и фаза поступают дальше.
На эту часть приходит напряжение 220В, ноль и фаза. Ноль проходит на диодный мост через дроссель, который в некоторой степени устраняет высокочастотную помеху по питанию, которая может приводить к сбоям. Для этой же цели служит конденсатор С1.
Фаза на диодный мост приходит через гасящий конденсатор С2, который для безопасной работы зашунтирован резистором R1.
Каждый диод диодного моста также зашунтирован конденсатором, для минимизации высокочастотной составляющей питающего напряжения.
Выход диодного моста нагружен на конденсаторы фильтра С3 и С4, которые служат для фильтрации низкочастотной и высокочастотной составляющих выходного напряжения моста. Напряжение стабилизируется цепочкой из последовательно соединенных стабилитрона VD2 на 12В и ограничительного резистора R4.
В результате в точке А образуется напряжение постоянного тока 12,5-15В по отношению к нулевому проводу (минус диодного моста).
3. Ключевые транзисторы
Далее напряжение 12В поступает на схему стабилизации питания +5В. Напряжение на входе этого стабилизатора понижается и стабилизируется цепочкой из резистора R6 и стабилитрона VD4 на 12В и подается на интегральный стабилизатор 78L05. Далее, стабилизированное напряжение +5В дополнительно фильтруется конденсаторами С5 и С6, поскольку нужно особое качество постоянного напряжения.
5. Радиомодуль
6. Декодер радиосигнала
Контроллер, который мы ремонтируем
Схема этого контроллера почти полностью совпадает со схемой, приведенной выше. Разница лишь в том, что в этом контроллере не 2 канала, а 3. Но принцип абсолютно тот же. Уделим немного времени, чтобы познакомиться с некоторыми внутренностями и отличиями от приведенной схемы.
Вот как выглядит контроллер для управления люстрой на 3 канала изнутри:
Внешний вид схемы контроллера
Внешний вид схемы контроллера поближе
Три реле (черные, слева) соответствуют трем каналам управления.
Справа от верхнего реле видим ряд черных полукруглых деталек. Это три ключевых транзистора и стабилизатор на +5В. Вот как это выглядит в другого ракурса:
Детали на печатной плате контроллера
Обратная сторона схемы (сторона пайки). На фото подписал выводы, чтобы было легче провести рекогнисцировку:
Печатная плата контроллера. Вид со стороны пайки
Процесс ремонта блока управления люстрой
Проблема неисправного контроллера была в том, что не включалось более одного реле. Да и одно реле иногда могло не включиться. То есть, если ещё одно какое-то реле удается включить, то второе и тем более третье уже не включаются.
Для ремонта нужно прежде всего убедиться, что пульт работает (батарейки в норме, и при нажатии на любую кнопку на пульте загорается индикатор), и подать питание на контроллер:
Подключаем контроллер для проведения измерений и проверки в процессе ремонта
Ещё лучше, для безопасности, питать устройство через трансформатор 220/220 В, для гальванической развязки от сети. Тогда риск удара током значительно снизится.
Прежде всего, проверяем напряжение питания. Измеряем обычным мультиметром, включенным на режим постоянного напряжения, на электролитическом конденсаторе фильтра С3. По отношению к общему проводу (минус диодного моста и конденсаторов С3, С4, как удобнее).
Напряжение при отключенных реле (почти без нагрузки, вхолостую) на конденсаторе фильтра 11,2В, при включении любого из реле падает до 6В. При таком напряжении, даже если декодер выдаст сигнал на открытие транзистора, и он откроется, реле всё равно не включится.
На нем написано 155J. Это означает 15х10^5 пикоФарад. А так как в 1 микроФараде миллион пикоФарад, значит, емкость конденсатора 1,5 мкФ. С напряжением всё ясно, 250В.
Если у него упала емкость, то он сильно ограничивает ток диодного моста, и под нагрузкой напряжение на выходе моста (да и на входе, в первую очередь) сильно просаживается.
Меняем конденсатор 1,5 мкФ.
Теперь измеряем напряжение на выходе диодного моста в четырех рабочих режимах:
- в холостом ходу: 12,9В,
- включение одного реле: 12,2В,
- включение двух реле: 11,7В,
- включение трех реле: 10,5В.
Всё работает нормально!
Типичные неисправности блока управления (контроллера) люстры
Следует помнить, что чаще всего в любых электронных устройствах проблемы возникают с подключением или с питанием.
В схеме контроллера ремонт может идти по таким пунктам:
Если не ремонтировать
Если ремонт зашёл в тупик, и продолжать его уже нет ресурсов (психологических, материальных и временных), то контроллер можно просто купить.
Я полагаю, что эти три контроллера имеют одинаковую начинку, за исключением количества реле с транзисторами, и мощностью внутренней схемы питания.
Вариант контроллера люстры:
Все контроллеры имеют примерно одинаковую схему, разные лишь бренды. Например. Фото блока управления люстрой, присланное читателем:
Контроллер люстры Wireless Switch Y-B2E на 2 выхода
Неисправный контроллер люстры CADJA B-2, нуждается в ремонте. Фото прислано читательницей
Обновление: Упрощенная схема контроллера люстры
Читатель Вадим прислал немного другую схему контроллера, см. комментарии от 24 декабря 2018 г. и позже.
Схема блока управления светодиодной люстры с управлением от радио пульта
Коротко рассмотрю работу и отличия этой схемы от опубликованной ранее.
До точки первого каскада схемы питания +14,3 В схема практически не отличается. В месте этой точки указаны 4 напряжения, которые соответствуют количеству включенных реле: 0/1/2/3. Вместо ключевых транзисторов используется микросхема ULN2001, которая выполняет ту же функцию ключевых каскадов.
Далее, напряжение подается на резистор 470 Ом, и при помощи стабилитрона VD7 преобразуется в напряжение около 5 В.
Далее всё, как и в первом варианте схемы, радиомодуль и декодер сигнала.
Прошу высказываться и задавать вопросы в комментариях! Буду рад также обмену опытом!
Этой статьёй я (Tamir) открываю раздел Smart. В этой рубрике будут выходить статьи, посвящённые смартфонам, КПК, планшетам и другим портативными ЭВМкам.
Как вы уже поняли из названия статьи, речь сегодня пойдёт об удалённом управлении. Лет 5 назад я впервые натолкнулся на телефон, который обладал функцией управления компьютером через блютуз. В то время это показалось мне очень занимательным. Можно было, не вставая с кровати переключать фильмы, делать громче, тише, листать презентации. Также мне встретилась программа для создания пультов управления, предназначенных для «телефонного контроля». Основана она была на использовании «Горячих Клавиш» и позволяла программировать собственные пульты управления.
Но время не стоит на месте, на дворе уже 2012 год. И не для кого ни секрет, что популярность приобрели умные гаджеты (смартфоны, КПК, планшетные компьютеры).
Просматривая Android маркет на предмет бесплатных и функциональных программ, я наткнулся на интересное приложение Unified Remote.
Программа поддерживает настройку соединения с компьютером по беспроводным сетям Wi-fi и Bluetooth в ручном и автоматическом режиме, имеет приятный, лаконичный интерфейс и незатейливое название.
Также программу отличает система поддержки пользователей. Ну, или, в крайнем случае, вы сможете написать разработчикам.
Для бесплатной версии (на момент написания статьи — январь 2012 года) доступны следующие 14 пультов:
- Basic Input – выполняет функцию удалённого тачпада
- File Manager – позволяет вам просматривать содержимое вашего компьютера, а также открывать его.
- Keyboard – виртуальная клавиатура
- Media – универсальный пульт для медиа плееров
- Navigation— поддерживает функции перемещения так, словно вы используете стрелки клавиатуры, Enter, backspace, escape, alt, tab.
- Numpad – ввод чисел и знаков аналогичных расположенным на цифровой части компьютерной клавиатуры
- Power – операции с питанием компьютера (Выключение, Перезагрузка, Гибернация)
- Scroll Wheel – функции колёсика мыши
- Slide Show – для управления мультимедийными презентациями.
- Spotify — пульт управления сервисом Spotify
- Start – позволяет вам получить доступ к программам, расположенным в меню «Пуск»-> «Все программы»
- Task Manager – выводит на экран список выполняемых программ из диспетчера задач вашего компьютера.
- VLC – пульт управления VLC плеером
- Windows Media Center – пульт управления Windows Media Center
- Windows Media Player – пульт управления Windows Media Player
- You Tube – пульт управления You TUBE плеером
К сожалению, полный набор из 28 пультов и возможность создавать свои, доступны только в платной версии приложения (3.69$).
В настройках можно выставить несколько пультов для быстрого переключения между ними:
Preferences -> «Quick Switch»
В целом и общем Unified Remote – отличная бесплатная программа для дистанционного управления компьютером.
Критика
Нет русской локализации, и соответственно русской клавиатуры в пульте «Keyboard». Кстати, набор русских символов доступен, если вы владеете методом слепого набора 🙂
Настройка
Вы должны сначала загрузить и установить сервер Unified Remote, на компьютер, которым вы хотите управлять. Просто скачайте, установите и запустите сервер. Окно настройки позволяет настраивать общие параметры, конфигурации соединения (TCP, UDP, Bluetooth и т.д.), безопасности (пароль, шифрование), спецификации удалённого управления, log и др.
После того, как всё настроено, нажимаете OK.
При необходимости всегда можно открыть окно сервера снова:
- щелкнув правой кнопкой мыши по пиктограмме в трее
- двойным щелчком по пиктограмме в трее.
Затем надо скачать и установить Unified Remote на ваш android. Приложение доступно в Андроид Market. Просто впишите в поиске «Unified Remote» или воспользуйтесь этим QR – кодом:
После того, как приложение установлено, следуйте инструкциям в приложении. Панель задач обеспечивает быстрый доступ ко всем основным функциям приложения.
Wi-fi или Bluetooth?
Соединение по Bluetooth к компьютеру конечно более удобно в настройке, но, к сожалению, дальность и стабильность действия сигнала блютуза не так велика, как по wi-fi. По wi-fi мы сможем добиться уверенной передачи сигнала, особенно если завязать подключение на точке доступа (роутере). Тем более мы можем использовать уже имеющуюся локальную wi-fi сеть. Например, ту, которую мы используем дома для раздачи интернета от ADSL модема, или ту, которую мы используем просто для передачи данных.
Но и это ещё не всё. В случае наличия и wi-fi и Bluetooth, при выходе из зоны действия блютуза вы сможете сменить соединение на wi-fi. Это очень удобно.
Настройка соединения по блютуз:
Включить блютуз на компьютере.
Сделать его видимым для других устройств
Запускаем Unified Remote
Выбираем «Servers» -> «Add»(это кнопка слева внизу) -> «Automatic»
Android самостоятельно найдёт активное Bluetooth соединение.
Убедитесь, что это именно ваше соединение, выберите его из списка.
Для этого в Unified Remote (на андроиде) зайдите в Servers и вызовите контекстное меню блютуз-соединения, далее выберите «Edit».
После того, как всё настроено и подключено, мы попадаем в главное меню, где выбираем «Remote».
В этом меню доступны различные пульты управления, описанные выше.
Настройка соединения по wi-fi:
Для этого нам понадобиться wi-fi сеть, работающая через wi-fi роутер, или wi-fi передатчик, настроенный в режиме AP (Access Point).
Настройка на компьютере:
подключитесь к wi-fi сети.(Инструкцию о том как создать и настроить локальную сеть у себя дома читайте здесь)
Запускаем Unified Remote заходим в Servers, нажимаем «add», выбираем «Manual».
Что вводить в поля:
- Type — выбираем Wi-Fi/3G
- Display Name – (произвольно) вводим название вашего подключения. (Для того чтобы отличать управляемые компьютеры друг от друга, так как по одной и той же wi-fi сети можно управлять несколькими машинами при условии, что на них установлена и настроена серверная часть).
- Host IP/Address – вводим IP адрес вашего компьютера в этой сети.
Все остальные поля оставляем без изменений, за исключение «Password».
В это поле мы вводим пароль, который устанавливали в серверной части на управляемом компьютере.
Внимание! Если адреса в вашей сети меняются, то проследите, чтобы в настройках Unified Remote на Android IP адрес был актуальным для той машины, к которой вы собираетесь подключаться.Unified Remote отличная, но не единственная программа для дистанционного управления компьютером через android. В следующей статье я опишу бесплатную программу Goldworm Remote Control, которая, на мой взгляд, заслуживает вашего внимания.
Наши руки не для скуки…
Вступление (что к чему и почему…)
У меня комп в основном используется как аудио-видео плеер. Подключен по HDMI к телику и через аудиокарту Audigy2 ZS к двум комплектам усилителей с колонками. Такое 4.0 на 50 советских ватт в каждый канал.
Системник с монитором и клавиатурой с мышью живут на балконе, а в комнату с аппаратурой протянута USB переноска с приемником для беспроводной мыши и клавиатуры.
Хоть беспроводная клавиатура с мультимедиа клавишами, но держать под боком на диване это одоробло на дофига клавиш — как-то не то…
Наткнулся я как-то на статейку про такое ПО как LIRC (Linux Infra Red Control). А так как я являюсь пользователем систем из семейства *nix, меня эта тема заинтересовала.
Смысл темы в том, что с помощью нехитрых действ можно подружить с компом пульт от видика/телека/магнитофона/муз.центра/кондиционера/прочей_фигни.
Ближе к телу…
1) Нам понадобится ИК-приемник.
Где его взять? Что за глупый вопрос — самому сделать!
Я пошел по пути наименьшего сопротивления, приемник у меня будет цепляться на COM-порт материнки.
На сайте проекта LIRC есть схемы приемников. Например вот:
Но у меня собран приемник по такой схеме:
В куче компьютерного хлама была найдена мышь на COM-порт и лишена хвоста. Онный разобран…
Оказалось что внутри не все контактные площадки, а те что есть — не совпадают с нужными. Пришлось переделывать.
Для платы приемника был использован кусок текстолита от китайской "балалайки" с "лампоськами" в колонках с одной из этих "лампочек".
Как видно, особо не парился с куском текстолита, просто отломал необходимый кусок, посверлил отверстия, ножом по перерезал имеющиеся на текстолите дорожки для нужной мне конфигурации, распаял детали.
Теперь его нужно определить в какой-то корпус. Например нерабочий блок питания от Ethernet-свитча.
Теперь его можно куда-то пристроить, но в зоне видимости пульта. У меня он в таком корпусе прекрасно занял место в свободной розетке рядом с теликом)) (внутренняя часть контактов в корпусе срезана).
2) Пульт ДУ
Берем любой какой найдем, главное что бы был рабочий. Вставляем батарейки, давим на кнопки и смотрим на излучатель через камеру мобильного телефона/фотоаппарата (не зеркалки!). Если излучатель мигает, значит пульт рабочий.
У меня этим пультом оказался пульт от японского видика фирмы Realistic (oн же Sanyo, чистый иппонец, на 110В питания)
3) Компутер, как подружить и обучить…
Изначально софт для данного дела создавался под ОС Linux, но потом его сделали и для платформы Windows.
Для начала опишу как подружить это дело с Windows.
Скачиваем программу WinLIRC, (на момент написания темы, последняя версия программы ) распаковываем куда-то и запускаем.
Софтина ругнется что не может там чего-то найти и предложит настроиться, давим ОК и высвечивается окошко:
Input Plugin выбираем "SerialDevice", далее жмем "Plugin Setup" и делаем как на картинке. На нашем ИК-приемнике должен засветиться светодиод. ИК-приемник с компом готовы принимать сигналы.
Дальше в "Remote Configs" жмем "Create Config" и следуем инструкции в открывшемся окне. Жмем клавиши для определения характеристик сигнала, потом поочередно, подписывая их. Я подписывал клавиши так, как они обозначены на пульте, что б потом проще было их назначить в программах. При нажатии клавиш пульта, светодиод ИК-приемника должен гаснуть.
После того как будет создан конфиг, самое время настроить прочее ПО в котором есть поддержка WinLIRC.
Media Player Classic
Клавишу пульта выбираете сами какую хотите, название ее писать то, которое давали при настройке WinLIRC.
Foobar2000
Скачиваем плагин foolirc, распаковываем и закидываем dll-ку в папку components установленного плеера. Запускаем плеер для настройки:
Настройки — WinLIRC Client — ставим галку Enabled — давим Connect — выбираем функцию — давим клавишу на лентяйке — проверяем правильность определенной кнопки в окне Key (будет писать то название кнопки которое вы дали) — жмем Assign — настраиваем дальнейшие функции пока не надоест или не кончатся кнопки — Apply — Ok — пользуемся.
/.lircrc
и вносим в него список программ которые будут управляться лентяйкой
include "
/.config/lirc/имя_еще_нужной_программы.lircrc"
далее открываем поочередно перечисленные файлы и назначаем кнопки (например перемотка назад в mplayer)
begin
prog = mplayer
button = кнопка_пульта
config = seek -30 0
end
Примеры таких настроек можно найти по запросу в гугле.
Читайте также:
- Как посмотреть в 1с зуп сколько дней отпуска осталось
- Gas a just или excel g отличия
- Браузер поверх всех окон андроид
- Поиск в chrome вы можете выполнять быстрый поиск в интернете закладках и истории браузера android
- Компьютерный вирус это программа производящая в вашем компьютере действия в которых вы не нуждаетесь