<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Tracking GPS but never get FIX</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/62675/tracking-gps-but-never-get-fix</link><description>Hi, 
 I wrote a code using gps_controller.c on my thingy:91. However, i could never get a GPS FIX so i decide to try the GPS sample but it doesn&amp;#39;t work neither. 
 
 I tried several places. Nevertheless, with the asset_tracker application I can get the</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Fri, 26 Jun 2020 09:56:46 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/62675/tracking-gps-but-never-get-fix" /><item><title>RE: Tracking GPS but never get FIX</title><link>https://devzone.nordicsemi.com/thread/257083?ContentTypeID=1</link><pubDate>Fri, 26 Jun 2020 09:56:46 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4e757893-a697-4118-afce-5877baee5f08</guid><dc:creator>Martin Lesund</dc:creator><description>&lt;p&gt;&lt;em&gt;Confirmed over a private message that you got the license approved&lt;/em&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Tracking GPS but never get FIX</title><link>https://devzone.nordicsemi.com/thread/256989?ContentTypeID=1</link><pubDate>Thu, 25 Jun 2020 15:17:37 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a721506c-5181-495c-91c4-5ffad9f169a0</guid><dc:creator>RicardoPereira</dc:creator><description>&lt;p&gt;Hi,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Thanks a lot for your recommendations!&lt;/p&gt;
&lt;p&gt;3. have done that several times and the permission is always denied. Do you know why ? I really would like to try this example out.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Tracking GPS but never get FIX</title><link>https://devzone.nordicsemi.com/thread/256929?ContentTypeID=1</link><pubDate>Thu, 25 Jun 2020 13:07:02 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3c613ee2-a936-49ad-8c9a-cc220e998025</guid><dc:creator>Martin Lesund</dc:creator><description>&lt;p&gt;Hi Ricardo,&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;1. &lt;br /&gt;Yes, you can, however, you need to know that the GPS sample with SUPL is&amp;nbsp;using the Google SUPL server is without any license or guarantee.&lt;/p&gt;
&lt;p&gt;So it just might happen that Google decides to turn it OFF &lt;em&gt;tomorrow&lt;/em&gt;. I would &lt;span style="text-decoration:underline;"&gt;&lt;strong&gt;not&lt;/strong&gt; &lt;/span&gt;build a commercial IoT product that relies on it.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;2.&lt;/p&gt;
&lt;p&gt;It can be used as well, but the same is true for the nRF Connect for Cloud A-GPS service, as per their Terms of Services they can discontinue the service at any time.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;3.&lt;/p&gt;
&lt;p&gt;Please try do log off and log on Devzone and re-apply for the license.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Tracking GPS but never get FIX</title><link>https://devzone.nordicsemi.com/thread/256889?ContentTypeID=1</link><pubDate>Thu, 25 Jun 2020 11:43:37 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f595371a-025e-471e-afdb-6129ad83f472</guid><dc:creator>RicardoPereira</dc:creator><description>&lt;p&gt;Hi Martin Lesund&lt;/p&gt;
&lt;p&gt;If i understood correctly, I can use the SUPL for a production device right ?&amp;nbsp;&lt;/p&gt;
&lt;p&gt;However, I did not find anything for the nRF cloud A-GPS. It is just for a test or can it be use for&amp;nbsp;salable device ?&lt;/p&gt;
&lt;p&gt;I also do not understand why&amp;nbsp;my&amp;nbsp;&lt;span&gt;application for SUPL-C license has been denied. I used the same email address as the one for DevZone.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Thanks a lot.&amp;nbsp; &amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Tracking GPS but never get FIX</title><link>https://devzone.nordicsemi.com/thread/256821?ContentTypeID=1</link><pubDate>Thu, 25 Jun 2020 07:47:25 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:edd948c7-dd82-4b1b-8254-dce80224b69c</guid><dc:creator>Martin Lesund</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A-GPS with SUPL uses &lt;a href="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/include/supl_os_client.html#supl-client" rel="noopener noreferrer" target="_blank"&gt;Google SUPL server&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;nRF Cloud &lt;a href="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/samples/nrf9160/nrf_cloud_agps/README.html" rel="noopener noreferrer" target="_blank"&gt;A-GPS uses nRF Cloud server&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Tracking GPS but never get FIX</title><link>https://devzone.nordicsemi.com/thread/256814?ContentTypeID=1</link><pubDate>Thu, 25 Jun 2020 07:28:52 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8919c37c-a737-4f2f-83fe-5f2043472ed0</guid><dc:creator>RicardoPereira</dc:creator><description>&lt;p&gt;Hi @martin Lesund&lt;/p&gt;
&lt;p&gt;Thanks a lot for your support!&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Just on last question. A-GPS works with a public server or it has to be done for our private server ?&amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Tracking GPS but never get FIX</title><link>https://devzone.nordicsemi.com/thread/256217?ContentTypeID=1</link><pubDate>Mon, 22 Jun 2020 13:51:02 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2b1888d8-9795-494a-8aef-2e419a9381ff</guid><dc:creator>Martin Lesund</dc:creator><description>&lt;p&gt;Hi,&lt;br /&gt;Good to hear that you got it up and running.&lt;br /&gt;If you are using NCS v1.3.0. A-GPS should be enabled by default in the asset_tracker sample:&amp;nbsp;&lt;a href="https://github.com/nrfconnect/sdk-nrf/blob/master/applications/asset_tracker/prj_thingy91_nrf9160ns.conf#L47"&gt;https://github.com/nrfconnect/sdk-nrf/blob/master/applications/asset_tracker/prj_thingy91_nrf9160ns.conf#L47&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Also make sure you are running the latest modem firmware on the devices:&amp;nbsp;&lt;a href="https://www.nordicsemi.com/Products/Low-power-cellular-IoT/nRF9160/Download#infotabs"&gt;https://www.nordicsemi.com/Products/Low-power-cellular-IoT/nRF9160/Download#infotabs&lt;/a&gt;&lt;a href="https://github.com/nrfconnect/sdk-nrf/blob/master/applications/asset_tracker/prj_thingy91_nrf9160ns.conf#L47"&gt;&lt;br /&gt;&lt;br /&gt;U&lt;/a&gt;pdate to NCS v1.3.0 by:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;cd ncs/nrf
git checkout master
git pull
git checkout v1.3.0
west update&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;or use the toolchain manager.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Tracking GPS but never get FIX</title><link>https://devzone.nordicsemi.com/thread/256100?ContentTypeID=1</link><pubDate>Mon, 22 Jun 2020 07:14:43 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:75d32293-0f46-4cdb-a14e-62b493f32624</guid><dc:creator>RicardoPereira</dc:creator><description>&lt;p&gt;Hi &lt;a href="https://devzone.nordicsemi.com/members/male"&gt;Martin Lesund&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I got good news! Since this was working and I didn&amp;#39;t find any explanation I started suspecting the hardware a few days ago. So I other a new Thingy:91.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;And Surprise it works &lt;span class="emoticon" data-url="https://devzone.nordicsemi.com/cfs-file/__key/system/emoji/1f642.svg" title="Slight smile"&gt;&amp;#x1f642;&lt;/span&gt; In fact, when I program the asset_tracker sample from your website (.hex) it has a A-GPS. And with that the module works, not fast but work. However, went i program the asset_tracker sample (code sample) it doesn&amp;#39;t work anymore. Comparing both terminal i saw that one has A-GPS and the other one doesn&amp;#39;t.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;So i program both kit with GPS only, i start the at the same time and got the following screen.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/communityserver-discussions-components-files/4/FixIssuesSolve.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/communityserver-discussions-components-files/4/DSC_5F00_1425.JPG" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I already sent a email to Mouser to know if there is some king of warranty.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I got a question. Is it possible to have the asset_tracker sample with the A-GPS ?&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Tracking GPS but never get FIX</title><link>https://devzone.nordicsemi.com/thread/256025?ContentTypeID=1</link><pubDate>Sat, 20 Jun 2020 09:11:08 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:905626a3-05c0-4b58-a810-725853626988</guid><dc:creator>RicardoPereira</dc:creator><description>&lt;p&gt;Hi &lt;a href="https://devzone.nordicsemi.com/members/male"&gt;Martin Lesund&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I did try to strip down the asset_tracker sample to only use the GPS. Here is the code&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;/*
 * Copyright (c) 2018 Nordic Semiconductor ASA
 *
 * SPDX-License-Identifier: LicenseRef-BSD-5-Clause-Nordic
 */

#include &amp;lt;zephyr.h&amp;gt;
#include &amp;lt;kernel_structs.h&amp;gt;
#include &amp;lt;stdio.h&amp;gt;
#include &amp;lt;string.h&amp;gt;
#include &amp;lt;drivers/gps.h&amp;gt;
#include &amp;lt;drivers/sensor.h&amp;gt;
#include &amp;lt;console/console.h&amp;gt;
#include &amp;lt;power/reboot.h&amp;gt;
#include &amp;lt;logging/log_ctrl.h&amp;gt;
#if defined(CONFIG_BSD_LIBRARY)
#include &amp;lt;net/bsdlib.h&amp;gt;
#include &amp;lt;bsd.h&amp;gt;
#include &amp;lt;lte_lc.h&amp;gt;
#include &amp;lt;modem_info.h&amp;gt;
#endif /* CONFIG_BSD_LIBRARY */
#include &amp;lt;net/cloud.h&amp;gt;
#include &amp;lt;net/socket.h&amp;gt;
#include &amp;lt;nrf_cloud.h&amp;gt;

#if defined(CONFIG_BOOTLOADER_MCUBOOT)
#include &amp;lt;dfu/mcuboot.h&amp;gt;
#endif

#include &amp;quot;cloud_codec.h&amp;quot;
#include &amp;quot;env_sensors.h&amp;quot;
#include &amp;quot;motion.h&amp;quot;
#include &amp;quot;ui.h&amp;quot;
#include &amp;quot;gps_controller.h&amp;quot;
#include &amp;quot;service_info.h&amp;quot;
#include &amp;quot;at_cmd.h&amp;quot;
#include &amp;quot;watchdog.h&amp;quot;

#include &amp;lt;logging/log.h&amp;gt;
LOG_MODULE_REGISTER(asset_tracker, CONFIG_ASSET_TRACKER_LOG_LEVEL);

#define CALIBRATION_PRESS_DURATION 	K_SECONDS(5)
#define CLOUD_CONNACK_WAIT_DURATION	K_SECONDS(CONFIG_CLOUD_WAIT_DURATION)

#ifdef CONFIG_ACCEL_USE_SIM
#define FLIP_INPUT			CONFIG_FLIP_INPUT
#define CALIBRATION_INPUT		-1
#else
#define FLIP_INPUT			-1
#ifdef CONFIG_ACCEL_CALIBRATE
#define CALIBRATION_INPUT		CONFIG_CALIBRATION_INPUT
#else
#define CALIBRATION_INPUT		-1
#endif /* CONFIG_ACCEL_CALIBRATE */
#endif /* CONFIG_ACCEL_USE_SIM */

#if defined(CONFIG_BSD_LIBRARY) &amp;amp;&amp;amp; \
!defined(CONFIG_LTE_LINK_CONTROL)
#error&amp;#194;&amp;#160;&amp;quot;Missing CONFIG_LTE_LINK_CONTROL&amp;quot;
#endif

#if defined(CONFIG_BSD_LIBRARY) &amp;amp;&amp;amp; \
defined(CONFIG_LTE_AUTO_INIT_AND_CONNECT) &amp;amp;&amp;amp; \
defined(CONFIG_NRF_CLOUD_PROVISION_CERTIFICATES)
#error&amp;#194;&amp;#160;&amp;quot;PROVISION_CERTIFICATES&amp;#194;&amp;#160;\
	requires CONFIG_LTE_AUTO_INIT_AND_CONNECT to be disabled!&amp;quot;
#endif

#define CLOUD_LED_ON_STR &amp;quot;{\&amp;quot;led\&amp;quot;:\&amp;quot;on\&amp;quot;}&amp;quot;
#define CLOUD_LED_OFF_STR &amp;quot;{\&amp;quot;led\&amp;quot;:\&amp;quot;off\&amp;quot;}&amp;quot;
#define CLOUD_LED_MSK UI_LED_1

/* Interval in milliseconds after which the device will reboot
 * if the disconnect event has not been handled.
 */
#define REBOOT_AFTER_DISCONNECT_WAIT_MS	K_SECONDS(15)

/* Interval in milliseconds after which the device will
 * disconnect and reconnect if association was not completed.
 */
#define CONN_CYCLE_AFTER_ASSOCIATION_REQ_MS	K_MINUTES(5)

struct rsrp_data {
	u16_t value;
	u16_t offset;
};


/* Stack definition for application workqueue */
K_THREAD_STACK_DEFINE(application_stack_area,
		      CONFIG_APPLICATION_WORKQUEUE_STACK_SIZE);
static struct k_work_q application_work_q;

/* Sensor data */
static struct gps_data gps_data;
static struct cloud_channel_data gps_cloud_data;


static atomic_val_t send_data_enable;

/* Structures for work */

static struct k_delayed_work long_press_button_work;

#if defined(CONFIG_AT_CMD)
#define MODEM_AT_CMD_BUFFER_LEN (CONFIG_AT_CMD_RESPONSE_MAX_LEN + 1)
#else
#define MODEM_AT_CMD_NOT_ENABLED_STR &amp;quot;Error: AT Command driver is not enabled&amp;quot;
#define MODEM_AT_CMD_BUFFER_LEN (sizeof(MODEM_AT_CMD_NOT_ENABLED_STR))
#endif
#define MODEM_AT_CMD_RESP_TOO_BIG_STR &amp;quot;Error: AT Command response is too large to be sent&amp;quot;
#define MODEM_AT_CMD_MAX_RESPONSE_LEN (2000)

