Skip to content

Cart

Your cart is empty

VS Code and the Modern Embedded Workflow
AbsInt

VS Code and the Modern Embedded Workflow

Visual Studio Code has become a preferred development environment for many embedded software teams thanks to its flexibility, lightweight design, and extensive extension ecosystem. However, as embedded projects grow in complexity, writing code is only part of the challenge. Teams must also ensure software quality, compliance, test coverage, and verification while still meeting aggressive release schedules. The challenge is that many of these activities are still performed later in the development lifecycle, where defects become significantly more expensive to resolve. Industry studies have shown that software defects discovered during integration or system testing can cost up to 10x more to fix than those identified during development. For this reason, many organizations are shifting verification activities earlier in the software lifecycle to reduce project risk, improve quality, and avoid costly rework. Rather than forcing developers to abandon their preferred development environment, a modern VS Code-based workflow allows quality and verification activities to be integrated directly into day-to-day development. Developers can use Keil MDK to build and debug Arm Cortex-M applications while continuing to work within a familiar VS Code environment. Powered by Arm Compiler and the CMSIS ecosystem, Keil MDK provides optimized code generation, comprehensive device support, and advanced debugging capabilities specifically designed for Arm-based systems. This enables teams to accelerate development while building on a trusted toolchain widely used across safety, industrial, automotive, and IoT applications. Coding standards compliance is often another source of engineering effort, particularly for projects operating under safety, security, or regulatory requirements. QA MISRA helps identify coding standard violations as code is written, allowing issues to be corrected before formal reviews begin. Organizations that introduce coding standards verification earlier in development often report reduced review effort, improved code consistency, and fewer compliance related surprises during audits and certification activities. With the QA·MISRA extension integrated directly into VS Code, developers can identify violations and receive feedback within the editor, helping them address issues before they become larger development or compliance challenges. Static analysis provides another opportunity to identify defects before they become schedule impacting problems. AbsInt Astrée analysis tools help detect runtime anomalies, stack usage concerns, and software defects before code reaches target hardware. Finding issues during development rather than during integration testing can substantially reduce debugging effort while improving software reliability and reducing verification risk. Similar to QA MISRA, Astrée integrates with VS Code and highlights analysis results directly within the development environment, enabling engineers to identify and resolve issues earlier in the software lifecycle. Verification through testing remains equally important. QA Systems Cantata enables automated unit and integration testing for C and C++ applications, helping teams continuously verify functionality throughout development. Studies have shown that automated testing can reduce manual test execution effort by 30–50% while improving repeatability, coverage, and traceability. For organizations operating in regulated industries, automated testing also helps generate evidence required for standards such as ISO 26262, IEC 61508, IEC 62304, and DO-178C. With Cantata's VS Code integration, developers can generate test cases, execute tests, and review code coverage directly within their development environment, helping teams build quality into the software lifecycle from the start. Modern development workflows increasingly rely on CI/CD pipelines to improve efficiency, consistency, and software quality. VS Code integrates seamlessly with source control and automation platforms, making it easier to manage branches, reviews, builds, testing, and deployments. When combined with tools such as Keil MDK, QA·MISRA, AbsInt, and Cantata, teams can automate quality checks, compliance verification, static analysis, compilation, and testing throughout the development lifecycle. This unified workflow improves traceability, strengthens collaboration between development and quality teams, and helps identify issues earlier, reducing the risk of costly late-stage defects while providing greater confidence that software meets quality, security, and compliance requirements before release.   Together, VS Code, Keil MDK, QA MISRA, AbsInt, and Cantata support multiple stages of the embedded software V-model from implementation and debugging through compliance, static analysis, testing, and verification. The result is not simply better tooling, but a more predictable development process, fewer escaped defects, reduced rework, and higher confidence in software quality before release. Interested in learning how these tools can fit into your development workflow? Reach out to Hrutik Champaneri at hrutik.champaneri@joraltechnologies.com to discuss your project requirements, compliance goals, or embedded software development challenges.   Explore our VS Code Ecosystem page to discover tools for embedded development, static analysis, MISRA compliance, automated testing, and CI/CD integration, all within a modern VS Code workflow.  

