Bluetooth range increase

currently i have Metawear C and i am using the Metaware sensors to have some wireless remote measurements

some Bluetooth modules have the ability to increase its transmitting power to reach more distance even at the coast of energy

what i am asking is there a way like a firmware or a command in the current firmware or an API that can enable me to change the transmitting power of the Metwear to reach more distance "increase the range"

and if not is there any other way to increase the range of Metawear because it is mandatory for my application to increase the range of the Metawear sensor.


  • There is a function which enables you to set the advertising transmitting power. In the Cpp API it's called: mbl_mw_settings_set_tx_power
  • What language are you using?  If C++, the function mentioned by @nub is what you need.
  • i am using python i can try to work with c++ but python will be better for me so if there is any way to work with python it will be great.

    thanks @nub for your answer
    thanks @Eric for your answer
  • The python library simply calls into the C++ library, assuming you are using pymetawear.
  • Using three METAWEAR-R at the same time on iOS and iPhone 7 with bluetooth 4.2, I have noticed that outdoor, even with max power à 4dBm,I loose quickly signal ; particularly with one sensor...

    Do you thing possible to burst a little more ? 
    Could it be possible to optimize the sensor with an small external antenna ?
  • What is your usecase when you are outdoors?  Are you using the boards where is lots of interference i.e. cellphones or other devices also in the 2.4Ghz range?  
  • Is there any function available with Android as well to increase Bluetooth range ?

  • When I use my three sensors outdoors, it is really far from any interference in the 2.4Ghz range.
    I looks like if the bluetooth signal was unable to cross my body (from backside as my iPhone is frontSide) and was simply going away...
    Indoors or nearly indoors, I believe that the signal bounces on walls or others solids elements so that it works well...
    That's why I was wondering if it was possible to add an antenna (even a simple wire) to extend and direct the signal to the receiver.
    Many thanks for your attention !
  • @patrice

    There is no easy way to change the antenna configuration on a MetaWear, and performing such modifications would invalidate the radio certifications (CE/FCC/IC) so we cannot recommend doing so.

    Normally the 2.4Ghz band couples well to human bodies, I am surprised that you would get a disconnect at such short range.  Indoors, yes, reflections off of wall help with signal propagation.  Do all of your sensors read a similar signal level when placed next to your phone?
  • Thanks Matt for your reply and explanations about certifications ; it make sense and I understand that 4dBm is the max.
    I confirm that signal level is about the same for the three sensors when there are placed next to my iPhone.
    Like you, I am surprised regarding the small distance but human body, like leaves of trees, is a strong electromagnetic waves absorber and without reflections signal is really weakened if your receiver is on the "other" side.
    I already notice the same phenomenon with some others sensors and the only way to improve things, was to increase receiver power using an usb receiver. The only problem is that doing so is impossible on an iPhone or a mobile device in general.

    I am going to review my code in case of. Regarding code, using objective c would you consider I could get better results using swift ?
This discussion has been closed.