static K_SEM_DEFINE(modem_at_cmd_sem, 1, 1);



enum error_type {
	ERROR_CLOUD,
	ERROR_BSD_RECOVERABLE,
	ERROR_LTE_LC,
	ERROR_SYSTEM_FAULT
};

static void set_gps_enable(const bool enable);

/**@brief nRF Cloud error handler. */
void error_handler(enum error_type err_type, int err_code)
{
	if (err_type == ERROR_CLOUD) {
		if (gps_control_is_enabled()) {
			LOG_ERR(&amp;quot;Reboot&amp;quot;);
			sys_reboot(0);
		}
#if defined(CONFIG_LTE_LINK_CONTROL)
		/* Turn off and shutdown modem */
		LOG_ERR(&amp;quot;LTE link disconnect&amp;quot;);
		int err = lte_lc_power_off();
		if (err) {
			LOG_ERR(&amp;quot;lte_lc_power_off failed: %d&amp;quot;, err);
		}
#endif /* CONFIG_LTE_LINK_CONTROL */
#if defined(CONFIG_BSD_LIBRARY)
		LOG_ERR(&amp;quot;Shutdown modem&amp;quot;);
		bsdlib_shutdown();
#endif
	}

#if !defined(CONFIG_DEBUG) &amp;amp;&amp;amp; defined(CONFIG_REBOOT)
	LOG_PANIC();
	sys_reboot(0);
#else
	switch (err_type) {
	case ERROR_CLOUD:
		/* Blinking all LEDs ON/OFF in pairs (1 and 4, 2 and 3)
		 * if there is an application error.
		 */
		ui_led_set_pattern(UI_LED_ERROR_CLOUD);
		LOG_ERR(&amp;quot;Error of type ERROR_CLOUD: %d&amp;quot;, err_code);
	break;
	case ERROR_BSD_RECOVERABLE:
		/* Blinking all LEDs ON/OFF in pairs (1 and 3, 2 and 4)
		 * if there is a recoverable error.
		 */
		ui_led_set_pattern(UI_LED_ERROR_BSD_REC);
		LOG_ERR(&amp;quot;Error of type ERROR_BSD_RECOVERABLE: %d&amp;quot;, err_code);
	break;
	default:
		/* Blinking all LEDs ON/OFF in pairs (1 and 2, 3 and 4)
		 * undefined error.
		 */
		ui_led_set_pattern(UI_LED_ERROR_UNKNOWN);
		LOG_ERR(&amp;quot;Unknown error type: %d, code: %d&amp;quot;,
			err_type, err_code);
	break;
	}

	while (true) {
		k_cpu_idle();
	}
#endif /* CONFIG_DEBUG */
}

void k_sys_fatal_error_handler(unsigned int reason,
			       const z_arch_esf_t *esf)
{
	ARG_UNUSED(esf);

	LOG_PANIC();
	LOG_ERR(&amp;quot;Running main.c error handler&amp;quot;);
	error_handler(ERROR_SYSTEM_FAULT, reason);
	CODE_UNREACHABLE;
}

/**@brief Recoverable BSD library error. */
void bsd_recoverable_error_handler(uint32_t err)
{
	error_handler(ERROR_BSD_RECOVERABLE, (int)err);
}



/**@brief Callback for GPS trigger events */
static void gps_trigger_handler(struct device *dev, struct gps_trigger *trigger)
{
	static u32_t fix_count;

	ARG_UNUSED(trigger);

	if (!atomic_get(&amp;amp;send_data_enable)) {
		return;
	}

	if (++fix_count &amp;lt; CONFIG_GPS_CONTROL_FIX_COUNT) {
		return;
	}

	fix_count = 0;

	ui_led_set_pattern(UI_LED_GPS_FIX);   //let the user know that a FIX

	gps_sample_fetch(dev);
	gps_channel_get(dev, GPS_CHAN_NMEA, &amp;amp;gps_data);
	gps_cloud_data.data.buf = gps_data.nmea.buf;
	gps_cloud_data.data.len = gps_data.nmea.len;
	gps_cloud_data.tag += 1;

	if (gps_cloud_data.tag == 0) {
		gps_cloud_data.tag = 0x1;
	}

	gps_control_stop(K_NO_WAIT);
        printk(&amp;quot;Yes I got a FIX !!!!!! \n\n&amp;quot;);
	//k_work_submit_to_queue(&amp;amp;application_work_q, &amp;amp;send_gps_data_work);
	//env_sensors_poll();
}


static void set_gps_enable(const bool enable)
{
	if (enable == gps_control_is_enabled()) {
		return;
	}

	if (enable) {
		LOG_INF(&amp;quot;Starting GPS&amp;quot;);
		gps_control_enable();
		gps_control_start(K_SECONDS(1));

	} else {
		LOG_INF(&amp;quot;Stopping GPS&amp;quot;);
		gps_control_disable();
	}
}



/**@brief Configures modem to provide LTE link. Blocks until link is
 * successfully established.
 */
static void modem_configure(void)
{
#if defined(CONFIG_BSD_LIBRARY)
	if (IS_ENABLED(CONFIG_LTE_AUTO_INIT_AND_CONNECT)) {
		/* Do nothing, modem is already turned on
		 * and connected.
		 */
	} else {
		int err;

		LOG_INF(&amp;quot;Connecting to LTE network. &amp;quot;);
		LOG_INF(&amp;quot;This may take several minutes.&amp;quot;);
		ui_led_set_pattern(UI_LTE_CONNECTING);

		err = lte_lc_init_and_connect();
		if (err) {
			LOG_ERR(&amp;quot;LTE link could not be established.&amp;quot;);
			error_handler(ERROR_LTE_LC, err);
		}

		LOG_INF(&amp;quot;Connected to LTE network&amp;quot;);
		ui_led_set_pattern(UI_LTE_CONNECTED);
	}
#endif
}


#if defined(CONFIG_USE_UI_MODULE)
/**@brief User interface event handler. */
static void ui_evt_handler(struct ui_evt evt)
{
	/*if (IS_ENABLED(CONFIG_CLOUD_BUTTON) &amp;amp;&amp;amp;
	   (evt.button == CONFIG_CLOUD_BUTTON_INPUT)) {
		button_send(evt.type == UI_EVT_BUTTON_ACTIVE ? 1 : 0);
	}*/

	if (IS_ENABLED(CONFIG_ACCEL_USE_SIM) &amp;amp;&amp;amp; (evt.button == FLIP_INPUT)
	   &amp;amp;&amp;amp; atomic_get(&amp;amp;send_data_enable)) {
		motion_simulate_trigger();
	}

	if (IS_ENABLED(CONFIG_GPS_CONTROL_ON_LONG_PRESS) &amp;amp;&amp;amp;
	   (evt.button == UI_BUTTON_1)) {
		if (evt.type == UI_EVT_BUTTON_ACTIVE) {
			k_delayed_work_submit_to_queue(&amp;amp;application_work_q,
						       &amp;amp;long_press_button_work,
			K_SECONDS(5));
		} else {
			k_delayed_work_cancel(&amp;amp;long_press_button_work);
		}
	}

#if defined(CONFIG_LTE_LINK_CONTROL)
	if ((evt.button == UI_SWITCH_2) &amp;amp;&amp;amp;
	    IS_ENABLED(CONFIG_POWER_OPTIMIZATION_ENABLE)) {
		int err;
		if (evt.type == UI_EVT_BUTTON_ACTIVE) {
			err = lte_lc_edrx_req(false);
			if (err) {
				error_handler(ERROR_LTE_LC, err);
			}
			err = lte_lc_psm_req(true);
			if (err) {
				error_handler(ERROR_LTE_LC, err);
			}
		} else {
			err = lte_lc_psm_req(false);
			if (err) {
				error_handler(ERROR_LTE_LC, err);
			}
			err = lte_lc_edrx_req(true);
			if (err) {
				error_handler(ERROR_LTE_LC, err);
			}
		}
	}
#endif /* defined(CONFIG_LTE_LINK_CONTROL) */
}
#endif /* defined(CONFIG_USE_UI_MODULE) */

void handle_bsdlib_init_ret(void)
{
	#if defined(CONFIG_BSD_LIBRARY)
	int ret = bsdlib_get_init_ret();

	/* Handle return values relating to modem firmware update */
	switch (ret) {
	case MODEM_DFU_RESULT_OK:
		LOG_INF(&amp;quot;MODEM UPDATE OK. Will run new firmware&amp;quot;);
		sys_reboot(SYS_REBOOT_COLD);
		break;
	case MODEM_DFU_RESULT_UUID_ERROR:
	case MODEM_DFU_RESULT_AUTH_ERROR:
		LOG_ERR(&amp;quot;MODEM UPDATE ERROR %d. Will run old firmware&amp;quot;, ret);
		sys_reboot(SYS_REBOOT_COLD);
		break;
	case MODEM_DFU_RESULT_HARDWARE_ERROR:
	case MODEM_DFU_RESULT_INTERNAL_ERROR:
		LOG_ERR(&amp;quot;MODEM UPDATE FATAL ERROR %d. Modem failiure&amp;quot;, ret);
		sys_reboot(SYS_REBOOT_COLD);
		break;
	default:
		break;
	}
	#endif /* CONFIG_BSD_LIBRARY */
}

void main(void)
{
	int ret;

	LOG_INF(&amp;quot;Asset tracker started&amp;quot;);
	k_work_q_start(&amp;amp;application_work_q, application_stack_area,
		       K_THREAD_STACK_SIZEOF(application_stack_area),
		       CONFIG_APPLICATION_WORKQUEUE_PRIORITY);
	if (IS_ENABLED(CONFIG_WATCHDOG)) {
		watchdog_init_and_start(&amp;amp;application_work_q);
	}
	handle_bsdlib_init_ret();
        

#if defined(CONFIG_USE_UI_MODULE)
	ui_init(ui_evt_handler);
#endif
     
	//work_init();
	modem_configure();

        /* Toggle GPS state */
        gps_control_init(&amp;amp;application_work_q, gps_trigger_handler);

	set_gps_enable(!gps_control_is_enabled());

}
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;I did not touch the porting (prj_nrf9160_pca20035ns.conf). So I think the port should be correct.&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;#
# Copyright (c) 2019 Nordic Semiconductor ASA
#
# SPDX-License-Identifier: LicenseRef-BSD-5-Clause-Nordic
#
# General config
CONFIG_NEWLIB_LIBC=y
CONFIG_NEWLIB_LIBC_FLOAT_PRINTF=y
CONFIG_ASSERT=y
CONFIG_REBOOT=y
CONFIG_LOG=y
CONFIG_LOG_IMMEDIATE=y

# Network
CONFIG_NETWORKING=y
CONFIG_NET_NATIVE=n
CONFIG_NET_SOCKETS=y
CONFIG_NET_SOCKETS_OFFLOAD=y

# LTE link control
CONFIG_POWER_OPTIMIZATION_ENABLE=n
CONFIG_LTE_LINK_CONTROL=y
CONFIG_LTE_NETWORK_MODE_LTE_M_GPS=y
CONFIG_LTE_AUTO_INIT_AND_CONNECT=n
CONFIG_LTE_LINK_CONTROL_LOG_LEVEL_DBG=y

CONFIG_LTE_NETWORK_MODE_NBIOT=n
CONFIG_LTE_LEGACY_PCO_MODE=n
CONFIG_LTE_PSM_REQ_RPTAU=&amp;quot;00000110&amp;quot;
CONFIG_LTE_PSM_REQ_RAT=&amp;quot;00000000&amp;quot;

CONFIG_LTE_LOCK_BANDS=y
# Enable band 2, 3, 4, 8, 12, 13 ,20 and 28
CONFIG_LTE_LOCK_BAND_MASK=&amp;quot;1000000010000001100010001110&amp;quot;

# Modem info
CONFIG_MODEM_INFO=y

# BSD library
CONFIG_BSD_LIBRARY=y
CONFIG_BSD_LIBRARY_TRACE_ENABLED=n

# nRF Cloud
CONFIG_CLOUD_API=y
CONFIG_NRF_CLOUD=y
CONFIG_NRF_CLOUD_LOG_LEVEL_DBG=y

# Sensors
CONFIG_SENSOR=y
CONFIG_ACCEL_USE_EXTERNAL=y
CONFIG_ACCEL_DEV_NAME=&amp;quot;ADXL362&amp;quot;
CONFIG_ADXL362=y
CONFIG_ADXL362_TRIGGER_GLOBAL_THREAD=y
CONFIG_ADXL362_ABS_REF_MODE=1
CONFIG_ADXL362_ACTIVITY_THRESHOLD=200
CONFIG_ADXL362_INACTIVITY_THRESHOLD=200
CONFIG_ADXL362_INTERRUPT_MODE=1
CONFIG_TEMP_USE_EXTERNAL=y
CONFIG_TEMP_DEV_NAME=&amp;quot;BME680&amp;quot;

# Deselect CONFIG_BME680 if CONFIG_USE_BME680_BSEC is selected
CONFIG_BME680=y
CONFIG_USE_BME680_BSEC=n

# GPS
CONFIG_NRF9160_GPS_LOG_LEVEL_DBG=y
CONFIG_NRF9160_GPS=y
CONFIG_NRF9160_GPS_LOG_LEVEL_DBG=y
CONFIG_GPS_USE_EXTERNAL=y
CONFIG_GPS_DEV_NAME=&amp;quot;NRF9160_GPS&amp;quot;