Learn more
Understanding KEIL MDK User-Based Licensing (UBL) and Its Benefits
KEIL

Understanding KEIL MDK User-Based Licensing (UBL) and Its Benefits

Perpetual licenses have been a trusted option for Keil MDK users for many years. However, as development environments become more connected and automated, Keil MDK User-Based Licensing (UBL) offers additional flexibility for modern development teams.   Why consider UBL?   User-based access – Licenses are assigned to users rather than individual machines, making it easier to work across multiple approved systems.   Supports modern development workflows – Integrates well with CI/CD pipelines, automated build environments, and distributed development teams using Keil MDK.   Designed for VS Code and modern IDE workflows – Enables engineers to take advantage of today's development ecosystem, including VS Code extensions, AI-assisted coding tools, and productivity-enhancing integrations while continuing to use Keil development tools.   Simplified license management – Provides administrators with greater visibility and control over license allocation and usage across engineering teams.   Access to the latest Arm tools – Includes current Arm development tools such as Arm Compiler for Embedded (Arm Compiler 6), along with ongoing updates and enhancements.   Legacy toolchain support – UBL Professional also provides access to older Arm toolchains when maintaining existing products and long-term projects.   Perpetual licenses remain a valid option for many projects, but for organizations adopting modern development practices, Keil MDK UBL offers a flexible licensing model aligned with today's engineering workflows.   Get Started with Keil MDK UBL    

Learn more
ARCHITECTURE OF TRUST: STRENGTHENING SECURITY IN MODERN CORTEX-M SYSTEMS
ARM

ARCHITECTURE OF TRUST: STRENGTHENING SECURITY IN MODERN CORTEX-M SYSTEMS

As embedded devices continue to expand into connected and safety-critical applications, security has become a fundamental design requirement rather than an optional feature. From industrial controllers and medical devices to automotive and IoT systems, developers must address increasingly sophisticated threats while maintaining performance and reliability.   Modern Arm Cortex-M processors have evolved significantly to meet these challenges. While earlier Cortex-M architectures provided strong performance and low-power operation, newer generations introduce hardware enforced security features designed to protect software, data, and system resources from both accidental faults and malicious attacks.   One of the most significant advancements is TrustZone for Arm Cortex-M, which enables the separation of applications into Secure and Non-Secure environments. By isolating sensitive assets such as cryptographic keys, authentication services, and security-critical firmware, TrustZone helps reduce the attack surface and limits the impact of compromised software components.   Recent Cortex-M architectures further strengthen security through features such as Stack Limit Registers, PAN (Privileged Access Never), PXN (Privileged Execute Never), Pointer Authentication and Branch Target Identification (PACBTI), enhanced Memory Protection Unit (MPU) capabilities, and secure gateway mechanisms. Together, these technologies help mitigate common attack vectors including stack overflows, code injection, privilege escalation, control-flow hijacking, and cross-domain attacks.   These hardware assisted protections are particularly valuable as embedded systems become increasingly connected and exposed to external threats. Security mechanisms that were once implemented primarily in software can now be enforced directly by the processor, improving both robustness and system resilience.   As cybersecurity requirements continue to evolve, modern Cortex-M security features provide developers with practical tools to implement a defense in depth strategy. By combining hardware isolation, memory protection, privilege controls, and control-flow integrity mechanisms, organizations can build more secure and trustworthy embedded systems for the next generation of connected devices.   To learn more about the security features discussed in this article, watch the full webinar here.

Learn more
CMSIS Debugger: KEIL MDK V6 User Based License
KEIL

CMSIS Debugger: KEIL MDK V6 User Based License

