Free Trials

Download a free trial to find out which Altium software best suits your needs

Altium Online Store

Buy any Altium Products with few clicks or send us your quote to contact our sales

Downloads

Download the latest in PCB design and EDA software

  • PCB DESIGN SOFTWARE
  • Altium Designer

    Complete Environment for Schematic + Layout

  • CircuitStudio

    Entry Level, Professional PCB Design Tool

  • CircuitMaker

    Community Based PCB Design Tool

  • NEXUS

    Agile PCB Design For Teams

  • CLOUD PLATFORM
  • Altium 365

    Connecting PCB Design to the Manufacturing Floor

  • COMPONENT MANAGEMENT
  • Altium Concord Pro

    Complete Solution for Library Management

  • Octopart

    Extensive, Easy-to-Use Component Database

  • PRODUCT EXTENSIONS
  • PDN Analyzer

    Natural and Effortless Power Distribution Network Analysis

  • See All Extensions
  • EMBEDDED
  • TASKING

    World-Renowned Technology for Embedded Systems Development

  • TRAININGS
  • Live Courses

    Learn best practices with instructional training available worldwide

  • On-Demand Courses

    Gain comprehensive knowledge without leaving your home or office

  • ONLINE VIEWER
  • Altium 365 Viewer

    View & Share electronic designs in your browser

  • Altium Designer 20

    The most powerful, modern and easy-to-use PCB design tool for professional use

    ALTIUMLIVE

    Annual PCB Design Summit

    • Forum

      Where Altium users and enthusiasts can interact with each other

    • Blog

      Our blog about things that interest us and hopefully you too

    • Ideas

      Submit ideas and vote for new features you want in Altium tools

    • Bug Crunch

      Help make the software better by submitting bugs and voting on what's important

    • Wall

      A stream of events on AltiumLive you follow by participating in or subscribing to

    • Beta Program

      Information about participating in our Beta program and getting early access to Altium tools

    All Resources

    Explore the latest content from blog posts to social media and technical white papers gathered together for your convenience

    Altium Online Store

    Buy any Altium Products with few clicks or send us your quote to contact our sales

    Downloads

    Take a look at what download options are available to best suit your needs

    • Documentation

      The documentation area is where you can find extensive, versioned information about our software online, for free.

    • Training & Events

      View the schedule and register for training events all around the world and online

    • Design Content

      Browse our vast library of free design content including components, templates and reference designs

    • Webinars

      Attend a live webinar online or get instant access to our on demand series of webinars

    • Support

      Get your questions answered with our variety of direct support and self-service options

    • Technical Papers

      Stay up to date with the latest technology and industry trends with our complete collection of technical white papers.

    • Video Library

      Quick and to-the-point video tutorials to get you started with Altium Designer

    Getting Through Agile Prototyping in Agile Hardware Development

    Zachariah Peterson
    |  October 1, 2020
    Getting Through Agile Prototyping in Agile Hardware Development

    If you’ve worked in software development, such as in web design or enterprise software design, you know how difficult it can be to get clients to understand the look and feel of a product from a static wireframe. We’ve had the same problem in recent projects, especially when the POC was not a technical person. The client ultimately had to take it on faith that we knew what we were doing and could deliver what we promised. There’s no substitute for a prototype you can touch and interact with in these past software and embedded projects, even at a basic level.

    Getting to a prototype quickly and building on it repeatedly is at the heart of agile prototyping. The same ideas in software development can apply to agile hardware development and embedded systems development. Your clients can have a more tangible view of your product when you use the right set of design data management tools in the cloud.

    What is Agile Prototyping?

    The easiest way to explain agile prototyping is to think in terms of dev boards or single-board computers (SBCs). I prefer to use dev boards for embedded development as we can start developing the overall software architecture alongside our list of primary components. The idea in agile prototyping is to create a ready-made prototype that can interface with other peripherals and give the customer an idea of the user experience.

    For embedded systems, a development board is a great tool to use as you can create some very basic code that shows a client the nuts and bolts of the user experience. We’re currently living in a golden age of development boards. These products are extremely useful as they allow you to access every feature on a component while also testing your software. 

    The goal of agile prototyping, both for a standard PCB or embedded systems, within a larger agile development process is two-fold:

    1. Give your team a foundation for further development. If you can get a basic version of your embedded code to run on a dev board with some off-the-shelf peripherals, you’ve got a baseline prototype on which to start building.
    2. Pass an initial test with desired components and user inputs before taking your design to higher volume manufacturing. This should illustrate the value of dev boards for embedded systems. You can also get feedback directly from the client before sinking your budget into a prototyping run.

    Building an initial agile prototype brings some other benefits. It helps you refine your timelines, evaluate or consolidate your functional requirements, and eliminate one or more later prototyping runs. This final point also highlights the value of using dev boards as you’re using a ready-made prototype to start building embedded software.

    An Agile Prototyping Process

    Hardly a new product comes out that requires some level of embedded computing power. This can be as simple as using a microcontroller with a high read/write lifetime EEPROM as a multistate switch (we did this on a recent power supply board). It could require developing embedded software to integrate data from multiple components (we also do this regularly). Bringing the software side into development alongside the hardware makes your agile prototyping and development process more complicated. However, if done correctly, you could eliminate a prototyping run (board spin, software sprint, or both).

    Making the agile prototyping and hardware development process work requires running all sides of a development team in parallel. A typical series of sprints require rapid prototyping and testing at the end of each sprint, while board design, enclosure design, and software design proceed in parallel. Even if you have to engage another team member or freelancer to help with the embedded side once you add a new component/function to the system, doing all this in parallel is known to lead to more desirable customer outcomes. A typical process is shown below.

    Viewing assembly data in IoT PCB design
    Iterative process for agile prototyping in agile hardware development.

    While it might seem like a big ask, the great thing about PCB design is that the layout engineer can create a great board while the coders concentrate on writing great code. They need to have exceptional communication on the front end, but once deliverables and functional requirements are clear, the two sides can go off and start working in their domains. Project managers should reconvene the team at the end of each sprint and the integration phase to identify and address bugs before deployment and full-scale manufacturing.

    Making Agile Prototyping in Hardware Development Work

    Agile prototyping doesn’t end with your first prototype or proof of concept. It’s a continuous improvement process as you go through multiple rapid prototyping runs. Making this work takes the right set of collaboration tools that can integrate with your PCB design software. Teams can be more agile when they access some important features in their collaboration tools for hardware design:

    • Supply chain visibility and component data. This is an essential part of defining functional requirements and deliverables, as well as creating user stories. Design teams need to start sourcing components early to reduce their risk of redesigns later. 
    • Sharing fabrication data. This helps a team get a new prototype into production quickly and ensures DFM errors can be caught early. 
    • Access to mechanical data. Anyone who’s built a flex or rigid-flex board knows the device must carefully conform to the enclosure. The same applies to other boards with unique enclosures. 

    Add to these points, things like user access control, commenting, and version control, and you have an enterprise-level system that provides manufacturer collaboration. This lets mixed teams of hardware and software developers create a GitHub-style architecture for hardware design, including embedded systems design.

    Agile hardware development for agile prototyping
    Sharing and commenting on design data are essential features of an effective collaboration system for agile hardware development.

    Altium 365 is the only platform that integrates Altium Designer® with apps like Altium Concord Pro and the Altium Viewer, making collaboration easy for agile hardware development teams. Engineers from all disciplines can see each other’s design data and instantly import it into Altium Designer, or they can view it through an Altium Concord Pro web instance. The version control, commenting, and access control features let your team create a GitHub-style platform for hardware development and agile prototyping.

    Altium Concord Pro on Altium 365 is bringing an unprecedented amount of integration to the electronics industry until now relegated to the world of software development, allowing designers to work from home and reach unprecedented levels of efficiency.

    We have only scratched the surface of what is possible to do with Altium Concord Pro on Altium 365. You can check the product page for a more in-depth feature description or one of the On-Demand Webinars.

    About Author

    About Author

    Zachariah Peterson has an extensive technical background in academia and industry. He currently provides research, design, and marketing services to electronics companies. Prior to working in the PCB industry, he taught at Portland State University. He conducted his Physics M.S. research on chemisorptive gas sensors and his Applied Physics Ph.D. research on random laser theory and stability. His background in scientific research spans topics in nanoparticle lasers, electronic and optoelectronic semiconductor devices, environmental sensing and monitoring systems, and financial analytics. His work has been published in over a dozen peer-reviewed journals and conference proceedings, and he has written hundreds of technical blogs on PCB design for a number of companies. Zachariah currently works with other companies in the electronics industry providing design, research, and marketing services. He is a member of IEEE Photonics Society, IEEE Electronics Packaging Society, and the American Physical Society, and he currently serves on the INCITS Quantum Computing Technical Advisory Committee.

    most recent articles

    Back to Home