How To Protect Your Firmware: 5 Mistakes To Avoid

Lock with digital icons projected on top

By: Joe Schneider
You put a massive amount of time, energy, and cost into developing your firmware. As such, protecting your firmware should be a top priority. Avoiding these 5 mistakes will help ensure your firmware stays secure.

Documenting System Architecture With AsciiDoctor

By: Steve Branam

As the adage says, a picture is worth a thousand words. Diagrams provide a high level of information abstraction. Somewhere between zero and too much is the sweet spot for the right amount of documentation for a system, balancing the needs of development, quality, cost, and effort.

Device Updates: Cut Down Time and Data Usage

Updating your hardware in the field

Have you ever suspected that the way updates are handled on your embedded devices wastes electricity, drives up customer cellular data bills or takes longer than really needed? Let’s look at how device updates have traditionally been done…

Unit Testing For Embedded Software Development

Unit Testing Keyboard

By: Steve Branam
Unit testing uses small automated tests to drive development of embedded system code. Learn best practices for Test Driven Development (TDD), including writing and implementing successful unit tests to provide fast feedback and confidence in your code.

10 Pillars of Modern Embedded: Pillar 8–Security

Cyber security concept ,computer network and communication,System administrator working in laptop for develop software of data protection from hacker to protect the critical information and reduce the vulnerability in their network

Security is not a feature, it is a framework. You build your system around this framework. Every design decision, every architectural component, every path on the PCB and every line of code should consider this. Modern systems need to put it front and center.

10 Pillars of Modern Embedded: Pillar 7 Emergent, Intentional Architecture

Architectural detail of a shopping mall in Frankfurt

Good architecture is both craft and science. There are a variety of patterns and techniques that encourage building code that is malleable, reliable, and maintainable. The architecture emerges as you apply these and learn more about the system. It breaks things down into small cohesive elements that express intention about what they do.