CONFIG_GPS_CONTROL_FIRST_FIX_CHECK_DELAY=10
CONFIG_GPS_CONTROL_FIX_CHECK_INTERVAL=30
CONFIG_GPS_CONTROL_FIX_TRY_TIME=360
CONFIG_GPS_CONTROL_PSM_DISABLE_ON_STOP=n

# Library for buttons and LEDs
CONFIG_DK_LIBRARY=y
CONFIG_DK_LIBRARY_INVERT_LEDS=n

# Console
CONFIG_CLOUD_UA_BUTTONS=n
CONFIG_CLOUD_UA_CONSOLE=n
CONFIG_CONSOLE_SUBSYS=y
CONFIG_CONSOLE_HANDLER=y
CONFIG_CONSOLE_GETCHAR=y

# Heap and stacks
CONFIG_HEAP_MEM_POOL_SIZE=16384
CONFIG_MAIN_STACK_SIZE=8192
CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=2048
CONFIG_HW_STACK_PROTECTION=y

# Settings
CONFIG_FLASH=y
CONFIG_FLASH_PAGE_LAYOUT=y
CONFIG_FLASH_MAP=y
CONFIG_FCB=y
CONFIG_SETTINGS=y
CONFIG_SETTINGS_FCB=y
CONFIG_MPU_ALLOW_FLASH_WRITE=y

# MCUBOOT
CONFIG_BOOTLOADER_MCUBOOT=y
CONFIG_IMG_MANAGER=y
CONFIG_MCUBOOT_IMG_MANAGER=y
CONFIG_IMG_ERASE_PROGRESSIVELY=y

# AWS FOTA
CONFIG_AWS_FOTA=y
CONFIG_AWS_FOTA_LOG_LEVEL_DBG=y
CONFIG_AWS_JOBS_LOG_LEVEL_DBG=y
CONFIG_DFU_TARGET=y

# Download client (needed by AWS FOTA)
CONFIG_DOWNLOAD_CLIENT=y
CONFIG_DOWNLOAD_CLIENT_STACK_SIZE=4096

# Fatal error
CONFIG_RESET_ON_FATAL_ERROR=n

CONFIG_WATCHDOG=y
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;However I still have the same issues, it can find several satellites but never get fix &lt;span class="emoticon" data-url="https://devzone.nordicsemi.com/cfs-file/__key/system/emoji/1f61e.svg" title="Disappointed"&gt;&amp;#x1f61e;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;img src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/communityserver-discussions-components-files/4/pastedimage1592643965629v3.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;Do you still think that the problem is with the port ?&amp;nbsp; In the asset_tracker sample it use the A-GPS, is it possible to make it work with just the GPS ?&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Tracking GPS but never get FIX</title><link>https://devzone.nordicsemi.com/thread/255986?ContentTypeID=1</link><pubDate>Fri, 19 Jun 2020 13:40:50 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:64f86c6a-159d-4cf5-82f9-57284bf8e021</guid><dc:creator>Martin Lesund</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;When you build the asset tracker sample for thingy91 it will use the separate &lt;a href="https://github.com/nrfconnect/sdk-nrf/blob/master/applications/asset_tracker/prj_thingy91_nrf9160ns.conf" rel="noopener noreferrer" target="_blank"&gt;&amp;quot;prj_thingy91_nrf9160ns.conf&amp;quot;&lt;/a&gt;&amp;nbsp;which sets the different configuration needed for that sample to run on the device.&lt;/p&gt;
&lt;p&gt;One option I just to strip down the asset_tracker sample to only use the GPS controller there since you already confirmed that it works in your favor.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Tracking GPS but never get FIX</title><link>https://devzone.nordicsemi.com/thread/255846?ContentTypeID=1</link><pubDate>Thu, 18 Jun 2020 17:32:24 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8fab7027-ead4-41ab-9f5e-5f1463faf00a</guid><dc:creator>RicardoPereira</dc:creator><description>&lt;p&gt;Hi @martin leasund&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Thanks for the answer.&lt;/p&gt;
&lt;p&gt;I&amp;#39;m still stuck. What should i change with the port to make it work ? I try to copy ma code the asset_tracker project but it still don&amp;#39;t work. The asset tracker example has the correct port ?&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Tracking GPS but never get FIX</title><link>https://devzone.nordicsemi.com/thread/255766?ContentTypeID=1</link><pubDate>Thu, 18 Jun 2020 12:28:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6e9b7be2-e0d6-4125-a813-fcf5eef174df</guid><dc:creator>Martin Lesund</dc:creator><description>&lt;p&gt;Hi,&lt;br /&gt;Sorry for the confusion.&lt;/p&gt;
&lt;p&gt;As Heidi explained in case: 250721&lt;br /&gt;The GPS sample isn&amp;#39;t really made for the Thingy:91 (PCA20035), j&lt;a href="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/samples/nrf9160/gps/README.html#requirements" rel="noopener noreferrer" target="_blank"&gt;ust the nRF9160DK &lt;/a&gt;(PCA10090). So if you want to open it for the Thingy:91 you will have to port it first.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;We don&amp;#39;t have a guide for how to port samples between the two devices, but you can take a look at the&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;a href="https://github.com/nrfconnect/sdk-nrf/tree/master/applications/asset_tracker"&gt;source code for the Asset Tracker application&lt;/a&gt;&amp;nbsp;for an example of&amp;nbsp;what changes you need to make.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Tracking GPS but never get FIX</title><link>https://devzone.nordicsemi.com/thread/255581?ContentTypeID=1</link><pubDate>Wed, 17 Jun 2020 14:01:15 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:bf95cf8c-a199-4324-a368-b533fed468d2</guid><dc:creator>RicardoPereira</dc:creator><description>&lt;p&gt;Hi,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;What should I understand with your image ?&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;here is the .config&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;
#
# Modules
#

#
# Nordic nRF Connect
#
# CONFIG_NCS_SAMPLES_DEFAULTS is not set

#
# Bootloader
#
# CONFIG_MCUBOOT_BUILD_S1_VARIANT is not set
# CONFIG_SECURE_BOOT is not set
# CONFIG_SECURE_BOOT_CRYPTO is not set

#
# Secure Boot firmware validation
#
CONFIG_SB_VALIDATION_INFO_MAGIC=0x86518483
CONFIG_SB_VALIDATION_POINTER_MAGIC=0x6919b47e
CONFIG_SB_VALIDATION_INFO_CRYPTO_ID=1
CONFIG_SB_VALIDATION_INFO_VERSION=2
# end of Secure Boot firmware validation
# end of Bootloader

#
# Bluetooth Low Energy
#
CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=1024
# end of Bluetooth Low Energy

#
# DFU
#
# CONFIG_DFU_TARGET is not set
# end of DFU

# CONFIG_NRF_ESB is not set

#
# Networking
#

#
# Application protocols
#
# CONFIG_NRF_CLOUD is not set
# CONFIG_DOWNLOAD_CLIENT is not set
# CONFIG_AWS_IOT is not set
# CONFIG_AWS_JOBS is not set
# CONFIG_AWS_FOTA is not set
# CONFIG_CLOUD_API is not set

#
# Self-Registration (Zi ZHu Ce)
#
# CONFIG_ZZHC is not set
# end of Self-Registration (Zi ZHu Ce)
# end of Application protocols
# end of Networking

#
# NFC
#
# CONFIG_NFC_NDEF is not set
# CONFIG_NFC_NDEF_PARSER is not set
# CONFIG_NFC_T2T_PARSER is not set
# CONFIG_NFC_T4T_ISODEP is not set
# CONFIG_NFC_T4T_APDU is not set
# CONFIG_NFC_T4T_CC_FILE is not set
# CONFIG_NFC_T4T_HL_PROCEDURE is not set
# CONFIG_NFC_PLATFORM is not set
# CONFIG_NFC_TNEP_TAG is not set
# CONFIG_NFC_TNEP_POLLER is not set
# end of NFC

# CONFIG_PROFILER is not set

#
# SPM
#
CONFIG_SPM=y
# CONFIG_SPM_BUILD_STRATEGY_USE_HEX_FILE is not set
# CONFIG_SPM_BUILD_STRATEGY_SKIP_BUILD is not set
CONFIG_SPM_BUILD_STRATEGY_FROM_SOURCE=y
# CONFIG_IS_SPM is not set
CONFIG_ARM_ENTRY_VENEERS_LIB_NAME=&amp;quot;spm/libspmsecureentries.a&amp;quot;
# end of SPM

CONFIG_FW_INFO=y
CONFIG_FW_VALIDATION_METADATA_OFFSET=0
CONFIG_FW_INFO_OFFSET=0x200
CONFIG_FW_INFO_FIRMWARE_VERSION=1
CONFIG_FW_INFO_MAGIC_COMMON=0x281ee6de
CONFIG_FW_INFO_MAGIC_FIRMWARE_INFO=0x8fcebb4c
CONFIG_FW_INFO_MAGIC_EXT_API=0xb845acea
CONFIG_FW_INFO_HARDWARE_ID=91
CONFIG_FW_INFO_VERSION=2
CONFIG_FW_INFO_CRYPTO_ID=0
CONFIG_FW_INFO_MAGIC_COMPATIBILITY_ID=0
CONFIG_FW_INFO_MAGIC_LEN=12
CONFIG_FW_INFO_VALID_VAL=0x9102FFFF
# CONFIG_PPI_TRACE is not set

#
# Nordic MPSL
#
CONFIG_MPSL_THREAD_COOP_PRIO=8
CONFIG_MPSL_SIGNAL_STACK_SIZE=1024
# end of Nordic MPSL

#
# Libraries
#

#
# Binary libraries
#
# end of Binary libraries

#
# BSD Library for nrf91
#
CONFIG_BSD_LIBRARY=y
CONFIG_BSD_LIBRARY_SYS_INIT=y
# CONFIG_BSD_LIBRARY_TRACE_ENABLED is not set
# end of BSD Library for nrf91

CONFIG_ADP536X=y
CONFIG_ADP536X_BUS_NAME=&amp;quot;I2C_2&amp;quot;

#
# AT Command driver
#
CONFIG_AT_CMD=y
CONFIG_AT_CMD_SYS_INIT=y
CONFIG_AT_CMD_INIT_PRIORITY=40
CONFIG_AT_CMD_THREAD_PRIO=10
CONFIG_AT_CMD_THREAD_STACK_SIZE=1024
CONFIG_AT_CMD_RESPONSE_MAX_LEN=2700
CONFIG_AT_CMD_RESPONSE_BUFFER_COUNT=2
# end of AT Command driver

# CONFIG_ST25R3911B_LIB is not set
# CONFIG_LTE_LINK_CONTROL is not set
# CONFIG_FPROTECT is not set
CONFIG_AT_NOTIF=y
CONFIG_AT_NOTIF_SYS_INIT=y

#
# AT Host Library for nrf91
#
# CONFIG_AT_HOST_LIBRARY is not set
# end of AT Host Library for nrf91

# CONFIG_DK_LIBRARY is not set
# CONFIG_AT_CMD_PARSER is not set
# CONFIG_MODEM_INFO is not set
# CONFIG_PDN_MANAGEMENT is not set
CONFIG_RESET_ON_FATAL_ERROR=y
# CONFIG_SMS is not set
# CONFIG_SUPL_CLIENT_LIB is not set
# end of Libraries

#
# Device Drivers
#
CONFIG_ENTROPY_CC310=y
# CONFIG_ETH_RTT is not set
# CONFIG_SENSOR is not set

#
# GPS Drivers
#
# CONFIG_GPS_SIM is not set
# CONFIG_NRF9160_GPS is not set
# end of GPS Drivers

# CONFIG_CLOCK_CONTROL_NRF_K32SRC_RC is not set
CONFIG_CLOCK_CONTROL_NRF_K32SRC_XTAL=y
# CONFIG_CLOCK_CONTROL_NRF_K32SRC_SYNTH is not set
# end of Device Drivers

#
# External libraries
#
# CONFIG_CJSON_LIB is not set
# end of External libraries

# CONFIG_UNITY is not set
# end of Nordic nRF Connect

#
# MCUboot
#
CONFIG_BOOT_SIGNATURE_KEY_FILE=&amp;quot;root-rsa-2048.pem&amp;quot;
CONFIG_DT_FLASH_WRITE_BLOCK_SIZE=4
# end of MCUboot

#
# Nordic nrfxlib
#
CONFIG_BSD_LIB=y
# CONFIG_NFC_T2T_NRFXLIB is not set
# CONFIG_NFC_T4T_NRFXLIB is not set

#
# Crypto libraries for nRF5x SOCs.
#
CONFIG_NRFXLIB_CRYPTO=y
CONFIG_NRF_OBERON=y
# CONFIG_NRF_CC310_BL is not set
# CONFIG_NRF_CC310_PLATFORM is not set
# end of Crypto libraries for nRF5x SOCs.

#
# Nordic Security
#
# CONFIG_NORDIC_SECURITY_BACKEND is not set
# end of Nordic Security
# end of Nordic nrfxlib

#
# Optional modules. Make sure they&amp;#39;re installed, via the project manifest.
#
# CONFIG_CANOPENNODE is not set
# CONFIG_CIVETWEB is not set
# CONFIG_LIBMETAL is not set
# CONFIG_HAS_SEMTECH_LORAMAC is not set
# CONFIG_HAS_SEMTECH_RADIO_DRIVERS is not set
# CONFIG_MBEDTLS is not set
# CONFIG_HAS_MEC_HAL is not set
CONFIG_HAS_NRFX=y

#
# nrfx drivers
#
# CONFIG_NRFX_CLOCK is not set
# CONFIG_NRFX_DPPI is not set
# CONFIG_NRFX_EGU is not set
# CONFIG_NRFX_EGU0 is not set
# CONFIG_NRFX_EGU1 is not set
# CONFIG_NRFX_EGU2 is not set
# CONFIG_NRFX_EGU3 is not set
# CONFIG_NRFX_EGU4 is not set
# CONFIG_NRFX_EGU5 is not set
# CONFIG_NRFX_GPIOTE is not set
# CONFIG_NRFX_I2S is not set
# CONFIG_NRFX_IPC is not set
CONFIG_NRFX_NVMC=y
# CONFIG_NRFX_PDM is not set
# CONFIG_NRFX_POWER is not set
# CONFIG_NRFX_PWM is not set
# CONFIG_NRFX_PWM0 is not set
# CONFIG_NRFX_PWM1 is not set
# CONFIG_NRFX_PWM2 is not set
# CONFIG_NRFX_PWM3 is not set
# CONFIG_NRFX_RTC is not set
# CONFIG_NRFX_RTC0 is not set
# CONFIG_NRFX_RTC1 is not set
# CONFIG_NRFX_SAADC is not set
CONFIG_NRFX_SPIM=y
# CONFIG_NRFX_SPIM0 is not set
# CONFIG_NRFX_SPIM1 is not set
# CONFIG_NRFX_SPIM2 is not set
CONFIG_NRFX_SPIM3=y
# CONFIG_NRFX_SPIS is not set
# CONFIG_NRFX_SPIS0 is not set
# CONFIG_NRFX_SPIS1 is not set
# CONFIG_NRFX_SPIS2 is not set
# CONFIG_NRFX_SPIS3 is not set
# CONFIG_NRFX_SYSTICK is not set
# CONFIG_NRFX_TIMER is not set
# CONFIG_NRFX_TIMER0 is not set
# CONFIG_NRFX_TIMER1 is not set
# CONFIG_NRFX_TIMER2 is not set
CONFIG_NRFX_TWIM=y
# CONFIG_NRFX_TWIM0 is not set
# CONFIG_NRFX_TWIM1 is not set
CONFIG_NRFX_TWIM2=y
# CONFIG_NRFX_TWIM3 is not set
# CONFIG_NRFX_TWIS is not set
# CONFIG_NRFX_TWIS0 is not set
# CONFIG_NRFX_TWIS1 is not set
# CONFIG_NRFX_TWIS2 is not set
# CONFIG_NRFX_TWIS3 is not set
# CONFIG_NRFX_UARTE is not set
# CONFIG_NRFX_UARTE0 is not set
# CONFIG_NRFX_UARTE1 is not set
# CONFIG_NRFX_UARTE2 is not set
# CONFIG_NRFX_UARTE3 is not set
# CONFIG_NRFX_WDT is not set
# CONFIG_NRFX_WDT0 is not set
# CONFIG_NRFX_PRS is not set
# CONFIG_NRFX_PRS_BOX_0 is not set
# CONFIG_NRFX_PRS_BOX_1 is not set
# CONFIG_NRFX_PRS_BOX_2 is not set
# CONFIG_NRFX_PRS_BOX_3 is not set
# CONFIG_NRFX_PRS_BOX_4 is not set
# end of nrfx drivers

# CONFIG_OPENAMP is not set
# CONFIG_MIPI_SYST_LIB is not set
# CONFIG_TINYCBOR is not set
# end of Modules

CONFIG_SPI=y
# CONFIG_NET_L2_ETHERNET is not set
CONFIG_I2C=y
# CONFIG_MODEM is not set
CONFIG_UART_INTERRUPT_DRIVEN=y
CONFIG_NET_IPV6=y
# CONFIG_NET_CONFIG_NEED_IPV6 is not set
# CONFIG_UART_1_NRF_UARTE is not set
CONFIG_BOARD=&amp;quot;nrf9160_pca20035&amp;quot;
CONFIG_I2C_2=y
CONFIG_SPI_3=y
CONFIG_FLASH_LOAD_SIZE=0x0
CONFIG_FLASH_LOAD_OFFSET=0x0
CONFIG_SOC=&amp;quot;nRF9160_SICA&amp;quot;
CONFIG_SOC_SERIES=&amp;quot;nrf91&amp;quot;
CONFIG_NUM_IRQS=65
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=32768
# CONFIG_WATCHDOG is not set
# CONFIG_UART_NS16550 is not set
CONFIG_GPIO=y
CONFIG_SYS_POWER_MANAGEMENT=y
# CONFIG_SYS_POWER_DEEP_SLEEP_STATES is not set
CONFIG_HAS_SYS_POWER_STATE_DEEP_SLEEP_1=y
# CONFIG_DEVICE_POWER_MANAGEMENT is not set
CONFIG_ARCH_HAS_CUSTOM_BUSY_WAIT=y
# CONFIG_CORTEX_M_SYSTICK is not set
CONFIG_CLOCK_CONTROL=y
CONFIG_NRF_RTC_TIMER=y
CONFIG_SYS_CLOCK_TICKS_PER_SEC=32768
CONFIG_BUILD_OUTPUT_HEX=y
CONFIG_FLOAT=y
CONFIG_TEXT_SECTION_OFFSET=0
CONFIG_FLASH_SIZE=1024
CONFIG_FLASH_BASE_ADDRESS=0x0
CONFIG_SRAM_SIZE=128
CONFIG_SRAM_BASE_ADDRESS=0x20020000
# CONFIG_CPU_HAS_CUSTOM_FIXED_SOC_MPU_REGIONS is not set
# CONFIG_TINYCRYPT is not set
# CONFIG_NET_L2_IEEE802154 is not set
CONFIG_SOC_GECKO_EMU=y
CONFIG_HEAP_MEM_POOL_SIZE=2048
CONFIG_BOARD_NRF9160_PCA20035NS=y

#
# Board Options
#
# end of Board Options

# CONFIG_SOC_SERIES_BEETLE is not set
# CONFIG_SOC_SERIES_MPS2 is not set
# CONFIG_SOC_SERIES_MUSCA is not set
# CONFIG_SOC_SERIES_MUSCA_B1 is not set
# CONFIG_SOC_SERIES_SAMD20 is not set
# CONFIG_SOC_SERIES_SAMD21 is not set
# CONFIG_SOC_SERIES_SAMD51 is not set
# CONFIG_SOC_SERIES_SAME51 is not set
# CONFIG_SOC_SERIES_SAME53 is not set
# CONFIG_SOC_SERIES_SAME54 is not set
# CONFIG_SOC_SERIES_SAMR21 is not set
# CONFIG_SOC_SERIES_SAM3X is not set
# CONFIG_SOC_SERIES_SAM4S is not set
# CONFIG_SOC_SERIES_SAME70 is not set
# CONFIG_SOC_SERIES_VALKYRIE is not set
# CONFIG_SOC_SERIES_PSOC62 is not set
# CONFIG_SOC_SERIES_MEC1501X is not set
# CONFIG_SOC_SERIES_MEC1701X is not set
# CONFIG_SOC_SERIES_NRF51X is not set
# CONFIG_SOC_SERIES_NRF52X is not set
# CONFIG_SOC_SERIES_NRF53X is not set
CONFIG_SOC_SERIES_NRF91X=y
# CONFIG_SOC_SERIES_IMX_6X_M4 is not set
# CONFIG_SOC_SERIES_IMX7_M4 is not set
# CONFIG_SOC_SERIES_IMX_RT is not set
# CONFIG_SOC_SERIES_KINETIS_K2X is not set
# CONFIG_SOC_SERIES_KINETIS_K6X is not set
# CONFIG_SOC_SERIES_KINETIS_K8X is not set
# CONFIG_SOC_SERIES_KINETIS_KE1XF is not set
# CONFIG_SOC_SERIES_KINETIS_KL2X is not set
# CONFIG_SOC_SERIES_KINETIS_KV5X is not set
# CONFIG_SOC_SERIES_KINETIS_KWX is not set
# CONFIG_SOC_SERIES_LPC54XXX is not set
# CONFIG_SOC_SERIES_LPC55XXX is not set
# CONFIG_SOC_SERIES_EFM32GG11B is not set
# CONFIG_SOC_SERIES_EFM32HG is not set
# CONFIG_SOC_SERIES_EFM32JG12B is not set
# CONFIG_SOC_SERIES_EFM32PG12B is not set
# CONFIG_SOC_SERIES_EFM32WG is not set
# CONFIG_SOC_SERIES_EFR32FG1P is not set
# CONFIG_SOC_SERIES_EFR32MG12P is not set
# CONFIG_SOC_SERIES_STM32F0X is not set
# CONFIG_SOC_SERIES_STM32F1X is not set
# CONFIG_SOC_SERIES_STM32F2X is not set
# CONFIG_SOC_SERIES_STM32F3X is not set
# CONFIG_SOC_SERIES_STM32F4X is not set
# CONFIG_SOC_SERIES_STM32F7X is not set
# CONFIG_SOC_SERIES_STM32G0X is not set
# CONFIG_SOC_SERIES_STM32G4X is not set
# CONFIG_SOC_SERIES_STM32H7X is not set
# CONFIG_SOC_SERIES_STM32L0X is not set
# CONFIG_SOC_SERIES_STM32L1X is not set
# CONFIG_SOC_SERIES_STM32L4X is not set
# CONFIG_SOC_SERIES_STM32MP1X is not set
# CONFIG_SOC_SERIES_STM32WBX is not set
# CONFIG_SOC_TI_LM3S6965 is not set
# CONFIG_SOC_SERIES_CC13X2_CC26X2 is not set
# CONFIG_SOC_SERIES_CC32XX is not set
# CONFIG_SOC_SERIES_MSP432P4XX is not set
# CONFIG_SOC_XILINX_ZYNQMP_RPU is not set

#
# Hardware Configuration
#
CONFIG_CPU_HAS_ARM_MPU=y
CONFIG_CPU_HAS_NRF_IDAU=y
CONFIG_SOC_FAMILY=&amp;quot;nordic_nrf&amp;quot;
CONFIG_SOC_FAMILY_NRF=y
CONFIG_HAS_HW_NRF_CC310=y
CONFIG_HAS_HW_NRF_CLOCK=y
CONFIG_HAS_HW_NRF_DPPIC=y
CONFIG_HAS_HW_NRF_EGU0=y
CONFIG_HAS_HW_NRF_EGU1=y
CONFIG_HAS_HW_NRF_EGU2=y
CONFIG_HAS_HW_NRF_EGU3=y
CONFIG_HAS_HW_NRF_EGU4=y
CONFIG_HAS_HW_NRF_EGU5=y
CONFIG_HAS_HW_NRF_GPIO0=y
CONFIG_HAS_HW_NRF_GPIOTE=y
CONFIG_HAS_HW_NRF_I2S=y
CONFIG_HAS_HW_NRF_IPC=y
CONFIG_HAS_HW_NRF_PDM=y
CONFIG_HAS_HW_NRF_POWER=y
CONFIG_HAS_HW_NRF_PWM0=y
CONFIG_HAS_HW_NRF_PWM1=y
CONFIG_HAS_HW_NRF_PWM2=y
CONFIG_HAS_HW_NRF_PWM3=y
CONFIG_HAS_HW_NRF_RTC0=y
CONFIG_HAS_HW_NRF_RTC1=y
CONFIG_HAS_HW_NRF_SAADC=y
CONFIG_HAS_HW_NRF_SPIM0=y
CONFIG_HAS_HW_NRF_SPIM1=y
CONFIG_HAS_HW_NRF_SPIM2=y
CONFIG_HAS_HW_NRF_SPIM3=y
CONFIG_HAS_HW_NRF_SPIS0=y
CONFIG_HAS_HW_NRF_SPIS1=y
CONFIG_HAS_HW_NRF_SPIS2=y
CONFIG_HAS_HW_NRF_SPIS3=y
CONFIG_HAS_HW_NRF_SPU=y
CONFIG_HAS_HW_NRF_TIMER0=y
CONFIG_HAS_HW_NRF_TIMER1=y
CONFIG_HAS_HW_NRF_TIMER2=y
CONFIG_HAS_HW_NRF_TWIM0=y
CONFIG_HAS_HW_NRF_TWIM1=y
CONFIG_HAS_HW_NRF_TWIM2=y
CONFIG_HAS_HW_NRF_TWIM3=y
CONFIG_HAS_HW_NRF_TWIS0=y
CONFIG_HAS_HW_NRF_TWIS1=y
CONFIG_HAS_HW_NRF_TWIS2=y
CONFIG_HAS_HW_NRF_TWIS3=y
CONFIG_HAS_HW_NRF_UARTE0=y
CONFIG_HAS_HW_NRF_UARTE1=y
CONFIG_HAS_HW_NRF_UARTE2=y
CONFIG_HAS_HW_NRF_UARTE3=y
CONFIG_HAS_HW_NRF_WDT=y
CONFIG_NRF_ENABLE_ICACHE=y
CONFIG_SOC_NRF9160=y
CONFIG_SOC_NRF9160_SICA=y
# end of Hardware Configuration

CONFIG_SOC_COMPATIBLE_NRF=y

#
# ARM Options
#
CONFIG_CPU_CORTEX=y
CONFIG_CPU_CORTEX_M=y
CONFIG_ISA_THUMB2=y
CONFIG_STACK_ALIGN_DOUBLE_WORD=y
# CONFIG_RUNTIME_NMI is not set
CONFIG_PLATFORM_SPECIFIC_INIT=y
CONFIG_FAULT_DUMP=2
# CONFIG_BUILTIN_STACK_GUARD is not set
CONFIG_ARM_NONSECURE_FIRMWARE=y

#
# ARM TrustZone Options
#

#
# Non-secure firmware
#
CONFIG_ARM_FIRMWARE_USES_SECURE_ENTRY_FUNCS=y
# end of ARM TrustZone Options

CONFIG_FP_HARDABI=y
# CONFIG_FP_SOFTABI is not set
CONFIG_CPU_CORTEX_M33=y
CONFIG_CPU_CORTEX_M_HAS_SYSTICK=y
CONFIG_CPU_CORTEX_M_HAS_DWT=y
CONFIG_CPU_CORTEX_M_HAS_BASEPRI=y
CONFIG_CPU_CORTEX_M_HAS_VTOR=y
CONFIG_CPU_CORTEX_M_HAS_SPLIM=y
CONFIG_CPU_CORTEX_M_HAS_PROGRAMMABLE_FAULT_PRIOS=y
CONFIG_CPU_CORTEX_M_HAS_CMSE=y
CONFIG_ARMV7_M_ARMV8_M_MAINLINE=y
CONFIG_ARMV8_M_MAINLINE=y
CONFIG_ARMV8_M_SE=y
CONFIG_ARMV7_M_ARMV8_M_FP=y
CONFIG_ARMV8_M_DSP=y
CONFIG_XIP=y

#
# ARM Cortex-M0/M0+/M3/M4/M7/M23/M33 options
#
CONFIG_GEN_ISR_TABLES=y
# CONFIG_ZERO_LATENCY_IRQS is not set
# end of ARM Cortex-M0/M0+/M3/M4/M7/M23/M33 options

CONFIG_GEN_IRQ_VECTOR_TABLE=y
CONFIG_ARM_MPU=y
CONFIG_ARM_MPU_REGION_MIN_ALIGN_AND_SIZE=32
# CONFIG_MPU_STACK_GUARD is not set
# CONFIG_MPU_ALLOW_FLASH_WRITE is not set
# CONFIG_CUSTOM_SECTION_ALIGN is not set
CONFIG_CUSTOM_SECTION_MIN_ALIGN_SIZE=32
CONFIG_ARM_TRUSTZONE_M=y
CONFIG_ARCH=&amp;quot;arm&amp;quot;
# end of ARM Options

# CONFIG_ARC is not set
CONFIG_ARM=y
# CONFIG_X86 is not set
# CONFIG_NIOS2 is not set
# CONFIG_RISCV is not set
# CONFIG_XTENSA is not set
# CONFIG_ARCH_POSIX is not set

#
# General Architecture Options
#
# CONFIG_TRUSTED_EXECUTION_SECURE is not set
CONFIG_TRUSTED_EXECUTION_NONSECURE=y
# CONFIG_HW_STACK_PROTECTION is not set
# CONFIG_USERSPACE is not set
CONFIG_PRIVILEGED_STACK_SIZE=1024
CONFIG_PRIVILEGED_STACK_TEXT_AREA=256
CONFIG_KOBJECT_TEXT_AREA=256
# CONFIG_STACK_GROWS_UP is not set

#
# Interrupt Configuration
#
# CONFIG_DYNAMIC_INTERRUPTS is not set
CONFIG_GEN_SW_ISR_TABLE=y
CONFIG_ARCH_SW_ISR_TABLE_ALIGN=0
CONFIG_GEN_IRQ_START_VECTOR=0
# end of Interrupt Configuration
# end of General Architecture Options

CONFIG_ARCH_HAS_TRUSTED_EXECUTION=y
CONFIG_ARCH_HAS_STACK_PROTECTION=y
CONFIG_ARCH_HAS_USERSPACE=y
CONFIG_ARCH_HAS_EXECUTABLE_PAGE_BIT=y
CONFIG_ARCH_HAS_RAMFUNC_SUPPORT=y
CONFIG_ARCH_HAS_NESTED_EXCEPTION_DETECTION=y
CONFIG_ARCH_HAS_THREAD_ABORT=y
CONFIG_CPU_HAS_TEE=y
CONFIG_CPU_HAS_FPU=y
CONFIG_CPU_HAS_MPU=y
CONFIG_MEMORY_PROTECTION=y
CONFIG_MPU_REQUIRES_NON_OVERLAPPING_REGIONS=y
CONFIG_MPU_GAP_FILLING=y
CONFIG_FP_SHARING=y

#
# General Kernel Options
#
CONFIG_MULTITHREADING=y
CONFIG_NUM_COOP_PRIORITIES=16
CONFIG_NUM_PREEMPT_PRIORITIES=15
CONFIG_MAIN_THREAD_PRIORITY=0
CONFIG_COOP_ENABLED=y
CONFIG_PREEMPT_ENABLED=y
CONFIG_PRIORITY_CEILING=0
CONFIG_NUM_METAIRQ_PRIORITIES=0
# CONFIG_SCHED_DEADLINE is not set
# CONFIG_SCHED_CPU_MASK is not set
CONFIG_MAIN_STACK_SIZE=4096
CONFIG_IDLE_STACK_SIZE=320
CONFIG_ISR_STACK_SIZE=2048
CONFIG_THREAD_STACK_INFO=y
# CONFIG_THREAD_CUSTOM_DATA is not set
CONFIG_ERRNO=y
CONFIG_SCHED_DUMB=y
# CONFIG_SCHED_SCALABLE is not set
# CONFIG_SCHED_MULTIQ is not set
# CONFIG_WAITQ_SCALABLE is not set
CONFIG_WAITQ_DUMB=y

#
# Kernel Debugging and Metrics
#
# CONFIG_INIT_STACKS is not set
# CONFIG_KERNEL_DEBUG is not set
CONFIG_BOOT_BANNER=y
CONFIG_BOOT_DELAY=0
# CONFIG_EXECUTION_BENCHMARKING is not set
# CONFIG_THREAD_MONITOR is not set
# CONFIG_THREAD_NAME is not set
# end of Kernel Debugging and Metrics

#
# Work Queue Options
#
CONFIG_SYSTEM_WORKQUEUE_PRIORITY=-1
CONFIG_OFFLOAD_WORKQUEUE_STACK_SIZE=1024
CONFIG_OFFLOAD_WORKQUEUE_PRIORITY=-1
# end of Work Queue Options

#
# Atomic Operations
#
CONFIG_ATOMIC_OPERATIONS_BUILTIN=y
# end of Atomic Operations

#
# Timer API Options
#
CONFIG_TIMESLICING=y
CONFIG_TIMESLICE_SIZE=0
CONFIG_TIMESLICE_PRIORITY=0
CONFIG_POLL=y
# end of Timer API Options

#
# Other Kernel Object Options
#
CONFIG_NUM_MBOX_ASYNC_MSGS=10
CONFIG_NUM_PIPE_ASYNC_MSGS=10
CONFIG_HEAP_MEM_POOL_MIN_SIZE=64
# end of Other Kernel Object Options

CONFIG_ARCH_HAS_CUSTOM_SWAP_TO_MAIN=y
CONFIG_SWAP_NONATOMIC=y
CONFIG_SYS_CLOCK_EXISTS=y

#
# Initialization Priorities
#
CONFIG_KERNEL_INIT_PRIORITY_OBJECTS=30
CONFIG_KERNEL_INIT_PRIORITY_DEFAULT=40
CONFIG_KERNEL_INIT_PRIORITY_DEVICE=50
CONFIG_APPLICATION_INIT_PRIORITY=90
# end of Initialization Priorities

#
# Security Options
#
# CONFIG_STACK_CANARIES is not set
CONFIG_STACK_POINTER_RANDOM=0
# end of Security Options

#
# SMP Options
#
CONFIG_MP_NUM_CPUS=1
# end of SMP Options

CONFIG_TICKLESS_IDLE=y
CONFIG_TICKLESS_IDLE_THRESH=3
CONFIG_TICKLESS_KERNEL=y
# CONFIG_SYS_PM_STATE_LOCK is not set
# CONFIG_SYS_PM_DIRECT_FORCE_MODE is not set
# CONFIG_SYS_PM_DEBUG is not set
CONFIG_SYS_PM_POLICY_RESIDENCY=y
# CONFIG_SYS_PM_POLICY_DUMMY is not set
# CONFIG_SYS_PM_POLICY_APP is not set
CONFIG_SYS_PM_MIN_RESIDENCY_DEEP_SLEEP_1=60000
# end of General Kernel Options

CONFIG_HAS_DTS=y
CONFIG_HAS_DTS_GPIO=y
CONFIG_HAS_DTS_I2C=y

#
# Device Drivers
#
# CONFIG_IEEE802154 is not set
# CONFIG_LORA is not set
CONFIG_UART_CONSOLE_ON_DEV_NAME=&amp;quot;UART_0&amp;quot;
CONFIG_CONSOLE=y
CONFIG_CONSOLE_INPUT_MAX_LINE_LEN=128
CONFIG_CONSOLE_HAS_DRIVER=y
# CONFIG_CONSOLE_HANDLER is not set
CONFIG_UART_CONSOLE=y
CONFIG_UART_CONSOLE_INIT_PRIORITY=60
# CONFIG_UART_CONSOLE_DEBUG_SERVER_HOOKS is not set
# CONFIG_UART_CONSOLE_MCUMGR is not set
# CONFIG_USB_UART_CONSOLE is not set
# CONFIG_RAM_CONSOLE is not set
# CONFIG_IPM_CONSOLE_SENDER is not set
# CONFIG_IPM_CONSOLE_RECEIVER is not set
# CONFIG_UART_PIPE is not set
# CONFIG_UART_MCUMGR is not set
# CONFIG_NET_LOOPBACK is not set
CONFIG_SERIAL=y

#
# Capabilities
#
CONFIG_SERIAL_HAS_DRIVER=y
CONFIG_SERIAL_SUPPORT_ASYNC=y
CONFIG_SERIAL_SUPPORT_INTERRUPT=y
# CONFIG_UART_ASYNC_API is not set
# CONFIG_UART_LINE_CTRL is not set
# CONFIG_UART_DRV_CMD is not set

#
# Serial Drivers
#
# CONFIG_UART_NSIM is not set
CONFIG_UART_NRFX=y
CONFIG_UART_0_NRF_UARTE=y
CONFIG_UART_0_INTERRUPT_DRIVEN=y
# CONFIG_UART_0_NRF_PARITY_BIT is not set
# CONFIG_UART_0_NRF_FLOW_CONTROL is not set
CONFIG_UART_0_NRF_TX_BUFFER_SIZE=32
CONFIG_NRF_UARTE_PERIPHERAL=y
# CONFIG_UART_ALTERA_JTAG is not set
# CONFIG_UART_PL011 is not set

#
# Interrupt Controllers
#
# CONFIG_SWERV_PIC is not set
# CONFIG_MULTI_LEVEL_INTERRUPTS is not set
# end of Interrupt Controllers

#
# Timer Drivers
#
# CONFIG_SYSTEM_CLOCK_DISABLE is not set
# CONFIG_TIMER_READS_ITS_FREQUENCY_AT_RUNTIME is not set
# CONFIG_SYSTEM_CLOCK_SLOPPY_IDLE is not set
CONFIG_SYSTEM_CLOCK_INIT_PRIORITY=0
CONFIG_TICKLESS_CAPABLE=y
# end of Timer Drivers

CONFIG_ENTROPY_GENERATOR=y
CONFIG_ENTROPY_NRF_FORCE_ALT=y
CONFIG_ENTROPY_HAS_DRIVER=y
CONFIG_ENTROPY_NAME=&amp;quot;ENTROPY_0&amp;quot;
# CONFIG_GPIO_SHELL is not set
# CONFIG_GPIO_DW is not set
# CONFIG_GPIO_PCAL9535A is not set
CONFIG_GPIO_NRFX=y
CONFIG_GPIO_NRF_INIT_PRIORITY=40
CONFIG_GPIO_NRF_P0=y
# CONFIG_GPIO_SX1509B is not set
# CONFIG_GPIO_INTEL_APL is not set
# CONFIG_SHARED_IRQ is not set
# CONFIG_SPI_ASYNC is not set
# CONFIG_SPI_SLAVE is not set
CONFIG_SPI_INIT_PRIORITY=70
# CONFIG_SPI_0 is not set
# CONFIG_SPI_1 is not set
# CONFIG_SPI_2 is not set
CONFIG_SPI_3_OP_MODES=1
# CONFIG_SPI_4 is not set
# CONFIG_SPI_5 is not set
# CONFIG_SPI_6 is not set
# CONFIG_SPI_7 is not set
# CONFIG_SPI_8 is not set
CONFIG_SPI_NRFX=y
CONFIG_SPI_3_NRF_SPIM=y
CONFIG_SPI_3_NRF_ORC=0xff
CONFIG_SPI_NRFX_RAM_BUFFER_SIZE=0
# CONFIG_SPI_OC_SIMPLE is not set
# CONFIG_I2C_SLAVE is not set
# CONFIG_I2C_GPIO is not set
CONFIG_I2C_NRFX=y
CONFIG_I2C_2_NRF_TWIM=y
# CONFIG_I2C_SBCON is not set
CONFIG_I2C_INIT_PRIORITY=60
# CONFIG_I2C_0 is not set
# CONFIG_I2C_1 is not set
# CONFIG_I2C_3 is not set
# CONFIG_I2C_4 is not set
# CONFIG_I2C_5 is not set
# CONFIG_I2C_6 is not set
# CONFIG_I2C_7 is not set
# CONFIG_I2S is not set
# CONFIG_PWM is not set
# CONFIG_PINMUX is not set
# CONFIG_ADC is not set
CONFIG_CLOCK_CONTROL_NRF=y
# CONFIG_CLOCK_CONTROL_NRF_K32SRC_500PPM is not set
# CONFIG_CLOCK_CONTROL_NRF_K32SRC_250PPM is not set
# CONFIG_CLOCK_CONTROL_NRF_K32SRC_150PPM is not set
# CONFIG_CLOCK_CONTROL_NRF_K32SRC_100PPM is not set
# CONFIG_CLOCK_CONTROL_NRF_K32SRC_75PPM is not set
# CONFIG_CLOCK_CONTROL_NRF_K32SRC_50PPM is not set
# CONFIG_CLOCK_CONTROL_NRF_K32SRC_30PPM is not set
CONFIG_CLOCK_CONTROL_NRF_K32SRC_20PPM=y
# CONFIG_PTP_CLOCK is not set
# CONFIG_IPM is not set
# CONFIG_FLASH is not set
# CONFIG_COUNTER is not set
# CONFIG_DMA is not set
# CONFIG_USB is not set
# CONFIG_CRYPTO is not set
# CONFIG_DISPLAY is not set
# CONFIG_LED_STRIP is not set
# CONFIG_WIFI is not set
# CONFIG_LED is not set
# CONFIG_CAN is not set
# CONFIG_AUDIO is not set
# CONFIG_NEURAL_NET_ACCEL is not set
# CONFIG_HWINFO is not set
# CONFIG_ESPI is not set
# CONFIG_PS2 is not set
# CONFIG_KSCAN is not set
# CONFIG_VIDEO is not set
# CONFIG_EEPROM is not set
# end of Device Drivers

