Linux emulate bluetooth mouse

Emulate a bluetooth mouse

Is it possible for my computer to pretend it is a bluetooth mouse, so another device can connect to it? An android device allow its mouse to be controlled by bluetooth without rooting it, and my computer have bluetooth, so if I could get them to speek the same language/protocol, I could send mouse-commands from the computer to the android. Is it possible, or am I just dreaming? 🙂

4 Answers 4

I know a project called Master Control which did exactly that: a program would read events from local /dev/input sources and resend those events either via Bluetooth HID profile or via USB using gadgetfs . This could effectively emulate either BT or USB mouse, keyboard or joystick.

The original project was built for ARM, and I’m not sure if the author (Roger Zoellner) has ever released the sources. You may want to ping him about it, so you don’t have to re-implement everything from scratch.

Yes, that’s possible. For example, hidclient allows you to use a Linux PC as a bluetooth keyboard and mouse for another device.

My tablet can see the computer, and its has «Audio» and «Input», but if I try to use it as «Input», it just say its unable to connect 🙁 Any ide how to find out why?

What exactly have you done (step-by-step description of commands used)? Permissions correct for the user that runs the programs? How exactly did you try to use it as input, and what’s the exact error message? What does the syslog say?

any luck getting hidclient to work on ubuntu 16.04? I tried the readme here github.com/benizi/hidclient

I don’t think you are dreaming. I think that this can be done using a programming language like Python , C , etc. For example in Python with a quick search i found this tutorial based on PyBluez: https://people.csail.mit.edu/albert/bluez-intro/c212.html

By the way, May be already available apps could fit your needs. I had been using AirDroid apps a couple of years ago and i was very happy with it since i could browse my android phone by my PC using just WiFi (not cable , not BlueTooth).

PS: AirDroid does not require root access to your phone, you can use your PC Keyboard and mouse and is still available in google play. Unfortunately i can not tell for sure if AirDroid can work with BT or if there are AirDroid BT apps.

Читайте также:  Lenovo ideapad z510 bluetooth

Источник

Bluetooth mouse (Русский)

Состояние перевода: На этой странице представлен перевод статьи Bluetooth mouse. Дата последней синхронизации: 25 сентября 2021. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

Эта статья описывает настройку Bluetooth-мышей и решение связанных с ними проблем. Информация базируется на основной статье Bluetooth, и предполагается, что вы уже изучили её.

Настройки

Скорость прокрутки на Apple Magic Mouse

Если прокрутка слишком медленная, попробуйте

# modprobe -r hid_magicmouse # modprobe hid_magicmouse scroll_acceleration=1 scroll_speed=55

Можно установить значение от 0 до 63.

Когда вы найдёте подходящее вам значение, можно сделать это изменение постоянным в /etc/modprobe.d/

/etc/modprobe.d/hid_magicmouse.conf
options hid_magicmouse scroll_acceleration=1 scroll_speed=55

Щелчок средней кнопкой на Apple Magic Mouse

Если вы считаете, что средний щелчок слишком привередлив, вы можете отключить его

# modprobe -r hid_magicmouse # modprobe hid_magicmouse emulate_3button=0

Можно сделать это изменение постоянным в /etc/modprobe.d/

/etc/modprobe.d/hid_magicmouse.conf
options hid_magicmouse emulate_3button=0

Сопряжение мыши и dual boot

При использовании нескольких операционным систем вам придётся настраивать сопряжение с мышью каждый раз снова и снова при переходе в другую ОС. Это связано с тем, что при сопряжении Bluetooth-служба генерирует уникальный набор ключей сопряжения.

Во-первых, ваш компьютер хранит MAC-адрес устройства Bluetooth и ключ сопряжения. Во-вторых, ваше Bluetooth-устройство хранит MAC-адрес компьютера и соответствующий ключ. Это обычно работает нормально, но MAC-адрес вашего Bluetooth-порта одинаковый во всех ОС (он прописан на аппаратном уровне), а при сопряжении каждый раз генерируется новый ключ. Этот ключ перезаписывает старый, хранящийся на Bluetooth-устройстве. Windows перезаписывает Linux-ключ и наоборот.

