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

nRF9160 custom board overlay for am335x (linux)

We are using a nRF9160 and are interfaced to a Texas Instruments AM335x running Linux over a UART interface. I've read through the guide on making a custom overlay. So far, I have copied the nRF9160dk_nrf9160, and have renamed references for our board.

The dk board interfaces to an MCU. Looking at the various files, there are components such as buttons and leds that are unique to that board that don't exist on our board. On our board, we use p0.00-p0.03 as gpio. Outside of UART, the only other pin into the nRF9160 is the power enable.

The one thing I've noticed in the dk overlay is reference to NRF52840_GPIO_RESET_PIN which is something unique to the dk. What pin on the nRF9160 is this going to? If we need this reset, it could be done using p0.00-p0.03?

The am335x is not in the list of supported mcu's. The closest thing is the 'native_posix'? I'm not sure how the interaction between the nrf and the am335x works outside of the uart. For example, today I build the gps sample using the nRF9160dk_nrf9160 board and loaded that hex onto the nRF9160 on our board. Once I enabled the nRF9160 (just enabling power), I had the GPS working. In this case, the dk board setup works fine. On the serial_lte_modem fw, things didn't work as well. On the dk, I can connect the lte here reliably. On our board, using the same sim chip, it doesn't connect to the lte so far. The sequence of responses doesn't match up the same between the two.

So could the lack of custom overlay be a cause for this?

Regards,

fe-hadella

  • Hi,

     

    NRF52840_GPIO_RESET_PIN which is something unique to the dk. What pin on the nRF9160 is this going to? If we need this reset, it could be done using p0.00-p0.03?

     This is a pin that is routed on the nRF9160-DK, from the nRF9160 to the nRF52840 device.

    If you have routed it differently and re-use this functionality, you need to alter the assert condition in this specific file:

    https://github.com/nrfconnect/sdk-zephyr/blob/master/boards/arm/nrf9160dk_nrf9160/nrf52840_reset.c#L16

    Note that this is a signal from the nRF9160 to reset an external device. If you want to reset the nRF9160 instead, you should route a pin from your main controller to the nRESET pin of the nRF9160 for instance.

     

    The am335x is not in the list of supported mcu's. The closest thing is the 'native_posix'? I'm not sure how the interaction between the nrf and the am335x works outside of the uart. For example, today I build the gps sample using the nRF9160dk_nrf9160 board and loaded that hex onto the nRF9160 on our board. Once I enabled the nRF9160 (just enabling power), I had the GPS working. In this case, the dk board setup works fine. On the serial_lte_modem fw, things didn't work as well. On the dk, I can connect the lte here reliably. On our board, using the same sim chip, it doesn't connect to the lte so far. The sequence of responses doesn't match up the same between the two.

     Don't you have a system running on your main controller? If your device supports other bus transports (SPI, UART, I2C), you can technically use any of these to interface the nRF as long as both support the same peripheral bus. Easiest is to use UART with flow control (ie: RXD/TXD/CTS/RTS), and you can add another gpio which you use as a reset signal (to the nRESET pin for instance)

     

    On our board, using the same sim chip, it doesn't connect to the lte so far. The sequence of responses doesn't match up the same between the two.

     Do you have a debug log showing the behavior? Do you get connected to the network (AT+CEREG? should give you this status)?

     

    Kind regards,

    Håkon

Related