The CMSIS Debugger is a next generation, standards based debugging solution designed to integrate seamlessly into modern embedded development workflows. Built on the trusted CMSIS (Cortex Microcontroller Software Interface Standard) ecosystem, it delivers powerful debugging, trace and analysis capabilities for Arm Cortex-M based devices.   👉 You can find the CMSIS Debugger extension directly in the VS Code Extensions Marketplace, or download it from this link: CMSIS Debugger Extension   ·  Seamless Integration: CMSIS Debugger plugs directly into popular IDEs like Keil MDK, VS Code, and other CMSIS-based workflows. Start debugging without the hassle of extra setup.   ·         Single & Multi-core Support: Offers robust debugging for both single-core and complex multi-core processor systems.   ·         RTOS Awareness: Native support for FreeRTOS, RTX, ThreadX, and Zephyr ensures visibility into tasks, threads, and real-time performance.   ·         Wide Adapter Compatibility: Works with a broad range of debug adapters including ULINK, MCULink, NuLink, J-Link, and ST-Link.   ·         Unified Workflow: Works closely with the CMSIS Toolbox and CMSIS Pack system, simplifying device configuration, board selection, and debug initialization.   ·         Advanced Debug Features: Provides real-time trace, easy code stepping, and comprehensive register/memory inspection across thousands of supported microcontrollers.   ·         Open-Source & Extensible: Fully open-source, it can be combined with other VS Code debug extensions (e.g., Linux application debugging) and extended for domain specific use cases.   ·         Automation & CI/CD Ready: Combined with Arm Virtual Hardware (AVH), CMSIS Debugger enables cloud-based workflows, automated testing, and DevOps pipelines without requiring physical hardware.   The CMSIS Debugger empowers developers to accelerate embedded software development with a flexible, standardized, and powerful debug experience. Whether in early prototyping, safety critical validation, or large-scale CI/CD environments, it ensures consistent results and faster time to market.       To purchase, KEIL MDK V6 Essential User Based License 1 Year & KEIL MDK V6 Professional User Based License 1 Year   By: Hrutik Champaneri  

Learn more
New Arm Product Updates Available
KEIL

New Arm Product Updates Available

The following products have been updated: Product Code Product Version MDK000 Keil MDK (Keil Licensing) r5p42-01rel0 - MDK001 Keil MDK (FlexNet) r5p42-01rel0 -

Learn more
JORAL Technologies is in South America
Announcement

JORAL Technologies is in South America

Exciting News for JORAL Technologies Customers!We are now an authorized distributor for ARM KEIL in the following countries:   Argentina, Brazil, Canada, Chile, Colombia, Ecuador, Mexico, Paraguay, Peru, United States, Uruguay, and Venezuela.   If you have any questions or need assistance, please don’t hesitate to contact our Sales team.   Alice Campbell Email: alice.campbell@joraltechnologies.com Phone:613-218-8425   Robert Campbell Email: robert.campbell@joraltechnologies.com Phone:613-218-8425

Learn more
The Essential How-To Guide for ARM KEIL MDK Users
KEIL

The Essential How-To Guide for ARM KEIL MDK Users

This guide provides instructions for installing ARM Keil MDK, activating User-Based Licenses, managing toolchains in µVision, and accessing key resources in the Arm Technical Library.   CLICK HERE:  KEIL MDK & UBL CHEATSHEET   Any questions, please contact Steve Short. Email: stephen@joraltechnologies.com Phone; 613-215-3252

Learn more
ARM KEIL MDK Version 6 | UBL is available now!
Announcement

ARM KEIL MDK Version 6 | UBL is available now!

The Keil Microcontroller Development Kit (Keil MDK) is the most comprehensive software development solution for Arm Cortex-M-based embedded, IoT, and ML edge device applications. With support for over 10,000 different microcontrollers from 38 different silicon vendors available today it is an critical part for many software projects

Learn more