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

Border Router via nRF9160

Hi there,

This is more of a architectural question for Nordic developers or anyone familiar with Thread, NCP and Border Router.

I've been able to demo Thread local (short range) connectivity between nRF52840 DK FTD's, on a separate topic I've used nRF9160 for LTE-M connectivity to connect to AWS IoT core.

Has anyone thought about using nRF9160+nRF52840 as a gateway for a whole Thread network? (i.e. to relay MQTT messages on behalf of each FTD to the cloud)
I have sketched some proprietary protocols of doing this - which is brute force.


Are there any examples on this? Or has anyone tried? I'd prefer not to involve a Raspberry PI as a Open Thread Border Router (OTBR) - too power hungry and still need an LTE-M Modem..

Why can't the OTBR run on nRF9160 itself? anything in the NCS roadmap to support this?

  • Hi,

    As far as I know, there is no examples available for this yet. It is definitely an interesting concept for us to combine multiple chips/protocols for use-cases like this, and will become even more interesting in the future with our recently acquired WiFi team. We are looking into adding support for features like this, but at the moment I cannot give you any roadmaps or dates for when you can expect to find it in our SDK.

    The main limitation at the moment is that the available border router tools requires a Linux Host MCU to run correctly.

    Since you specifically mention MQTT, I was looking into if you could integrate the Eclipse Paho MQTT-SN Gateway into NCS, but this also currently only supports Linux. It seems to have a clearly separated interface for OS- and transport-specific pieces, but it may not be trivial to integrate it with NCS and nRF9160. I'm also not certain how you would manage the relaying of UDP/MQTT-SN packets between the nRF52840 and nRF9160 with such a solution. Your proprietary protocol sketch may be your best approach at the moment, as long as you do not need a general gateway for any type of traffic.

    Best regards,
    Jørgen

  •  Thanks for your response,

    The proprietary translation of MQTT from the modem to Thread devices works for supporting a limited number of messages , BUT I'm finding that there are a lot of web applications (e.g. Pelion or other IoT device management platforms) that rely on IP connectivity to nodes (in our case Thread FTDs and MTDs).

    Therefore I'm thinking there are a lot of advantages to having an OTBR.

    Seems like all OpenThread connectivity (OTBR) applications are only considering a case where:

    1- Power consumption is not a concern for the OTBR, hence Raspberry PI + nRF dongle - upon my quick research this could use ~2W constantly - This is too much for our application.

    2- Connectivity is provided to the Rasberry PI via Ethernet or Wifi


    In our low power application, there is no local internet access other than LTE-M since it is installed in the field, and power budget is limited (solar).

    Any updates on Nordic considering this OTBR application on the low power nRF9160? Or anything giving a Thread network internet connectivity without having to use hefty hardware?

    It seems like a missing piece in the whole ecosystem of IoT with nRF...  how else can a remote Thread network get connected to the cloud?

  • Seems like mbed OS / Pelion have this exact same feature. 

    https://github.com/PelionIoT/nanostack-border-router

    Another point is I found these a few nRF KConfig options that seem relevant:

    CONFIG_OPENTHREAD_BORDER_ROUTER

    CONFIG_OPENTHREAD_BORDER_AGENT

    CONFIG_OPENTHREAD_BACKBONE_ROUTER

    Can the combination of these and some development, connect the OT network (bunch of nRF52840s - one with a hard wired connection to LTE-M modem) to the cloud via an LTE-M connection (w/o a raspberry pi OTBR)? Or am I dreaming something out of reach?

Related