This question already has answers here:
Is it possible to program Android to act as physical USB keyboard?
(14 answers)
Closed 9 years ago.
I was attempting to design an app that would allow me to have android emulate a hardware device.
I.E. a generic keyboard, a generic mouse.
I could essentially plug in my android (HTC) to a computer, and program it to use a software keyboard as the computers hardware keyboard.
I don't have any direction on how to accomplish this.
I only wish to connect USB(not bluetooth). So that the computer needs 0 installation before working. And most devices will work in Dos Mode.
You can grab the app and have a look at the code: http://code.google.com/p/androhid/
Little jewels like this shine in the middle of a ocean of useless commercial apps.
"So that the computer needs 0 installation before working"
I have a Sony Ericsson K750i, and it can behave like a HID device trough Bluetooth. Mouse and/or keyboard, anything what you like. (This is a basic default factory feature of it)
The only install that I had to do is installing the drivers for the bluetooth device on the laptop.
So we can say that no installation was needed, as you install drivers for bluetooth anyway.
There were some default profiles for different applications (media player, windows, image viewer etc)
But one could created custom profiles too, assigning any mouse or keyboard action to any of they physical keys of the phone.
It would be good to see this exact functionality for Android. I was amazed that it doesn't have this by default. It's a shame.
When I search for Android remote control on the Internet, I all can find is about small physical keyboards for android, or the solution is using wifi which needs a damn special software to run on the computer in the same time.
Related
I'd like to use my old android phone as a bluetooth keyboard for my new android phone. There seems to be plenty of solutions when it comes to using the phone as a keyboard for windows, but no solutions for android->android connection. How would I go about implementing one?
I do not think that you can do that via a simple Bluetooth pairing as you wish to do. But did you tried the Android App store? There are multiple Apps (which can be installed on both devices) for example "Tablet Remote" which description said "Tablet Remote let you control an Android tablet or phone with another Android device".
I know a similar question has been asked here: Is it possible to program Android to act as physical USB keyboard? However, I would love to know if there's a possible way to create a USB Human Interface Device WITHOUT requiring the target device to flash custom firmware or external hardware devices. Could I perhaps modify firmware through code to allow for HID? Basically I'm wondering if there's a way to do this where on the user's side they only need to download and run an app.
So ill do my best to explain. I'm wondering how easy (or hard) it would be to make an android app that talks/sends and receives data from a PC or mac, even more so with flash.
so for example, I first make a flash application on my PC / Mac, lets say it has a MovieClip of a square on the stage. That is all for that part. Next I make and android app that consists of one button. when I press that button (on the android app, on the phone) the square on the flash desktop application moves to the right or left by ten pixels.
so ultimately the mobile app is controlling the desktop flash application.
Iv searched and searched but I'm unsure of what keywords to really use to find what im looking for.
Can anybody shed some light on how difficult this is(if its possible), or any documentation / tutorials on this subject?
The Bluetooth standard includes a profile called Bluetooth HID. If you write (or download!) an Android app that implements this profile, then connect your Android device to your PC, it basically becomes a Bluetooth mouse or keyboard. It would require no programming on the PC side, as both Windows and Mac support Bluetooth peripherals.
Implementing a network protocol on the device side is usually really low-level stuff. If your programming experience is only in flash, you'll probably find this tough going (you would likely learn a lot!). Luckily, there's the Android HID library. I don't know how good it is (I just found it for this answer), but it looks done, so it would save you from having to do the most difficult parts.
You can use adb to accomplish this, which is how many of the tethering apps get around carrier restrictions. Here are some sources:
Adblib is a "library to communicate with android devices with TCP over USB without requiring the Android SDK":
http://code.google.com/p/adblib/
Thread about Adb over USB:
http://groups.google.com/forum/?fromgroups=#!topic/android-developers/JsDTBimHpOA
adb itself:
http://developer.android.com/tools/help/adb.html
Here are some other links to some other Android USB topics:
http://developer.android.com/tools/adk/index.html
http://developer.android.com/guide/topics/connectivity/usb/host.html
http://developer.android.com/guide/topics/connectivity/usb/accessory.html
http://developer.android.com/reference/android/hardware/usb/UsbInterface.html
http://developer.android.com/sdk/win-usb.html
I have a 42 inch multi-touch monitor with IR Input. I want to develop applications for multi-touch input and I have planned to go with android. Is there any way to get touch input? when we go with WPF, have to depend on a PC. Im really confused how to go through!! please help me out.Is standalone monitor possible in ANDROID?
Generally it appears that the only option to get Android (at least under ICS) to include touch screen HID drivers is to recompile Android from source.
Here are some instructions for exactly the purpose you describe (they also require the PandaBoard single-board computer as an intermediary).
There's a guy on xda-developers who's trying to do this using the Android USB Host functionality and MHL only on a Samsung Galaxy S3, but there's no confirmation one way or the other that he ever got that working.
I have been tasked with sourcing an off the shelf touch pad device that can be used as a dedicated industrial instrument controller.
Is it possible to run a dedicated application and prevent user access to all other functions/applications within Android.
Also is it possible write your own USB device driver which would allow you to connect an USB serial class device?
Of course you can. Like already stated Android is open source. You can take the sources and recode them to your desire so that the device behaves like you want.
In the end the default android launcher and all other applications are all just standard Java applications (mainly). You can recode it so that instead of loading the launcher app it loads up your app.
I think you can use this OS to make your own custom gadgets same as you can use linux in embedded systems.
Its open source so you can go down into the OS code and disable what you like. So i would say it is indeed possible. Windows does also do windows embedded like windows CE/WM range, these have touch screens and come in rugged form factors too, M3,PSION and others.
You can recode the OS visual display, i.e. HTC sense on all their phones. So you could recode it to show nothing.
As to the driver, well a driver is a driver this will also be possible.