Access to Bluettoth SPP in HFP only device (WinCE) - bluetooth

I would like to gain data over SPP profile into my GPS device. My GPS has Buetooth, but HFP is only accessible profile. It has WinCE that I can use, but I'm not very familiar with this OS.
Is it possible to write WinCE application that will enable/handle BT SPP on device that has HFP profile ?

If HFP is the only profile available for this device, then I think you answered your own question. If you are not the manufacturer of the device, then it is very unlikely that you will be able to use any other profile. One option could be to contact the manufacturer, maybe they will accept to provide you with an OS image that includes the feature you need.

Related

Should a BLE device be paired or not ? or what are the conditions a device should have to be paired?

When connection to a custom BLE device from an app (android and ios) I have two options
a) first pair the device on the phone (like a headset or other devices) and then use it from the app to read and write data
b) without pairing on the phone, go inside the app, search for a device with a specific name or address, and just connect to it and read and write data.
when is one preferred over the other one ?
Its just when it needs to interact in the background or am I missing something?
The devices you see in your phones Bluetooth settings are Bluetooth Classic devices. There are some devices using both BLE and Bluetooth Classic which show up in the settings too, but the settings page is only for the Bluetooth Classic part of the device. Headphones for example are streaming music trough the Bluetooth Classic profile A2DP but might offer BLE services for additional features.
You always have to use a special app to communicate with the BLE part of a device. This could be an app provided by a manufacturer or a generic BLE scanner app such as nRF Connect.
As alexander.cpp already told you in his answer pairing (the exchange of keys) and bonding (saving of said keys) is not required for the communication with BLE devices and only needed if the device requires a secured connection.
Bonding (technically correct term for BLE, often called Pairing in non-technical speech) is mostly for security, we can send sensitive information because the receiver is verified and data is transferred in encrypted form.
Prefer to use bonding if the data is sensitive (means users feel uncomfortable if somebody they don't know receive their data). For example, I consider "current temperature = 25" as NOT sensitive. For detailed explanation, find "Bonding with a BLE device" in BLE guide by PunchThrough.
Also this is a good answer to a similar question: https://stackoverflow.com/a/42916081/10380092.
Your second question about background - no, bonding is not related to interaction in background.

The most common Bluetooth profile for implementing modern TV remote control functionality

I'm exploring a possibility to emulate Bluetooth TV remote control. And I faced a problem that I can't find any information about the type of Bluetooth, which TV manufacturers use in their devices. If they use Bluetooth Classic (BR/EDR), then I have to implement either AVRCP or HID profiles to fulfil TV remote control functionality. If they use Bluetooth LE, then I have to implement HOGP profile. So, could you suggest to me which Bluetooth profile is mostly implemented in modern TVs with Bluetooth support? If someone has experience with a particular TV model, which supports Bluetooth, then I will be also appreciated for any information about Bluetooth, which is installed there.

smartwatch that advertises bluetooth LE

I'm planning to replace the Beacon tag of my Bluetooth (BLE)-based localization System with a smartwatch. Therefore, the smartwatch has to be able to advertise bluetooth signals. However I can't find any information about smartwatches using BLE advertising methods. I actually don't want to use an additional smartphone which would be able to advertise. I already found that the iWatch and the Moto 360 are probably not able to advertise.
Does anyone know if there's (or will be) a smartwatch available that is able to advertise BLE signals?
Thanks a lot!
el Baum
Ok, this is not possible for Sony Smartwatch atleast. This is because in order to be able to broadcast a BLE advertisement of your choosing, any given Android device has to be able to support BluetoothAdapter.isMultipleAdvertisementSupported(). Unfortunately, this feature is not available on most Android Wear devices.
If your Android device does support multiple advertisement, then you can create an advertisement packet and use the BluetoothLeAdvertiser object to start advertising.

Bluetooth tethering

I have Quectel M66 modem which is bluetooth enabled. I need some hints about how can I provide internet to my embedded device (which has M66 as a peripheral) using Android or iOS, or other device which supports bluetooth tethering.
I believe Android has that feature by default. Take a look at this link:
https://www.androidpit.com/share-wifi-over-bluetooth
I believe you can just approach the tethering device as a wifi acces point following the above guide.
This link sheds some light on choosing what tethering approach is appropriate:
http://m.pocketnow.com/2014/03/21/tethering-methods
My initial thought was "why would you want to tether through Bluetooth?" but looking at the power consumption, it might be a good choice for an embedded system, or if Wi-Fi is not available on the board.

Does the WindowsCE firmware support multiple BlueTooth connections?

Can a WindowsCE device connect so more than one BlueTooth device? The device needs to both serve as a BlueTooth hands-free speaker for a phone and connect to a third device via a serial BlueTooth connection.
Can an application do this without the need of a speciel driver?
You must understand that Windows CE is a modular OS and any specific platform capabilities are implemented by an OEM. An OEM can create a Windows CE device with absolutely no Bluetooth support or they might choose to implement just a Bluetooth client profile (say as a bluetooth audio device) or they may choose to implement a Bluetooth server so they can consume a Bluetooth serial device. They may also choose to implement both. Beyond what the OEM does in software, the hardware itself might allow only one or the other (or both or neither for that matter).
The short of this is that we can't actually answer your question becasue there is no generic answer that fits all devices. You have to ask the Device OEM what they support and if they can extend that support if they don't support what you need.

Resources