Embedded Systems

Collaboration that delivers

Efficient low power designs secure and safe products Highly reliable systems

Embedded systems are central to Xentronics’ services, delivering the hardware functionality essential for a product’s vision. Our team collaborates closely with clients and product users to develop a seamless and integrated platform that defines and controls the product’s operation. An intuitive, scalable user experience begins with selecting the right embedded technology.

What are embedded systems in product development?

An embedded system integrates a product’s electronic elements, including sensors, displays, actuators, antennas, power systems, and the core printed circuit board (PCB) assembly. It encompasses the firmware running on the processor, extending to complex control functions, data acquisition, and real-time automation. Below are just some of the key outcomes we focus on:

Optimising application-level software with highly constrained resources

  • Implementing microcontroller algorithms is challenging, requiring an understanding of optimization around memory usage, processing power, and power consumption.
  • Embedded systems often use real-time operating systems (RTOS), requiring efficient coding practices and data models to achieve the required performance.
  • In other words, it’s all about having a “frugal coding” mindset. 
  • An often-overlooked aspect of usability is the hardware-oriented touchpoints, such as displays, as well as audible, light and haptic indicators.
  • Creating a great user experience with such touchpoints comes down to the skill of the embedded systems engineers and their skill in enabling a product owner’s vision.
  • Creating an intuitive user interface demands a deep technical understanding of component functions and coding techniques, such as managing registers, handling interrupts, and allocating memory.
  • Embedded systems engineers are responsible for making sure all hardware elements work seamlessly with the broader system.
  • Testing and debugging with oscilloscopes, logic analysers, and similar equipment ensure product quality by verifying code and glitch-free hardware operation.
  • Testing should also extend to how the embedded system interacts with external devices, networks, and its operational environment, covering sensor accuracy and data integrity during transmission.

To learn more Contact Us

Success factors in embedded systems development

Embedded systems engineers need to have a detailed understanding of hardware behaviour to deliver the functions required in an optimised way. Here are some of the critical success factors we pay close attention to at Xentronics: 

  • The single most impactful hardware decision you will make is the selection of the processor family. Processor selection drives the whole technology stack.
  • There are many processor families to choose from, with multiple trade-offs around system performance and commercial factors. Microcontrollers heavily influence unit cost and are critical for ensuring supply chain assurance.
  • Access to excellent product support and libraries for engineers ensures correct selection, faster time-to-market, and better long-term product support
  • An important best practice is to write instantly understandable code, minimizing the documentation needed for other programmers and reviewers.
  • Since embedded firmware can be written in many ways, adhering to in-house coding standards is crucial to prevent programmers from creating inconsistent “spaghetti” code.
  • In-house standards can relate to practices such as variable naming conventions, loop structures and function design. 
  • With many products (especially IoT) now battery-powered, power optimization is a critical success factor in electronic design.
  • Power optimization involves designing around communication frequency, sensor activation, and maximizing sleep mode.
  • Choosing the right components is vital; prioritize low-power components, processors with varied low-power modes, and autonomously operating peripherals.

To learn more Contact Us

Why product developers should care about embedded systems

Embedded systems are at the heart of an electronic product, touching upon every aspect of your product’s system and core value propositions. As a product developer, it’s worth understanding how embedded systems drive many of your product success factors. Key things to think about are:

  • A great user experience goes beyond an intuitive interface, encompassing boot-up speed, responsiveness, latency, battery life, and reliability.
  • Users expect connectivity, making seamless system integration crucial. A smart architecture supports cloud services, secure communication, OTA updates, remote control, and more.
  • Ultimately, these factors depend on embedded engineers grasping your business model and vital customer satisfaction elements. Product developers need to guide them clearly.
  • Over-the-air (OTA) updating is the ability to update your embedded system remotely, without having to go out into the field or have customers update it manually.
  • This feature enables you to deploy new features, fix problems, and apply cybersecurity updates when new threats arise.
  • A well-designed OTA mechanism includes bootloaders, event logging, integrity checks, and rollback, allowing confident feature deployment with rollback capability.
  • In essence, OTA maximizes product lifespan, reducing the need for hardware updates.
  • Edge processing is about performing data analysis within your embedded system, rather than transmitting it to the cloud for processing.
  • Processing more at the edge leads to lower operating costs, primarily through reduced bandwidth, cloud storage, and online processing expenses.
  • Edge processing also improves real-time decision-making and is ideal for remote areas with limited or no internet connectivity.
  • Cybersecurity is critical for product reputation. Embedded systems are both prime targets for cyberattacks and the foundation for your security defences.
  • Implement multi-layered security, from secure hardware to encrypted communication. Boot processes should verify the authenticity of firmware before execution.
  • Identify and adhere to the most relevant standard to ensure regulatory compliance and to assure customers of your best practice security.

To learn more Contact Us

How collaboration on embedded systems delivers your vision

Successful development of embedded systems requires tight collaboration with virtually every member of the product development team. That is because embedded systems connect with every aspect of your product. Here are some principles we advocate at Xentronics: 

  • Coordination of team activities around a clear mutual understanding of product requirements is critical to the success of electronics product development.
  • Key touchpoints between the teams can include clear interface specifications, consistent version control, shared issues tracking and much more.
  • Hardware and software teams need to coordinate around constraints and capabilities early, optimizing trade-offs and preventing late design changes.
  • The ability to scale a product comes from a collaborative effort around market research and envisioning requirements for future market needs.
  • Make sure your minimum viable product has an architecture that can evolve to future needs as easily as possible, without the need for a radical redesign.
  • The team needs to anticipate a wide range of factors, such as increasing data loads and processing/memory requirements, as well as the evolution of connectivity standards and emerging technologies like AI.
  • The single most important collaborative approach in product development is to use a test-driven approach to gain early feedback on key features and functions.
  • A good practice is to start with a development kit and show how the product might work, gaining feedback for critical technical decisions such as microcontroller selection.
  • Iterate through low-cost prototypes, integrating testing at every stage to validate assumptions, identify constraints and optimise final product architecture.

To learn more Contact Us

Frequently Asked Questions

on embedded systems

How can I make my hardware product connect to an App?

  • There are many connection methods, including directly from device-to-phone, direct-to-cloud, a bridged connection via a gateway device or via a wired connection, usually USB.
  • A popular method for MVPs is Bluetooth Low Energy (BLE), which is suitable for device-to-phone connections but has limitations in terms of data and the number of connections.
  • Higher-capability methods include Wi-Fi or cellular for a direct internet connection, allowing access to higher-order capabilities before sending data back to the App.
  • For devices where low power usage is critical, a bridged connection via a powered gateway is often the best option.
  • Embedded systems involve an understanding of how physical hardware and software are integrated.
  • The hardware/software overlap can make it challenging to determine if issues are in the code or the circuits. Debugging needs specialised tools and approaches.
  • Limited memory and processing power on the hardware forces a much higher level of coding discipline.
  • Embedded systems typically involve precise and predictable responses to real-world events, which adds complexity in terms of timing and synchronisation.
  • Arduino excels as an educational platform and for quickly prototyping ideas by simplifying and abstracting all the complexities needed for a production-ready device.
  • The platform struggles with essential capabilities, such as memory assignment registers and complex peripheral configuration, which hinder optimal performance and reliability.
  • At higher volume production, Arduino platforms are less cost-effective, more challenging to procure, and may lack the necessary regulatory certifications.
  • There are pros and cons to both options, and many companies adopt a hybrid approach, hiring some in-house staff to focus on core skills and project managing suppliers.
  • The interconnectedness of embedded systems demands diverse, deep specialist skills that in-house teams rarely possess. Outsource non-core specialist skills.
  • Vulnerability to key staff leaving is a key risk. Aim for a strong partnership with an outsourced developer to develop deep product knowledge as insurance.  
  • Many embedded systems have similar features, like Bluetooth connection and on/off switches. The cost of developing embedded systems depends mainly on how unique and standard/unusual your requirements are.
  • Cost driver examples include unusually high-performance requirements, rare sensors or components, or licences for proprietary software development tools meeting particular needs.
  • Development projects can range from tens to hundreds of thousands of dollars. For complex projects, it’s best to commission a small discovery stage to get accurate estimates.
  • A key factor in project delivery timeframes is the extent to which hardware and software need to be tightly integrated and how hard it is to get them talking, a process called “bring-up”.
  • High-performance requirements are another time factor, requiring more precise timing of tasks, effective interrupt handling, and other low-level, detailed work.
  • In some industries, such as automotive, aerospace, and medical applications, achieving the required level of certification and regulatory compliance can be laborious and time-consuming.
  • More features and functions mean longer project times. A proof-of-concept could take weeks, an MVP a few months, and complex projects several months to complete.

To learn more Contact Us

Our Capabilities

Learn more about our other capabilities that support our product development services