This site uses cookies to improve browsing experience.
AcceptDenyPreferences
Privacy Preferences
When you visit websites, they may store or retrieve data in your browser. This storage is often necessary for the basic functionality of the website. The storage may be used for marketing, analytics, and personalization of the site, such as storing your preferences. Privacy is important to us, so you have the option of disabling certain types of storage that may not be necessary for the basic functioning of the website. Blocking categories may impact your experience on the website.
Reject all cookiesAllow all cookies
Manage Consent Preferences
Essential
Always Active
These items are required to enable basic website functionality.
Marketing
These items are used to deliver advertising that is more relevant to you and your interests. They may also be used to limit the number of times you see an advertisement and measure the effectiveness of advertising campaigns. Advertising networks usually place them with the website operator’s permission.
Analytics
These items help the website operator understand how its website performs, how visitors interact with the site, and whether there may be technical issues. This storage type usually doesn’t collect information that identifies a visitor.
Personalization
These items allow the website to remember choices you make (such as your user name, language, or the region you are in) and provide enhanced, more personal features. For example, a website may provide you with local weather reports or traffic news by storing data about your current location.
Confirm and close

Start Now!

Our US-based team is ready to develop products that drive your business forward.

Book a call
Email Us
HomeProjectsServicesCompanyBlogFAQs
Contact
Design Innovations

Developing a New Electronic Product in 2023? Avoid These 3 Common Firmware Engineering Problems

May 12, 2022
•
3 min.
Eyeglasses on desk in front of firmware programming on computer screen

The market for connected products and IoT devices continues to grow. Products from coffee makers to sporting goods are now connected to the web. This means development teams have to run not only mechanical and electronics engineering in parallel, but firmware development as well.

However, firmware engineering is complex — and presents many potential risks related to programming for advanced feature sets. This can drive uncertainty in product development projects. In fact, budget and timeline misses are driven by firmware problems more frequently than by electrical engineering or mechanical engineering problems.

But there are three steps developers can take to prevent the most common firmware engineering problems:

  1. Beware of incomplete code libraries.
  2. Avoid continually learning new hardware or multiple platforms.
  3. Don’t waste effort on the wrong feature at the wrong time.

What can firmware developers do instead? Continue reading for our recommendations on how to refine your processes, eliminate inefficiencies, and speed up development.

Beware of incomplete code libraries.

Firmware development, whether for consumer or industrial electronics, is full of risks when it comes to development timelines and development costs. Firmware development typically begins with finding a package in the chip manufacturer’s code library that will serve as a springboard for development in a project. The code in that library becomes the foundation of a larger, interconnected code set.

Many developers have learned the hard way that manufacturer’s code libraries are often incomplete, or full of bugs. These bugs or deficiencies are not usually visible early in the development effort, but only become apparent later in bring-up or even in testing. That late in the game, unexpected delays or changes in direction can derail a project.

Avoid continually learning new hardware or multiple platforms.

Chipsets from Texas Instruments, ARM, and others each have advantages and disadvantages. But using multiple platforms within the development team can lead to inefficiencies. It can be difficult to keep up with the capabilities, constraints, and library quality for multiple platforms. When possible, choose one platform, and let your development team build a depth of knowledge around it.

It’s worth spending the effort to identify and commit to a platform that suits your products or projects, and weaning developers off of the others. For example, Nordic Semiconductor systems provide a solid set of features that are a good fit for consumer and industrial IoT products. The system provides solid foundations for BLE, Wi-Fi, and NFC communications, and the platform offers a large code library and a large user pool. This means that community-level support is easy to find when troubleshooting. Overall, the speed of development increases as a result.

Don’t waste effort on the wrong feature at the wrong time.

Firmware developers have a tendency to develop code with the functionality of the final production in mind. However, when firmware development is happening in parallel with electronics and mechanical development, this is problematic. Here’s why.

Consider the development of a web-connected IoT wearable, for instance. The product will have a number of high-risk physical characteristics or features that must be developed, tested, and iterated multiple times before production starts. In addition, there will likely be development milestones at which decisions will be made to fund or kill the rest of the project. It’s fairly common for funding decisions to be made based on market testing with a de-featured batch of prototype units. If the firmware team starts developing with the end-state (full-featured product) in mind, they may be successful coding to that spec. But the amount of effort, time, and expense will be more than was necessary since some of those features are not necessary for the prototype needed for user testing.

Rather than develop firmware to the final production state, firmware teams need to align with the overall project plan. This typically means planning for multiple iterations of the product (and therefore the firmware), with the level of feature inclusion increasing throughout the project.

If you’d like to learn more about our approach or talk about your electronic product development project, get in touch.

Explore more

Other articles.

What is Rapid Prototyping?

Unlock the potential of rapid prototyping to streamline your product development process, reduce costs, and enhance design quality. Learn how advanced techniques like 3D printing and CNC machining can transform your ideas into tangible prototypes, enabling faster iterations and immediate feedback.
Read more
Nighttime city street photo of a billboard that reads "In Design We Trust"

Well-Designed Products — and How We Build Them

Well-designed products make us happy.
Read more
Two people working on a mechanical sketch together at a table

6 Reasons Why Most Products Fail (and 6 Tips for Success)

If you wanted to embark on a new business venture but knew it had only a five percent chance of success, would you proceed?
Read more

What We Can Do For You:

product development company

product design company

Icon
1
/03

Develop a Physical Product.

Hire us to design, engineer, optimize, and document a new product. Production can happen in our manufacturing network or yours.

Learn more
Icon
2
/03

Machine Design and Engineering.

We design, engineer, and prototype new machines for manufacturing, R&D, QC, assembly, material handling, food processing, and more.

Learn more
Icon
3
/03

Develop and Build Prototypes.

Our team can develop and build prototypes for trade shows, market testing, pre-sales, and functional testing. We are expert prototype builders.

Learn more
Join Our Newsletter

Product development and company news, straight to your inbox.

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
We improve human existence. We do it by designing rugged new products and industrial equipment that matters.
Quick links
HomeProjectsServicesCompany
BlogFAQsContactCareers
Contact
200 E. 33rd St, Garden City, ID 83714208-391-4000Contact form
follow us
LinkedInYoutubeInstagramTikTokTwitterFacebook
Rockford
Raleigh
Arlington
Omaha
Wichita Falls
Cincinnati
© # SGW Designworks LLC. All rights reserved.
Privacy PolicyTermsCookie PolicySitemap

Product Development Company

Product Design Company