3
votes

I am looking at a variety of options to enable Infrared SIR comms between my Android devices and some external hardware. The options appear to be. 1) IOIO board or similar USB host adaptor (I would include Arduino in this) 2) Audio->Infrared as is being touted for many remote control type projects 3) USB OTG to get limited host capability on the Android device. (I want to avoid custom roms and rooting if possible as I'd like the eventual solution to be accessible to the majority of users)

option 1 should work, but will be bulky and most likely too nerdy for most users to both with. option 2 is feasible for the remote control type projects but I am not sure whether it is viable for arbitrary serial communications as pre-recorded tones are simply not going to work here. Not closed to this but it will be a considerable amount of work... option 3 on the face of it if USB OTG would allow me to access an IR dongle over USB then this seems very likely to be the simplest for both development and end users.

The question is....Does USB-OTG give me such capability? Would I still need kernel level support that is not likely to be in a stock android kernel?

Are there other USB based options I am missing here?

1

1 Answers

1
votes

I posed two questions and I have some tentative answers to both 1) Does USB-OTG give me support for USB IRdA? Using a Sony Xperia Neo running gingerbread, the answer is tentatively yes.

[148640.129760] usb 1-1: new low speed USB device using msm_hsusb_host and address 2
[148640.288665] usb 1-1: device v0e9c p0000 is not supported
[148640.288665] usb 1-1: New USB device found, idVendor=0e9c, idProduct=0000
[148640.288696] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[148640.288696] usb 1-1: Product: Streamzap Remote Control
[148640.288696] usb 1-1: Manufacturer: Streamzap, Inc.
[148640.289031] usb 1-1: configuration #1 chosen from 1 choice

So in theory the device is there. Now I just need to figure out how to read it. The device block driver looks to be root rw only so that might ultimately mean that this is not fully achievable.....

2) Are there other USB based options? Possibly but I have potentially also found a more interesting possibility for the Audio-IR. It requires more circuitry but removes the overhead/problem of crafting specific .wav files. It uses a simple op-amp comparator setup to use simple binary high low from the audio channels. https://play.google.com/store/apps/details?id=re.serialout#?t=W251bGwsMSwxLDIxMiwicmUuc2VyaWFsb3V0Il0. and http://hackaday.com/2010/11/10/android-talks-pulsewave/