Does CoreBluetooth implement Direct Test Mode? - ios

I learned that the Bluetooth 4.0 specification states a Direct Test Mode for the RF PHY (Bluetooth Core Specification v4.1, Volume 6, Part F). I'm using a BLE112 module, and Bluegiga's API implements these testing commands as test_phy_end(), test_phy_rx() and test_phy_tx().
Does CoreBluetooth implement them somehow? If not, is there another way to access the Direct Test Mode in iOS?

Apparently no there is not.
I spoke with a colleague who develops BLE firmwares.
You have to connect physically to the BLE chip.
A way to do it, could be for example, to have a MFI device that you connect to the lightning/30-pin connectors, and connect it to the BLE chip. But I don't know if it exists, and you may have to do it yourself.

Related

Bluetooth 3.0 connection on IOS using IAP2

Question: Given MFI certified IAP2 support for Bluetooth 3.0, how can one connect, search and pair from withing the application? What are the exact commands? An example would be best :)
Background:
We recently developed an ISO application that communicates an external HW device using Bluetooth 3.0 which as some of you know reuqires MFI (which we have)
One of the great drawbacks was the lack of the application to initiate the connection to the bluetooth device due to IOS limitations i.e. the user must manualy go to the iphone bluetooth settings and connect to the external HW device, unlike in adroid where given the external HW device Bluetooth name and assuming the user already paired the device the application can initiate the connection
After talking to the Bluetooth module manufacturer about this drawback he replied the BT module supports both IAP1 and IAP2 while one of the features of IAP2 was "Bluetooth connection", "searching" and even "paring" from within the application.
The probelm is that he couldn't tell us HOW? Hence the question above :)
Thank you &
Best Regards
Ran

Arduino and iPhone connection with Bluetooth 3.0

I would like to build an app that requires bluetooth connection. The Bluetooth HC05 module is connected to Arduino. I want to know what framework (or other related things) that I need to build an app that can connect to this Bluetooth module.
Still have no idea how to start. Anyone could help?
Unfortunately the answer might be "you can't do that".
iOS only supports the following Bluetooth profiles: HFP, PBAP, A2DP, AVRCP, PAN, HID and MAP. None of those can be used inside an app to communicate to your Arduino.
For the useful profiles like Serial Port Profile (SPP) and all arbitrary bluetooth communication you have to add an authentication chip to your Arduino. Unfortunately you can't buy these chips unless you have a MFi membership. And you won't get into the MFi program unless you are a company with a concrete product (mass market scale) in mind.
Fortunately, we now have Bluetooth Low Energy. Bluetooth LE can easily be used in iOS apps, without all the MFi hassle. So you should get a Bluetooth 4.0 module for your Arduino.
The framework that is used for Bluetooth 4.0 communication is called CoreBluetooth. You will find documentation, sample code and WWDC videos in the iOS Developer Center. Start with the Core Bluetooth Programming Guide

Programming on Bluetooth module

Now I have a Bluetooth module which support SPP, I want it to support BLE 4.0. Can I program on it? How can I start? In fact I want it to connect to iOS app, but I don't want to be included in MFI, that's the only solution I figured out.
You can connect bluetooth module to jailbroken iOS device without MFI program membership.
I used this BT stack library to establish BT connection
If I understand the question right you have a module which supports SPP and you want it to support BLE? I don't believe that is possible. The serial port profile is not part of the BLE spec. I am guessing you have a BT 2.0 module.
You need to have a module that supports BLE or is running the BLE stack before you can connect to it to begin with. To use the module you have now, you need MFI to connect to an iPhone over SPP.
In summary, the two options you have are:
Keep the module you have (BT 2.0), join the MFI program or jailbreak to use SPP
Get a BLE module and use CoreBluetooth without the need to join the MFI

How to send file from iPhone to mac over bluetooth

I have created universal device application to transfer any kind of files via bluetooth using GameKit Framework.
My question is how to create on Desktop Application with same process or there any Framework? That can communicate also on the device. Can i have any sample please or tips how to do it.
There is Core Bluetooth that used low energy protocol. But i don't know how?
Anyone please give some idea or anything that i can use it.
Thank you
The Bluetooth functionality of the GameKit framework is iOS-only (see GKSession), so you won’t be able to use that on a Mac.
The CoreBluetooth framework on the other hand is available on both Mac and iOS devices supporting Bluetooth LE, with the one difference that the CBPeripheralManager is not available on Mac, so you can’t advertise a service on Mac. However you can have your iOS device act as a peripheral and connect from the Mac acting as a central. Data transfer should still work both ways.
The BTLE Central Peripheral Transfer sample code should be a good starting point.

Can CoreBluetooth framework pair and talk to a slave bluetooth 2.0 serial module?

I would like to write an app for iPhone 4s that can talk to a slave bluetooth 2.0 serial module such as the HC-06, BC417, or EGBT-046S. Is this possible? Can anyone provide some sample code?
No, CoreBluetooth is for Bluetooth Low Energy. The External Accessory Framework can be used for Classic Bluetooth connection. But to be able to open on a serial link from the iPhone, you need a peripheral that complies with the Made For iPhone (MFi) program, and you need to be an MFi member to be able to buy one. Look at this question for more info: What's needed to use the Apple Accessory Protocol?

Resources