While the title may suggest an epic struggle, a competition, an either / or proposition, in the field of embedded software debug and test, Scripted and Interactive should be seen as complementary. Like the well worn adage, there is a time and place for each. VLAB gives users the opportunity to explore new ‘places’ at any time.

Interactive Debugging

Working with software in embedded environments has long suffered for lack of access leading to the need for expensive debug hardware and software. When it is in place, there is nothing quite like a modern debug client for interactively exploring code execution to understand code behaviour. That is why VLAB has been developed to support, without debug hardware, a number of industry leading debug clients that developers already use when working with hardware. To find out if your debugger of choice is supported have a look at the VLAB Works Ecosystem.

If for some reason, your debug license has lapsed or you are working with a new architecture and haven’t arranged a debug license, VLAB is an option. The VLAB IDE supports all of the basics that you would expect to interactively debug your code across multiple cores, regardless of hardware architecture. This however is not the feature that should excite those that use VLAB.

Scripted Debug and Test

Scripted control of debug and test is where VLAB can significantly enhance interactive debug and offer exciting new pathways in testing. 

Interactive debugging is normally like peeling an onion, including the tears! You take numerous steps to reveal a clue, before having to repeat the process to reveal the next puzzle piece. By introducing scripted debugging, the pain of interactively repeating numerous steps can be replaced by a simple script execution. Eliminating mis-steps and removing the need for interaction saves time and frustration, and leaves users able to focus on debugging.

image of an onion

… new paths to testing and debugging are where the real value lies.

New testing pathways is probably where the real value lies. Developing continuous integration tests that take advantage of VLAB scripted debugging is powerful yet simple to do. Execution control alongside the ability to stub or invoke target software functions, complemented with tracing and software analysis is all at hand. In the video below you can see this combination for yourself. For those who have a few minutes you will see how VLAB is able to, without modifying the target software:

  • Intercept calls to manipulate parameters
  • Invoke target software functions
  • Record and trace variables / memory of interest for validation and analysis

All without modifying the target software in a repeatable, scalable and deterministic environment.