Program bluetooth receiver to only be pairable with a single device? - bluetooth

Is there a way to program a bluetooth receiver/dongle so it's only discoverable/accessible by a single device? This for security purposes as I can't switch on bluetooth on my pc but still want to use my bluetooth keyboard. I know some keyboards come with pre-programmed dongles that do exactly that. Thanks in advance for your help.

Related

Emulate multiple Bluetooth Devices

I want to use a linux machine and a bluetooth dongle to simulate multiple bluetooth devices (let's say 15).
Is there a way of doing that with a single dongle?
The simulated Bluetooth "devices" do not need any functionality at first, just to be discoverable and connectable.
Purpose: I want to connect as many bluetooth devices as possible to a system, to check what happens after a certain amount of devices. But I dont want to buy that many phones/bt players/etc. :D
Does anyone have some experiences in that? Thanks^^

Bluetooth Device Tracker/ Finder

I lost my Bluetooth earphones and had been searching for it recently. I would like to ask if there are any programs (or how I can code my own) that can help look for a paired but not connected Bluetooth device. Thanks in advance and much appreciated.
Any app can find your bluetooth earphones, only if it is ON. From my perspective, one suggestion is to [save the name or device address]remove pairing from your phone for the headset and do a bluetooth search . If your headset appears on the device discovery list, then it should be around.

Emulate a Bluetooth Device from PC

I wonder whether it is possible to emulate a specific bluetooth device like a Remote Controller for a TV or another device with my PC. I'd be okay with installing an additional hardware device for my computer (e. g. a BlueTooth PCIe card).
I imagined something like "recording" all single commands of my original remote controller using my Bluetooth card and afterwards use these recorded commands to turn on my TV for example.
Is something like this possible (with additional hardware maybe)?
Of course this is possible. Bluetooth is just a protocol and you can impliment it in your custom software to emulate all kinds of devices. If you need to emulate simple devices like keyboard or mouse, there are many ready solutions like this.
But if you have non standard device, there won't be any ready solutions and you will have to implement it yourself. What can help you:
If you have some kind of controller for PC and you want to emulate device with unknown protocol, you can use WireShark or other sniffer to understand what's going on.
There is an emulator called BT-Sim, but it is so poorly documented that I can't even guess what it does.
You can can take as example different android software like described in answers to this question.
You can check different program samples for PC like this.
For hardware you need only simple Bluetooth dongle. However, if you want to spy on some BLE (Bluetooth Low Energy) devices, you can buy hardware sniffer like this.
(At least in Windows 10) Microsoft Store has an application called "Bluetooth LE Explorer" which is able to simulate different kind of Bluetooth GATT profiles as a peripheral.

Can a bluetooth usb dongle be detected when only powered on?

I bought one of those tiny bluetooth USB dongles that you can plug on a PC and make bluetooth communications. I am wondering if I just plug this dongle to a USB power source, like the USB charger that comes with iPad, can the bluetooth dongle power up, and be discovered as a bluetooth device? This sounds reasonable, since the bluetooth dongle should be able to broadcast itself, at least using some low-level protocol, i.e. showing its Mac address.
However, I tried to do the following:
1.Plug the bluetooth dongle on my iPad's usb charger
2.Search bluetooth devices on my laptop
and I could not find it. Is it because the bluetooth dongle needs the PC to initialize it, so that it can be discovered? Or I am not doing it right?
Thanks
It depend on the dongle
Typical PC dongles depends on the host (pc) to initialize and start any bluetooth activity - including scanning etc
It is practically possible to make dongles that can start becoming discoverable without waiting for host initialization. This has to be a custom build

How to send keystrokes from one computer to another by USB?

Is there a way to use one computer to send keystrokes to another by usb ?
What i'm looking to do is to capture the usb signal used by a keyboard (with USBTrace for example) and use it with PC-1 to send it to PC-2.
So that PC-2 reconize it as a regular keyboard input.
Some leads to do this would be very appreciated.
What you essentially need is a USB port on PC-1 that will act as a USB device for PC-2.
That is not possible for the vast majority of PC systems because USB is an asymmetric bus, with a host/device (or master/slave, if you wish) architecture. USB controllers (and their ports) on most PCs can only work in host mode and cannot simulate a device.
That is the reason that you cannot network computers through USB without a special cable with specialised electronics.
The only exception is if you somehow have a PC that supports the USB On-The-Go standard that allows for a USB port to act in both host and device mode. USB-OTG devices do exist, but they are usually embedded devices (smartphones etc). I don't know if there is a way to add a USB-OTG port to a commodity PC.
EDIT:
If you do not need a keyboard before the OS on PC-2 boots, you might be able to use a pair of USB Bluetooth dongles - one on each PC. You'd have to use specialised software on PC-1, but it is definitely possible - I've already seen a possible implementation on Linux, and I am reasonably certain that there must be one for Windows. You will also need Bluetooth HID drivers on PC-2, if they are not already installed.
On a different note, have you considered a purely software/network solution such as TightVNC?
There is a solution:
https://github.com/Flowm/etherkey
This uses a network connection from your computer to the raspi which is connected to a teensy (usb developer board) to send the key strokes.
This solution is not an out-of-the-box product. The required skill is similar to programming some other devices like arduino. But it's a complete and working setup.
The cheapest options are commercial microcontrollers (eg arduino platform, pic, etc) or ready built usb keyboard controllers (eg i-pac, arcade controllers,etc)
SEARCH THIS PROGRAM:
TWedge: Keyboard Wedge Software (RS232, Serial, TCP, Bluetooth)
then, MAKE YOUR OWN CONNECTION CABLE WITH:
(usb <-> rs232) + (NULL MODEM) + (rs232 <-> usb)
Connect 2 computer, write your own program to send signal to your (usb <-> rs232) unit, then you can control another computer under the help of TWedge.
The above mentionned https://github.com/Flowm/etherkey is one way. The keyboard is emulated from an rPi, but the principle can be used from PC to PC (or Mac to Whatever). The core answer to your question is to use an OTG-capable chip, and then you control this chip via a USB-serial adapter.
https://euer.krebsco.de/a-software-kvm-switch.html
uses a very similar method, using an Arduino instead of the Teensy.
The generic answer is: you need an OTG capable, or slave capable device: Arduino, Teensy, Pi 0 (either from Rapberry or Orange brands, both work; only the ZERO models are OTG capable), or, an rPi-A with heavy customisation (since it does not include USB hub, it can theoretically be converted into a slave; never found any public tutorial to do it), or any smartphone (Samsung, Nokia, HTC, Oukitel ... most smartphones are OTG capable). If you go for a Pi or a phone, then, you want to dig around USB Gadget. Cheaper solutions (Arduino/Teensy) need custom firmware.

Resources