Tools – The Device Firmware Update (DFU) Utility

Post Image

Nearly every product requires a software update at some point or another. Whether it’s our cellphones, TV’s or even our refrigerators (yea I went there). Microcontroller based systems typically aren’t running a high-level operating system that allows files to be replaced. Instead, developers need a bootloader. Microcontroller vendors have been including firmware update capabilities inside […]

read more

7 Tips to Accelerate Firmware Development

Post Image

Embedded software development teams have a unique challenge before them; how to develop more and more firmware in shorter and shorter timeframes. How can developers get everything on their plate completed within the time allotted? Here are seven tips as food for thought. Tip #1 – Continuously Innovate Focus cannot simply be on creating code […]

read more

Embedded Basics – Selecting the Right Watchdog Strategy

Post Image

Setting a watchdog strategy is easy. Just enable the microcontrollers internal watchdog timer and setup an interrupt to occasionally clear the timer and keep the dog happy right? Not exactly. Watchdogs help ensure that the embedded system we are creating is robust and can detect if something runs amiss. The chances for something going wrong on […]

read more

Tips and Tricks for Watchdog Design

Post Image

Watchdogs are a critical and important component in developing a robust and fail-safe embedded system. In many circumstances, I run into development teams that either have not fully thought through their watchdog strategy or have their watchdog disabled. In order to improve system robustness and ensure that the watchdog can detect a system fault, here […]

read more

Tools – Enter the Smart Watchdog

Post Image

The smart watchdog is a customizable, external watchdog solution that behaves similar to a supervisory processor except that its primary purpose is detect when a fault has occurred and power cycle the microcontroller. A simple example showing how a smart watchdog can be integrated into a project can be seen in the diagram below: Smart […]

read more

Slowing Down to Go Faster

Post Image

Speed is imperative in the business world. Getting to market before competitors, leading the way in innovation, the development cycle can be relentless. For embedded systems engineers, deadlines are always yesterday. There is always a push to get things done faster. How quickly can we get this done? So and so needs this as fast […]

read more

Embedded Basics – Threads vs Tasks

Post Image

The 32-bit microcontroller has been increasing in capabilities and decreasing in cost which has resulted in real-time operating systems becoming the dominant scheduler in many embedded systems. While there are more than a hundred different RTOS flavors out on the market, engineers sometimes struggle with basic terminology. Take for example threads and task which under […]

read more

Tips and Tricks – Limiting Function Complexity shall be a Requirement!

Post Image

I have recently become interested in brain training applications that are designed to test and improve mental speed, attention, memory, flexibility and problem solving. Despite believing that I have a superb and extraordinary memory, I am constantly surprised at how poorly I perform in the memory games. One of my favorite games displays a grid […]

read more

Tools – My Top 10 Favorite Embedded Software Books

Post Image

I am asked quite often what the best resources are for staying up to date and learning more about embedded software design. There are many ways a developer can stay up to date and learn such as Technical Blogs, Websites and Periodicals Online communities, video and webinars Books Training Courses Conferences In time, I may […]

read more

CEC – Getting Started Developing Professional Embedded Software

Post Image

Course Overview: Many embedded software engineers get their start as electrical engineers who get hooked on twiddling bits. They get a taste of life in the software lane and never look back. The problem is that without a traditional background in computer science or software design, converted embedded software engineers lack many fundamental skills in […]

read more