5 Elements to Secure Embedded Systems – Part #4 Secure Bootloaders

In “5 Elements to a Secure Embedded System – Part 3 Secure Boot”, we continued our discussion about the five essential elements required to begin securing an embedded system. As you may recall, the five elements that every developer should be looking to implement are: Hardware based isolation A Root-of-Trust (RoT) A secure boot solution … Continue reading 5 Elements to Secure Embedded Systems – Part #4 Secure Bootloaders

Is It a Bug or Feature?

Living in Michigan, it’s not uncommon to wake up on a cold winter morning and find that an automobile just doesn’t want to start. However, it’s relatively uncommon for this to occur right in the middle of summer! As you can guess, the car wouldn’t start this morning and I had no idea that it … Continue reading Is It a Bug or Feature?

Programming the STM32 Option Bytes using SEGGER J-Flash

Nearly every microcontroller contains option bytes, fuses, or some method to control general settings on the processor. These settings often control features such as whether debugging is enabled or disabled, flash can be written or read, and even how the processor will boot. In this post, we will explore how to program the STM32 option … Continue reading Programming the STM32 Option Bytes using SEGGER J-Flash

3 Development Boards to Get Started with TrustZone for Cortex-M Microcontrollers

Developing a product today without taking security into account is foolhardy. Nearly every device being developed today is in some way connected, which means there is an avenue for attacking the system. There are several different architectures that developers can leverage when developing a secure system. One that has emerged in recent years starting with … Continue reading 3 Development Boards to Get Started with TrustZone for Cortex-M Microcontrollers

5 Elements to Secure Embedded Systems – Part #3 Secure Boot

In “5 Elements to a Secure Embedded System – Part 2 Root-of-Trust”, we continued our discussion about the five essential elements required to begin securing an embedded system. As you may recall, the five elements that every developer should be looking to implement are: Hardware-based isolation A Root-of-Trust (RoT) A secure boot solution A secure … Continue reading 5 Elements to Secure Embedded Systems – Part #3 Secure Boot

5 Elements to Secure Embedded System – Part #2 Root-of-Trust (RoT)

In “5 Elements to Secure Embedded Systems – Part #1 Hardware-Based Isolation”, we started our discussion about the five essential elements required to begin securing an embedded system. As you may recall, the five elements that every developer should be looking to implement are: Hardware-based isolation A Root-of-Trust (RoT) A secure boot solution A secure … Continue reading 5 Elements to Secure Embedded System – Part #2 Root-of-Trust (RoT)

CEC – Best Practices for Designing Real-Time Embedded Systems

Development teams today are faced with the need to develop systems within smaller budgets, shorter timeframes and with more features. In order to succeed in this challenging environment, teams need to leverage best practices, which are procedures shown my experience to produce optimal results. In this course, we will explore modern day best practices that … Continue reading CEC – Best Practices for Designing Real-Time Embedded Systems

3 Tips for Speeding Up Interrupt Handlers

Embedded software developers today are a bit spoiled. Many microcontrollers come with an ecosystem that includes peripheral drivers, an RTOS, middleware and even example application code. Many developers can spend most of their time in high-level application code, ignoring the software that meets the hardware. The problem is that while this prebuilt ecosystem can accelerate … Continue reading 3 Tips for Speeding Up Interrupt Handlers

Understanding Weak Symbols

If a developer closely looks at framework and library files, they may come across functions that have __weak in front of them. The weak symbol is a special linker symbol that denotes a function that can be overridden during link time. In today’s post, we will take quick look at weakly linked functions. Weak symbols … Continue reading Understanding Weak Symbols