Skip to content

Latest commit

 

History

History
56 lines (40 loc) · 1.84 KB

README.md

File metadata and controls

56 lines (40 loc) · 1.84 KB

Zephyr Module

ucxclient can be used as a Zephyr module for easy integration to your Zephyr application.

Adding ucxclient to Your Zephyr App

There are several ways of including ucxclient to your Zephyr application.

Using west.yml manifest

If you use a west.yml manifest for your application then you can add ucxclient as to the list of projects like this:

manifest:
  remotes:
    - name: zephyrproject-rtos
      url-base: https://github.com/zephyrproject-rtos
    - name: u-blox
      url-base: https://github.com/u-blox

  projects:
    - name: zephyr
      remote: zephyrproject-rtos
      revision: main

    - name: ucxclient
      remote: u-blox
      repo-path: ucxclient.git
      revision: master

There is a very useful Zephyr example app illustrating how to create folder structure etc for a Zephyr application using a west.yml manifest file available here:
https://github.com/zephyrproject-rtos/example-application

Using ZEPHYR_MODULES CMake Variable

With this method you need to clone ucxclient manually or use git submodule or similar. After that you need to add the path of ucxclient to the ZEPHYR_MODULES CMake variable. This can be done in several ways as described here:
https://docs.zephyrproject.org/latest/develop/modules.html#without-west

Config

To build ucxclient with your Zephyr application you must add the following to your prj.conf:

CONFIG_SERIAL=y
CONFIG_UART_INTERRUPT_DRIVEN=y
CONFIG_RING_BUFFER=y
CONFIG_UCXCLIENT=y

The current Zephyr port only support the interrupt driven UART API.

Further configuration of ucxclient are also possible. Use menuconfig to view and configure these.