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

Serialization problem using OpenWRT on mips board as application part.

Hello.

I want to use nRF52810 as a connectvity platform connected to OpenWRT MIPS based board via UART. For some reason the only solution I can assure is to use 2 wire UART without parity control using 9600 baudrate. I am not able to make it work.
What I've done:
- successfully created connectivity binary for PCA10040e board (nRF52810 emulated on nRF52832) that is using s112 SoftDevice (the one that will fit my target uC)
- successfully connected such a connectivity board to another PCA10040 board running heart rate example - it works fine using 2 wire 9600 UART
- successfully compiled pc-ble-example for my OpenWRT board
Unfortunately:
- I am not able to run pc-ble-driver based heart rate example by connecting my MIPS board to PCA10040 running connectivity binary with s112
- I am not able to run pc-ble-driver based heart rate example by connecting my MIPS board to PCA10040 running connectivity binary with s132
In both cases pc-ble-driver based heart rate example informs about a problem with detecting SoftDevice (no expected response). 
Are there some limitations regarding pc-ble-driver and serialization PHY? Maybe pc-ble-driver expects higher baudrate or even flow control? Are someone aware of problems using pc-ble-driver without connectivity binaries in a standard versions provided along with the pc-ble-driver? 

Parents
  • Have you checked the electrical connection by logic analyzer, for instance that you have a common GND wire, that VDD is same voltage, and that the UART pins are properly connected?

    Also, how have you connected the flow control lines here? Have you disabled them in software, or have you just added pull down's on CTS and RTS pins to make the UART seem like it is always ready to receive data?

    Have you connected an logic analyzer trace on the UART pins to compare working and failing setup? I would assume default the example is setup to use 115200baud, but I assume you have re-compiled the application here.

    Best regards,
    Kenneth

  • Hello Kenneth,

    Thank you for your attention. Yes, I have doube checked power and wiring conditions. Hardware flow control is disabled by software. I have also compared data send between boards when using PCA10040 bassed application and OpenWRT based one and it seems like heart rate monitor examples send completely different data. I have attached serial analyzer output for both cases. pc-ble-driver based example sends six times such a frame:



    While PCA10040 based app example sends to connectivity board data as follows:


    Of course in a second example we have much more different frames as well as connectivity board responses, but event when looking at the begining one we can see there is some major difference.

  • Hmm.. have you also looked at an oscilloscope to check the length of start and stop bits on UART?

    Best regards,
    Kenneth

Reply Children
No Data
Related