iOS and Infrared - iphone

Is it possible to communicate with an Infrared device (USB Infrared, TV, Mobile Phone, etc) using iOS (iPhone or iPad)?
Well, i know it's possible, since there are many remote/universal remote applications in the AppStore. I basically want to know how?
What are the limitations and
requirements?
What kind of additional hardware is
required? If it's available in the
market?
Which protocols should i know about?
Which iOS libraries can help me in
the process.
Can anyone point me in the right direction. Thanks.

Any devices using IR for controllers are either wifi or have custom hardware that outputs IR signals based off of output from the device. So without using your own hardware, I don't believe this is possible

Infrared isn't unbuilt in iPhone. All those remote apps are wifi based.

The hardware isn't available but there is a hack you can make to the headphone socket.
http://arstechnica.com/apple/news/2011/01/project-hijack-uses-iphone-audio-jack-to-make-cheap-sensors.ars?utm_source=Ars+Technica+Newsletter&utm_campaign=05bfd22285-January_21_2011_Newsletter&utm_medium=email

There is no infrared connectivity within iOS.However there are bluetooth and wifi.Generally you can use bluetooth functionality by importing GameKit framework.Thanks

Related

Is it possible to wirelessly transfer HD video from iPhone to iPhone without wifi and without 4G or 3G?

I'm guessing bluetooth.
What are the transfer speeds?
It would have to work on iPhones which are not jailbroken, although I'm still curious about how it could work better on jailbroken ones.
The GameKit GKSession class supports connecting to nearby instances of the same app using both Wi-Fi and Bluetooth. The choice of transport is completely automatic and hidden by the API. So you could use that to transfer data between nearby devices. I don't know what the transfer speed is like though. Probably not very good.
I guess, via "Bump Technology".

iPhone Bluetooth Communication Examples

I've been trying to find examples on communicating with bluetooth devices on iOS and have been coming up short. As I understand it SPP is not yet supported. At the simplest level, I'd like to send a simple 1 or 0 signal to the bluetooth device I'm creating. (It's a bluetooth switch that would turn something on and off). Is there a way to cleverly do this through the HID or HFP profiles?
The short answer to your question is that you can't connect to an arbitrary Bluetooth device you may happen to have, you can only connect to a Bluetooth device that has come through Apple's licensing program (i.e. the "Made for iPod/iPhone" label). From Apple's documentation:
Q: [The External Accessory framework allows] my application to communicate with Bluetooth devices. So why doesn't my application see the Bluetooth accessory sitting next to my iPhone?
A: The External Accessory framework is designed to allow iOS applications to communicate only with hardware accessories that are developed under Apple's MFi licensee program.
So there is no public API for accessing an arbitrary Bluetooth device from within iOS: you have to go through the External Accessory Framework to communicate via Bluetooth, and the EAF's mission is "communicate with MFi devices," not "communicate with arbitrary external devices." A sufficiently ingenious developer could probably hack something in there, but -
it's a non-trivial undertaking
you are spectacularly unlikely to get past the App Store approval process
So there's just not much percentage in it - the effort of doing so is unlikely to reward you.
If there already exists an MFi device that can be coerced into doing something that you want, that's probably your best chance - short of going through the MFi approval/licensing process yourself, of course. If you want to do so, have at it and good luck.
I'm answering this question late because Zeroxide's answer is incorrect (you can use a random Bluetooth keyboard with your iOS device because Apple implemented that connection, which is different from giving you a public API path to doing likewise) and I find Rokridi's answer to be incomplete-though-headed-in-the-right-direction.
Edit: A caveat has since been added to the linked Apple page about Bluetooth Low-Energy devices. So there's a loophole, but it's not a big one because very, very few Bluetooth LE devices have actually been produced as yet.
As far as i know, if your external device is non iOs device then you should use External Accessory Framework to communicate your application with it. Threfore, you external device should be certified by Apple through the Made for Ipod program (MFI). Hope this helps.
If you want to use classic Bluetooth (not BLE), then you have to first PAIR the iOS device to the Bluetooth device (in Settings). If you can't do that then you can't communicate with it with your app.
NO. whether device is MFi certified or not, you can connect device to iphone if bluetooth profile is HFP, or HID's (ordinary profiles. not iAP profile). Think about bluetooth headset or keyboard. does it need MFi mark on it to use? NO. Never.

