Author Topic: InputStick: USB over Bluetooth for Android  (Read 7877 times)

0 Members and 1 Guest are viewing this topic.

Offline qubasTopic starter

  • Newbie
  • Posts: 4
InputStick: USB over Bluetooth for Android
« on: February 05, 2014, 02:57:02 pm »
Maybe some of you will find my project useful/interesting:
http://inputstick.com
http://igg.me/at/inputstick/x/1459066

It is a wireless USB receiver (adapter) that can be paired with Android smartphones/tablets what allows the Android device to act as a wireless USB "something": keyboard, mouse, controllers etc. This allows your device to do anything that physical USB device can: type, move mouse pointer, click, scroll and so on.
Very brief demo: http://youtu.be/Ywe7Qh-w1c8

Here's how this works:
Android device <-Bluetooth-> InputStick <-USB-> USB host: (PC, consoles etc)

I know that there are many software-only solutions that allows to do more less the same using WiFi/Bluetooth HID/ADB, but because my solution is based on additional hardware it means that:
  • works out of the box with any USB hardware/OS (PC, consoles, RaspberryPi and so on),
  • doesn't need WiFi/server software/custom drivers,
  • no need to configure anything on target device (PC),
  • doesn't require root/custom ROM.

I will release two API versions:
  • simple one: "hey, I just need a keyboard/mouse",
  • and more complex API which will allow you to modify USB descriptors (for example: set any PID/VID/serial number that you want), create custom USB devices, directly access USB endpoints.

What are possible applications for this?
  • remote control, presentation remote,
  • password manager,
  • barcode scanner,
  • game controllers,
  • macros, brute forcing passwords,
  • speech to text,
  • and probably many more.

I'd be very interested in hearing your comments, suggestions or questions.
 

Offline NiHaoMike

  • Super Contributor
  • ***
  • Posts: 9007
  • Country: us
  • "Don't turn it on - Take it apart!"
    • Facebook Page
Re: InputStick: USB over Bluetooth for Android
« Reply #1 on: February 05, 2014, 03:47:06 pm »
If possible, also have it implement CDC serial so that the host (PC) can be used as a keyboard for the Android through a terminal emulator app.
Cryptocurrency has taught me to love math and at the same time be baffled by it.

Cryptocurrency lesson 0: Altcoins and Bitcoin are not the same thing.
 

Offline qubasTopic starter

  • Newbie
  • Posts: 4
Re: InputStick: USB over Bluetooth for Android
« Reply #2 on: February 05, 2014, 05:13:37 pm »
CDC is already on my todo list (at this moment I can do something similar using Custom-HID class)
 

Offline PlainName

  • Super Contributor
  • ***
  • Posts: 6820
  • Country: va
Re: InputStick: USB over Bluetooth for Android
« Reply #3 on: February 06, 2014, 12:11:35 am »
Quote
Maybe some of you will find my project useful/interesting:

I think that's a jolly clever project. Wish I'd thought of it :)
 

Offline fake-name

  • Regular Contributor
  • *
  • Posts: 75
Re: InputStick: USB over Bluetooth for Android
« Reply #4 on: February 06, 2014, 05:38:43 am »
Flexible funding = probably a scam. It looks like you have actual hardware, but flex-funding is going to scare away the great majority of possible backers, with good reason. Fixed funding is the ONLY acceptable option for a serious project.

Why do you have a XBox 360 logo? Unless your dongle will work with xbox controllers (which are not bluetooth*), you should probably remove it. Furthermore, later on you say "Xbox360 - not supported at all.". Wat. Why the hell do you have the xbox logo then?

From what I can glean, you're basically enumerating as a mouse/keyboard, and translating bluetooth HID device commands to plain old mouse/keyboard commands on the fly? You need to make it MUCH more clear that this is for bluetooth devices only.  Frankly, the whole pitch is kinda incoherent, and doesn't really tell me what the thing you're trying to sell actually does.

You pitch here "USB over Bluetooth for Android" also has NOTHING to do with what your hardware actually does. "USB over Bluetooth" means you're sending USB over bluetooth. What you are actually doing is transmitting HID events (?)/ key-events over bluetooth, and just enumerating as a USB HID at one end. Unless you're piping the complete USB connection over bluetooth (THAT would be cool), don't call it that.

And the most major complaint:

Why the FUCK would I want to use a smart-phone as remote mouse/keyboard for a PC? The touch-screen UI is HORRIBLE! I mean, it's as good as it can get for a non-tactile feedback device of it's size, but if I'm close enough to connect using bluetooth, I'm close enough to use a proper keyboard.