#
# C Library
#
# CONFIG_MINIMAL_LIBC is not set
CONFIG_NEWLIB_LIBC=y
# CONFIG_EXTERNAL_LIBC is not set
CONFIG_HAS_NEWLIB_LIBC_NANO=y
CONFIG_NEWLIB_LIBC_NANO=y
CONFIG_NEWLIB_LIBC_FLOAT_PRINTF=y
# CONFIG_NEWLIB_LIBC_FLOAT_SCANF is not set
CONFIG_STDOUT_CONSOLE=y
# end of C Library

#
# Additional libraries
#
# CONFIG_LVGL is not set

#
# OS Support Library
#
# CONFIG_JSON_LIBRARY is not set
# CONFIG_RING_BUFFER is not set
# CONFIG_BASE64 is not set
# end of OS Support Library

CONFIG_POSIX_MAX_FDS=4
# CONFIG_POSIX_API is not set
# CONFIG_PTHREAD_IPC is not set
# CONFIG_POSIX_CLOCK is not set
CONFIG_MAX_TIMER_COUNT=5
# CONFIG_POSIX_MQUEUE is not set
# CONFIG_UPDATEHUB is not set
# end of Additional libraries

# CONFIG_BT is not set
# CONFIG_CONSOLE_SUBSYS is not set
# CONFIG_CPLUSPLUS is not set

#
# System Monitoring Options
#
# CONFIG_BOOT_TIME_MEASUREMENT is not set
# CONFIG_STATS is not set
# end of System Monitoring Options

#
# Debugging Options
#
# CONFIG_DEBUG is not set
# CONFIG_TRACING is not set
# CONFIG_STACK_USAGE is not set
# CONFIG_STACK_SENTINEL is not set
CONFIG_PRINTK=y
CONFIG_EARLY_CONSOLE=y
# CONFIG_ASSERT is not set
# CONFIG_FORCE_NO_ASSERT is not set
CONFIG_ASSERT_VERBOSE=y
# CONFIG_ASSERT_NO_FILE_INFO is not set
# CONFIG_ASSERT_NO_COND_INFO is not set
# CONFIG_ASSERT_NO_MSG_INFO is not set
# CONFIG_OBJECT_TRACING is not set
# CONFIG_OVERRIDE_FRAME_POINTER_DEFAULT is not set
# CONFIG_DEBUG_INFO is not set
# CONFIG_OPENOCD_SUPPORT is not set
# CONFIG_TRACING_CPU_STATS is not set
# CONFIG_TRACING_CTF is not set
CONFIG_HAS_SEGGER_RTT=y
# CONFIG_USE_SEGGER_RTT is not set
# end of Debugging Options

# CONFIG_DISK_ACCESS is not set

#
# File Systems
#
# CONFIG_FILE_SYSTEM is not set
# CONFIG_NVS is not set
# end of File Systems

# CONFIG_LOG is not set

#
# Management
#
# CONFIG_MCUMGR_SMP_BT is not set
# CONFIG_MCUMGR_SMP_SHELL is not set
# CONFIG_MCUMGR_SMP_UART is not set
# CONFIG_MCUMGR is not set
# end of Management

#
# Networking
#
CONFIG_NET_BUF=y
CONFIG_NET_BUF_USER_DATA_SIZE=4
# CONFIG_NET_BUF_LOG is not set
# CONFIG_NET_BUF_POOL_USAGE is not set
CONFIG_NETWORKING=y
# CONFIG_NET_HOSTNAME_ENABLE is not set

#
# Link layer options
#
# CONFIG_NET_L2_DUMMY is not set
# CONFIG_NET_L2_BT_SHELL is not set
# CONFIG_NET_L2_PPP is not set
# CONFIG_NET_L2_CANBUS_RAW is not set
# CONFIG_NET_L2_WIFI_MGMT is not set
# CONFIG_NET_L2_WIFI_SHELL is not set
# end of Link layer options

#
# IP stack
#
# CONFIG_NET_NATIVE is not set
# CONFIG_NET_OFFLOAD is not set
CONFIG_NET_INIT_PRIO=90
CONFIG_NET_IF_MAX_IPV6_COUNT=1
CONFIG_NET_IF_UNICAST_IPV6_ADDR_COUNT=2
CONFIG_NET_IF_MCAST_IPV6_ADDR_COUNT=3
CONFIG_NET_IF_IPV6_PREFIX_COUNT=2
CONFIG_NET_INITIAL_HOP_LIMIT=64
CONFIG_NET_IPV6_MAX_NEIGHBORS=8
# CONFIG_NET_IPV6_FRAGMENT is not set
CONFIG_NET_IPV6_MLD=y
CONFIG_NET_IPV6_NBR_CACHE=y
CONFIG_NET_IPV6_ND=y
CONFIG_NET_IPV6_DAD=y
CONFIG_NET_IPV6_RA_RDNSS=y
# CONFIG_NET_6LO is not set
CONFIG_NET_IPV6_LOG_LEVEL=0
CONFIG_NET_ICMPV6_LOG_LEVEL=0
CONFIG_NET_IPV6_NBR_CACHE_LOG_LEVEL=0
# CONFIG_NET_IPV4 is not set
# CONFIG_NET_SHELL is not set
CONFIG_NET_TC_TX_COUNT=1
CONFIG_NET_TC_RX_COUNT=1
CONFIG_NET_TC_MAPPING_STRICT=y
CONFIG_NET_TX_DEFAULT_PRIORITY=1
CONFIG_NET_RX_DEFAULT_PRIORITY=0
CONFIG_NET_IP_ADDR_CHECK=y
CONFIG_NET_MAX_ROUTERS=1
CONFIG_NET_ROUTE=y
CONFIG_NET_MAX_ROUTES=8
CONFIG_NET_MAX_NEXTHOPS=8
# CONFIG_NET_TCP is not set
# CONFIG_NET_TEST_PROTOCOL is not set
CONFIG_NET_UDP=y
CONFIG_NET_UDP_CHECKSUM=y
CONFIG_NET_UDP_LOG_LEVEL=0
CONFIG_NET_MAX_CONN=4
CONFIG_NET_MAX_CONTEXTS=6
# CONFIG_NET_CONTEXT_NET_PKT_POOL is not set
CONFIG_NET_CONTEXT_SYNC_RECV=y
CONFIG_NET_CONTEXT_CHECK=y
# CONFIG_NET_CONTEXT_PRIORITY is not set
# CONFIG_NET_CONTEXT_TIMESTAMP is not set
# CONFIG_NET_CONTEXT_TXTIME is not set
# CONFIG_NET_TEST is not set
# CONFIG_NET_TRICKLE is not set
CONFIG_NET_PKT_RX_COUNT=4
CONFIG_NET_PKT_TX_COUNT=4
CONFIG_NET_BUF_RX_COUNT=16
CONFIG_NET_BUF_TX_COUNT=16
CONFIG_NET_BUF_FIXED_DATA_SIZE=y
# CONFIG_NET_BUF_VARIABLE_DATA_SIZE is not set
CONFIG_NET_BUF_DATA_SIZE=128
CONFIG_NET_DEFAULT_IF_FIRST=y
# CONFIG_NET_PKT_TIMESTAMP is not set
# CONFIG_NET_PKT_TXTIME is not set
# CONFIG_NET_PKT_RXTIME_STATS is not set
# CONFIG_NET_PKT_TXTIME_STATS is not set
# CONFIG_NET_PROMISCUOUS_MODE is not set

#
# Stack usage
#
CONFIG_NET_TX_STACK_SIZE=1200
CONFIG_NET_RX_STACK_SIZE=1500
# end of Stack usage

# CONFIG_NET_MGMT is not set
# CONFIG_NET_STATISTICS is not set
# CONFIG_NET_LOG is not set
CONFIG_NET_PKT_LOG_LEVEL=0
# CONFIG_NET_DEBUG_NET_PKT_ALLOC is not set
CONFIG_NET_DEBUG_NET_PKT_EXTERNALS=0
# CONFIG_NET_DEBUG_NET_PKT_NON_FRAGILE_ACCESS is not set
CONFIG_NET_CORE_LOG_LEVEL=0
CONFIG_NET_IF_LOG_LEVEL=0
CONFIG_NET_TC_LOG_LEVEL=0
CONFIG_NET_UTILS_LOG_LEVEL=0
CONFIG_NET_CONTEXT_LOG_LEVEL=0
CONFIG_NET_CONN_LOG_LEVEL=0
CONFIG_NET_ROUTE_LOG_LEVEL=0
# end of IP stack

#
# Network Protocols
#
# CONFIG_COAP is not set
# CONFIG_DNS_RESOLVER is not set
# CONFIG_MQTT_LIB is not set
# CONFIG_HTTP_PARSER is not set
# CONFIG_HTTP_PARSER_URL is not set
# CONFIG_HTTP_CLIENT is not set
CONFIG_NET_HTTP_LOG_LEVEL=0
# CONFIG_WEBSOCKET_CLIENT is not set
# CONFIG_LWM2M is not set
# CONFIG_SOCKS is not set
# CONFIG_SNTP is not set
# end of Network Protocols

#
# Network Libraries
#
CONFIG_NET_CONFIG_AUTO_INIT=y
CONFIG_NET_CONFIG_INIT_PRIO=95
CONFIG_NET_CONFIG_INIT_TIMEOUT=30
# CONFIG_NET_CONFIG_NEED_IPV6_ROUTER is not set
# CONFIG_NET_CONFIG_NEED_IPV4 is not set
CONFIG_NET_CONFIG_LOG_LEVEL=0
# CONFIG_NET_CONFIG_SETTINGS is not set
CONFIG_NET_SOCKETS=y
CONFIG_NET_SOCKETS_POSIX_NAMES=y
CONFIG_NET_SOCKETS_POLL_MAX=3
CONFIG_NET_SOCKETS_CONNECT_TIMEOUT=3000
CONFIG_NET_SOCKETS_SOCKOPT_TLS=y
# CONFIG_NET_SOCKETS_ENABLE_DTLS is not set
CONFIG_NET_SOCKETS_TLS_MAX_CONTEXTS=1
CONFIG_NET_SOCKETS_TLS_MAX_CREDENTIALS=4
CONFIG_NET_SOCKETS_TLS_MAX_CIPHERSUITES=4
CONFIG_NET_SOCKETS_OFFLOAD=y
# CONFIG_NET_SOCKETS_CAN is not set
CONFIG_NET_SOCKETS_LOG_LEVEL=0
# CONFIG_TLS_CREDENTIALS is not set
# end of Network Libraries

#
# Network additional services
#
# CONFIG_NET_CONNECTION_MANAGER is not set
# end of Network additional services
# end of Networking

# CONFIG_SHELL is not set
# CONFIG_IMG_MANAGER is not set

#
# Random subsystem
#
CONFIG_ENTROPY_DEVICE_RANDOM_GENERATOR=y
# CONFIG_XOROSHIRO_RANDOM_GENERATOR is not set
CONFIG_CSPRING_ENABLED=y
CONFIG_HARDWARE_DEVICE_CS_GENERATOR=y
# end of Random subsystem

#
# Storage
#
# end of Storage

# CONFIG_SETTINGS is not set

#
# Testing
#
# CONFIG_ZTEST is not set
# CONFIG_ZTEST_MOCKING is not set
# CONFIG_TEST is not set
# CONFIG_TEST_SHELL is not set
CONFIG_TEST_EXTRA_STACKSIZE=0
# CONFIG_TEST_USERSPACE is not set
CONFIG_TEST_ARM_CORTEX_M=y
# end of Testing

# CONFIG_CHARACTER_FRAMEBUFFER is not set
# CONFIG_JWT is not set

#
# Controller Area Network (CAN) bus subsystem
#
# end of Controller Area Network (CAN) bus subsystem

#
# External Sources
#

#
# HALs
#
CONFIG_HAS_CMSIS_CORE=y
CONFIG_HAS_CMSIS_CORE_M=y
# end of HALs

#
# Cryptography
#
# end of Cryptography

# CONFIG_FNMATCH is not set
# end of External Sources

CONFIG_TOOLCHAIN_GNUARMEMB=y

#
# Build and Link Features
#

