nrf52840 Radio Co-Processor with STM32L486 host processor

I have the next system perfectly working:

  • nRF52840 working as NCP to get OpenThread protocol.
  • STM32L486 as a host with a FreeRTOS
  • The communication between both is via UART working with SPINEL

I want to implement multiprotocol support (OpenThread + BLE). I have discovered your nRF Connect SDK v2.1.2 but I have the next problems/questions:

1º) The only sample to implement NCP is with Zephyr

2º) Is this sample what i have to implement to support multiprotocol?

3º) Which BLE sample can I use to support multiprotocol?

4º) Is spinel implemented in any sample of the previously listed?

Thanks

Parents Reply Children
  • Hi,

    JuanAlm said:
    Anyway I need an option with NCP and these don't support it, right?

    That is right, but you can use the multiprotocol-configurations from either of these to add multiprotocol to the Zephyr NCP sample.

    I built and flashed a nRF52840DK with the Zephyr NCP sample.
    I were able to control this using spinel-cli.py on a linux PC. But since it uses spinel, I would guess the microcontroller host would also be able to control it.

    I did not do the merge though, you will have to that yourself.

    JuanAlm said:
    What option do Nordic offer to me if I need an NCP co-processor and my host is a microcontroller? 

    See the above answer for my suggestion to do NCP.

    Another solution is to use the nRF52840 not as a co-processor, but as a fully functional microcontroller with OpenThread support. It has a Arm cortex-M4 core and a good selection of peripherals after all.
    Then you can use an interface of your choosing (SPI/I2C/UART) to communicate between the STM32 and nRF52840.

    JuanAlm said:
    In the hypothetical case of being able to implement RCP, if I want to implement CLI sample... Do I need a linux host to stablish a command line communication with the co-processor?

    I do not understand this question.
    Can you elaborate a bit?

    Regards,
    Sigurd Hellesvik

Related