Digi Embedded Yocto allows you to add your CCCS-enabled applications to your image:

1. Create a recipe for your application

The recipe for your application must:

  1. Depend on cccs:

    DEPENDS = "cccs"
  2. Inherit from pkgconfig to use the pkg-config file.

    inherit pkgconfig
  3. Include cccs-daemon package as a runtime dependency:

    RDEPENDS:${PN} = "cccs-daemon"

Digi Embedded Yocto includes some CCCS examples. See dey-examples-cccs.bb recipe.

SUMMARY = "My CCCS application"

[...]

DEPENDS = "cccs"

[...]

inherit pkgconfig

[...]

RDEPENDS:${PN} = "cccs-daemon"

[...]
This recipe does not include required resources to autostart the application on boot. To do so, review the cccs_git.bb recipe.

2. Define CCCS packages to add to the image

By default, cccs-gs-demo and dey-examples-cccs packages are included in the resulting images.

To include your ConnectCore Cloud Services packages with your custom applications, define CCCS_PKGS variable in your project’s conf/local.conf file. It must include a list with the CCCS-enabled application packages to install in the built image.

For example, to only include a custom package called cccs-example add the following to the conf/local.conf project file:

conf/local.conf
CCCS_PKGS = "cccs-example"

3. Set CCCS configuration

This step is optional and only necessary if you want to change the default configuration.

You can either:

See Configure ConnectCore Cloud Services for more information on the configuration file.

Set the device type

By default, Digi Embedded Yocto uses the value of MACHINE variable as the device type in the cccs.conf file.

To set a custom device type, define CCCS_DEVICE_TYPE variable in your project’s conf/local.conf file.

For example, use custom-device-type instead of ccimx8mn-dvk:

conf/local.conf
CCCS_DEVICE_TYPE = "custom-device-type"

Customize CCCS configuration

cccs.conf, the configuration file for ConnectCore Cloud Services daemon, sets up its behavior. The default file location is /etc/cccs.conf.

You may want to change the default configuration to, for example, Optimize device data traffic.

The daemon configuration can be established:

  • At runtime by modifying the cccs.conf file in the root file system of your device and then restarting the daemon.

  • At build time by appending your own configuration files to the cccs package.

To create images that include your own configuration file, define CCCS_CONF_PATH variable in your project’s conf/local.conf file. For example:

conf/local.conf
CCCS_CONF_PATH = "/home/user/my-cccs.conf"
Defining CCCS_DEVICE_TYPE variable has no effect when overwriting the configuration file.

4. Build your firmware images

Once the recipe is created and the project configured, you can:

Use these recipes or your own to create your firmware.