#
# Linker Options
#
# CONFIG_LINKER_ORPHAN_SECTION_PLACE is not set
CONFIG_LINKER_ORPHAN_SECTION_WARN=y
# CONFIG_LINKER_ORPHAN_SECTION_ERROR is not set
# CONFIG_CODE_DATA_RELOCATION is not set
CONFIG_HAS_FLASH_LOAD_OFFSET=y
# CONFIG_USE_DT_CODE_PARTITION is not set
# CONFIG_HAVE_CUSTOM_LINKER_SCRIPT is not set
# CONFIG_CUSTOM_RODATA_LD is not set
# CONFIG_CUSTOM_RWDATA_LD is not set
# CONFIG_CUSTOM_SECTIONS_LD is not set
CONFIG_KERNEL_ENTRY=&amp;quot;__start&amp;quot;
CONFIG_LINKER_SORT_BY_ALIGNMENT=y
# end of Linker Options

#
# Compiler Options
#
# CONFIG_NATIVE_APPLICATION is not set
CONFIG_SIZE_OPTIMIZATIONS=y
# CONFIG_SPEED_OPTIMIZATIONS is not set
# CONFIG_DEBUG_OPTIMIZATIONS is not set
# CONFIG_NO_OPTIMIZATIONS is not set
CONFIG_COMPILER_OPT=&amp;quot;&amp;quot;
# end of Compiler Options

# CONFIG_ASSERT_ON_ERRORS is not set
# CONFIG_NO_RUNTIME_CHECKS is not set
CONFIG_RUNTIME_ERROR_CHECKS=y

#
# Build Options
#
CONFIG_KERNEL_BIN_NAME=&amp;quot;zephyr&amp;quot;
CONFIG_OUTPUT_STAT=y
CONFIG_OUTPUT_DISASSEMBLY=y
CONFIG_OUTPUT_PRINT_MEMORY_USAGE=y
CONFIG_BUILD_OUTPUT_BIN=y
# CONFIG_BUILD_OUTPUT_EXE is not set
# CONFIG_BUILD_OUTPUT_S19 is not set
# CONFIG_BUILD_NO_GAP_FILL is not set
# CONFIG_BUILD_OUTPUT_STRIPPED is not set
# CONFIG_APPLICATION_DEFINED_SYSCALL is not set
# CONFIG_MAKEFILE_EXPORTS is not set
# end of Build Options
# end of Build and Link Features

#
# Boot Options
#
# CONFIG_IS_BOOTLOADER is not set
# CONFIG_BOOTLOADER_MCUBOOT is not set
# CONFIG_REBOOT is not set
# CONFIG_MISRA_SANE is not set
# end of Boot Options

#
# Compatibility
#
CONFIG_COMPAT_INCLUDES=y
# end of Compatibility
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;With the asset tracker it works, does it means that the network support PSM in my area ?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Tracking GPS but never get FIX</title><link>https://devzone.nordicsemi.com/thread/255579?ContentTypeID=1</link><pubDate>Wed, 17 Jun 2020 13:54:25 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2f2cc022-de3e-495c-a469-34b9df2e6649</guid><dc:creator>Martin Lesund</dc:creator><description>&lt;p&gt;Hi &lt;span&gt;Ricardo,&lt;br /&gt;I have seen something similar when LTE running in the&amp;nbsp;&lt;/span&gt;background when using iBasis in an area where the network did not support PSM mode or eDRX which caused this similar behavior you are seeing.&lt;br /&gt;&lt;br /&gt;&lt;img src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/support-attachments/beef5d1b77644c448dabff31668f3a47-3be59b232ed247ef92e15182d826f321/pastedimage1592401949634v1.png" alt=" " /&gt;&lt;br /&gt;&lt;br /&gt;Please make sure that you are only running the GPS.&amp;nbsp;&lt;br /&gt;(e.g. could you share the .config file found in the build/zephyr folder of your project?)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Tracking GPS but never get FIX</title><link>https://devzone.nordicsemi.com/thread/255542?ContentTypeID=1</link><pubDate>Wed, 17 Jun 2020 12:50:49 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b6d1bdb7-9a59-4a7e-82f2-c4504c8d721c</guid><dc:creator>RicardoPereira</dc:creator><description>&lt;p&gt;Hi &lt;a href="https://devzone.nordicsemi.com/members/martin"&gt;Martin&lt;/a&gt;,&lt;/p&gt;
&lt;p&gt;Thanks for you replay&lt;/p&gt;
&lt;p&gt;I reinstalled the firmware v1.2.0.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I reinstall the all Toolchain Manager with nRF connect 3.4.0.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I changed my GPS sample with the link that you&amp;nbsp; gave me but I&amp;#39;m still stuck... I can track several satellites but never use it :(&lt;/p&gt;
&lt;p&gt;Here is the code :&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;/*
 * Copyright (c) 2019 Nordic Semiconductor ASA
 *
 * SPDX-License-Identifier: LicenseRef-BSD-5-Clause-Nordic
 */

#include &amp;lt;zephyr.h&amp;gt;
#include &amp;lt;nrf_socket.h&amp;gt;
#include &amp;lt;net/socket.h&amp;gt;
#include &amp;lt;stdio.h&amp;gt;
#include &amp;lt;at_cmd.h&amp;gt;
#include &amp;lt;at_notif.h&amp;gt;

#ifdef CONFIG_SUPL_CLIENT_LIB
#include &amp;lt;supl_os_client.h&amp;gt;
#include &amp;lt;supl_session.h&amp;gt;
#include &amp;quot;supl_support.h&amp;quot;
#endif

#define AT_XSYSTEMMODE    &amp;quot;AT\%XSYSTEMMODE=1,0,1,0&amp;quot;
#define AT_ACTIVATE_GPS   &amp;quot;AT+CFUN=31&amp;quot;
#define AT_ACTIVATE_LTE   &amp;quot;AT+CFUN=21&amp;quot;
#define AT_DEACTIVATE_LTE &amp;quot;AT+CFUN=20&amp;quot;

#define GNSS_INIT_AND_START 1
#define GNSS_STOP           2
#define GNSS_RESTART        3

#define AT_CMD_SIZE(x) (sizeof(x) - 1)


#ifdef CONFIG_BOARD_NRF9160_PCA10090NS
#define AT_MAGPIO      &amp;quot;AT\%XMAGPIO=1,0,0,1,1,1574,1577&amp;quot;
#define AT_COEX0       &amp;quot;AT\%XCOEX0=1,1,1570,1580&amp;quot;
#endif

