This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

ble_app_uart with Android 5.1 failed

I try launch example Nordic UART and get error: Error 133 (0x85) GATT ERROR

I need use stack for nRF51822 without external 32KHz crystal.

Here -> softdevice work with Android properly, but  IMPOSSIBLE USE this SoftDev version without external 32KHz crystal.

Initialization with use any value param:

NRF_CLOCK_LFCLKSRC_RC_250_PPM_ ..._CALIBRATION 

give when connect to Android:  Error 133 (0x85) GATT ERROR

Exaple do not work absolutely with Softdevice S130 v1 and v2!

Dear Nordic, HOW TO USE YOUR SDK PRODUCT without external 32KHz crystal?

Chip:  nRF51822 QFAA 

SDK:   nRF5 SDK works with S130 v2 12.3.0

Softdevice: S130-SD-v2 S130 nRF51 SoftDevice 2.0.1

Test board: PCA10001

Parents Reply Children
  • Ok, so on your custom board S130 v2 works only when you have an external crystal? The same board and the same softdevice does not work when you remove the crystal?Can you show me how you configure the Softdevice to use the RC clock?

  • SDK: nRF5_SDK_12.3.0_d7731ad

    SD: nRF5_SDK_12.3.0_d7731ad/components/softdevice/s130/hex/s130_nrf51_2.0.1_softdevice.hex

    Project: ble_app_uart_pca10028_S130

    Chip: nRF51822 QFAA H10

    C/C++ Compiler:

    BLE_STACK_SUPPORT_REQD
    NRF51822
    BOARD_PCA10001
    NRF_SD_BLE_API_VERSION=2
    S130
    NRF51
    SOFTDEVICE_PRESENT
    SWI_DISABLE0

    Linker:

    ROM 0x1b000 - 0x3BFFF

    RAM 0x20001fe8 - 0x20003FFF

    CSTACK 0x600

    sdk_config.h

    #define CLOCK_CONFIG_LF_SRC 0       // 1

    pca_10001.h

      // Low frequency clock source to be used by the SoftDevice
    #define NRF_CLOCK_LFCLKSRC      {.source        = NRF_CLOCK_LF_SRC_RC,  \
                                     .rc_ctiv       = 16,              \
                                     .rc_temp_ctiv  = 2,               \
                                     .xtal_accuracy =  0}

    I can see device in RF, but device unconnectable.

    nRF Connect LOG display give:  Error 133 (0x85) GATT ERROR

    1. What happens with your board after it disconnects? Does it reset?
    2. Have you debugged your board? 
    3. Do you get any logging info out of the nRF51?
    4. Could it be that the application fails?
    5. Do you have a development kit or a different board that you can try the same code on?

     

  • 1. Nothing happens.

    2. IAR + JLink.

    3. No...

    4. If  download to this board S130_nrf51_1.0.0_softdevice and use SDK v10 - it working well.

    5. Yes, I have 2 chinise test boards with replaced to nRF51822 QFAA H10 chip.

    And this boards also have same trables.

  • Hi,

    1. Can you provide a sniffer trace? If you have an extra nordic development kit you can use our nRF Bluetooth Sniffer solution.
    2. Can you confirm that your firmware is not resetting? Have you enabled debugging and checked for asserts like this.
    3. Have you made any changes to the ble_app_uart_pca10028_S130 project, other than changing the LF clock source?

    The problem is that Error 133 (0x85) GATT ERROR is very generic. It can be almost anything, even your phone. So just a message giving you this error is almost useless. The fact that it seems related to your LF clock source is certainly a clue though, but not much to go on either. Can you try this:

    #define NRF_CLOCK_LFCLKSRC      {.source        = NRF_CLOCK_LF_SRC_RC,  \
                                     .rc_ctiv       = 4,         \ // <- Calibrate every second
                                     .rc_temp_ctiv  = 0,    \  // <- Always calibrate even if the temperature hasn't changed.
                                     .xtal_accuracy =  0}

     

    Another thing is that the examples in the SDK are written for an nRF51 variant with 32 kB of RAM, and you are using a variant with only 16 kB. Although as far as I can see, it seems like you have adjusted your project settings accordingly (RAM end address = 0x20003FFF)

    PS: I'll be traveling until Wednesday next week and the response time might be slower than usual.

     

Related