It seems like you've basically make a very complex bluetooth wireless presenter, with all the commensurate limitations.

---

I'd probably think this was a lot more cool if it could translate between some of the obnoxious complex proprietary bluetooth game-pads and a computer without needing a custom bluetooth stack. If you make it enumerate a bluetooth PS3 game-pad as a plain old HID/driver-install-free gamepad with good enough latency, I might buy one.
« Last Edit: February 06, 2014, 05:43:52 am by fake-name »
 

Offline qubasTopic starter

  • Newbie
  • Posts: 4
Re: InputStick: USB over Bluetooth for Android
« Reply #5 on: February 06, 2014, 12:41:10 pm »
Quote from: fake-name
Flexible funding = probably a scam. It looks like you have actual hardware, but flex-funding is going to scare away the great majority of possible backers, with good reason. Fixed funding is the ONLY acceptable option for a serious project.

Development is almost finished, it's going into small scale production in March anyway, so it is not like this project depends on IGG funding. That's why I decided to go for flexible funding option.


Quote from: fake-name
Why do you have a XBox 360 logo? Unless your dongle will work with xbox controllers (which are not bluetooth*), you should probably remove it. Furthermore, later on you say "Xbox360 - not supported at all.". Wat. Why the hell do you have the xbox logo then?

Xbox360 - works as a keyboard only. I guess you're right, I probably shouldn't use Xbox logo here.

Quote from: fake-name
From what I can glean, you're basically enumerating as a mouse/keyboard, and translating bluetooth HID device commands to plain old mouse/keyboard commands on the fly? You need to make it MUCH more clear that this is for bluetooth devices only.  Frankly, the whole pitch is kinda incoherent, and doesn't really tell me what the thing you're trying to sell actually does.

You pitch here "USB over Bluetooth for Android" also has NOTHING to do with what your hardware actually does. "USB over Bluetooth" means you're sending USB over bluetooth. What you are actually doing is transmitting HID events (?)/ key-events over bluetooth, and just enumerating as a USB HID at one end. Unless you're piping the complete USB connection over bluetooth (THAT would be cool), don't call it that.

There are two ways this can work:
1) fixed keyboard & mouse. This is to make it easy to port basic functionality to platforms other than Android.
2) It also allows you to get more control over USB: set your own descriptors, USB request that your implementation supports and access USB endpoints directly. Although this is heavily limited by Bluetooth SPP (115200bps and latency), so in the end you end up with HID class (what good is MSD if it gives you 2-3kbps transfer rate). So it is not complete USB over Bluetooth, but rather "as much as it is possible USB over Bluetooth".

In the end it turns out that vast majority of people are actually only interested in keyboard & mouse option.

Quote from: fake-name
Why the FUCK would I want to use a smart-phone as remote mouse/keyboard for a PC? The touch-screen UI is HORRIBLE! I mean, it's as good as it can get for a non-tactile feedback device of it's size, but if I'm close enough to connect using bluetooth, I'm close enough to use a proper keyboard.

This really depends. At home, there is no reason at all to use phone as a remote via USB. Situation changes when you work with embedded devices. But remote is just one thing. I think that most useful application is using your phone as a USB password manager: works with any hardware/OS, requires no configuration.
 

Offline logictom

  • Supporter
  • ****
  • Posts: 336
  • Country: au
Re: InputStick: USB over Bluetooth for Android
« Reply #6 on: February 06, 2014, 01:05:31 pm »
This really depends. At home, there is no reason at all to use phone as a remote via USB. Situation changes when you work with embedded devices. But remote is just one thing. I think that most useful application is using your phone as a USB password manager: works with any hardware/OS, requires no configuration.

I hope that's encrypted data otherwise a cheap Ubertooth will allow me to watch all your passwords fly across bluetooth  8)
 

Offline qubasTopic starter

  • Newbie
  • Posts: 4
Re: InputStick: USB over Bluetooth for Android
« Reply #7 on: February 06, 2014, 01:20:34 pm »
AES-128, CBC mode
 

Offline Stonent

  • Super Contributor
  • ***
  • Posts: 3824
  • Country: us
Re: InputStick: USB over Bluetooth for Android
« Reply #8 on: February 08, 2014, 02:49:09 am »
That and just be careful when using logos like PS3 and Xbox360 unless you're sure you can legally. Some companies won't let you use their logo unless your product is certified by them.
The larger the government, the smaller the citizen.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf