Introduction
Search…
Digi Board
This demo demonstrates the Uniquid Identity and Access Management SDK using the uidcore-c library on ConnectCore 6UL SBC Express Digi board.

Requirements

  • Ubuntu 14.04+ with standard development tools
  • cmake to compile new firmware
  • Digi ConnectCore 6UL SBC Express with internet connection (link)
  • some software packages from digi.com (next steps)
  • libcurl
  • libpthread (usually already installed)
You will need two files created when you run the uniquid deploy aws command. You can choose tu run the below steps in the same environment of the deploy or you will need to copy these two files on your development environment running command:
1
scp -i <user-key-pair.pem> [email protected]<ec2-instance-ip-address>:/aws_device_cfg.json .
2
scp -i <user-key-pair.pem> [email protected]<ec2-instance-ip-address>:/caChain-xxxxxxxxxxxxxx.crt .
Copied!

Install Prerequisites

Install these packages on your machine
1
sudo apt install cmake
2
sudo apt install libcurl4-openssl-dev
Copied!

Setup of the board

For a more detailed documentation on the board setup please refer to the DIGI web site

Setup of Development Environment

  1. 1.
    download the toolchain installer from the Digi support page
    1
    wget ftp://ftp1.digi.com/support/digiembeddedyocto/2.4/r1/sdk/ccimx6ulstarter/fb/dey-glibc-x86_64-core-image-base-cortexa7hf-neon-toolchain-2.4-r1.sh
    Copied!
  2. 2.
    give execution permission to the installer
    1
    chmod +x dey-glibc-x86_64-core-image-base-cortexa7hf-neon-toolchain-2.4-r1.sh
    Copied!
  3. 3.
    install the toolchain on your host PC
    1
    ./dey-glibc-x86_64-core-image-base-cortexa7hf-neon-toolchain-2.4-r1.sh
    Copied!
  4. 4.
    source the environment setup script, run this command each time you wish to use the SDK in a new shell session
    1
    . /opt/dey/2.4-r1/environment-setup-cortexa7hf-neon-dey-linux-gnueabi
    Copied!

Download and build the demo source code on host PC

  1. 1.
    clone the demo repo two options:
    1. 1.
      1
      git clone https://github.com/uniquid/dev-demos.git
      Copied!
    2. 2.
      1
      git clone [email protected]:uniquid/dev-demos.git
      Copied!
  2. 2.
    change directory
    1
    cd dev-demos/DIGI-CC-6UL-SBC-Express
    Copied!
  3. 3.
    download and patch the dependancy
    1
    make clone_repo
    Copied!
  4. 4.
    build the project, the binaries created by this command will be put on the bin directory
    1
    make
    Copied!
make sure that the environment setup script has been sourced

Transfer the executables on the board

  1. 1.
    power on the board using the provided USB cable
  2. 2.
    connect to the board using a serial terminal emulator (115200N81) or ssh
  3. 3.
    create the demo directory under /home/root
    1
    cd /home/root
    2
    mkdir demo
    Copied!
  4. 4.
    transfer all the content of the bin directory from the host PC to the /home/root/demo directory on the board using scp
    1
    cd dev-demos/DIGI-CC-6UL-SBC-Express
    2
    scp -r bin/* [email protected]<ipaddress>:~/demo
    Copied!

Copy certificate and configuration files

Copy in the demo directory the configuration file (aws_device_cfg.json) and the root CA for the mqtt broker (caChain-xxxxxxxxxxxxxx.crt) from your host PC to the board:
1
cd path/of/files
2
scp aws_device_cfg.json [email protected]<ipaddress>:~/demo
3
scp caChain-xxxxxxxxxxxxxx.crt [email protected]<ipaddress>:~/demo/rootCA.crt
Copied!
both these files has been generated by the uniquid deploy aws command you run some steps ago.

Run

  1. 1.
    connect to the board over terminal emulator or ssh and go to the demo directory
    1
    cd /home/root/demo
    Copied!
  2. 2.
    run the demo
    1
    ./S99uniquid-demo start
    Copied!
    if you want to run the demo at the board boot copy the above script into the /etc/rc5.d directory
    1
    cp /home/root/demo/S99uniquid-demo /etc/rc5.d
    Copied!
  3. 3.
    you can check the log running tail command
    1
    tail -f /var/log/uniquid-demo
    Copied!
  4. 4.
    to allow the board to publish the led status on aws IoT you have to create a contract between the board (user) and the authorizer (provider)
  5. 5.
    check here for published messages (please note that the link provided is for the us-east-2 AWS region, you may need to switch to the one you have defined on aws configure)
  6. 6.
    you can use the button on the board to switch on/off the led status
To remotely interact with the board you have to install the related application.
Last modified 2yr ago