Вы можете перенести ключи сопряжения из другой системы в Linux; смотрите Bluetooth (Русский)#Сопряжение при Dual boot.

Если у вас устройство Bluetooth LE, используйте этот Python-скрипт, слегка адаптированный для Arch (оригинальное обсуждение [1]).

Решение проблем

Тормоза мыши

Если вы наблюдаете тормоза мыши, вы можете попробовать увеличить частоту опроса. Смотрите Mouse polling rate для дополнительной информации.

Можно попробовать установить минимальную/максимальную задержку для мыши в BlueZ [2]:

Попробуйте изменить файл /var/lib/bluetooth/mac-адрес-адаптера/mac-адрес-мыши//info , добавив туда следующие строки:

[ConnectionParameters] MinInterval=6 MaxInterval=9 Latency=44 Timeout=216

Также можно использовать hcitool (из bluez-utils-compat AUR ) для изменения параметров задержки:

# HANDLE="$(hcitool con | grep '' | awk '')" # get the device handle # hcitool lecup --handle $HANDLE --latency 0 --min 6 --max 8

Это применится только для текущего соединения; после переподключения мыши команду нужно будет выполнить снова.

Ещё можно попробовать изменить настройки задержки через debugfs. Смотрите /sys/kernel/debug/bluetooth/hci0/conn__interval> .

This example will solve the lag problems, but you must un pair and pair the mouse:

# echo 0 > /sys/kernel/debug/bluetooth/hci0/conn_latency # echo 6 > /sys/kernel/debug/bluetooth/hci0/conn_min_interval # echo 7 > /sys/kernel/debug/bluetooth/hci0/conn_max_interval

Проблемы с bluetooth-адаптером USB

Если у вас проблемы с адаптером USB, можете попробовать выполнить:

Сейчас вы должны получить устройство hci0 с помощью команды:

Читайте также:  Магнитола jvc kd r422 блютуз

Иногда устройство не активируется автоматически. Попробуйте поднять интерфейс с помощью:

и выполнить поиск устройств, как описано выше.

Мышь постоянно отключается

Если мышь перестаёт работать, но снова работает после перезапуска Bluetooth, или постоянно засыпает через несколько секунд неактивности (что случается как минимум с некоторыми модулями Dell XPS 13 [3] [устаревшая ссылка 2022-09-17 ⓘ] ), вам может понадобиться отключить USB autosuspend для выбранного устройства.

Проблема также может быть в таймауте устройства и настройках HID. Смотрите #Проблемы с Thinkpad Bluetooth Laser Mouse.

Если у вас Logitech, проблема может быть решена процедурой, описанной в #Проблемы с Logitech BLE мышами (M557, M590, Anywhere 2 и т.д.).

Проблемы с Thinkpad Bluetooth Laser Mouse

Если у вас Thinkpad Bluetooth Laser Mouse подключается и быстро (спустя несколько миллисекунд) отключается каждые несколько секунд (когда вы её двигаете или нажимаете кнопку), попробуйте выполнить сопряжения с кодом 0000 вместо сопряжения без кода.

Если это не помогло, проблема может быть в настройках таймаута устройство. Измените/создайте файл /etc/bluetooth/input.conf и пропишите в нём следующие изменения:

# Configuration file for the input service # This section contains options which are not specific to any # particular interface [General] # Set idle timeout (in minutes) before the connection will # be disconnect (defaults to 0 for no timeout) IdleTimeout=0 #Enable HID protocol handling in userspace input profile #Defaults to false(hidp handled in hidp kernel module) UserspaceHID=true

Эти изменения предотвратят таймаут устройства, чтобы оно оставалось подключенным. Вторая настройка включает userspace обработку HID. Перезапустите службу bluetooth.service для тестирования изменений. Ещё может понадобиться перезагрузиться и провести повторое сопряжение с устройством.

Проблемы с Kensington Expert Wireless Trackball

