How: Serial communication between the BLE module on a nRF52 board and a off-board MCU

Hi there.
I have a project, where we are considering to use a non-Nordic mcu (I call it off-board MCU) and Nordic BLE module.


As the first step, I have run some BLE samples to relize the connection between the Nordic evluation board with an APP on a phone via BLE. in Other words, it is

Nordic MCU on board <---serial---> BLE <---bluetooth---> APP

the next step is to replace the 'MCU on eval board' with the the off-board MCU we are using. My question is how to connect the off-board MCU with the BLE module on the eval board.

The expected connection looks like:

Off-board MCU <---serial---> BLE <---bluetooth---> APP

There is a UART port on the off-board MCU, which has 3 pins. do I only need to find out the 3 (or 2?) pins on the eval. board to connect?

the uart is at top right

In the "User Guide" P8, it reads that user should disable "Dynamic Hardware Flow Control (HWFC) handling" in order to use the P0.05 and P0.07, by sending DTR signals, but i didn't find much information about DTR and don't know how to send out it to the interface MCU on the eval. board.

There is a simlar topic:
About hardware flow control - Nordic Q&A - Nordic DevZone - Nordic DevZone (nordicsemi.com)

but the answer is not available.

I also found another related thread , but I am not sure that is exactly the same problem.

Connecting UART Data to development board PCA10040 - Nordic Q&A - Nordic DevZone - Nordic DevZone (nordicsemi.com)

thanks!

  • "There is a UART port on the off-board MCU, which has 3 pins. do I only need to find out the 3 (or 2?) pins on the eval. board to connect?"

    Keep it simple, don't change any hardware on the development board, don't use flow control. Simply choose 2 spare port pins on the development board and use those as Rx input to BLE module and Tx output from BLE module by changing the software RX and TX pin definition. 3 pins are required to the off-board MCU: Rx, Tx and a common GND. Tx on the development board connects to Rx on the off-board MCU, Rx dev to Tx off-board MCU.

    Change:
    #define RX_PIN_NUMBER  8
    #define TX_PIN_NUMBER  6
    #define CTS_PIN_NUMBER 7
    #define RTS_PIN_NUMBER 5
    to:
    #define RX_PIN_NUMBER  3 // P0.03 assuming unused
    #define TX_PIN_NUMBER  4 // P0.04 assuming unused
    #define CTS_PIN_NUMBER NRF_UART_PSEL_DISCONNECTED
    #define RTS_PIN_NUMBER NRF_UART_PSEL_DISCONNECTED
    

  • Hello,

    I don't think it's a good idea to remove the debugger chip/interface MCU from the nRF52 DK. You need this chip for programming and debugging your application inside the DK/nrf52832SoC. If you only want to work with the nRF52832 and incorporate some other module, then I recommend using the nRF52832 SoCs instead of the nRF52DK, which comes with the debugger chip (interface MCU). What was mentioned by   is true, and I recommend you go through the serial communication chapter I pointed out in my first response.

    ulyssis said:
    I have a question here, is the debugger chip the same as the interface MCU?

    Yes, it's the same. See the product specification page.

    ulyssis said:
    does it mean, two jumper cables are enough for UART, when the flow control is enabled?

    I don't think you need hardware flow control here, but if it is enabled, then you need two more lines for RTS and CTS other than Rx, Tx, and GND. See the below picture:

    Kind Regards,

    Abhijith

Related