7. Software Development Tools

7.1. SmartSnippets™ Introduction

Dialog SmartSnippets™ Studio is a royalty-free software development platform for Smartbond™ devices. It fully supports the DA1469x family of devices.

SmartSnippets™ Studio contains:

  • SmartSnippets™ IDE: Eclipse CDT based IDE with pre-configured plugins to provide the build/debug environment

  • SmartSnippets™ DA1469x SDK

  • SmartSnippets™ Toolbox: A tool suite covering all software development requirements, including:

    • Programming and loading of firmware into integrated RAM, OTP and Flash

    • Power profiling

  • SmartSnippets™ Documentation

The SmartSnippets™ IDE is enabled by an on-board J-Link debugger from SEGGER. This offers standard debug capabilities such as single stepping, setting breakpoints, software download and many more. For more details on the debugger capabilities, visit https://www.segger.com/.

7.2. SmartSnippets™ Studio Installation and Starting

This section describes the installation of SmartSnippets™ Studio. For further reading the installation procedure is described in detail in UM-B-057 SmartSnippets Studio User Manual.

Note

  • The SmartSnippets™ Studio version should be 2.0.8 and above if you wish to use Eclipse/GCC.

  • Registration is required in order to download the SmartSnippets™.

Warning

Please be aware that if you have an Antivirus software is installed in your machine, it could slow down the SmartSnippets™ Studio installation due to the scan.

7.2.1. Windows

Run the SmartSnippets™ Studio installer (.msi). Several of the required tools will automatically install and others need to be manually downloaded and installed.

  • Select the recommended version or a newer one from of SEGGER J-Link GDB server and Click Next.

  • Select the destination folder for the SmartSnippets™ Studio and click “Next”. The default installation location C:/DiaSemi is recommended

../_images/Software_Development_Tools_02.jpg

Figure 14 Select Smart Snippets Studio install directory

  • The installation of the SmartSnippets™ Studio will then start.

  • After the successful installation of the SmartSnippets™ Studio next screen will appear.

../_images/Software_Development_Tools_24.jpg

Figure 15 Smart Snippets Studio installation completed

  • Click Finish and wait for the SmartSnippets™ Studio to start.

When SmartSnippets™ Studio starts for the first time, the user must configure it. The necessary configurations are the following:

  • Select the workspace folder for SmartSnippets™ Studio. This should be the created directory inside workspace_SmartSnippets_Studio.

  • All the other tools required by the SDK and SmartSnippets™ Studio will be automatically installed, such as GNU ARM GCC, SmartSnippets Toolbox, SEGGER drivers etc. On a clean PC they will probably not be there and so the next steps are to download and install them.

../_images/Software_Development_Tools_03.jpg

Figure 16 SDK Tools Summary

  • Tick the download and install radio button and then press Download button for SEGGER Ozone tool

  • This will install the tool to C:\Program Files (x86)\SEGGER\Ozone V2.60c. Then press Next.

Note

  • Users are required to download and install tools marked as mandatory by clicking the download button or specifying an installation folder if the tool is already installed externally. Some tools can be optional, in which case Skip button will show

  • The Next button is enabled only after the mandatory tools are successfully installed or a valid installation path is specified.

../_images/Software_Development_Tools_07.jpg

Figure 17 Start Ozone download

  • Then, the installer will guide user to install SEGGER JLink version 6.42b or later. They are available from the SEGGER website Refer to Figure 18

  • The SDK Tools Installer will prompt for the installation of GCC. Select Download and install the required version and click Download. After the download is complete, the green completion mark appears. Then press the Next button to continue as shown in Figure 19.

../_images/Software_Development_Tools_26.jpg

Figure 19 GCC Tools Installation

  • The SDK Tools Installer will prompt for the installation of SEGGER SystemView, Refer to Figure 20

../_images/Software_Development_Tools_00.jpg

Figure 20 SEGGER SystemView Tool Installation

  • The last page of the wizard shows a summary of all installed tools. Installation of optional tools can be skipped in the wizard. The user’s choice to skip an optional tool is remembered by SmartSnippets™ Studio so that the wizard does not ask again for the installation of this tool the next time the wizard is launched.

../_images/Software_Development_Tools_23.jpg

Figure 21 Installed tools summary

7.2.2. Linux

