I wanted to ask if you know if there is a way to change the bluetooth transmission power or at least power off the bluetooth module in the intel Edison I just want to do some test with that, I hope you can help me or tell who or where I can find and answer.
I would like to know the reason why you want to change the Bluetooth transmission power of the module. Are you looking for something like the BLE (Bluetooth Low Energy) profile?
If you want to power off/on Bluetooth on the board you can do it by using the commands rfkill block bluetooth or rfkill unblock bluetooth
You can find more information about Bluetooth in: http://www.intel.com/content/dam/support/us/en/documents/edison/sb/edisonbluetooth_331704007.pdf http://www.intel.com/content/dam/support/us/en/documents/edison/sb/edisonbluetooth_331704007.pdf
Hi Charlie, I wanted to change the transmission power to check what distance can I achieve without lossing data. I don't know if the profiles use different transmission power ? that may help me to. I have checked the document you say about the edison bluetooth and found that the PXP profile has a Tx power service but I think it is only a monitor and not a control, I did not see anything more related to that, maybe you can tell me if it is necesary to do a modification in the kernel.
In order to use the RSSI as a parameter for the distance between the board and the client you need to know the radiation pattern of the antenna on both devices, so you could identify and calculate an approximate distance between the devices from using the RSSI. The profile with a different power is the LE, that is the low energy profile, are you talking about other profiles?
In order to change the limited transmission power you need to modify the driver of the Bluetooth Module, please take a look at:
https://github.com/01org/edison-bcm43340 GitHub - 01org/edison-bcm43340
https://github.com/01org/edison-firmware/tree/master/broadcom_cws edison-firmware/broadcom_cws at master · 01org/edison-firmware · GitHub
http://git.yoctoproject.org/cgit/cgit.cgi/meta-intel-edison/tree/meta-intel-edison-bsp/recipes-kerne... meta-intel-edison - Layer for the Intel Edison Development Platform
https://github.com/robocoreio/edison-broadcom-cws GitHub - robocoreio/edison-broadcom-cws: Drivers for BCM43340 from Intel Edison code dump
If you have more questions regarding how to modify this driver, I suggest you to contact Broadcom for more information: https://community.broadcom.com/welcome Welcome |Broadcom Community
The interfaces for Bluetooth have a default behavior if you want to change the timing methods you can create scripts with custom routines by using the Bluetooth libraries in /usr/include/bluetooth
You can use the hcitool/hciconfig:
You can also directly use the host controller interface, but that is a bit difficult:
For example look at page 1277 to set the advertising parameters