• Support
  • Air Quality Wing build for Zephyr

Hi Jared,

I’m unable to build the AQW for Zephyr using the Circuit Dojo Zephyr SDK Tools VSCode extension. It may be something to do with the manifest, as I can’t get past the Zephyr Tools: Init Repo stage. My zephyrproject installation (v3.3) and the separate NCS for VSCode both work fine for all my other Zephyr command line & NCS projects. Appreciate if you could suggest what may be wrong.

Environment: macOS Big Sur 11.7.6, with latest VSCode

Zephyr setup

  • I have the latest Zephyr RTOS (v3.3) installed in a zephyrproject folder. This works for building any Zephyr project from a folder anywhere on my Mac.

  • I also have Nordic NCS for VSCode installed in the Nordic default path /opt/nordic/ncs. This is the latest NCS v2.3.0. I can build my NCS / Zephyr projects successfully from VSCode.

AQW build for Zephyr using Circuit Dojo Zephyr SDK Tools

  • For AQW, I’m following your instructions from https://github.com/circuitdojo/air-quality-wing-zephyr-demo.
    I’ve installed the Circuit Dojo Zephyr SDK Tools successfully, and also ran the Zephyr Tools: Setup successfully.
    When I run the Zephyr Tools: Init Repo and use the https://github.com/circuitdojo/air-quality-wing-zephyr-demo.git URL, VSCode throws an error. I do select an empty folder to initialize the project to.
=== Initializing in /Users/quark11/Documents/demo
--- Cloning manifest repository from https://github.com/circuitdojo/air-quality-wing-zephyr-demo.git
Cloning into '/Users/quark11/Documents/demo/.west/manifest-tmp'...
remote: Enumerating objects: 502, done.
remote: Counting objects: 100% (188/188), done.
remote: Compressing objects: 100% (106/106), done.
remote: Total 502 (delta 92), reused 125 (delta 63), pack-reused 314
Receiving objects: 100% (502/502), 7.42 MiB | 14.37 MiB/s, done.
Resolving deltas: 100% (228/228), done.
FATAL ERROR: can't init: no west.yml found in /Users/quark11/Documents/demo/.west/manifest-tmp
  Hint: check --manifest-url=https://github.com/circuitdojo/air-quality-wing-zephyr-demo.git  You may need to remove /Users/quark11/Documents/demo/.west before retrying.

 *  The terminal process "/usr/local/bin/bash '-c', 'west init -m https://github.com/circuitdojo/air-quality-wing-zephyr-demo.git --mf west.yml'" terminated with exit code: 1. 
 *  Terminal will be reused by tasks, press any key to close it. 

 *  Executing task: west update 