What is the range (distance) two devices can be connected using the iOS gamekit framework

I would like to develop an app using iOS gamekit library and I am curious to know what the maximum range is between the two devices. How far can they stay connected and communicating?
Thanks!
I think you should go check the bluetooth and wi-fi specs, rather than thinking that the GK decides how far you can play:)

How can I create a Bluetooth serial connection between an iPhone and an Arduino+Bluetooth Mate?

I have a project where I need my iPhone to communicate with an Arduino. Bluetooth seems like the best option for the communication. How should I program my iPhone (what framework?) to communicate with the Bluetooth Mate or do Apple's restrictions prevent this? Is it possible with a jailbroken iPhone? Is there a better way other than Bluetooth? Sample code would be helpful.
Thanks in advance
Actually you can make it happen now without Jailbreaking or MFi enrollment.
Take a look ate Bluetooth 4.0 in newer iOS devices and Arduino BT 4.0 shield.
This might help: http://blog.makezine.com/2012/03/19/bluetooth-4-0-from-arduino-to-iphone-no-jailbreaking-no-mfi/
Meanwhile there is an Arduino shield available from Seeedstudio: Bluetooth Low Energy Shield
Devices following the Bluetooth 4.0 specification can be accessed by all iPhone/iPad models with a Bluetooth 4.0 chip inside (currently iPhone 4S, 5 and iPad 3) running with iOS 6. You no longer need to be part of the MFI program or jailbreak the device for most purposes. Use the Core Bluetooth Framework that's also discussed in the WWDC 2012 videos Core Bluetooth 101 (Core OS) and Advanced Core Bluetooth (Core OS).
It's been a while since I was in contact with embedded bluetooth-to-iphone devices, but as far as I remember you have to buy authentication chips from apple.
Apple MFi
But as jailbreak is an option this might work. But I never tried this, because I once was in possession of some authentication chips.
I found btstack with a quick googling, maybe it's helpful.
Try instaling bluetoth iBlueNova, and it will comunicate with each device.
Yes, the best way to do this would be to use Blynk. Make an account, copy the example code, and get started with the Blynk app!
Apple's OS app sandbox prevents generic (Classic non-BLE) Bluetooth serial data comm on stock OS devices, except for a few companies registered in their MFi program.
The most reliable and possibly the easiest solution is to the use the Arduino Ethernet shield with a physical network connection to your WiFi router. The Arduino would host web pages or respond directly to http that did your work for you.
No jailbreaking, no BT programming, no serial com port stuff. Just regular old web pages. Sweet stuff.
The simplest solution would be to navigate with any browser on your network, including your iPhone, to your Arduino and issues commands.
Example:
http://192.168.1.101/?1
192.168.1.101 = the IP of your Arduino
?1 would mean PIN13 pulled high (i.e. turn on the LED)
Your code would be something like:
EthernetClient client = server.available();
while (client.connected())
{
if (client.available())
{
char cVar = client.read();
if (cVar != '?') return;
Serial.Print(cVar)
if (cVar == '1') digitalWrite(13, HIGH); //turn on the led
}
}
That code is quick and dirty so don't hold it against me!
Let me know what you decide and how it works out. I need to go read up on http://blog.makezine.com/2012/03/19/bluetooth-4-0-from-arduino-to-iphone-no-jailbreaking-no-mfi/
Thanks for that link ygbr!

iphone bluetooth connection

is there an iOS api to communicate to a paired bluetooth device? Looking for a starting point.
Thanks in advance!
Rob
Like ing0 said you can use GameKit. But it depends what you want to do with bluetooth. You can't access the bluetooth PAN by default, and the lower level bluetooth API requires that you sign an agreement with Apple and join the MFi (made for iPod) program to make a hardware divice that works with Bluetooth.
http://developer.apple.com/programs/mfi/
Read up on the GameKit framework. There are some good examples on Apple's Resources sending and receiving byte arrays. This definitely works with other iDevices but not sure about any old device...