Beware that this post is related to an SDK in maintenance mode
More Info: Consider nRF Connect SDK for new designs
This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Radio Test Controlled Through Bluetooth Service

I am preparing my product for radio tests. There is a radio test example in the NRF5 SDK 15.3.0 that requires a UART interface that sends CLI commands to the chip. However, my product is nearly impossible to attach wires to in a non-intrusive way which makes this example unusable. Is there a way to control the radio test through a custom Bluetooth Service?

Parents
  • Hi,

    This is not straightforward, and I am tempted to say it is not possible. The radio test example does not use a SoftDevice at all but controls the radio directly, based on UART commands. If you want to use BLE with any software we provide that would have to be via the SoftDevice, and the SoftDevice has full control over the radio.

    You could perhaps use the SoftDevice to receive commands over BLE, and then disable the SoftDevice to do as previously instructed, before re-enabling the SoftDevice again. Alternatively, you could use the radio timeslot API. In any case, this would mean that you could only get the test state in a short period, before moving to BLE again to receive new command(s).

  • I'm going to receive commands over BLE and then I will enter the radio tests by disabling softdevices.

    I'm trying to implement it but I'm having an issue occur when I call sd_softdevice_disable(). I get error NRF_ERROR_SOFTDEVICE_NOT_ENABLED. Below is the call stack at the point of this error. Do I need to disable anything else before calling sd_softdevice_disable()?

  • Hi,

    John said:
    when I call sd_softdevice_disable(). I get error NRF_ERROR_SOFTDEVICE_NOT_ENABLED.

    Are you sure the SoftDevice is enabled when you get this? Please double check. 

    John said:
    Do I need to disable anything else before calling sd_softdevice_disable()?

    You should stop any active connections, advertisers or scanners before calling sd_softdevice_disable()

Reply Children
Related