There are many benefits to having a software project that is organized. First, it makes it easy to find modules and files when you them rather than wasting time hunting around things. Second, an organized project can help with project scalability by not requiring constant adjustments to a project make file or project properties. Third, … Continue reading How to Organize a Firmware Project
Category: Tips and Tricks
3 Common Challenges Facing RTOS Application Developers
Real-time operating systems (RTOS) are now included in many embedded applications. They can dramatically simplify time and task management in a system and help improve scalability and maintainability (if the application is designed correctly). I’ve found though that there are several common challenges that face RTOS application developers. Let’s examine these challenges and discuss a … Continue reading 3 Common Challenges Facing RTOS Application Developers
7 Tips for Mastering Git
One thing that every embedded software developer, and hopefully every general software developer has in common is that they use a revision control system to manage their software. There are different revision control systems out there, but the most popular system today is Git. If you have never used a revision control system or are … Continue reading 7 Tips for Mastering Git
4 Uses for Assembly Language
An embedded tip that I often advocate is that developers should avoid using assembly language. The reason for avoiding assembly language is that it is specific to the processor architecture being used, it is difficult to read, understand and maintain. Today, we are going to look at the few areas where I believe it is … Continue reading 4 Uses for Assembly Language
5 Tips for Expanding your Embedded Skills
As embedded systems engineers, we work in a field that is constantly changing. Not only does change come quickly, the amount of work and the skills we need in order to successfully do our jobs is constantly expanding. A firmware engineer used to need to know the microcontroller hardware and assembly language. Today, they need … Continue reading 5 Tips for Expanding your Embedded Skills
5 Tips for Designing a Smart Watchdog
Recovering from a system failure or a software glitch can be no easy task. The longer the fault occurs the harder it can be to identify and recover. The use of an external watchdog is an important and critical tool in the embedded systems engineer toolbox. There are five tips that should be taken into … Continue reading 5 Tips for Designing a Smart Watchdog
7 Steps to Create a Reusable Debounce Algorithm
A quick google search reveals that there are over 212,000 websites that examine how to debounce a button. After examining a number of them it is obvious that these implementations are not meant for reuse. The implementations and strategies often lack scalability, the ability to debounce multiple buttons easily and portability. They are tightly coupled … Continue reading 7 Steps to Create a Reusable Debounce Algorithm
5 Tips for Improving Embedded Development (in 2020)
The start of a new year, especially one that is the start of a new decade, provides a great excuse to carefully evaluate and review how you develop embedded systems and put in place a plan to improve it. The techniques and processes that are used to effectively develop products are constantly changing and improving, … Continue reading 5 Tips for Improving Embedded Development (in 2020)
5 Tips for using Open Source Software Successfully
In today’s product development environment, developers are looking to open source software to help them solve their design challenges more than ever before. Open source software has the potential to dramatically accelerate development and save costs, but as I often see in industry and with my clients, it can also become a thorn in a … Continue reading 5 Tips for using Open Source Software Successfully
2 Techniques to Version Embedded Hardware
When it comes to embedded systems version control, I often immediately jump to thinking about the software. Software changes often and carefully managing those changes are crucial, but so is versioning the hardware. A small hardware change could obsolesce every version of software up to that hardware change. In todays’ post, we are going to … Continue reading 2 Techniques to Version Embedded Hardware