static const char     update_indicator[] = {&amp;#39;\\&amp;#39;, &amp;#39;|&amp;#39;, &amp;#39;/&amp;#39;, &amp;#39;-&amp;#39;};
static const char     at_commands[][31]  = {
				AT_XSYSTEMMODE,
#ifdef CONFIG_BOARD_NRF9160_PCA10090NS
				AT_MAGPIO,
				AT_COEX0,
#endif
				AT_ACTIVATE_GPS
			};

static int            gnss_fd;
static char           nmea_strings[10][NRF_GNSS_NMEA_MAX_LEN];
static u32_t          nmea_string_cnt;

static bool                  got_fix;
static u64_t                 fix_timestamp;
static nrf_gnss_data_frame_t last_pvt;

K_SEM_DEFINE(lte_ready, 0, 1);

void bsd_recoverable_error_handler(uint32_t error)
{
	printf(&amp;quot;Err: %lu\n&amp;quot;, (unsigned long)error);
}

static int setup_modem(void)
{
	for (int i = 0; i &amp;lt; ARRAY_SIZE(at_commands); i++) {

		if (at_cmd_write(at_commands[i], NULL, 0, NULL) != 0) {
			return -1;
		}
	}

	return 0;
}

#ifdef CONFIG_SUPL_CLIENT_LIB
/* Accepted network statuses read from modem */
static const char status1[] = &amp;quot;+CEREG: 1&amp;quot;;
static const char status2[] = &amp;quot;+CEREG:1&amp;quot;;
static const char status3[] = &amp;quot;+CEREG: 5&amp;quot;;
static const char status4[] = &amp;quot;+CEREG:5&amp;quot;;

static void wait_for_lte(void *context, char *response)
{
	if (!memcmp(status1, response, AT_CMD_SIZE(status1)) ||
		!memcmp(status2, response, AT_CMD_SIZE(status2)) ||
		!memcmp(status3, response, AT_CMD_SIZE(status3)) ||
		!memcmp(status4, response, AT_CMD_SIZE(status4))) {
		k_sem_give(&amp;amp;lte_ready);
	}
}

static int activate_lte(bool activate)
{
	if (activate) {
		if (at_cmd_write(AT_ACTIVATE_LTE, NULL, 0, NULL) != 0) {
			return -1;
		}

		at_notif_register_handler(NULL, wait_for_lte);
		if (at_cmd_write(&amp;quot;AT+CEREG=2&amp;quot;, NULL, 0, NULL) != 0) {
			return -1;
		}

		k_sem_take(&amp;amp;lte_ready, K_FOREVER);

		at_notif_deregister_handler(NULL, wait_for_lte);
		if (at_cmd_write(&amp;quot;AT+CEREG=0&amp;quot;, NULL, 0, NULL) != 0) {
			return -1;
		}
	} else {
		if (at_cmd_write(AT_DEACTIVATE_LTE, NULL, 0, NULL) != 0) {
			return -1;
		}
	}

	return 0;
}

#endif

static int gnss_ctrl(uint32_t ctrl)
{
	int retval;
	nrf_gnss_fix_retry_t    fix_retry    = 0;
	nrf_gnss_fix_interval_t fix_interval = 1;
	nrf_gnss_delete_mask_t	delete_mask  = 0;
	nrf_gnss_nmea_mask_t	nmea_mask    = NRF_GNSS_NMEA_GSV_MASK |
					       NRF_GNSS_NMEA_GSA_MASK |
					       NRF_GNSS_NMEA_GLL_MASK |
					       NRF_GNSS_NMEA_GGA_MASK |
					       NRF_GNSS_NMEA_RMC_MASK;
	if (ctrl == GNSS_INIT_AND_START) {
		gnss_fd = nrf_socket(NRF_AF_LOCAL,
				     NRF_SOCK_DGRAM,
				     NRF_PROTO_GNSS);
		if (gnss_fd &amp;gt;= 0) {
			printk(&amp;quot;GPS Socket created\n&amp;quot;);
		} else {
			printk(&amp;quot;Could not init socket (err: %d)\n&amp;quot;, gnss_fd);
			return -1;
		}
		retval = nrf_setsockopt(gnss_fd,
					NRF_SOL_GNSS,
					NRF_SO_GNSS_FIX_RETRY,
					&amp;amp;fix_retry,
					sizeof(fix_retry));
		if (retval != 0) {
			printk(&amp;quot;Failed to set fix retry value\n&amp;quot;);
			return -1;
		}
		retval = nrf_setsockopt(gnss_fd,
					NRF_SOL_GNSS,
					NRF_SO_GNSS_FIX_INTERVAL,
					&amp;amp;fix_interval,
					sizeof(fix_interval));
		if (retval != 0) {
			printk(&amp;quot;Failed to set fix interval value\n&amp;quot;);
			return -1;
		}
		retval = nrf_setsockopt(gnss_fd,
					NRF_SOL_GNSS,
					NRF_SO_GNSS_NMEA_MASK,
					&amp;amp;nmea_mask,
					sizeof(nmea_mask));
		if (retval != 0) {
			printk(&amp;quot;Failed to set nmea mask\n&amp;quot;);
			return -1;
		}
	}
	if ((ctrl == GNSS_INIT_AND_START) ||
	    (ctrl == GNSS_RESTART)) {
		retval = nrf_setsockopt(gnss_fd,
					NRF_SOL_GNSS,
					NRF_SO_GNSS_START,
					&amp;amp;delete_mask,
					sizeof(delete_mask));
		if (retval != 0) {
			printk(&amp;quot;Failed to start GPS\n&amp;quot;);
			return -1;
		}
	}
	if (ctrl == GNSS_STOP) {
		retval = nrf_setsockopt(gnss_fd,
					NRF_SOL_GNSS,
					NRF_SO_GNSS_STOP,
					&amp;amp;delete_mask,
					sizeof(delete_mask));
		if (retval != 0) {
			printk(&amp;quot;Failed to stop GPS\n&amp;quot;);
			return -1;
		}
	}
	return 0;
}






static int init_app(void)
{
	int retval;
	if (setup_modem() != 0) {
		printk(&amp;quot;Failed to initialize modem\n&amp;quot;);
		return -1;
	}
	retval = gnss_ctrl(GNSS_INIT_AND_START);
	return retval;
}

static void print_satellite_stats(nrf_gnss_data_frame_t *pvt_data)
{
	u8_t  tracked          = 0;
	u8_t  in_fix           = 0;
	u8_t  unhealthy        = 0;

	for (int i = 0; i &amp;lt; NRF_GNSS_MAX_SATELLITES; ++i) {

		if ((pvt_data-&amp;gt;pvt.sv[i].sv &amp;gt; 0) &amp;amp;&amp;amp;
		    (pvt_data-&amp;gt;pvt.sv[i].sv &amp;lt; 33)) {

			tracked++;

			if (pvt_data-&amp;gt;pvt.sv[i].flags &amp;amp;
					NRF_GNSS_SV_FLAG_USED_IN_FIX) {
				in_fix++;
			}

			if (pvt_data-&amp;gt;pvt.sv[i].flags &amp;amp;
					NRF_GNSS_SV_FLAG_UNHEALTHY) {
				unhealthy++;
			}
		}
	}

	printk(&amp;quot;Tracking: %d Using: %d Unhealthy: %d&amp;quot;, tracked,
						       in_fix,
						       unhealthy);

	printk(&amp;quot;\nSeconds since last fix %lld\n&amp;quot;,
			(k_uptime_get() - fix_timestamp) / 1000);
}

static void print_gnss_stats(nrf_gnss_data_frame_t *pvt_data)
{
	if (pvt_data-&amp;gt;pvt.flags &amp;amp; NRF_GNSS_PVT_FLAG_DEADLINE_MISSED) {
		printk(&amp;quot;GNSS notification deadline missed\n&amp;quot;);
	}
	if (pvt_data-&amp;gt;pvt.flags &amp;amp; NRF_GNSS_PVT_FLAG_NOT_ENOUGH_WINDOW_TIME) {
		printk(&amp;quot;GNSS operation blocked by insufficient time windows\n&amp;quot;);
	}
}

static void print_fix_data(nrf_gnss_data_frame_t *pvt_data)
{
	printf(&amp;quot;Longitude:  %f\n&amp;quot;, pvt_data-&amp;gt;pvt.longitude);
	printf(&amp;quot;Latitude:   %f\n&amp;quot;, pvt_data-&amp;gt;pvt.latitude);
	printf(&amp;quot;Altitude:   %f\n&amp;quot;, pvt_data-&amp;gt;pvt.altitude);
	printf(&amp;quot;Speed:      %f\n&amp;quot;, pvt_data-&amp;gt;pvt.speed);
	printf(&amp;quot;Heading:    %f\n&amp;quot;, pvt_data-&amp;gt;pvt.heading);
	printk(&amp;quot;Date:       %02u-%02u-%02u\n&amp;quot;, pvt_data-&amp;gt;pvt.datetime.day,
					       pvt_data-&amp;gt;pvt.datetime.month,
					       pvt_data-&amp;gt;pvt.datetime.year);
	printk(&amp;quot;Time (UTC): %02u:%02u:%02u\n&amp;quot;, pvt_data-&amp;gt;pvt.datetime.hour,
					       pvt_data-&amp;gt;pvt.datetime.minute,
					      pvt_data-&amp;gt;pvt.datetime.seconds);
}

static void print_nmea_data(void)
{
	printk(&amp;quot;NMEA strings:\n&amp;quot;);

	for (int i = 0; i &amp;lt; nmea_string_cnt; ++i) {
		printk(&amp;quot;%s\n&amp;quot;, nmea_strings[i]);
	}
}

int process_gps_data(nrf_gnss_data_frame_t *gps_data)
{
	int retval;

	retval = nrf_recv(gnss_fd,
			  gps_data,
			  sizeof(nrf_gnss_data_frame_t),
			  NRF_MSG_DONTWAIT);

	if (retval &amp;gt; 0) {

		switch (gps_data-&amp;gt;data_id) {
		case NRF_GNSS_PVT_DATA_ID:
			memcpy(&amp;amp;last_pvt,
			       gps_data,
			       sizeof(nrf_gnss_data_frame_t));
			nmea_string_cnt = 0;
			got_fix = false;
			
			if ((gps_data-&amp;gt;pvt.flags &amp;amp;
				NRF_GNSS_PVT_FLAG_FIX_VALID_BIT)
				== NRF_GNSS_PVT_FLAG_FIX_VALID_BIT) {

				got_fix = true;
				fix_timestamp = k_uptime_get();

			}
			break;

		case NRF_GNSS_NMEA_DATA_ID:
			if (nmea_string_cnt &amp;lt; 10) {
				memcpy(nmea_strings[nmea_string_cnt++],
				       gps_data-&amp;gt;nmea,
				       retval);
			}
			break;

		case NRF_GNSS_AGPS_DATA_ID:
#ifdef CONFIG_SUPL_CLIENT_LIB
			printk(&amp;quot;\033[1;1H&amp;quot;);
			printk(&amp;quot;\033[2J&amp;quot;);
			printk(&amp;quot;New AGPS data requested, contacting SUPL server, flags %d\n&amp;quot;,
			       gps_data-&amp;gt;agps.data_flags);
			activate_lte(true);
			printk(&amp;quot;Established LTE link\n&amp;quot;);
			if (open_supl_socket() == 0) {
				printf(&amp;quot;Starting SUPL session\n&amp;quot;);
				supl_session(&amp;amp;gps_data-&amp;gt;agps);
				printk(&amp;quot;Done\n&amp;quot;);
				close_supl_socket();
			}
			activate_lte(false);
			k_sleep(K_MSEC(2000));
#endif
			break;

		default:
			break;
		}
	}

	return retval;
}

#ifdef CONFIG_SUPL_CLIENT_LIB
int inject_agps_type(void *agps,
		     size_t agps_size,
		     nrf_gnss_agps_data_type_t type,
		     void *user_data)
{
	ARG_UNUSED(user_data);
	int retval = nrf_sendto(gnss_fd,
				agps,
				agps_size,
				0,
				&amp;amp;type,
				sizeof(type));

	if (retval != 0) {
		printk(&amp;quot;Failed to send AGNSS data, type: %d (err: %d)\n&amp;quot;,
		       type,
		       errno);
		return -1;
	}

	printk(&amp;quot;Injected AGPS data, flags: %d, size: %d\n&amp;quot;, type, agps_size);

	return 0;
}
#endif

int main(void)
{
	nrf_gnss_data_frame_t gps_data;
	u8_t		      cnt = 0;

#ifdef CONFIG_SUPL_CLIENT_LIB
	static struct supl_api supl_api = {
		.read       = supl_read,
		.write      = supl_write,
		.handler    = inject_agps_type,
		.logger     = supl_logger,
		.counter_ms = k_uptime_get
	};
#endif

	printk(&amp;quot;Starting GPS application\n&amp;quot;);

	if (init_app() != 0) {
		return -1;
	}

#ifdef CONFIG_SUPL_CLIENT_LIB
	int rc = supl_init(&amp;amp;supl_api);

	if (rc != 0) {
		return rc;
	}
#endif

	printk(&amp;quot;Getting GPS data...\n&amp;quot;);

	while (1) {

		do {
			/* Loop until we don&amp;#39;t have more
			 * data to read
			 */
		} while (process_gps_data(&amp;amp;gps_data) &amp;gt; 0);

		if (IS_ENABLED(CONFIG_GPS_SAMPLE_NMEA_ONLY)) {
			print_nmea_data();
			nmea_string_cnt = 0;
		} else {
			printk(&amp;quot;\033[1;1H&amp;quot;);
			printk(&amp;quot;\033[2J&amp;quot;);
			print_satellite_stats(&amp;amp;last_pvt);
			print_gnss_stats(&amp;amp;last_pvt);
			printk(&amp;quot;---------------------------------\n&amp;quot;);

			if (!got_fix) {
				printk(&amp;quot;Seconds since last fix: %lld\n&amp;quot;,
				       (k_uptime_get() - fix_timestamp) / 1000);
				cnt++;
				printk(&amp;quot;Searching [%c]\n&amp;quot;,
				       update_indicator[cnt%4]);
			} else {
				print_fix_data(&amp;amp;last_pvt);
			}
			
			printk(&amp;quot;\nNMEA strings:\n\n&amp;quot;);
			print_nmea_data();
			printk(&amp;quot;---------------------------------&amp;quot;);

		}

		k_sleep(K_MSEC(500));
	}

	return 0;
}
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I also add&amp;nbsp;CONFIG_GPS_SAMPLE_NMEA_ONLY=n to prj.conf&lt;/p&gt;
&lt;p&gt;and here are some log&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;2020-06-17T12:48:10.862Z DEBUG modem &amp;lt;&amp;lt; ---------------------------------\x1B[1;1H\x1B[2JTracking: 7 Using: 0 Unhealthy: 0\x0D\x0A
2020-06-17T12:48:10.870Z DEBUG modem &amp;lt;&amp;lt; Seconds since last fix 637\x0D\x0A
2020-06-17T12:48:10.877Z DEBUG modem &amp;lt;&amp;lt; ---------------------------------\x0D\x0A
2020-06-17T12:48:10.882Z DEBUG modem &amp;lt;&amp;lt; Seconds since last fix: 637\x0D\x0A
2020-06-17T12:48:10.889Z DEBUG modem &amp;lt;&amp;lt; Searching [|]\x0D\x0A\x0D\x0A
2020-06-17T12:48:10.897Z DEBUG modem &amp;lt;&amp;lt; NMEA strings:\x0D\x0A\x0D\x0A
2020-06-17T12:48:10.905Z DEBUG modem &amp;lt;&amp;lt; NMEA strings:\x0D\x0A
2020-06-17T12:48:10.912Z DEBUG modem &amp;lt;&amp;lt; $GPGGA,001036.00,,,,,0,07,99.99,,M,0,,*34\x0D\x0D\x0A\x0D\x0A
2020-06-17T12:48:10.916Z DEBUG modem &amp;lt;&amp;lt; $GPGLL,,,,,001036.00,V,A*41\x0D\x0D\x0A\x0D\x0A
2020-06-17T12:48:10.921Z DEBUG modem &amp;lt;&amp;lt; $GPGSA,A,1,,,,,,,,,,,,,99.99,99.99,99.99,1*2D\x0D\x0D\x0A\x0D\x0A
2020-06-17T12:48:10.926Z DEBUG modem &amp;lt;&amp;lt; $GPGSV,2,1,7,20,,,28,7,,,26,26,,,34,8,,,33,1*50\x0D\x0D\x0A\x0D\x0A
2020-06-17T12:48:10.934Z DEBUG modem &amp;lt;&amp;lt; $GPGSV,2,2,7,16,,,32,27,,,34,10,,,33,1*56\x0D\x0D\x0A\x0D\x0A
2020-06-17T12:48:10.943Z DEBUG modem &amp;lt;&amp;lt; $GPRMC,001036.00,V,,,,,,,060180,,,N,V*0C\x0D\x0D\x0A\x0D\x0A
2020-06-17T12:48:11.247Z DEBUG modem &amp;lt;&amp;lt; ---------------------------------\x1B[1;1H\x1B[2JTracking: 7 Using: 0 Unhealthy: 0\x0D\x0A
2020-06-17T12:48:11.254Z DEBUG modem &amp;lt;&amp;lt; Seconds since last fix 638\x0D\x0A
2020-06-17T12:48:11.259Z DEBUG modem &amp;lt;&amp;lt; ---------------------------------\x0D\x0A
2020-06-17T12:48:11.265Z DEBUG modem &amp;lt;&amp;lt; Seconds since last fix: 638\x0D\x0A
2020-06-17T12:48:11.270Z DEBUG modem &amp;lt;&amp;lt; Searching [/]\x0D\x0A\x0D\x0A
2020-06-17T12:48:11.276Z DEBUG modem &amp;lt;&amp;lt; NMEA strings:\x0D\x0A\x0D\x0A
2020-06-17T12:48:11.283Z DEBUG modem &amp;lt;&amp;lt; NMEA strings:\x0D\x0A
2020-06-17T12:48:11.288Z DEBUG modem &amp;lt;&amp;lt; $GPGGA,001037.00,,,,,0,07,99.99,,M,0,,*35\x0D\x0D\x0A\x0D\x0A
2020-06-17T12:48:11.293Z DEBUG modem &amp;lt;&amp;lt; $GPGLL,,,,,001037.00,V,A*40\x0D\x0D\x0A\x0D\x0A
2020-06-17T12:48:11.298Z DEBUG modem &amp;lt;&amp;lt; $GPGSA,A,1,,,,,,,,,,,,,99.99,99.99,99.99,1*2D\x0D\x0D\x0A\x0D\x0A
2020-06-17T12:48:11.303Z DEBUG modem &amp;lt;&amp;lt; $GPGSV,2,1,7,20,,,27,7,,,26,26,,,33,8,,,33,1*58\x0D\x0D\x0A\x0D\x0A
2020-06-17T12:48:11.308Z DEBUG modem &amp;lt;&amp;lt; $GPGSV,2,2,7,16,,,32,27,,,34,10,,,33,1*56\x0D\x0D\x0A\x0D\x0A
2020-06-17T12:48:11.314Z DEBUG modem &amp;lt;&amp;lt; $GPRMC,001037.00,V,,,,,,,060180,,,N,V*0D\x0D\x0D\x0A\x0D\x0A
2020-06-17T12:48:11.597Z DEBUG modem &amp;lt;&amp;lt; ---------------------------------\x1B[1;1H\x1B[2JTracking: 7 Using: 0 Unhealthy: 0\x0D\x0A
2020-06-17T12:48:11.605Z DEBUG modem &amp;lt;&amp;lt; Seconds since last fix 638\x0D\x0A
2020-06-17T12:48:11.610Z DEBUG modem &amp;lt;&amp;lt; ---------------------------------\x0D\x0A&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Any help please&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Tracking GPS but never get FIX</title><link>https://devzone.nordicsemi.com/thread/255442?ContentTypeID=1</link><pubDate>Wed, 17 Jun 2020 09:03:43 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:83fee7ca-61c7-4fc6-a54c-1605fd224019</guid><dc:creator>Martin Lesund</dc:creator><description>&lt;p&gt;Hi Ricardo,&lt;br /&gt;Could you please try to flash the latest modem firmware (v1.2.0) and flash the GPS sample from latest NCS release and test the Thingy:91 in where you have an open sky. (not inside with a window between).&lt;/p&gt;
&lt;p&gt;If you still have issues, could you please update NCS to the master branch (use the following commands: &lt;em&gt;cd ncs/nrf, git checkout master, git pull, west update&lt;/em&gt;) then either checkout &lt;a href="https://github.com/nrfconnect/sdk-nrf/pull/2385" rel="noopener noreferrer" target="_blank"&gt;this PR&lt;/a&gt;&amp;nbsp;or add the changes in your sample to get out the extra NMEA strings. If you could do a run with NMEA strings enabled and share the log it would be easier to understand what is going on.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>