NRF7002EB and External Device Compatibility

Hello Nordic Team,

I'm building an application off of the Thingy53, taking advantage of the NRF7002EB as well as an additional Sparkfun i2c based alphanumeric display.

As for my application, I have used the WiFi Provisioner sample as a starting point to get the 7002EB up and running, and then build a sample on top of zephyr minimal to get the display function working. When run separately, both work great. On the Wifi side, the wifi_nrf_bus initializes and app works. On the Display side, the display powers up, and is able to work.

My issue comes when trying to move the display over to the wifi_provisioner application. Since the display is an i2c device, I used an overlay file and registered my device to i2c2. When i build the application using this as an overlay, my wifi driver completely stops functioning. It won't initialize, and the program crashes when I try provisioning a network. When i remove the overlay and re-build the application, the wifi works fine

Is there some type of collision between i2c and the NRF7002eb? I thought the device was SPI, so I2c busses could be used in addition to the EB. Is there anything I am overlooking?

Thanks team,

Jon

display.overlay

Parents
  • Hi Jon,

    Thanks for reaching us for this issue.

    Looking in to PCB edge connector and zephyr\boards\nordic\thingy53\thingy53_nrf5340_common.dtsi:

        edge_connector: connector {
            compatible = "nordic-thingy53-edge-connector";
            #gpio-cells = <2>;
            gpio-map-mask = <0xffffffff 0xffffffc0>;
            gpio-map-pass-thru = <0 0x3f>;
            gpio-map = <8 0 &gpio0 5 0>,    /* P8, P0.05/AIN1 */
                   <9 0 &gpio0 4 0>,    /* P9, P0.04/AIN0 */
                   <15 0 &gpio0 8 0>,   /* P15, P0.08/TRACEDATA3 */
                   <16 0 &gpio0 9 0>,   /* P16, P0.09/TRACEDATA2 */
                   <17 0 &gpio0 10 0>,  /* P17, P0.10/TRACEDATA1 */
                   <18 0 &gpio0 11 0>,  /* P18, P0.11/TRACEDATA0 */
                   <19 0 &gpio0 12 0>;  /* P19, P0.12/TRACECLK */
        };

    GPIO0 4 and 5 are already be used, you may check other avaliable GPIO pins for I2C by checking How to work with Devicetree Visual Editor I provide by nRF Connect for VS code extension.

    Best regards,

    Charlie

Reply
  • Hi Jon,

    Thanks for reaching us for this issue.

    Looking in to PCB edge connector and zephyr\boards\nordic\thingy53\thingy53_nrf5340_common.dtsi:

        edge_connector: connector {
            compatible = "nordic-thingy53-edge-connector";
            #gpio-cells = <2>;
            gpio-map-mask = <0xffffffff 0xffffffc0>;
            gpio-map-pass-thru = <0 0x3f>;
            gpio-map = <8 0 &gpio0 5 0>,    /* P8, P0.05/AIN1 */
                   <9 0 &gpio0 4 0>,    /* P9, P0.04/AIN0 */
                   <15 0 &gpio0 8 0>,   /* P15, P0.08/TRACEDATA3 */
                   <16 0 &gpio0 9 0>,   /* P16, P0.09/TRACEDATA2 */
                   <17 0 &gpio0 10 0>,  /* P17, P0.10/TRACEDATA1 */
                   <18 0 &gpio0 11 0>,  /* P18, P0.11/TRACEDATA0 */
                   <19 0 &gpio0 12 0>;  /* P19, P0.12/TRACECLK */
        };

    GPIO0 4 and 5 are already be used, you may check other avaliable GPIO pins for I2C by checking How to work with Devicetree Visual Editor I provide by nRF Connect for VS code extension.

    Best regards,

    Charlie

Children
Related