Can I determine if a device is IPhone/IPad/IPod or Android from its MAC address ? MAC addresses can be used to identify the manufacturer but can I distinguish a Macbook pro from an IPhone ?
Unless Apple uses unique wifi chipset suppliers for a Macbook that would never be used for an iphone (e.g. samsung for iphone and toshiba for macbook), a mac address will only ever tell you who manufactured the particular wifi chip in use. Maybe certain ranges of mac addresses would only ever show up in one type of device, but you'd have to compile that list yourself.
Related
I am running flutter_blue example,it doesn't raise any error but after searching for bluetooth devices it shows mac address instead of Local Names.alse after clicking on connect it doesn't connect.
I did make sure that other devices are ble support, even I purchased Bluetooth v4.0 usb dongle to be completely sure about Bluetooth version, but nothing changed.
also, I thought it may be related to my android phone,I reset(factory) the phone and wiped cache but nothing changed.
my cellphone is Sony Xperia Z3+ with android 7.1.1;
any Idea what is wrong and why I can't get devices name in scan?
It was gattserver, couldn't broadcast properly,I changed gattServer with another app in another smartphone and now it shows the Name of GattServer.
I would like to be able to write an app on iPhone which can check if a bluetooth device is in range. I will only know the MAC adress of the device which I would like to check. The devices will not be paired. Is there any way to write such an app and get it through the appstore?
greetings,
jarektb
I would like to build an IPhone app that should check the identity of a BT device, by name or MAC.
If the device is not part of the MFI programme what profiles should the device support in order for an IPhone app to connect to it and validate its MAC or name ?
Cheers,
Ionut
I'm not sure you need to connect to something to get a MAC address or a name. My coworker's iphone seems to see all other bluetooth devices in our work area and displays the names, it just won't connect to them. And I'm sure it gets the MAC before it gets the name, but avoids displaying it to the user because names are a lot more friendly.
I do know that with android and blackberry, you actually use MAC addreses as your basic internal identifier, and only pull out the name when you want to identify your remote devices to the user.
If you really do need to make a connection from iOS to non MFi bluetooth radio, the advanced audio distribution profile (A2DP) would do what you want. There's a product out there I've seen that is a bluetooth controlled power board, and it used audio pulses being transmitted over A2DP to get around MFi requirements. Though you should reconsider this approach because it's problematic for a non audio device to advertise an audio profile. And this fake audio device will get seen by by a lot more than your application.
If you're happy to only work with iphone 4s and above, I've also heard rumours that bluetooth LE(4.0?) devices are not required to have the apple verification chip... but haven't really looked into it
After searching on Google, I found that people say it's only possible to connect an iOS device with a non iOS device with the 'MFi program'. Is that true?
My project is mainly focused on sending and receiving information with the Arduino device via Bluetooth directly.
Is communication between iOS and non iOS devices without jailbreak possible? If yes, is there a reference?
(I viewed Stack Overflow question How can an iPhone access another non-iPhone device over wireless or Bluetooth?.)
As I stated in the above-linked question, general Bluetooth communication to external devices on non-jailbroken iOS devices is restricted to MFi-compliant Bluetooth hardware.
However, newer iOS devices (iPhone 4S, new iPad) are capable of Bluetooth 4.0 LE communication with external devices without the need for those devices to be MFi-compliant. This interaction is done through the new Core Bluetooth framework, which lets you send and receive arbitrary data to and from Bluetooth LE devices. This only works with those listed newer iOS devices, though.
Tim points out an interesting hack that you might be able to get away with in making your device appear like a Bluetooth HID keyboard. Devices like this barcode scanner have special modes to appear as HID devices to iOS. You might be able to pull something together based on this, but all data transfer will be one-way from your device, and it looks like this will require entering that data into text fields as if you had a keyboard connected.
Alasdair Alan's "iOS Sensor Apps with Arduino" is a good resource to look at. I've used Wifi with another microprocessor (mbed) but not sure about bluetooth. Alasdair is active on Twitter and he usually is kind enough to answer questions.
I need to know the MAC address or bluetooth device name of other devices near an iPhone. is this possible with the regular API?
With iOS 5 on the iPhone 4S, it is possible to detect Bluetooth Low Energy devices (which hardly exist yet). It's not possible with regular APIs. You can use BTstack.org if you consider Jailbreaking your device.