Разработка клиент-серверного программного решения, предназначенного для удаленного управления различными устройствами и механизмами по USB:

- клавиатура (104 клавиши),

- мышь (3 кнопки + скролл),

- геймпад (16 кнопок, Xbox 360).

Разрабатываемое программное решение является аналогом IP-KVM-устройств, но без видео и с более широким профилем применения.

Клиент – классическое, консольное, «оконное» приложение, разработанное с использованием кроссплатформенного фреймворка. Фреймворк исполнитель вправе выбирать самостоятельно (желательно Kivy, но последнее слово – за вами).

Сценарий работы: пользователь производит манипуляции с устройствами ввода (нажимает кнопки на клавиатуре, двигает и кликает мышью, нажимает кнопки геймпада и двигает его джойстики). Клиентское ПО преобразовывает (на основании словаря) события фреймворка в байт-код, для дальнейшей записи в виртуальное устройство на сервере. Байт-код передается на сервер по протоколу TCP. Каждое захваченное событие инициирует отдельную передачу состояния устройства клиента, т.е. если зажата кнопка Shift, например, то не должно формироваться непрерывного потока событий, состояние одновременно зажатых кнопок должно отправляться однократно при наступлении уникальных событий.

В связи с разнообразием геймпадов на рынке, в клиентском ПО необходимо реализовать режим «обучения»/калибровки, который позволяет пользователю, выполняющему удаленное управление, сформировать словарь сопоставлений (маппинг) событий фреймворка (действий) с байт-кодами.

Сервер – приложение, разработанное на языке Python (или на Ваш выбор, но лучше - Python) для одноплатного компьютера (Single-Board Computer) на архитектуре ARM, с возможностью эмуляции USB HID устройств ввода (RockPi, Raspberry Pi и аналоги). Осуществляет прием запросов, валидирует и записывает байт-коды в виртуальное устройство, созданное на базе USB Gadget API for Linux. Для каждого типа устройств должен быть согласован формат передаваемого запроса.

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

При необходимости, исполнителю будут переданы наработанные материалы (ссылки) по реализации вышеперечисленного функционала.

4 года назад
ylapshin
Егор 
53 года
4 года в сервисе
Был
4 года назад

Заявки фрилансеров

Максим
 
48 лет
19 лет в сервисе
Был
месяц назад
4 года назад
Ярослав
 
25 лет
4 года в сервисе
Был
4 года назад
4 года назад
  • Похожие заказы

  • Требуется разработать серверную систему для регулярного парсинга YouTube и Twitch каналов с целью формирования базы данных стримеров. На входе — файл со списком URL, на выходе — данные по каналам в CSV и XLS, а также информация по видео в XLS и MySQL. Система должна быть запущена на отдельном хостинге с возможностью использования прокси. Открытый исходный код, инструкция по установке и рекомендации по выбору VPS также входят в пакет.

    Закрыт
    4 года назад
  • Необходимо разработать парсер для автоматического добавления фотографий и описаний игр из онлайн-магазинов (Playstation, Nintendo, Steam, Google Play, Apple App Store) в каталог на сайте на WordPress. Если игра уже существует, требуется добавление ссылки на магазин. Возможность взять в работу отдельные парсеры приветствуется.

    Прикладное ПОнет заявок
    Закрыт
    4 года назад
  • Ищется программист на GO для доработки программы Mattermost. Задача заключается в добавлении кода для микрофона в существующую систему. Ознакомьтесь с исходниками на GitHub. Цена договорная, все детали будут обсуждены позже.

    Прикладное ПОнет заявок
    Закрыт
    4 года назад
  • Требуется разработать программу-эмулятор для игры War Robots, которая позволит играть без использования ключей. Необходимо создать прикладное ПО, обеспечивающее стабильную работу игры.

    Прикладное ПОнет заявок
    Закрыт
    4 года назад
  • Требуется разработка расширения для Word и Мой Офис, которое будет обрабатывать текст документа через внешний web-сервис. Расширение должно отправлять текст и реквизиты доступа на сервис, получать обработанный текст и заменять им исходный. Подробные требования и документация доступны по запросу.

    Закрыт
    4 года назад
  • $50

    Требуется разработка программного обеспечения для автоматической рассылки сообщений в личные сообщения VK и Instagram из выбранных сообществ. Программа должна менять пользователей каждые 20 сообщений и обеспечивать кликабельность ссылок в тексте. Срок выполнения — до понедельника.

    Прикладное ПОнет заявок
    Закрыт
    4 года назад
  • Требуется улучшить распознавание адресов в парсере, который обрабатывает сообщения из Whatsapp и Telegram для приложения аренды строительной техники. Имеются примеры плохо распознанных адресов. Полный код парсера будет предоставлен выбранному исполнителю.

    Закрыт
    4 года назад
  • $180

    Требуется разработать инструмент, который будет парсить цены с IHerb по списку артикулов из ЛК Ozon, применять указанные модификаторы (+% и +₽) и вносить обновленные данные в ЛК Ozon. Подробное техническое задание доступно по ссылке.

    Закрыт
    4 года назад