As the ble_app_uart_c example passes over time, sending and receiving problems occur.

hello,

As the ble_app_uart_c example passes over time, sending and receiving problems occur.

composition is

ble_app_uart ( central ) < - > ble_app_uart_c ( Peripheral )

Each is connected to two PCs and monitored in Tera Term (terminal program).

* When connecting for the first time Normal operation

a) After a day of connecting

- Data input from Central to UART is not received from Peripheral

- Data input from Peripheral to UART is normally received from Central

* Case 1 : fail

* Case 2 : success

b) only peripheral re writing

  -  Peripheral seems to be a problem as only peripheral operates normally by rewriting

Parents
  • Hi PKR,

    When you say that the central device data is not received by peripheral, then it could mean a lot of things. First we need to understand if the central has transmitted the packet? Did the peripheral NACK or ACK the packets? Is the central device stuck in some loop or other deadlock context? You should try two things.

    1. Are there any errors when the central sent the data packet to the peripheral? Is the central still operational? Start your program in debugger mode and test the same thing. After a while pause (halt) the program in debugger and try to find out which context is being executed. If the context seems to be looping in some condition, then we know that the issue might be in central.
    2. Getting a BLE sniffer trace log for all the communication between your central and peripheral will greatly help understand what is going in the air interface.
Reply
  • Hi PKR,

    When you say that the central device data is not received by peripheral, then it could mean a lot of things. First we need to understand if the central has transmitted the packet? Did the peripheral NACK or ACK the packets? Is the central device stuck in some loop or other deadlock context? You should try two things.

    1. Are there any errors when the central sent the data packet to the peripheral? Is the central still operational? Start your program in debugger mode and test the same thing. After a while pause (halt) the program in debugger and try to find out which context is being executed. If the context seems to be looping in some condition, then we know that the issue might be in central.
    2. Getting a BLE sniffer trace log for all the communication between your central and peripheral will greatly help understand what is going in the air interface.
Children
No Data
Related