Testing GNSS sample from Zephyr RTOS with the nRF7002 DK and PuTTY

Hello everyone,

I am creating a project that uses data received from a GNSS module, however I first wanted to do some tests using a NMEA0183 string and PuTTY.

I am trying to make it work with the following sample: Zephyr GNSS Sample.

My overlays looks like this:

/ {
	aliases {
		gnss = &gnssdev;
	};
};

&uart2{
    status = "okay";

    current-speed = <9600>;
    data-bits = <8>;
    stop-bits = "1";
    parity = "none";

    pinctrl-0 = <&uart2_default>;
    pinctrl-names = "default";
    gnssdev: gnss-nmea-generic{
        compatible = "gnss-nmea-generic";
    };
};

&pinctrl {
    uart2_default: uart2_default {
        group1{
            psels = <NRF_PSEL(UART_TX, 0, 6)>;
        };
        group2{
            psels = <NRF_PSEL(UART_RX, 0, 7)>;
			bias-pull-up;
        };
    };
};

I expect whenever I send: $GPGGA,092750.000,5321.6802,N,00630.3372,W,1,8,1.03,61.7,M,55.2,M,,*76, to atleast enter the callback in the sample. However, nothing seems to happen unless I keep sending the message, which results in:

[00:01:08.177,368] <wrn> modem_chat: argv buffer overrun
[00:01:09.338,134] <wrn> modem_chat: receive buffer overrun

I appreciate any insights you might have thanks!

Parents Reply
  • The issue is solved in the Github Issue.

    TLDR:
    - add status="okay" to gnssdev
    - When sending messages GGA is not enough. Also send RMC. (one by one is fine)
    - Problem was with not sending the expected end delimiters, should be "\r\n"

    What I did is I used the messages below and send them via Arduino IDE instead with [Both NL & CR] selected in the Serial Monitor. Didnt manage to make it work with PuTTY for some reason

    $GPGGA,092750.000,5321.6802,N,00630.3372,W,1,8,1.03,61.7,M,55.2,M,,*76
    $GPRMC,092750.000,A,5321.6802,N,00630.3372,W,0.13,309.62,120598,,*10

Children
No Data
Related