Traceback (most recent call last):
  File "/Users/quark11/.zephyrtools/env/bin/west", line 8, in <module>
    sys.exit(main())
  File "/Users/quark11/.zephyrtools/env/lib/python3.10/site-packages/west/app/main.py", line 866, in main
    app.run(argv or sys.argv[1:])
  File "/Users/quark11/.zephyrtools/env/lib/python3.10/site-packages/west/app/main.py", line 111, in run
    self.run_command(argv)
  File "/Users/quark11/.zephyrtools/env/lib/python3.10/site-packages/west/app/main.py", line 383, in run_command
    self.run_builtin(args, unknown)
  File "/Users/quark11/.zephyrtools/env/lib/python3.10/site-packages/west/app/main.py", line 424, in run_builtin
    self.cmd.run(args, unknown, self.topdir,
  File "/Users/quark11/.zephyrtools/env/lib/python3.10/site-packages/west/commands.py", line 194, in run
    self.do_run(args, unknown)
  File "/Users/quark11/.zephyrtools/env/lib/python3.10/site-packages/west/app/project.py", line 823, in do_run
    self.update_all()
  File "/Users/quark11/.zephyrtools/env/lib/python3.10/site-packages/west/app/project.py", line 875, in update_all
    self.manifest = Manifest.from_file(
  File "/Users/quark11/.zephyrtools/env/lib/python3.10/site-packages/west/manifest.py", line 1170, in from_file
    return Manifest(topdir=topdir, config=config,
  File "/Users/quark11/.zephyrtools/env/lib/python3.10/site-packages/west/manifest.py", line 1368, in __init__
    self._ctx = self._top_level_init(source_data,
  File "/Users/quark11/.zephyrtools/env/lib/python3.10/site-packages/west/manifest.py", line 1710, in _top_level_init
    manifest_path_option = get_option('manifest.path')
  File "/Users/quark11/.zephyrtools/env/lib/python3.10/site-packages/west/manifest.py", line 1707, in get_option
    return config.get(option, default=default,
  File "/Users/quark11/.zephyrtools/env/lib/python3.10/site-packages/west/configuration.py", line 180, in get
    return self._get(lambda cf: cf.get(option), default, configfile)
  File "/Users/quark11/.zephyrtools/env/lib/python3.10/site-packages/west/configuration.py", line 219, in _get
    for cf in self._whence(configfile):
  File "/Users/quark11/.zephyrtools/env/lib/python3.10/site-packages/west/configuration.py", line 240, in _whence
    raise MalformedConfig('local configuration file not found')
west.configuration.MalformedConfig: local configuration file not found

 *  The terminal process "/usr/local/bin/bash '-c', 'west update'" terminated with exit code: 1. 
 *  Terminal will be reused by tasks, press any key to close it. 

I do not get prompted for a project and board. VSCode doesn’t find “west.yml” (see screenshot).
I tried renaming west-vanilla.yml to west.yml but that didn’t help.

Any suggestions what may be incorrect?

Question - Is there a way that I can use NCS for VSCode and add the AQW project to my workspace and then build the project? In that way, it would be easier to build AQW for any of the supported boards. Thank you.

I’m able to use the Circuit Dojo Zephyr SDK Tools to setup nrf9160 build for Zephyr / NCS fine. The Zephyr Tools: Init Repo command worked fine with https://github.com/circuitdojo/nrf9160-feather-examples-and-drivers.git as the URL.

I’m able to build examples for nrf9160 just fine. No issue unlike with the AQWhttps://github.com/circuitdojo/air-quality-wing-zephyr-demo.git.

I’m not sure what’s required but it would be really good if AQW and nrf9160 Feather can use the feature rich and highly active Nordic NCS for VSCode for builds & debugging, rather than using the Circuit Dojo Zephyr SDK Tools. It’ll remove the need to have yet another Zephyr repo for nrf9160 Feather and AQW.

    @jaredwolff

    How can I get AQW to build correctly using Circuit Dojo Zephyr SDK Tools?

    Thanks.

    jaredwolff

    Thanks. It looks like that I can use NCS for VSCode to build some of the same nfed/samples, but others may require minor changes. I assume that the ones that get built successfully cane also flashed onto the nrf9160feather. Correct?

    What about building AQW using NCS for VSCode? Thanks.

    jaredwolff

    Thanks. I repeated SDK setup steps a couple of times before and now, but get the following error again when using the https://github.com/circuitdojo/air-quality-wing-zephyr-demo.git URL.

     *  Executing task: west init -m https://github.com/circuitdojo/air-quality-wing-zephyr-demo.git --mf west.yml 
    
    === Initializing in /Users/quark11/Documents/aqw_demo
    --- Cloning manifest repository from https://github.com/circuitdojo/air-quality-wing-zephyr-demo.git
    Cloning into '/Users/quark11/Documents/aqw_demo/.west/manifest-tmp'...
    remote: Enumerating objects: 502, done.
    remote: Counting objects: 100% (188/188), done.
    remote: Compressing objects: 100% (106/106), done.
    remote: Total 502 (delta 92), reused 125 (delta 63), pack-reused 314
    Receiving objects: 100% (502/502), 7.42 MiB | 17.88 MiB/s, done.
    Resolving deltas: 100% (228/228), done.
    FATAL ERROR: can't init: no west.yml found in /Users/quark11/Documents/aqw_demo/.west/manifest-tmp
      Hint: check --manifest-url=https://github.com/circuitdojo/air-quality-wing-zephyr-demo.git  You may need to remove /Users/quark11/Documents/aqw_demo/.west before retrying.
    
     *  The terminal process "/usr/local/bin/bash '-c', 'west init -m https://github.com/circuitdojo/air-quality-wing-zephyr-demo.git --mf west.yml'" terminated with exit code: 1. 
     *  Terminal will be reused by tasks, press any key to close it. 
    
     *  Executing task: west update 
    
    Traceback (most recent call last):
      File "/Users/quark11/.zephyrtools/env/bin/west", line 8, in <module>
        sys.exit(main())
                 ^^^^^^
      File "/Users/quark11/.zephyrtools/env/lib/python3.11/site-packages/west/app/main.py", line 866, in main
        app.run(argv or sys.argv[1:])
      File "/Users/quark11/.zephyrtools/env/lib/python3.11/site-packages/west/app/main.py", line 111, in run
        self.run_command(argv)
      File "/Users/quark11/.zephyrtools/env/lib/python3.11/site-packages/west/app/main.py", line 383, in run_command
        self.run_builtin(args, unknown)
      File "/Users/quark11/.zephyrtools/env/lib/python3.11/site-packages/west/app/main.py", line 424, in run_builtin
        self.cmd.run(args, unknown, self.topdir,
      File "/Users/quark11/.zephyrtools/env/lib/python3.11/site-packages/west/commands.py", line 194, in run
        self.do_run(args, unknown)
      File "/Users/quark11/.zephyrtools/env/lib/python3.11/site-packages/west/app/project.py", line 823, in do_run
        self.update_all()
      File "/Users/quark11/.zephyrtools/env/lib/python3.11/site-packages/west/app/project.py", line 875, in update_all
        self.manifest = Manifest.from_file(
                        ^^^^^^^^^^^^^^^^^^^
      File "/Users/quark11/.zephyrtools/env/lib/python3.11/site-packages/west/manifest.py", line 1170, in from_file
        return Manifest(topdir=topdir, config=config,
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "/Users/quark11/.zephyrtools/env/lib/python3.11/site-packages/west/manifest.py", line 1368, in __init__
        self._ctx = self._top_level_init(source_data,
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "/Users/quark11/.zephyrtools/env/lib/python3.11/site-packages/west/manifest.py", line 1710, in _top_level_init
        manifest_path_option = get_option('manifest.path')
                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "/Users/quark11/.zephyrtools/env/lib/python3.11/site-packages/west/manifest.py", line 1707, in get_option
        return config.get(option, default=default,
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "/Users/quark11/.zephyrtools/env/lib/python3.11/site-packages/west/configuration.py", line 180, in get
        return self._get(lambda cf: cf.get(option), default, configfile)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "/Users/quark11/.zephyrtools/env/lib/python3.11/site-packages/west/configuration.py", line 219, in _get
        for cf in self._whence(configfile):
                  ^^^^^^^^^^^^^^^^^^^^^^^^
      File "/Users/quark11/.zephyrtools/env/lib/python3.11/site-packages/west/configuration.py", line 240, in _whence
        raise MalformedConfig('local configuration file not found')
    west.configuration.MalformedConfig: local configuration file not found
    
     *  The terminal process "/usr/local/bin/bash '-c', 'west update'" terminated with exit code: 1. 
     *  Terminal will be reused by tasks, press any key to close it. 

    Ahh I can see what’s happening.

    Try modifying file in .west/config to either west-ncs.yml or west-vanilla.yml and then try to init on the same folder again.

    Here’s mine:

    [manifest]
    path = demo
    file = west-ncs.yml
    
    [zephyr]
    base = zephyr

    I seem to remember putting provisions for multiple manifests in the extension. What’s version do you have installed?

      jaredwolff

      Hi Jared!

      I’m now making some good progress in building AQW for Zephyr but now get some compilation errors.

      • I’ve updated .west/config to below. Thank you.
      [manifest]
      path = demo
      file = west-ncs.yml
      
      [zephyr]
      base = zephyr
      manifest:
        remotes:
          - name: nrfconnect
            url-base: https://github.com/nrfconnect
        projects:
          - name: nrf
            repo-path: sdk-nrf
            remote: nrfconnect
            revision: v2.3.0
            import: true
      • Also, I’ve updated west-vanilla.ymlto use Zephyr 3.3
      manifest:
        remotes:
          - name: zephyrproject
            url-base: https://github.com/zephyrproject-rtos
        projects:
          - name: zephyr
            repo-path: zephyr
            remote: zephyrproject
            revision: v3.3.0

      • Here is my aqw project layout in VSCode. Is aqw library at the correct place?
      quark11:aqw-test quark11$ tree -L 1
      .
      ├── aqw
      ├── bootloader
      ├── demo
      ├── mbedtls
      ├── modules
      ├── nrf
      ├── nrfxlib
      ├── test
      ├── tools
      └── zephyr
      • After west update, all seems to be ok as far as the project settings.
        I’ve tried to build the basic example for circuitdojo_feather_nrf9160ns.

      • As the basic/src/main.c was for an earlier Zephyr,
        I updated the include files to resolve compilation errors by adding zephyr to the include paths.

      #include <zephyr/kernel.h>.
      #include <zephyr/device.h>
      #include <zephyr/drivers/sensor.h>
      #include <zephyr/devicetree.h>
      #include <aqw.h>
      
      #if defined(CONFIG_USB_UART_CONSOLE)
      #include <drivers/uart.h>
      #include <usb/usb_device.h>
      #endif
      
      #include <zephyr/logging/log.h>
      • After these changes, I still get compilation errors.
        I’m getting close to a successful build with NCS 2.3.0 / Zephyr 3.2.99.

      • Are these errors because aqw library hasn’t been built?

      • How does aqw the library get built?

      • How do I fix the build errors below?

      
       *  Executing task: west build -b circuitdojo_feather_nrf9160_ns -p 
      
      -- west build: making build dir /Users/quark11/Documents/aqw-test/demo/basic/build pristine
      -- west build: generating a build system
      -- Build type: debug 🚀
      Loading Zephyr default modules (Zephyr base).
      -- Application: /Users/quark11/Documents/aqw-test/demo/basic
      -- Using NCS Toolchain 2.3.0 for building. (/opt/nordic/ncs/toolchains/v2.3.0/cmake)
      -- Found Python3: /opt/nordic/ncs/toolchains/v2.3.0/bin/python3 (found suitable exact version "3.9.6") found components: Interpreter 
      -- Cache files will be written to: /Users/quark11/Library/Caches/zephyr
      -- Zephyr version: 3.2.99 (/Users/quark11/Documents/aqw-test/zephyr)
      -- Found west (found suitable version "0.14.0", minimum required is "0.7.1")
      -- Board: circuitdojo_feather_nrf9160_ns
      -- Found host-tools: zephyr 0.15.1 (/Users/quark11/.zephyrtools/toolchain/zephyr-sdk-0.15.1)
      -- Found toolchain: zephyr 0.15.1 (/Users/quark11/.zephyrtools/toolchain/zephyr-sdk-0.15.1)
      -- Found Dtc: /opt/nordic/ncs/toolchains/v2.3.0/bin/dtc (found suitable version "1.6.1", minimum required is "1.4.6") 
      -- Found BOARD.dts: /Users/quark11/Documents/aqw-test/zephyr/boards/arm/circuitdojo_feather_nrf9160/circuitdojo_feather_nrf9160_ns.dts
      -- Found devicetree overlay: /Users/quark11/Documents/aqw-test/demo/basic/boards/circuitdojo_feather_nrf9160_ns.overlay
      'tx-pin' is marked as deprecated in 'properties:' in /Users/quark11/Documents/aqw-test/zephyr/dts/bindings/serial/nordic,nrf-uarte.yaml for node /soc/peripheral@40000000/uart@a000.
      'rx-pin' is marked as deprecated in 'properties:' in /Users/quark11/Documents/aqw-test/zephyr/dts/bindings/serial/nordic,nrf-uarte.yaml for node /soc/peripheral@40000000/uart@a000.
      'label' is marked as deprecated in 'properties:' in /Users/quark11/Documents/aqw-test/aqw/dts/bindings/honeywell,hpma115s0.yaml for node /soc/peripheral@40000000/uart@a000/hpma115s0.
      'label' is marked as deprecated in 'properties:' in /Users/quark11/Documents/aqw-test/aqw/dts/bindings/sensirion,sgp40cd.yaml for node /soc/peripheral@40000000/i2c@9000/sgp40@59.
      'label' is marked as deprecated in 'properties:' in /Users/quark11/Documents/aqw-test/aqw/dts/bindings/sensirion,shtc3cd.yaml for node /soc/peripheral@40000000/i2c@9000/shtc3@70.
      -- Generated zephyr.dts: /Users/quark11/Documents/aqw-test/demo/basic/build/zephyr/zephyr.dts
      -- Generated devicetree_generated.h: /Users/quark11/Documents/aqw-test/demo/basic/build/zephyr/include/generated/devicetree_generated.h
      -- Including generated dts.cmake file: /Users/quark11/Documents/aqw-test/demo/basic/build/zephyr/dts.cmake
      Parsing /Users/quark11/Documents/aqw-test/demo/basic/Kconfig
      Loaded configuration '/Users/quark11/Documents/aqw-test/zephyr/boards/arm/circuitdojo_feather_nrf9160/circuitdojo_feather_nrf9160_ns_defconfig'
      Merged configuration '/Users/quark11/Documents/aqw-test/demo/basic/prj.conf'
      Merged configuration '/Users/quark11/Documents/aqw-test/demo/basic/boards/circuitdojo_feather_nrf9160_ns.conf'
      Configuration saved to '/Users/quark11/Documents/aqw-test/demo/basic/build/zephyr/.config'
      Kconfig header saved to '/Users/quark11/Documents/aqw-test/demo/basic/build/zephyr/include/generated/autoconf.h'
      -- The C compiler identification is GNU 12.1.0
      -- The CXX compiler identification is GNU 12.1.0
      -- The ASM compiler identification is GNU
      -- Found assembler: /Users/quark11/.zephyrtools/toolchain/zephyr-sdk-0.15.1/arm-zephyr-eabi/bin/arm-zephyr-eabi-gcc
      -- Found Python3: /opt/nordic/ncs/toolchains/v2.3.0/bin/python3 (found version "3.9.6") found components: Interpreter 
      Changed board to secure circuitdojo_feather_nrf9160 (NOT NS)
      
      === child image mcuboot -  begin ===
      loading initial cache file /Users/quark11/Documents/aqw-test/demo/basic/build/mcuboot/child_image_preload.cmake
      Loading Zephyr default modules (Zephyr base).
      -- Application: /Users/quark11/Documents/aqw-test/bootloader/mcuboot/boot/zephyr
      -- Using NCS Toolchain 2.3.0 for building. (/opt/nordic/ncs/toolchains/v2.3.0/cmake)
      -- Found Python3: /opt/nordic/ncs/toolchains/v2.3.0/bin/python3 (found suitable exact version "3.9.6") found components: Interpreter 
      -- Cache files will be written to: /Users/quark11/Library/Caches/zephyr
      -- Zephyr version: 3.2.99 (/Users/quark11/Documents/aqw-test/zephyr)
      -- Found west (found suitable version "0.14.0", minimum required is "0.7.1")
      -- Board: circuitdojo_feather_nrf9160
      -- Found host-tools: zephyr 0.15.1 (/Users/quark11/.zephyrtools/toolchain/zephyr-sdk-0.15.1)
      -- Found toolchain: zephyr 0.15.1 (/Users/quark11/.zephyrtools/toolchain/zephyr-sdk-0.15.1)
      -- Found Dtc: /opt/nordic/ncs/toolchains/v2.3.0/bin/dtc (found suitable version "1.6.1", minimum required is "1.4.6") 
      -- Found BOARD.dts: /Users/quark11/Documents/aqw-test/zephyr/boards/arm/circuitdojo_feather_nrf9160/circuitdojo_feather_nrf9160.dts
      -- Found devicetree overlay: /Users/quark11/Documents/aqw-test/bootloader/mcuboot/boot/zephyr/dts.overlay
      -- Generated zephyr.dts: /Users/quark11/Documents/aqw-test/demo/basic/build/mcuboot/zephyr/zephyr.dts
      -- Generated devicetree_generated.h: /Users/quark11/Documents/aqw-test/demo/basic/build/mcuboot/zephyr/include/generated/devicetree_generated.h
      -- Including generated dts.cmake file: /Users/quark11/Documents/aqw-test/demo/basic/build/mcuboot/zephyr/dts.cmake
      
      warning: UART_CONSOLE (defined at drivers/console/Kconfig:43) was assigned the value 'y' but got the
      value 'n'. Check these unsatisfied dependencies: CONSOLE (=n). See
      http://docs.zephyrproject.org/latest/kconfig.html#CONFIG_UART_CONSOLE and/or look up UART_CONSOLE in
      the menuconfig/guiconfig interface. The Application Development Primer, Setting Configuration
      Values, and Kconfig - Tips and Best Practices sections of the manual might be helpful too.
      
      Parsing /Users/quark11/Documents/aqw-test/bootloader/mcuboot/boot/zephyr/Kconfig
      Loaded configuration '/Users/quark11/Documents/aqw-test/zephyr/boards/arm/circuitdojo_feather_nrf9160/circuitdojo_feather_nrf9160_defconfig'
      Merged configuration '/Users/quark11/Documents/aqw-test/bootloader/mcuboot/boot/zephyr/prj.conf'
      Merged configuration '/Users/quark11/Documents/aqw-test/bootloader/mcuboot/boot/zephyr/boards/circuitdojo_feather_nrf9160.conf'
      Merged configuration '/Users/quark11/Documents/aqw-test/nrf/modules/mcuboot/tfm.conf'
      Merged configuration '/Users/quark11/Documents/aqw-test/nrf/subsys/partition_manager/partition_manager_enabled.conf'
      Merged configuration '/Users/quark11/Documents/aqw-test/demo/basic/build/mcuboot/zephyr/misc/generated/extra_kconfig_options.conf'
      Configuration saved to '/Users/quark11/Documents/aqw-test/demo/basic/build/mcuboot/zephyr/.config'
      Kconfig header saved to '/Users/quark11/Documents/aqw-test/demo/basic/build/mcuboot/zephyr/include/generated/autoconf.h'
      -- The C compiler identification is GNU 12.1.0
      -- The CXX compiler identification is GNU 12.1.0
      -- The ASM compiler identification is GNU
      -- Found assembler: /Users/quark11/.zephyrtools/toolchain/zephyr-sdk-0.15.1/arm-zephyr-eabi/bin/arm-zephyr-eabi-gcc
      MCUBoot bootloader key file: /Users/quark11/Documents/aqw-test/bootloader/mcuboot/root-ec-p256.pem
      -- Configuring done
      -- Generating done
      -- Build files have been written to: /Users/quark11/Documents/aqw-test/demo/basic/build/mcuboot
      === child image mcuboot -  end ===
      
      CMake Warning at /Users/quark11/Documents/aqw-test/nrf/modules/mcuboot/CMakeLists.txt:286 (message):
        
      
                ---------------------------------------------------------
                --- WARNING: Using default MCUBoot key, it should not ---
                --- be used for production.                           ---
                ---------------------------------------------------------
                
      
      
      
      Dropping partition 'nrf_modem_lib_trace' since its size is 0.
      Dropping partition 'nonsecure_storage' since it is empty.
      -- Configuring done
      -- Generating done
      -- Build files have been written to: /Users/quark11/Documents/aqw-test/demo/basic/build
      -- west build: building application
      [2/268] Generating include/generated/version.h
      -- Zephyr version: 3.2.99 (/Users/quark11/Documents/aqw-test/zephyr), build: v3.2.99-ncs2
      [23/268] Performing build step for 'mcuboot_subimage'
      [1/203] Preparing syscall dependency handling
      
      [2/203] Generating include/generated/version.h
      -- Zephyr version: 3.2.99 (/Users/quark11/Documents/aqw-test/zephyr), build: v3.2.99-ncs2
      [193/203] Linking C executable zephyr/zephyr_pre0.elf
      
      [197/203] Linking C executable zephyr/zephyr_pre1.elf
      
      [203/203] Linking C executable zephyr/zephyr.elf
      Memory region         Used Size  Region Size  %age Used
                 FLASH:       44204 B        48 KB     89.93%
                   RAM:       24304 B        32 KB     74.17%
              IDT_LIST:          0 GB         2 KB      0.00%
      [55/268] Preparing syscall dependency handling
      
      [63/268] Generating ../../tfm/CMakeCache.txt
      -- The C compiler identification is GNU 12.1.0
      -- The ASM compiler identification is GNU
      -- Found assembler: /Users/quark11/.zephyrtools/toolchain/zephyr-sdk-0.15.1/arm-zephyr-eabi/bin/arm-zephyr-eabi-gcc
      -- Found Python3: /opt/nordic/ncs/toolchains/v2.3.0/bin/python3 (found version "3.9.6") found components: Interpreter 
      -- Found Python3: /opt/nordic/ncs/toolchains/v2.3.0/bin/python3 (found suitable exact version "3.9.6") found components: Interpreter 
      -- Cache files will be written to: /Users/quark11/Library/Caches/zephyr
      -- Configuring done
      -- Generating done
      -- Build files have been written to: /Users/quark11/Documents/aqw-test/demo/basic/build/tfm
      [69/268] Performing build step for 'tfm'
      [1/2] Re-running CMake...
      -- Found Python3: /opt/nordic/ncs/toolchains/v2.3.0/bin/python3 (found version "3.9.6") found components: Interpreter 
      -- Found Python3: /opt/nordic/ncs/toolchains/v2.3.0/bin/python3 (found suitable exact version "3.9.6") found components: Interpreter 
      -- Cache files will be written to: /Users/quark11/Library/Caches/zephyr
      -- Configuring done
      -- Generating done
      -- Build files have been written to: /Users/quark11/Documents/aqw-test/demo/basic/build/tfm
      [172/172] Linking C static library secure_fw/libtfm_s_veneers.a
      [73/268] Performing install step for 'tfm'
      -- Install configuration: "MinSizeRel"
      [115/268] Building C object CMakeFiles/app.dir/src/main.c.obj
      FAILED: CMakeFiles/app.dir/src/main.c.obj 
      ccache /Users/quark11/.zephyrtools/toolchain/zephyr-sdk-0.15.1/arm-zephyr-eabi/bin/arm-zephyr-eabi-gcc -DKERNEL -DMBEDTLS_CONFIG_FILE=\"nrf-config.h\" -DMBEDTLS_USER_CONFIG_FILE=\"nrf-config-user.h\" -DNRF9160_XXAA -DNRF_SKIP_FICR_NS_COPY_TO_RAM -DNRF_TRUSTZONE_NONSECURE -DTFM_PSA_API -DUSE_PARTITION_MANAGER=1 -D_ANSI_SOURCE -D_FORTIFY_SOURCE=1 -D__LINUX_ERRNO_EXTENSIONS__ -D__PROGRAM_START -D__ZEPHYR__=1 -I/Users/quark11/Documents/aqw-test/zephyr/include -I/Users/quark11/Documents/aqw-test/demo/basic/build/zephyr/include/generated -I/Users/quark11/Documents/aqw-test/zephyr/soc/arm/nordic_nrf/nrf91 -I/Users/quark11/Documents/aqw-test/zephyr/lib/libc/newlib/include -I/Users/quark11/Documents/aqw-test/zephyr/soc/arm/nordic_nrf/common/. -I/Users/quark11/Documents/aqw-test/nrf/include -I/Users/quark11/Documents/aqw-test/nrf/include/tfm -I/Users/quark11/Documents/aqw-test/nrf/tests/include -I/Users/quark11/Documents/aqw-test/aqw/drivers/sensirion-common -I/Users/quark11/Documents/aqw-test/aqw/include -I/Users/quark11/Documents/aqw-test/aqw/drivers -I/Users/quark11/Documents/aqw-test/aqw/ext/embedded-sgp/sgp40_voc_index -I/Users/quark11/Documents/aqw-test/modules/lib/golioth/include -I/Users/quark11/Documents/aqw-test/demo/basic/build/tfm/generated/interface/include -I/Users/quark11/Documents/aqw-test/modules/hal/cmsis/CMSIS/Core/Include -I/Users/quark11/Documents/aqw-test/modules/hal/nordic/nrfx -I/Users/quark11/Documents/aqw-test/modules/hal/nordic/nrfx/drivers/include -I/Users/quark11/Documents/aqw-test/modules/hal/nordic/nrfx/mdk -I/Users/quark11/Documents/aqw-test/zephyr/modules/hal_nordic/nrfx/. -I/Users/quark11/Documents/aqw-test/nrfxlib/nrf_modem/include -I/Users/quark11/Documents/aqw-test/demo/basic/build/tfm/install/interface/include -I/Users/quark11/Documents/aqw-test/demo/basic/build/modules/nrfxlib/nrfxlib/nrf_security/src/include/generated -I/Users/quark11/Documents/aqw-test/nrfxlib/nrf_security/include -I/Users/quark11/Documents/aqw-test/nrfxlib/nrf_security/include/mbedtls -I/Users/quark11/Documents/aqw-test/modules/crypto/mbedtls/include -I/Users/quark11/Documents/aqw-test/modules/crypto/mbedtls/include/mbedtls -I/Users/quark11/Documents/aqw-test/modules/crypto/mbedtls/include/psa -I/Users/quark11/Documents/aqw-test/modules/crypto/mbedtls/library -I/Users/quark11/Documents/aqw-test/nrfxlib/crypto/nrf_oberon/include/mbedtls -I/Users/quark11/Documents/aqw-test/nrfxlib/crypto/nrf_oberon/include -fno-strict-aliasing -Os -imacros /Users/quark11/Documents/aqw-test/demo/basic/build/zephyr/include/generated/autoconf.h -ffreestanding -fno-common -g -gdwarf-4 -fdiagnostics-color=always -mcpu=cortex-m33 -mthumb -mabi=aapcs -mfp16-format=ieee --sysroot=/Users/quark11/.zephyrtools/toolchain/zephyr-sdk-0.15.1/arm-zephyr-eabi/arm-zephyr-eabi -imacros /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/toolchain/zephyr_stdint.h -Wall -Wformat -Wformat-security -Wno-format-zero-length -Wno-main -Wno-pointer-sign -Wpointer-arith -Wexpansion-to-defined -Wno-unused-but-set-variable -Werror=implicit-int -fno-pic -fno-pie -fno-asynchronous-unwind-tables -fno-reorder-functions --param=min-pagesize=0 -fno-defer-pop -fmacro-prefix-map=/Users/quark11/Documents/aqw-test/demo/basic=CMAKE_SOURCE_DIR -fmacro-prefix-map=/Users/quark11/Documents/aqw-test/zephyr=ZEPHYR_BASE -fmacro-prefix-map=/Users/quark11/Documents/aqw-test=WEST_TOPDIR -ffunction-sections -fdata-sections -specs=nano.specs -std=c99 -MD -MT CMakeFiles/app.dir/src/main.c.obj -MF CMakeFiles/app.dir/src/main.c.obj.d -o CMakeFiles/app.dir/src/main.c.obj -c /Users/quark11/Documents/aqw-test/demo/basic/src/main.c
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:37:10: error: 'struct aqw_sensor' has no member named 'dev_name'
         37 |         .dev_name = CONFIG_SHTC3_DEV_NAME,
            |          ^~~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:37:13: warning: Macro is deprecated
         37 |         .dev_name = CONFIG_SHTC3_DEV_NAME,
            |             ^~~~~~~~~~~~~~~~~~~~~
      In file included from /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:19,
                       from /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/arch/arm/aarch32/arch.h:20,
                       from /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/arch/cpu.h:19,
                       from /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/kernel_includes.h:33,
                       from /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/kernel.h:17,
                       from /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:6:
      /Users/quark11/Documents/aqw-test/demo/basic/build/zephyr/include/generated/devicetree_generated.h:11736:72: warning: initialization of 'unsigned int' from 'char *' makes integer from pointer without a cast [-Wint-conversion]
      11736 | #define DT_N_S_soc_S_peripheral_40000000_S_i2c_9000_S_shtc3_70_P_label "SHTC3"
            |                                                                        ^~~~~~~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:3903:29: note: in expansion of macro 'DT_N_S_soc_S_peripheral_40000000_S_i2c_9000_S_shtc3_70_P_label'
       3903 | #define DT_CAT3(a1, a2, a3) a1 ## a2 ## a3
            |                             ^~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:607:32: note: in expansion of macro 'DT_CAT3'
        607 | #define DT_PROP(node_id, prop) DT_CAT3(node_id, _P_, prop)
            |                                ^~~~~~~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:766:27: note: in expansion of macro 'DT_PROP'
        766 | #define DT_LABEL(node_id) DT_PROP(node_id, label) __DEPRECATED_MACRO
            |                           ^~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:22:31: note: in expansion of macro 'DT_LABEL'
         22 | #define CONFIG_SHTC3_DEV_NAME DT_LABEL(SHTC3)
            |                               ^~~~~~~~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/sys/util_internal.h:105:36: note: in expansion of macro 'DT_N_INST_0_sensirion_shtc3cd'
        105 | #define UTIL_PRIMITIVE_CAT(a, ...) a##__VA_ARGS__
            |                                    ^
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/sys/util_internal.h:104:26: note: in expansion of macro 'UTIL_PRIMITIVE_CAT'
        104 | #define UTIL_CAT(a, ...) UTIL_PRIMITIVE_CAT(a, __VA_ARGS__)
            |                          ^~~~~~~~~~~~~~~~~~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:326:31: note: in expansion of macro 'UTIL_CAT'
        326 | #define DT_INST(inst, compat) UTIL_CAT(DT_N_INST, DT_DASH(inst, compat))
            |                               ^~~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:21:15: note: in expansion of macro 'DT_INST'
         21 | #define SHTC3 DT_INST(0, sensirion_shtc3cd)
            |               ^~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:22:40: note: in expansion of macro 'SHTC3'
         22 | #define CONFIG_SHTC3_DEV_NAME DT_LABEL(SHTC3)
            |                                        ^~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:37:21: note: in expansion of macro 'CONFIG_SHTC3_DEV_NAME'
         37 |         .dev_name = CONFIG_SHTC3_DEV_NAME,
            |                     ^~~~~~~~~~~~~~~~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/build/zephyr/include/generated/devicetree_generated.h:11736:72: note: (near initialization for 'temperature_sensor.interval')
      11736 | #define DT_N_S_soc_S_peripheral_40000000_S_i2c_9000_S_shtc3_70_P_label "SHTC3"
            |                                                                        ^~~~~~~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:3903:29: note: in expansion of macro 'DT_N_S_soc_S_peripheral_40000000_S_i2c_9000_S_shtc3_70_P_label'
       3903 | #define DT_CAT3(a1, a2, a3) a1 ## a2 ## a3
            |                             ^~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:607:32: note: in expansion of macro 'DT_CAT3'
        607 | #define DT_PROP(node_id, prop) DT_CAT3(node_id, _P_, prop)
            |                                ^~~~~~~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:766:27: note: in expansion of macro 'DT_PROP'
        766 | #define DT_LABEL(node_id) DT_PROP(node_id, label) __DEPRECATED_MACRO
            |                           ^~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:22:31: note: in expansion of macro 'DT_LABEL'
         22 | #define CONFIG_SHTC3_DEV_NAME DT_LABEL(SHTC3)
            |                               ^~~~~~~~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/sys/util_internal.h:105:36: note: in expansion of macro 'DT_N_INST_0_sensirion_shtc3cd'
        105 | #define UTIL_PRIMITIVE_CAT(a, ...) a##__VA_ARGS__
            |                                    ^
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/sys/util_internal.h:104:26: note: in expansion of macro 'UTIL_PRIMITIVE_CAT'
        104 | #define UTIL_CAT(a, ...) UTIL_PRIMITIVE_CAT(a, __VA_ARGS__)
            |                          ^~~~~~~~~~~~~~~~~~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:326:31: note: in expansion of macro 'UTIL_CAT'
        326 | #define DT_INST(inst, compat) UTIL_CAT(DT_N_INST, DT_DASH(inst, compat))
            |                               ^~~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:21:15: note: in expansion of macro 'DT_INST'
         21 | #define SHTC3 DT_INST(0, sensirion_shtc3cd)
            |               ^~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:22:40: note: in expansion of macro 'SHTC3'
         22 | #define CONFIG_SHTC3_DEV_NAME DT_LABEL(SHTC3)
            |                                        ^~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:37:21: note: in expansion of macro 'CONFIG_SHTC3_DEV_NAME'
         37 |         .dev_name = CONFIG_SHTC3_DEV_NAME,
            |                     ^~~~~~~~~~~~~~~~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:45:10: error: 'struct aqw_sensor' has no member named 'dev_name'
         45 |         .dev_name = CONFIG_SHTC3_DEV_NAME,
            |          ^~~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:45:13: warning: Macro is deprecated
         45 |         .dev_name = CONFIG_SHTC3_DEV_NAME,
            |             ^~~~~~~~~~~~~~~~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/build/zephyr/include/generated/devicetree_generated.h:11736:72: warning: initialization of 'unsigned int' from 'char *' makes integer from pointer without a cast [-Wint-conversion]
      11736 | #define DT_N_S_soc_S_peripheral_40000000_S_i2c_9000_S_shtc3_70_P_label "SHTC3"
            |                                                                        ^~~~~~~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:3903:29: note: in expansion of macro 'DT_N_S_soc_S_peripheral_40000000_S_i2c_9000_S_shtc3_70_P_label'
       3903 | #define DT_CAT3(a1, a2, a3) a1 ## a2 ## a3
            |                             ^~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:607:32: note: in expansion of macro 'DT_CAT3'
        607 | #define DT_PROP(node_id, prop) DT_CAT3(node_id, _P_, prop)
            |                                ^~~~~~~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:766:27: note: in expansion of macro 'DT_PROP'
        766 | #define DT_LABEL(node_id) DT_PROP(node_id, label) __DEPRECATED_MACRO
            |                           ^~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:22:31: note: in expansion of macro 'DT_LABEL'
         22 | #define CONFIG_SHTC3_DEV_NAME DT_LABEL(SHTC3)
            |                               ^~~~~~~~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/sys/util_internal.h:105:36: note: in expansion of macro 'DT_N_INST_0_sensirion_shtc3cd'
        105 | #define UTIL_PRIMITIVE_CAT(a, ...) a##__VA_ARGS__
            |                                    ^
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/sys/util_internal.h:104:26: note: in expansion of macro 'UTIL_PRIMITIVE_CAT'
        104 | #define UTIL_CAT(a, ...) UTIL_PRIMITIVE_CAT(a, __VA_ARGS__)
            |                          ^~~~~~~~~~~~~~~~~~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:326:31: note: in expansion of macro 'UTIL_CAT'
        326 | #define DT_INST(inst, compat) UTIL_CAT(DT_N_INST, DT_DASH(inst, compat))
            |                               ^~~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:21:15: note: in expansion of macro 'DT_INST'
         21 | #define SHTC3 DT_INST(0, sensirion_shtc3cd)
            |               ^~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:22:40: note: in expansion of macro 'SHTC3'
         22 | #define CONFIG_SHTC3_DEV_NAME DT_LABEL(SHTC3)
            |                                        ^~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:45:21: note: in expansion of macro 'CONFIG_SHTC3_DEV_NAME'
         45 |         .dev_name = CONFIG_SHTC3_DEV_NAME,
            |                     ^~~~~~~~~~~~~~~~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/build/zephyr/include/generated/devicetree_generated.h:11736:72: note: (near initialization for 'humidity_sensor.interval')
      11736 | #define DT_N_S_soc_S_peripheral_40000000_S_i2c_9000_S_shtc3_70_P_label "SHTC3"
            |                                                                        ^~~~~~~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:3903:29: note: in expansion of macro 'DT_N_S_soc_S_peripheral_40000000_S_i2c_9000_S_shtc3_70_P_label'
       3903 | #define DT_CAT3(a1, a2, a3) a1 ## a2 ## a3
            |                             ^~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:607:32: note: in expansion of macro 'DT_CAT3'
        607 | #define DT_PROP(node_id, prop) DT_CAT3(node_id, _P_, prop)
            |                                ^~~~~~~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:766:27: note: in expansion of macro 'DT_PROP'
        766 | #define DT_LABEL(node_id) DT_PROP(node_id, label) __DEPRECATED_MACRO
            |                           ^~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:22:31: note: in expansion of macro 'DT_LABEL'
         22 | #define CONFIG_SHTC3_DEV_NAME DT_LABEL(SHTC3)
            |                               ^~~~~~~~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/sys/util_internal.h:105:36: note: in expansion of macro 'DT_N_INST_0_sensirion_shtc3cd'
        105 | #define UTIL_PRIMITIVE_CAT(a, ...) a##__VA_ARGS__
            |                                    ^
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/sys/util_internal.h:104:26: note: in expansion of macro 'UTIL_PRIMITIVE_CAT'
        104 | #define UTIL_CAT(a, ...) UTIL_PRIMITIVE_CAT(a, __VA_ARGS__)
            |                          ^~~~~~~~~~~~~~~~~~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:326:31: note: in expansion of macro 'UTIL_CAT'
        326 | #define DT_INST(inst, compat) UTIL_CAT(DT_N_INST, DT_DASH(inst, compat))
            |                               ^~~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:21:15: note: in expansion of macro 'DT_INST'
         21 | #define SHTC3 DT_INST(0, sensirion_shtc3cd)
            |               ^~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:22:40: note: in expansion of macro 'SHTC3'
         22 | #define CONFIG_SHTC3_DEV_NAME DT_LABEL(SHTC3)
            |                                        ^~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:45:21: note: in expansion of macro 'CONFIG_SHTC3_DEV_NAME'
         45 |         .dev_name = CONFIG_SHTC3_DEV_NAME,
            |                     ^~~~~~~~~~~~~~~~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:53:10: error: 'struct aqw_sensor' has no member named 'dev_name'
         53 |         .dev_name = CONFIG_SGP40_DEV_NAME,
            |          ^~~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:53:13: warning: Macro is deprecated
         53 |         .dev_name = CONFIG_SGP40_DEV_NAME,
            |             ^~~~~~~~~~~~~~~~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/build/zephyr/include/generated/devicetree_generated.h:11620:72: warning: initialization of 'unsigned int' from 'char *' makes integer from pointer without a cast [-Wint-conversion]
      11620 | #define DT_N_S_soc_S_peripheral_40000000_S_i2c_9000_S_sgp40_59_P_label "SGP40"
            |                                                                        ^~~~~~~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:3903:29: note: in expansion of macro 'DT_N_S_soc_S_peripheral_40000000_S_i2c_9000_S_sgp40_59_P_label'
       3903 | #define DT_CAT3(a1, a2, a3) a1 ## a2 ## a3
            |                             ^~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:607:32: note: in expansion of macro 'DT_CAT3'
        607 | #define DT_PROP(node_id, prop) DT_CAT3(node_id, _P_, prop)
            |                                ^~~~~~~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:766:27: note: in expansion of macro 'DT_PROP'
        766 | #define DT_LABEL(node_id) DT_PROP(node_id, label) __DEPRECATED_MACRO
            |                           ^~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:25:31: note: in expansion of macro 'DT_LABEL'
         25 | #define CONFIG_SGP40_DEV_NAME DT_LABEL(SGP40)
            |                               ^~~~~~~~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/sys/util_internal.h:105:36: note: in expansion of macro 'DT_N_INST_0_sensirion_sgp40cd'
        105 | #define UTIL_PRIMITIVE_CAT(a, ...) a##__VA_ARGS__
            |                                    ^
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/sys/util_internal.h:104:26: note: in expansion of macro 'UTIL_PRIMITIVE_CAT'
        104 | #define UTIL_CAT(a, ...) UTIL_PRIMITIVE_CAT(a, __VA_ARGS__)
            |                          ^~~~~~~~~~~~~~~~~~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:326:31: note: in expansion of macro 'UTIL_CAT'
        326 | #define DT_INST(inst, compat) UTIL_CAT(DT_N_INST, DT_DASH(inst, compat))
            |                               ^~~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:24:15: note: in expansion of macro 'DT_INST'
         24 | #define SGP40 DT_INST(0, sensirion_sgp40cd)
            |               ^~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:25:40: note: in expansion of macro 'SGP40'
         25 | #define CONFIG_SGP40_DEV_NAME DT_LABEL(SGP40)
            |                                        ^~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:53:21: note: in expansion of macro 'CONFIG_SGP40_DEV_NAME'
         53 |         .dev_name = CONFIG_SGP40_DEV_NAME,
            |                     ^~~~~~~~~~~~~~~~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/build/zephyr/include/generated/devicetree_generated.h:11620:72: note: (near initialization for 'voc_sensor.interval')
      11620 | #define DT_N_S_soc_S_peripheral_40000000_S_i2c_9000_S_sgp40_59_P_label "SGP40"
            |                                                                        ^~~~~~~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:3903:29: note: in expansion of macro 'DT_N_S_soc_S_peripheral_40000000_S_i2c_9000_S_sgp40_59_P_label'
       3903 | #define DT_CAT3(a1, a2, a3) a1 ## a2 ## a3
            |                             ^~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:607:32: note: in expansion of macro 'DT_CAT3'
        607 | #define DT_PROP(node_id, prop) DT_CAT3(node_id, _P_, prop)
            |                                ^~~~~~~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:766:27: note: in expansion of macro 'DT_PROP'
        766 | #define DT_LABEL(node_id) DT_PROP(node_id, label) __DEPRECATED_MACRO
            |                           ^~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:25:31: note: in expansion of macro 'DT_LABEL'
         25 | #define CONFIG_SGP40_DEV_NAME DT_LABEL(SGP40)
            |                               ^~~~~~~~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/sys/util_internal.h:105:36: note: in expansion of macro 'DT_N_INST_0_sensirion_sgp40cd'
        105 | #define UTIL_PRIMITIVE_CAT(a, ...) a##__VA_ARGS__
            |                                    ^
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/sys/util_internal.h:104:26: note: in expansion of macro 'UTIL_PRIMITIVE_CAT'
        104 | #define UTIL_CAT(a, ...) UTIL_PRIMITIVE_CAT(a, __VA_ARGS__)
            |                          ^~~~~~~~~~~~~~~~~~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:326:31: note: in expansion of macro 'UTIL_CAT'
        326 | #define DT_INST(inst, compat) UTIL_CAT(DT_N_INST, DT_DASH(inst, compat))
            |                               ^~~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:24:15: note: in expansion of macro 'DT_INST'
         24 | #define SGP40 DT_INST(0, sensirion_sgp40cd)
            |               ^~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:25:40: note: in expansion of macro 'SGP40'
         25 | #define CONFIG_SGP40_DEV_NAME DT_LABEL(SGP40)
            |                                        ^~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:53:21: note: in expansion of macro 'CONFIG_SGP40_DEV_NAME'
         53 |         .dev_name = CONFIG_SGP40_DEV_NAME,
            |                     ^~~~~~~~~~~~~~~~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:61:10: error: 'struct aqw_sensor' has no member named 'dev_name'
         61 |         .dev_name = CONFIG_HPMA115S0_DEV_NAME,
            |          ^~~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:61:13: warning: Macro is deprecated
         61 |         .dev_name = CONFIG_HPMA115S0_DEV_NAME,
            |             ^~~~~~~~~~~~~~~~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/build/zephyr/include/generated/devicetree_generated.h:12437:74: warning: initialization of 'unsigned int' from 'char *' makes integer from pointer without a cast [-Wint-conversion]
      12437 | #define DT_N_S_soc_S_peripheral_40000000_S_uart_a000_S_hpma115s0_P_label "HPMA115S0"
            |                                                                          ^~~~~~~~~~~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:3903:29: note: in expansion of macro 'DT_N_S_soc_S_peripheral_40000000_S_uart_a000_S_hpma115s0_P_label'
       3903 | #define DT_CAT3(a1, a2, a3) a1 ## a2 ## a3
            |                             ^~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:607:32: note: in expansion of macro 'DT_CAT3'
        607 | #define DT_PROP(node_id, prop) DT_CAT3(node_id, _P_, prop)
            |                                ^~~~~~~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:766:27: note: in expansion of macro 'DT_PROP'
        766 | #define DT_LABEL(node_id) DT_PROP(node_id, label) __DEPRECATED_MACRO
            |                           ^~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:28:35: note: in expansion of macro 'DT_LABEL'
         28 | #define CONFIG_HPMA115S0_DEV_NAME DT_LABEL(HPMA115S0)
            |                                   ^~~~~~~~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/sys/util_internal.h:105:36: note: in expansion of macro 'DT_N_INST_0_honeywell_hpma115s0'
        105 | #define UTIL_PRIMITIVE_CAT(a, ...) a##__VA_ARGS__
            |                                    ^
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/sys/util_internal.h:104:26: note: in expansion of macro 'UTIL_PRIMITIVE_CAT'
        104 | #define UTIL_CAT(a, ...) UTIL_PRIMITIVE_CAT(a, __VA_ARGS__)
            |                          ^~~~~~~~~~~~~~~~~~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:326:31: note: in expansion of macro 'UTIL_CAT'
        326 | #define DT_INST(inst, compat) UTIL_CAT(DT_N_INST, DT_DASH(inst, compat))
            |                               ^~~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:27:19: note: in expansion of macro 'DT_INST'
         27 | #define HPMA115S0 DT_INST(0, honeywell_hpma115s0)
            |                   ^~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:28:44: note: in expansion of macro 'HPMA115S0'
         28 | #define CONFIG_HPMA115S0_DEV_NAME DT_LABEL(HPMA115S0)
            |                                            ^~~~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:61:21: note: in expansion of macro 'CONFIG_HPMA115S0_DEV_NAME'
         61 |         .dev_name = CONFIG_HPMA115S0_DEV_NAME,
            |                     ^~~~~~~~~~~~~~~~~~~~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/build/zephyr/include/generated/devicetree_generated.h:12437:74: note: (near initialization for 'hpma_sensor.interval')
      12437 | #define DT_N_S_soc_S_peripheral_40000000_S_uart_a000_S_hpma115s0_P_label "HPMA115S0"
            |                                                                          ^~~~~~~~~~~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:3903:29: note: in expansion of macro 'DT_N_S_soc_S_peripheral_40000000_S_uart_a000_S_hpma115s0_P_label'
       3903 | #define DT_CAT3(a1, a2, a3) a1 ## a2 ## a3
            |                             ^~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:607:32: note: in expansion of macro 'DT_CAT3'
        607 | #define DT_PROP(node_id, prop) DT_CAT3(node_id, _P_, prop)
            |                                ^~~~~~~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:766:27: note: in expansion of macro 'DT_PROP'
        766 | #define DT_LABEL(node_id) DT_PROP(node_id, label) __DEPRECATED_MACRO
            |                           ^~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:28:35: note: in expansion of macro 'DT_LABEL'
         28 | #define CONFIG_HPMA115S0_DEV_NAME DT_LABEL(HPMA115S0)
            |                                   ^~~~~~~~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/sys/util_internal.h:105:36: note: in expansion of macro 'DT_N_INST_0_honeywell_hpma115s0'
        105 | #define UTIL_PRIMITIVE_CAT(a, ...) a##__VA_ARGS__
            |                                    ^
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/sys/util_internal.h:104:26: note: in expansion of macro 'UTIL_PRIMITIVE_CAT'
        104 | #define UTIL_CAT(a, ...) UTIL_PRIMITIVE_CAT(a, __VA_ARGS__)
            |                          ^~~~~~~~~~~~~~~~~~
      /Users/quark11/Documents/aqw-test/zephyr/include/zephyr/devicetree.h:326:31: note: in expansion of macro 'UTIL_CAT'
        326 | #define DT_INST(inst, compat) UTIL_CAT(DT_N_INST, DT_DASH(inst, compat))
            |                               ^~~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:27:19: note: in expansion of macro 'DT_INST'
         27 | #define HPMA115S0 DT_INST(0, honeywell_hpma115s0)
            |                   ^~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:28:44: note: in expansion of macro 'HPMA115S0'
         28 | #define CONFIG_HPMA115S0_DEV_NAME DT_LABEL(HPMA115S0)
            |                                            ^~~~~~~~~
      /Users/quark11/Documents/aqw-test/demo/basic/src/main.c:61:21: note: in expansion of macro 'CONFIG_HPMA115S0_DEV_NAME'
         61 |         .dev_name = CONFIG_HPMA115S0_DEV_NAME,
            |                     ^~~~~~~~~~~~~~~~~~~~~~~~~
      [120/268] Building C object zephyr/kernel/CMakeFiles/kernel.dir/init.c.obj
      ninja: build stopped: subcommand failed.
      FATAL ERROR: command exited with status 1: /Users/quark11/.zephyrtools/cmake/cmake-3.22.0-macos-universal/CMake.app/Contents/bin/cmake --build /Users/quark11/Documents/aqw-test/demo/basic/build
      
       *  The terminal process "/usr/local/bin/bash '-c', 'west build -b circuitdojo_feather_nrf9160_ns -p'" terminated with exit code: 1. 
       *  Terminal will be reused by tasks, press any key to close it. 

      I’m pretty keen to get build AQW for Zephyr successfully so that I can proceed to order the aqw / sensor hardware. Appreciate your help!

        zpm1066 thanks for the info!

        I actually had the upgrade work in another branch that I forgot to push to main. If you run Zephyr Tools: Update Dependencies that should get you to the latest!

        Also, you’ll need to do a git pull in the demo repo before you do that update.

          jaredwolff

          Success! A git pull in the demo repo, followed by a Zephyr Tools: Update Dependenciesdid the trick. Thank you.

          I’m able to build the AQW examples for particle_xenon and circuitdojo_feather_nrf9160_ns. I’ve also flashed the examples onto particle_xenon using a Segger Edu Mini jlink. For the basic example, I’m able to see the console debug output and for the ble example, I was able to connect via bluetooth. All good stuff!

          I was also able to switch between west-ncs.yml (NCS 2.3) and west-vanilla.yml (Zephyr 3.3.99) using

          west config manifest.file west-ncs.yml (west config manifest.file west-vanilla.yml)
          west update

          Question - How do the AQW examples know where to pull in the AQW library?
          How does the AQW library gets built?
          Appreciate if you direct me to appropriate area of build / code. Thank you!

          To assist anyone else who may be having issues building AQW fro Zephyr, here’s additional steps that may help you.

          Initially, I setup AQW for Zephyr with assistance from Jared. Yesterday, I repeated, the AQW build for Zephyr on macOS Catalina, and was able to build the AQW examples successfully.

          jaredwolff The nrf9160feather setup works cleanly without any additional changes. It would be good to have the same for AQW at some stage.

          AQW build for Zephyr
          
          1. SDK Setup - download Circuit Dojo Zephyr SDK Tools and install
          
          2. Run Setup - Open command window in VSCode and type Zephyr Tools: Setup
          
          3. Create an empty folder for AQW repo, for example "aqw-demo"
          
          4. Initialize the repo using the Zephyr Tools:Init Repo command
          
          5. Make sure you use https://github.com/circuitdojo/air-quality-wing-zephyr-demo.git as the URL
          
          6. If you get a manifest-tmp error (as currently 04/15/23), move manifest-tmp to aqw-demo folder and rename io demo
          
          7. In aqw-demo/.west, create config file
          
          	[manifest]
          	path = demo
          	file = west-ncs.yml
          
          	[zephyr]
          	base = zephyr
          	
          8. There are two yml files in aqw-demo/demo, west-ncs.yml for Nordic NCS, and west-vanilla.yml for generic Zephyr
          
             west-ncs.yml - Change revision to v2.3.0 to the currently latest Nordic NCS
             

          west-vanilla.yml - Change revision to the latest Zephyr if desired, currently v3.3.0

          9. In VSCode Explorer window, select the demo folder & right-click and select "Open in integrated Terminal"
          From within the demo repo terminal window, run "git pull" to get the latest aqw repo updates 10. In VSCode Explorer window, select the .west folder & right-click and select "Open in integrated Terminal" From within the .west terminal window, run "west update" to update the zephyr repo.

          11. Run (macOS: Shift + Cmd + P) Zephyr Tools:Change Board - Select particle_xenon Current supported board targets include:
          particle_xenon circuitdojo_feather_nrf9160_ns nrf52840dk_nrf52840 12. Run Zephyr Tools:Change Project - Select project, for example "basic" 13. Run Zephyr Tools:Init Repo, navigate to the aqw-demo folder You may get prompted to update "pip", run: pip install --upgrade pip from a .west terminal window
          14. Run Zephyr Tools:Build Once the build completes you should get a "Build complete!" popup along with success messages in the the terminal. 15. Code may be flashed using a link probe, for example, Segger Edu Mini (preferable for debugging & Segger RTT) Alternatively, place the device into bootloader mode, then load using the Zephyr Tools: Load via Bootloader task.

          Switching repo from NCS (west-ncs.yml) to vanilla Zephyr (west-vanilla.yml) 1. From a VSCode .west terminal window, run the following comamnds to switch from NCS to vanilla zephyr. west config manifest.file west-vanilla.yml west update After executing the above commands, aqw-demo/.west/config will get modified to use "file = west-vanilla.yml".
          The zephyr repo can be switch back to using NCS by running the following.
          west config manifest.file west-ncs.yml west update
          ```

            One more thing …

            How do I attach an image to a post from a macOS. I tried using both Safari and Chrome, no luck.

            When I click the “Add an image” icon, I do not get adoption to browse and select an image to upload.

            What am I doing wrong? Thanks.

              zpm1066 When I click the “Add an image” icon, I do not get adoption to browse and select an image to upload.

              I usually drag into the chat box. Not sure why your dialogue is not opening. I use the forum both on Firefox and Safari.

              zpm1066 It would be good to have the same for AQW at some stage.

              Thanks for the suggestions zpm1066. I’ll add it to my list!

                jaredwolff

                Which version of macOS and Safari are you using? I’m using macOS Big Sur and Catalina.

                I’ve tried dragging an image into the chat box, all I get is the full path to the file displayed.

                /Users/quasar1015/Desktop/test.png

                or if I click on the “Add an image” icon, I get the cursor between the brackets [].

                ![](https://)

                Weird!

                The latest ones as far as I can tell. Make sure you have JS enabled.

                  jaredwolff

                  I’ve installed a fresh instance of the latest Firefox but get the same issue. So far, I’ve tried Safari, Chrome, and Firefox on macOS (Monterey, Big Sur, Catalina) and Windows 10 and 11 from three several Macs & Windows machines.

                  JS is enabled and pop-ups are allowed. I don’t have issues uploading images on community forums at particle.io, platformio.org and other forums.

                  Just weird and little frustrating!

                  I didn’t see anything in the forum settings that I needed to change.

                  Is there anyone I can reach out to who run your community forum? Thanks.

                  Terms and Conditions | Privacy Policy