Experiencing severe signal degradation in vicinity of other bluetooth devices

Board

  • MetaMotion R
  • rev 0.4 running
  • Firmware 1.5.0

Host Devices

  1. iPhone XS with iOS 13.6
  2. iPhone SE with iOS 13.3

Problem

We're doing real-time accelerometer and gyro streaming at 50Hz from the MetaMotion to our app, and when we're around other bluetooth devices (wireless mice, keyboard, headphones, etc) we are experiencing severe degradation. The connection becomes unstable and we typically have to reconnect to the board.

Depending on the environment the system is unusable. Finding a more isolated space reliably remedies the issue.
I'm not exactly sure how to debug/provide quantitative data though. Any suggestions?

Diagnostic Report

{
  "App": "MetaBase",
  "App Revision": "4.3.2",
  "Host Device": "iPhone Xs",
  "OS": "iOS",
  "OS Version": "13.5.1",
  "MAC": "E9:A8:33:D4:88:A1",
  "Model": "MetaMotion R",
  "Model Number": "5",
  "Firmware": "1.5.0",
  "Hardware": "0.4",
  "Serial Number": "0480CF",
  "Manufacturer": "MbientLab Inc",
  "RSSI": "-41 dBm",
  "Battery": "90%",
  "Modules": {
    "Accelerometer": {
      "implementation": 1,
      "revision": 2
    },
    "AmbientLight": {
      "implementation": 0,
      "revision": 0
    },
    "Barometer": {
      "implementation": 0,
      "revision": 0
    },
    "Color": {},
    "Conductance": {},
    "DataProcessor": {
      "implementation": 0,
      "revision": 3,
      "extra": "[0x1c]"
    },
    "Debug": {
      "implementation": 0,
      "revision": 5,
      "extra": "[0x01]"
    },
    "Event": {
      "implementation": 0,
      "revision": 0,
      "extra": "[0x1c]"
    },
    "Gpio": {
      "implementation": 0,
      "revision": 2,
      "extra": "[0x03, 0x03, 0x03, 0x03, 0x01, 0x01, 0x01]"
    },
    "Gyro": {
      "implementation": 0,
      "revision": 1
    },
    "Haptic": {
      "implementation": 0,
      "revision": 0
    },
    "Humidity": {},
    "IBeacon": {
      "implementation": 0,
      "revision": 0
    },
    "Led": {
      "implementation": 0,
      "revision": 1,
      "extra": "[0x03, 0x00]"
    },
    "Logging": {
      "implementation": 0,
      "revision": 2,
      "extra": "[0x08, 0x00, 0x00, 0x10, 0x00]"
    },
    "Macro": {
      "implementation": 0,
      "revision": 2,
      "extra": "[0x08, 0x00]"
    },
    "Magnetometer": {
      "implementation": 0,
      "revision": 2
    },
    "NeoPixel": {
      "implementation": 0,
      "revision": 0
    },
    "Proximity": {},
    "SensorFusion": {
      "implementation": 0,
      "revision": 2,
      "extra": "[0x03, 0x00, 0x06, 0x00, 0x02, 0x00, 0x01, 0x00]"
    },
    "SerialPassthrough": {
      "implementation": 0,
      "revision": 1
    },
    "Settings": {
      "implementation": 0,
      "revision": 8,
      "extra": "[0x03, 0x00]"
    },
    "Switch": {
      "implementation": 0,
      "revision": 0
    },
    "Temperature": {
      "implementation": 1,
      "revision": 0,
      "extra": "[0x00, 0x03, 0x01, 0x02]"
    },
    "Timer": {
      "implementation": 0,
      "revision": 0,
      "extra": "[0x08]"
    }
  }
}

Comments

  • Hey,
    This is 100% normal. Interference on the 2.4Ghz spectrum is an ongoing issue because MANY signals use this frequency.

  • Is there any way to mitigate this? Why is it only my MetaMotion that is affected to the point of non-functionality?

  • Turn off other devices in the area. Turn off your Wifi, turn off other BLE apps, and so on.

  • I guess my next question is, why don't my other devices suffer from the same degradation as the MetaMotion? What are my headphones, my mouse, my keyboard, etc doing differently that the MetaMotion R is not? My mouse transmits continuous real-time information over BLE as well.

    Is the BLE module inside the MetaMotion particularly low-cost? Is there some different in the standard implementation? Encryption?

  • edited July 2020

    They do but your computer antenna is 10 times bigger than the metasensor antenna so it's not fair competition.
    Also Wifi antennas are 10db or more. Our antenna is 0db...
    BluetoothLE is just a low power signal easily degraded by Wifi and even standard Bluetooth.

    That being said. Try getting a Wifi signals in a convention center with 10K people...you will see even then...the Wifi tends not to work.

    All systems have limitations.

    PS: The devices you mentioned are standard Bluetooth going over really small distances to much larger antennas.

    PPS: We have a API call to boost the Bluetooth signal to 2db...Try it out!

  • edited August 2020

    @Laura said:
    They do but your computer antenna is 10 times bigger than the metasensor antenna so it's not fair competition.
    Also Wifi antennas are 10db or more. Our antenna is 0db...
    BluetoothLE is just a low power signal easily degraded by Wifi and even standard Bluetooth.

    That being said. Try getting a Wifi signals in a convention center with 10K people...you will see even then...the Wifi tends not to work.

    All systems have limitations.

    PS: The devices you mentioned are standard Bluetooth going over really small distances to much larger antennas.

    PPS: We have a API call to boost the Bluetooth signal to 2db...Try it out!

    Could you point me in the direction of this API call to boost signal strength? Cant seem to find it in any documentation. Thanks in advance!

  • Hey you should play with:

        self.libmetawear.mbl_mw_settings_set_connection_parameters(self.board, 750.0, 
        self.libmetawear.mbl_mw_settings_set_ad_interval(self.board, 417, 0)
    self.libmetawear.mbl_mw_settings_set_tx_power(self.board, -20 <-- this is what you specifically asked for
    
Sign In or Register to comment.