Kensington Expert Wireless Trackball имеет частоту опроса по умолчанию в районе 200мс, что создаёт ощутимые задержки. Для исправления добавьте или измените раздел [ConnectionParameters] в файле /var/lib/bluetooth/mac-адрес-адаптера/mac-адрес-мыши/info как показано выше; уменьшите задержку или вообще установите её в 0 .

Проблемы с Logitech BLE мышами (M557, M590, Anywhere 2 и т.д.)

Иногда сопряжение проходит успешно, но мышь не двигается. Устройство нужно добавить в доверенные и разблокировать. Сперва откройте терминал и выполните bluetoothctl

[bluetooth] # remove XX:XX:XX:XX:XX:XX
[bluetooth] # trust XX:XX:XX:XX:XX:XX
[bluetooth] # pair XX:XX:XX:XX:XX:XX
[bluetooth] # connect XX:XX:XX:XX:XX:XX

Если мышь не работает напрямую, выключите и снова включите её.

Иногда бывает нужно загрузить модуль ядра uhid .

Проблемы со всеми BLE мышами на ядра 5.9+

Смотрите также

Источник

Setup a linux computer to act as a bluetooth keyboard/mouse

The hidclient program makes a Bluetooth® technology equipped computer appear as a Bluetooth® keyboard and mouse device to other machines. Input events (like keystrokes and mouse movements) of the locally attached input devices will be forwarded to another machine via the Bluetooth® link. For the counterpart (which might be a Linux PC, a Win PC, a PDA. ) there is no technical difference to «real» Bluetooth® input devices.

It doesn’t seem to be maintained anymore, but a somewhat updated fork is accessible at https://github.com/benizi/hidclient

Читайте также:  Первый телефон с bluetooth

Solution 2:

As said you should to configure your laptop to implement an HID device profile.

If you are on Linux a good starting point could be libhid.

HID Device Interface (hiddev) works very well, and is actually very easy to understand. Documentation can be found, as usual, in the Kernel docs too. Also, the include file hiddev.h in /usr/include/linux was also very helpful of course.

Solution 3:

The closest I know that does what you want is BlueMaemo http://www.valeriovalerio.org/?page_id=174

It’s for Nokia tablets, but those run Linux anyway.

It shouldn’t be too hard for someone to port it for use with a laptop.

Solution 4:

This little piece of code claims to do what you want. I assume this is what Marko was referring to (another answer). I’m looking for the same kind of thing: a quick way to use a real keyboard (for mostly email) on my mobile phone, without buying another piece of hardware. From the description:

What is it?

xkbd-bthid is a Bluetooth HID Keyboard in software, meaning this is an application which emulates a Bluetooth Keyboard. I call it soft-HID.

What could you use it for?

You can turn any Linux box, PDA or tablet into Bluetooth keyboard and control your DVR, MP3 player or what ever with it.

I made a preliminary effort to compile it, but it won’t work against BlueZ v4. However, the Ubuntu repositories have some packages for backwards compatibility with BlueZ 3, which gives me some hope. xkbd-bthid depends on BlueZ 2.4. I probably won’t get further just now, since my bluetooth stack is currently messed up in Linux, but do post here if you manage to compile it.

Solution 5:

If you’re just looking to share the keyboard and mouse you might want to consider using Synergy. It’s probably a lot easier than trying to get the bluetooth setup.

Synergy lets you easily share a single mouse and keyboard between multiple computers with different operating systems, each with its own display, without special hardware. It’s intended for users with multiple computers on their desk since each system uses its own monitor(s).

Redirecting the mouse and keyboard is as simple as moving the mouse off the edge of your screen. Synergy also merges the clipboards of all the systems into one, allowing cut-and-paste between systems. Furthermore, it synchronizes screen savers so they all start and stop together and, if screen locking is enabled, only one screen requires a password to unlock them all. Learn more about how it works.

I use it to share my desktop’s mouse and keyboard with my laptop when I am using both computers.

Источник

Оцените статью
Adblock
detector