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

Asset Tracker demo with working GPS on PCA10090?

Hi there,

I’m trying to find the path-of-least resistance to get the GPS working in the Asset Tracker demo on a PCA10090 (v0.8.5), and I noticed that one of you engineers has a version working on the PCA20035 (?) board (https://github.com/joakimtoe/fw-nrfconnect-nrf/commit/44f267701578aa3c66035409cadc662fd1b829e7).  Interestingly, it seems like this is the only reference (at least according to Google) that includes CONFIG_GPS_DEV_NAME="NRF9160_GPS".

For a laugh, I took the sources from latest commit on the gps_psm_dk branch of the said fw-nrfconnect-nrf repo and tried to build it against the other components pulled in with official v1.0.0 west release – didn’t go too well.  Transcript is below:

Loading solution asset_tracker.emProject

Executing load commands

cmake -GNinja -DBOARD=nrf9160_pca10090ns -DBOARD_DIR=/home/<user>/nordic/ncs/zephyr/boards/arm/nrf9160_pca10090 -DZEPHYR_TOOLCHAIN_VARIANT=gnuarmemb -DGNUARMEMB_TOOLCHAIN_PATH=/home/<user>/gnuarmemb7-2018q2 -B/home/<user>/nordic/ncs/fw-nrfconnect-nrf/applications/asset_tracker/build_nrf9160_pca10090ns -H/home/<user>/nordic/ncs/fw-nrfconnect-nrf/applications/asset_tracker -DEXTRA_KCONFIG_TARGETS=menuconfig_ses -DEXTRA_KCONFIG_TARGET_COMMAND_FOR_menuconfig_ses=/home/<user>/segger-em-studio/html/configure_nordic_project_menuconfig.py

-- Using application from '/home/<user>/nordic/ncs/fw-nrfconnect-nrf/applications/asset_tracker'

Zephyr version: 1.14.99

-- Selected BOARD nrf9160_pca10090ns

-- Found west: /home/<user>/.local/bin/west (found suitable version "0.5.8", minimum required is "0.5.6")

-- Cache files will be written to: /home/<user>/.cache/zephyr

USING OUT OF TREE BOARD

-- Loading /home/<user>/nordic/ncs/zephyr/boards/arm/nrf9160_pca10090/nrf9160_pca10090ns.dts as base

-- Overlaying /home/<user>/nordic/ncs/zephyr/dts/common/common.dts

nrf9160_pca10090ns.dts.pre.tmp:269.19-275.3: Warning (unique_unit_address_if_enabled): /soc/peripheral@40000000/clock@5000: duplicate unit-address (also used in node /soc/peripheral@40000000/power@5000)

Parsing Kconfig tree in /home/<user>/nordic/ncs/fw-nrfconnect-nrf/applications/asset_tracker/Kconfig

Loading /home/<user>/nordic/ncs/zephyr/boards/arm/nrf9160_pca10090/nrf9160_pca10090ns_defconfig as base

Merging /home/<user>/nordic/ncs/fw-nrfconnect-nrf/applications/asset_tracker/prj.conf

 

/home/<user>/nordic/ncs/fw-nrfconnect-nrf/applications/asset_tracker/prj.conf:39: warning: attempt to assign the value 'y' to the undefined symbol CLOUD_API

 

/home/<user>/nordic/ncs/fw-nrfconnect-nrf/applications/asset_tracker/prj.conf:51: warning: attempt to assign the value 'y' to the undefined symbol NRF9160_GPS

 

/home/<user>/nordic/ncs/fw-nrfconnect-nrf/applications/asset_tracker/prj.conf:52: warning: attempt to assign the value 'y' to the undefined symbol NRF9160_GPS_LOG_LEVEL_DBG

 

warning: FLASH_MAP (defined at subsys/storage/flash_map/Kconfig:12) has direct dependencies FLASH_HAS_DRIVER_ENABLED with value n, but is currently being y-selected by the following symbols:

 - MCUBOOT_IMG_MANAGER (defined at subsys/dfu/Kconfig:25), with value y, direct dependencies <choice> (value: y), and select condition <choice> (value: y)

 

Error: Aborting due to non-whitelisted Kconfig warning '/home/<user>/nordic/ncs/fw-nrfconnect-

nrf/applications/asset_tracker/prj.conf:39: warning: attempt to assign the value 'y' to the

undefined symbol CLOUD_API'. Note: If this warning doesn't point to an actual problem, you can add

it to the whitelist at the top of /home/<user>/nordic/ncs/zephyr/scripts/kconfig/kconfig.py.

 

CMake Error at /home/<user>/nordic/ncs/zephyr/cmake/kconfig.cmake:200 (message):

  command failed with return code: 1

Call Stack (most recent call first):

  /home/<user>/nordic/ncs/zephyr/cmake/app/boilerplate.cmake:529 (include)

  CMakeLists.txt:11 (include)

 

Was hoping someone could provide some guidance to assist getting this working on a PCA10090 board please.  FYI, I have run ’s GPS demo (https://github.com/Rallare/fw-nrfconnect-nrf/tree/master/samples/nrf9160/gps) and it worked  as expected.

Sincere thanks in advance for your assistance.

Best regards,
Z

Parents
  • Hi,

     

    While the modem v1.0.0 supports concurrent LTE (in PSM mode) + GPS, the code base does not have an example for this, yet.

    The branch that you link to is a work in progress, and it seems that you're lacking other commits.

    This PR adds the gps driver: https://github.com/NordicPlayground/fw-nrfconnect-nrf/pull/943

    However; it is work-in-progress, and might not work as intended yet.

     

    Kind regards,

    Håkon

  • So I've managed to get it building (which was not trivial), successfully locking onto my location, and reporting to the app in nRF Cloud.  I'd say that the Asset Tracker demo works very reliably (ran it for about 18 hours flawlessly).  Indoors adjacent to a window gives an accuracy within a radius of approximately 25m.

    I did encounter one problem when bringing up the GNSS subsystem.  The device would try to issue an AT%XSYSTEMMODE=1,0,1,0 which would fail with error 8 (presumably since AT%XSYSTEMMODE=1,0,0,0 was already issued in the LTE driver).  Although not ideal, I omitted this command from the GPS driver and modified the command in the LTE driver to include GNSS support.

    So at least from a functional level it all looks good!

    Best regards,
    Z

Reply
  • So I've managed to get it building (which was not trivial), successfully locking onto my location, and reporting to the app in nRF Cloud.  I'd say that the Asset Tracker demo works very reliably (ran it for about 18 hours flawlessly).  Indoors adjacent to a window gives an accuracy within a radius of approximately 25m.

    I did encounter one problem when bringing up the GNSS subsystem.  The device would try to issue an AT%XSYSTEMMODE=1,0,1,0 which would fail with error 8 (presumably since AT%XSYSTEMMODE=1,0,0,0 was already issued in the LTE driver).  Although not ideal, I omitted this command from the GPS driver and modified the command in the LTE driver to include GNSS support.

    So at least from a functional level it all looks good!

    Best regards,
    Z

Children
Related