Making a Windows Mobile device emulate a Bluetooth HID device
It's perfectly possible. Just start a bluetooth server registered with the HID service Guid {00001124-0000-1000-8000-00805f9b34fb}. If the device supports the Microsoft bluetooth stack you can use Peter Foot's excellent .NET CF library (http://32feet.net/) and BluetoothService.HumanInterfaceDevice;
UPDATE:
With Peter Foot's library the server would look something like this:
using System.IO;
using InTheHand.Net.Sockets;
using InTheHand.Net.Bluetooth;
// ...
BluetoothListener l = new BluetoothListener(
BluetoothService.HumanInterfaceDevice);
using (l) {
BluetoothClient c = l.AcceptBluetoothClient();
using (c) {
Stream s = c.GetStream();
using (s) {
// send HID bytes
}
}
}
Regards,
tamberg
how use a windows pc as bluetooth hid?
I reached the answer for this question. In order to use your pc as bluetooth HID you must have a special hardware that can implement a HID profile.
I did not found any device that could implement this. The only way is to build one with a specific hardware piece like RN-42 .
anyway, there is no way to do this via software with your default bluetooth hardware on your pc.
USB HID Enumeration with BLED112
just for information, this is the response given by the silicon labs technical team :
"Unfortunately that is not possible, the BLED112 enumerates as a USB CDC device only. It communicates with the PC using BGAPI messages which is our proprietary protocol to interface with our modules."
Can you get Windows raw input data immediately without WM_INPUT messages?
You can use (possibly overlapped - for async reads) ReadFile
on a HID device file handle.
See Obtaining HID Reports article and HClient sample application that is doing both - enumerating devices and reads from them. It is doing that without WM_INPUT
/Raw Input API.
Making linux into a bluetooth keyboard (HID)
For Bluetooth there are a couple of ways HID devices are implemented.
- Classic Bluetooth is documented at Human Interface Device (HID)Profile
- Bluetooth Low Energy is documented as HID over GATT (HoG) Profile
The Linux Bluetooth Stack can implement this selecting different profiles using the D-Bus API documented at: https://git.kernel.org/pub/scm/bluetooth/bluez.git/tree/doc/profile-api.txt
A while ago I did an experiment to create a HID keyboard service with Python on a RPi:
https://gist.github.com/ukBaz/a47e71e7b87fbc851b27cde7d1c0fcf0
Related Topics
How to Make an "Alias" for a Long Path
How to Append the Output to a File
How to Add .So File to the Java.Library.Path in Linux
Rsync How to Include Directories But Not Files
Hadoop: «Error:Java_Home Is Not Set»
Using Rsync Filter to Include/Exclude Files
Shared Library in Fortran, Minimal Example Does Not Work
Concatenating Two String Variables in Bash Appending Newline
Linux Os: /Proc/[Pid]/Smaps Vs /Proc/[Pid]/Statm
Symbolic Link: Find All Files That Link to This File
How to Find Ports Opened by Process Id in Linux
How to Capture the Output of a Top Command in a File in Linux
Linux Configure/Make, --Prefix
Linux Mint - Adding Environment Variables Permanently