How SysConfig jump-starts embedded system development

Other Parts Discussed in Post: SYSCONFIG, Z-STACK

One of the significant challenges for embedded systems developers is how to efficiently and accurately configure their systems. Today’s advanced microcontrollers (MCUs) include a variety of processor cores, hardware accelerators, advanced radios, sophisticated peripherals and interfaces, and come in packages with elaborate pin multiplexing schemes.

Software examples from many semiconductor suppliers can provide a starting point for embedded designs, but developers typically have to make modifications to various parameters, events and variables in order to optimize the software for a specific application. These modifications often entail reviewing many pages of technical documentation to identify and update specific registers or lines of source code. Such manual modifications can be error-prone given the complexity of the code sequences and variety of naming conventions. The number of updates may grow exponentially as well, depending on the number of options a given software component supports and the number of options used by the desired application. Manual updates can also introduce resource conflicts that aren’t detected until much later in the build process, leading to frustration and potentially multiple wasted iterations.

To help simplify configuration challenges and accelerate software development, TI created SysConfig, a unified software configuration tool with an intuitive and comprehensive collection of graphical utilities for configuring pins, peripherals, radios, subsystems, and other components. SysConfig helps you manage, expose and resolve conflicts visually so that you have more time to create differentiated applications.

SysConfig displays all configurable parameters in a graphical user interface with configuration options in drop-down lists. As you interact with SysConfig, mouse overs, tool tips and visual cues guide you toward a valid configuration. Contextual documentation is embedded directly within the interface, and relevant documentation and definitions are exposed and linked within the tool, giving you the right information to help you configure your software when you need it. You no longer have to search through numerous documents and lines of source code trying to figure out how to update a parameter; instead, you can quickly create your initial configuration and spend more time innovating within your application, with TI LaunchPad™ development kits or your own custom hardware.

SysConfig is intelligent. Board views for LaunchPad development kits show the pins used on the board as well as the expansion headers shown in Figure 1. SysConfig understands what pins and resources the application is already using and can help auto-solve potential conflicts as you enable and configure additional components. For example, if you were to add in an analog-to-digital converter (ADC) instance to the project, SysConfig will find and assign the next available ADC peripheral and pin automatically. It is easy to add resources using the plus sign, with drop-down menus helping organize the available options. Color coding helps indicate conflicts, shared resources, and successful allocations.

Figure 1: An example LaunchPad development kit board view

SysConfig’s device view is useful for custom hardware development with a similar level of information. Software views, such as the one shown in Figure 2 for Z-Stack configuration, provide a comprehensive view of configurable parameters. A list of options is displayed for each parameter (Zigbee device type in this example). The default setting is being changed from Zigbee Connector to Zigbee End Device with a simple mouse click. Hover over the “?” icon with a mouse and additional details on these parameters will be displayed while the newly updated software will be shown in the preview pane. With this initial release, SysConfig supports the configuration of pins and drivers for most SimpleLink™ MCUs, including the configuration of radio-frequency (RF) parameters and stacks for wired and wireless communication technologies like Wi-Fi®, Ethernet, Bluetooth®, Zigbee®, Thread, 15.4 and EasyLink. It also supports multiprotocol configuration. You can easily update the default settings to quickly find the optimal combination of RF and stack settings for your use case. You can also export the parameters to other TI tools, including TI’s Smart RF™ Studio, for further testing and tuning. 

Figure 2: An example stack configuration view

SysConfig is now available in TI’s Code Composer Studio™ integrated development environment (IDE) for both desktop and cloud. It is also available as a stand-alone tool for use with other IDEs, including IAR Embedded Workbench for Arm® processors.

SysConfig’s capabilities will continue to expand over time. The tool will follow the quarterly release cadence of the SimpleLink software development kit, introducing new features and capabilities to continue improving developer efficiency.

Additional resources

Watch our Connect video series on SysConfig:

Access the SysConfig tool folder

Parents Comment
  • Naasik,

    If you can start a thread on the e2e forums we can help you figure out what is going on.  SysConfig should not be generating duplicate files but if you already have files in your project that are doing pinmux or driver config then the files that SysConfig is generating would conflict with those.



No Data