Hitex has a wealth of experience in all sorts of areas, you can find here some of the articles we have made available on LinkedIn and other platforms.

With the introduction of MDK-6 and the CMSIS toolbox build system there are now many examples hosted on github and other developer repositories. You may find that when you initially download and try an example it doesn’t build correctly. This Tech Tip looks at how to fix this vexing problem!

In the rapidly evolving world of Embedded Systems Development, the increasing use of ML has created the need to gather and process real-world data. The worlds of IoT and AI/ML both primarily concern themselves with data, and a lot of emphasis is placed upon its correct interpretation. Instead of developing processing models based on assumptions, real data from in-situ sensors can be used instead.

The CMSIS-Toolbox is a modern, flexible build system designed to develop applications for Arm Cortex-M microcontrollers. It enables developers to efficiently configure, build, and manage embedded software projects across multiple platforms, toolchains, and workflows.

The use of CMSIS layers provides a sophisticated method of managing a project across several different hardware and simulation platforms.

The CMSIS Toolbox specification provides a sophisticated build system which may be integrated into an IDE or used from a command line prompt. The CMSIS-Toolbox also contains new build features that enhanced project development.

The CMSIS-DSP (Cortex Microcontroller Software Interface Standard - Digital Signal Processing) library is a comprehensive source code library providing essential DSP algorithms tailored for all Cortex-M based microcontrollers

The use of CMSIS layers provides a sophisticated method of managing a project across several different hardware and simulation platforms. A strong example of this layered approach in action is the Keil Middleware components.

There are many tools out there for monitoring and diagnosis of industrial networks, most of them are quite expensive but can reduce downtime or even prevent it, but they are all limited without…

The MDK-6 extensions to VS-Code provide a fully featured IDE that allows a developer to write, build and debug code for Cortex-M based microcontrollers. In Addition, there are many features in the VS-Code IDE that enable more complex workflows and strong integration with local and cloud-based version control systems

Phytec have built a solder-down core that not only offers a choice of current processor technologies but also caters for future technologies.

The latest MDK-6 Professional (MDK-6 Pro) release brings with it a powerful functional safety runtime system—Keil FuSa RTS—designed to simplify and accelerate the development of safety-critical embedded applications.

CMSIS packs are at the heart of MDK and are a great way to include managed, standardised chunks of code and other resources into your project. The uses range from low-level silicon start-up code in Device Family Packs, through Board Support Packages to high-level protocols and services. There is no reason why you can’t benefit from adopting similar structures for your own needs. In fact, Open-CMSIS-Pack encourages this to promote software reuse.

CMSIS packs are at the heart of MDK and are a great way to include managed, standardised chunks of code and other resources into your project. The uses range from low-level silicon start-up code in Device Family Packs, through Board Support Packages to high-level protocols and services. There is no reason why you can’t benefit from adopting similar structures for your own needs. In fact, Open-CMSIS-Pack encourages this to promote software reuse.

CMSIS packs are at the heart of MDK and are a great way to include managed, standardised chunks of code and other resources into your project. The uses range from low-level silicon start-up code in Device Family Packs, through Board Support Packages to high-level protocols and services. There is no reason why you can’t benefit from adopting similar structures for your own needs. In fact, Open-CMSIS-Pack encourages this to promote software reuse.

The EU Cyber Resilience Act (CRA) introduces mandatory cybersecurity requirements for Internet of Things (IoT) devices and other digital products sold within the EU. It aims to improve the security of connected devices, reduce vulnerabilities, and protect users from cyber risks. Here’s a summary of the key requirements under the CRA:

The application of machine learning knowledge worldwide is increasing and there is a growing demand for compact and cost saving technology but at the same time maintaining high performance. The introduction of the i.MX 93 with the implemented Ethos-U65 microNPU meets these requirements and more.

Many embedded system engineers working with small microcontrollers are used to writing firmware in a bare metal devices without using any formal framework. In this tech tip, we will look at some of the key reasons you should consider using a small-footprint Real Time Operating System (RTOS).

Normally, once a CPU from a particular vendor has been selected for your project, to change to an alternative would result in a redesign of your board. We explain why that doesn’t always have to be the case.

The MDK V6 toolchain has introduced a new licensing model known as the "User-Based License" (UBL). This licensing method is more streamlined and user-friendly compared to the previous "Node-Locked" or “Floating” licenses. However, some users have reported encountering an "Unexpected error" after correctly installing the UBL license on MDK-5.

This Tech Tip will take you through installing and managing your MDK User-based License to generate and install an activation code within the supported toolchains and IDE

Keil’s µVision MDK software evolves to keep up with the latest trends and technologies. To keep things lightweight not all legacy tools are included ‘out of the box’

This tech tip looks at developing a universal board bring-up test suite based on the CMSIS-Drivers and the CMSIS-Driver validation pack.

Some tips crop-up from experience with a number of projects. Getting it all set-up at the start will make your design all the easier to work with

When it comes to Heatsinks on embedded Modules they differ from the standard Heatsink that you might find in your desktop PC and not always for the reasons you might expect, this article explains why..


An update to the “When a Raspberry Pi is not enough”

how to manufacturer your Pi based product?

The Phyboard-Pollux which is an SBC based on the iMX 8M Plus processor from NXP, with support already included for the Embedded Wizard GUI

Are you currently using the AM335x processor from Texas Instruments on a module such as the TQMa335x?

This tech tip won't go into the basics of multiplexing but will show the type of signal driving these panels require. In particular, we'll be looking at a common 32x32 matrix panel.

a Retrofit for the SH7723

How to enable debugging in low power sleep modes on Cortex-M microcontrollers

In this tech tip we will look at how to set up a project to use Unity, a popular testing framework for small embedded systems

Whilst demonstrating how easy it was to get up and running with Keil µVision, I was struck by the curse of live demonstrations – it didn’t work as expected.

When it comes to the i.MX 8 processors, actually quite a lot . The variants of the i.MX 8 are as diverse as Roses are in the horticultural field

In this article we show you how to automate flash programming using Keil’s Microvision for Arm microcontrollers

Is it possible to convert the .csolution format to the earlier *.CPRJ format

Debug headers are critical for development of embedded systems, here we provide a reference for the widely popular Arm Cortex-M devices.

Using these drivers to access your microcontroller peripherals is a great way to make your code portable and reusable

Some tips crop-up from experience with a number of projects. Getting it all set-up at the start will make your design all the easier to work with

The first and most fundamental tasks in a new project is to configure the MCU peripherals and GPIO pins. This can be a complex and time-consuming process