Devzone posts

From Wiki at Neela Nurseries
Revision as of 06:57, 8 October 2021 by Ted (talk | contribs)
Jump to: navigation, search

This page a starting point for references (links) to Nordic Devzone posts and additional notes on their respective issues. On this page indentation of URLs highlights when one post refers or links to another.


How to import non-Segger projects into Segger:

TO DO : follow steps outlined in this post:

Post by Erez, bringing in existing nRF SDK project to Segger:


Two I2C, SPI and ADC APIs available in nRF9160 based projects:


Recent post regarding how to add driver to a minimal Zephyr project (not yet answered as of 2021-09-26):


Posts which mentions 'offsets.c.obj does not exist' error:

Board overlay file base names must match board called out in `west build ...` invocation:

Electrical and hardware related:


Sprintf C formatting:


^ To Set cmake Options In SES

As of 2021-09-24, using Segger version xxx Nordic's version, this Segger IDE offers an extra menu item to open, build, flash and debug nRF SDK sample apps. The initial dialog box which appears for this option is titled "nRF Connect Options". Just left of the title there is a Nordic colored icon showing two links of chain, white on blue.

There are five input boxes, a mix of text inputs and drop down menus, and two sets of radio buttons. The free form text input box titled "Extra CMake Build Options" is a key place to express custom configuration settings to `cmake`. To use, for example, Zephyr's latest stable arm cross compiling toolchain in place of Nordic's close but not quite as recent chosen release of GNU ARM cross compiler toolchain, the following `cmake` option needs be entered here:

-DZEPHYR_TOOLCHAIN_VARIANT=zephyr

The default value for 'ZEPHYR_TOOLCHAIN_VARIANT' with Nordic's SDK v1.6.1 is 'gnuarmemb'. It is not sufficient to set a variable by this name in the shell environment of Linux systems, nor is it sufficient to set a Segger global or project macro by this name equal to the string "zephyr". This change in toolchain name or branding must be passed to `cmake` on its command line. In Segger, we build with a button press, so the command line option is only accessible to us from certain limited place or places. This text input box is our place to express needed custom command line options to `cmake` when working within SES.


^ create_nordic_project.py

ted@localhost:~/projects/zephyr-based/z4-sandbox-kionix-work/nrf/samples/nrf9160/at_client$ python3 /opt/ses-nordic/arm_segger_embedded_studio_v560_linux_x64_nordic/html/create_nordic_project.py
Usage: create_nordic_project.py [-h] [--cmake-executable cmakeExecutable] [--cmake-option cmakeOption]
                                [--python-executable pythonExecutable] [--ninja-executable ninjaExecutable]
                                [--dtc-executable dtcExecutable]
                                zephyrBaseDir toolchainDir studioDir buildDir boardDir boardName sourceDir

Arguments:
  zephyrBaseDir      Zephyr base directory
  toolchainDir       GCC toolchain directory
  studioDir          Embedded Studio directory
  buildDir           Build directory
  boardDir           Board directory
  boardName          Board name
  sourceDir          Source directory

Optional arguments:
  --help                                  Show this help message and exit
  --ncs-toolchain-version versionNCS Toolchain version to use
  --cmake-executable cmakeExecutable      CMake executable to use
  --cmake-option cmakeOption              Add additional CMake option
  --python-executable pythonExecutable    Python executable to use
  --ninja-executable ninjaExecutable      Ninja executable to use
  --dtc-executable dtcExecutable          DTC executable to use
  --cmake-rerunRerun CMake in build folder
ted@localhost:~/projects/zephyr-based/z4-sandbox-kionix-work/nrf/samples/nrf9160/at_client$