Before running the installer, it is necessary to install some Linux packages that are mandatory for the execution of SmartSnippets™ Studio. Without them SmartSnippets™ Studio will not run correctly but will fail with no reported error.

  • For CentOS 7:

    sudo yum install install epel-release

    sudo yum install webkitgtk.x86_64

    sudo yum install glibc.i696 ncurses-libs.i696

    sudo yum install qt-x11 (required for SystemView tool)

  • For Fedora 25:

    sudo yum install webkitgtk.x86_64

    sudo yum install glibc.i696 ncurses-libs.i696

    sudo yum install gcc-c++

    sudo yum install libncurses.so.5

  • For Ubuntu 16.04.1 install:

    sudo apt-get install libz1:i386 libncurses5:i386 libbz2-1.0:i386

    sudo apt-get install libwebkitgtk-1.0-0 libwebkitgtk-3.0-0

    sudo apt-get install gawk

  • The first step is to make the SmartSnippets™ Studio installer executable.

  • $chmod a+x SmartSnippets_Studio-linux.gtk.x86_64-1.6.3.run

  • And then run it.

  • $./SmartSnippets_Studio-linux.gtk.x86_64-1.6.3.run

  • Several of the required tools will automatically install and others need to be manually downloaded and installed.

  • Install the recommended version of SEGGER J-Link GDB server. The V6.14h version will be installed by default. If you have recent SEGGER J-Link version you have just to select the path where it is already installed, as shown in Figure 26

  • Select the destination folder for the SmartSnippets™ Studio

../_images/Software_Development_Tools_13.jpg

Figure 23 Select SmartSnippets™ Studio install directory

  • The installation of the SmartSnippets™ Studio will then start.

  • After the successful installation of the SmartSnippets™ Studio click Finish on the next screen that will appear and wait for the SmartSnippets™ Studio to start.

  • When SmartSnippets™ Studio starts it will check which SEGGER tools are installed. On a clean PC they will probably not be there and so the next steps are to download and install them

../_images/Software_Development_Tools_14.jpg

Figure 24 SDK Tools Summary (Linux)

  • Tick the download and install radio button and then press Download button for SEGGER Ozone tool. The download will then start and the SEGGER Ozone tool will be installed automatically. This will install the tool to /opt/SEGGER/ozone/2.60c. Use the Browse button to find this folder and then press Next.

../_images/Software_Development_Tools_18.jpg

Figure 25 Set the Ozone installation directory

  • Then, the installer will guide user to install SEGGER JLink.

  • Then, the installer will guide user to install GCC. Browse button to find this folder and then press Next.

../_images/Software_Development_Tools_198.jpg

Figure 27 GCC Installation directory

  • The final stage is to install SEGGER SystemView.

../_images/Software_Development_Tools_199.jpg

Figure 28 SEGGER SystemView Installation directory

The last page of the wizard shows a summary of all installed tools. Installation of optional tools can be skipped in the wizard. The user’s choice to skip an optional tool is remembered by SmartSnippets™ Studio so that the wizard does not ask again for the installation of this tool the next time the wizard is launched.

../_images/Software_Development_Tools_200.jpg

Figure 29 Installed tools summary under Linux

7.3. Package structure and Folders

The directory structure of the SDK is shown in Figure 30.

../_images/directory.svg

Figure 30 Software SDK Directory Structure (on Windows)

7.4. Extracting and using the SDK

As SmartSnippets™ Studio is an Eclipse based Integrated Development Environment (IDE) all the source files are contained within a workspace folder which contains all the project sources, build configurations etc.

In the user directory (Windows or Linux) create a directory called workspace_SmartSnippets_Studio.

Extract the contents of the SDK zip file to the workspace folder.

Warning

When selecting the SDK directory in the The SmartSnippets™ Studio, please make sure to select the level with the name (i.e. DA1469x_SDK_10.x.y.z) otherwise the projects will not build. It must contain the contents of the directory as shown in Figure 30. This shows a Windows filesystem, the principle is the same for a Linux filesystem.

As the workspace is the same directory as the SDK it means that all edits to files in the workspace change the contents of the SDK. This means that all projects should be developed in different workspaces and so each workspace needs to be created with an extraction from the original SDK zip file as there is no longer a clean copy of the SDK on which to base new projects.

Note

In case the selected workspace does not correspond to a valid SDK and the user selected the “Take no action” option in the dialog asking how to treat the selected workspace Figure 31. Different level needs to be selected.

../_images/sdkw.jpg

Figure 31 No SDK selected error popup message

7.5. Additional Software

The SmartSnippets™ Toolbox, Figure 32, is focused on enabling the process of programming flash and optimizing code for optimal power performance by allowing:

  • The re-programming of the internal QSPI with the actual application compiled image.

  • An accurate examination of the power profile and the effects of any executed application software.

  • The seamless download and execution of a certain software image to RAM over UART.

../_images/toolbox.jpg

Figure 32 SmartSnippets™ Toolbox : Mode to download the application

SmartSnippets™ Toolbox is also supported by other utilities such as the Command Line Interface (CLI) Programmer. The CLI Programmer is a command line tool for programming the DA1469x family of devices. It allows erasing and programming the device Flash or OTP memory. This tool may be used both in development and on the production line. The CLI Programmer will be installed as an integrated part of the SmartSnippets™ DA1469x SDK.

The SmartSnippets™ framework makes maximum use of the available features on the main board like the on board current sensing circuitry to allow developers of Bluetooth applications to work without expensive and bulky equipment such as a Digital Multi Meter (DMM). The tool provides full visibility on the chip activity, which is crucial in the developing of ultra-low power wireless applications.