Giter Site home page Giter Site logo

pihidproxy's Introduction

pihidproxy

Bridge Bluetooth keyboard and mouse to USB (hid proxy)

Imgur

If you have a bluetooth keyboard, you can't access BIOS or OS without a BT stack. This project acts as a bridge so the PC only sees a USB keyboard and so works without drivers. It works by copying keypresses from the bluetooth keyboard to the piZero's USB.

Requirements:

Raspberry Pi Zero Bluetooth keyboard

Initial setup:

echo "dtoverlay=dwc2" | sudo tee -a /boot/config.txt
echo "dwc2" | sudo tee -a /etc/modules
echo "libcomposite" | sudo tee -a /etc/modules

put the following in /etc/rc.local

pair.sh
setuphid.sh
keys.py

pair.sh - bash script to pair & connect bluetooth on boot.

setuphid.sh - installs the USB keybaord driver

keys.py - reads keyboard (e.g. bluetooth) and translates keycodes, then sends it over USB.

pihidproxy's People

Contributors

mikerr avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pihidproxy's Issues

Note for Microsoft Surface Keyboard

This should be a hint for all persons who want to use a Raspberry Pi Zero W as HID proxy for a Microsoft Surface Keyboard.

It is currently not possible (<= 2019-09-26-raspbian) to pair the Surface Keyboard with the Zero, because the passcode dialogs never appear, not even if you try it via bluetoothctl. This seems to be because there are bugs in the bluetooth stack. See also this article: https://edspencer.me.uk/posts/2019-04-11-does-the-surface-keyboard-work-with-ubuntu-yes-but-only-with-ubuntu-18-onwards/

Maybe the pairing works with a Pi B 2, 3, 3+ or 4 if you use >= Ubuntu MATE 18.04.

Hid report?

Hello, I am interested in building a stenogrpahy keyboard with N key rollover, and that requires the HID reporrt flag on the usb device. Do you know if that would be possbile?

How/where to add Apple BT keyboard

Just discovered your Git repo for this project and is exactly what Iโ€™ve been hunting for.

Iโ€™ve got an Apple Wireless keyboard third generation (A1314) MC184LL/A (2 batteries)
and Pi zero W

How do I add the Vendor ID and Device ID for this?
And could you provide some brief guidance on the pairing process (eg if requires code matching)?
Many many thanks ๐Ÿ˜Š

Mouse support

Currently virtual mouse is poor - extremely jerky - possible error in HID setup.

How to use this?

I have setup a raspi zero w with dietpi and can use ssh over wifi.
i ran the 3 echo commands but how can i achieve the rest?
i couldnt find the folder where the files need to go in, so i created them but im not sure if that works.. dont understand how to start all this :(
is there a ready made image somewhere maybe?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.