Learn how open source electronics can speed up feasibility testing and user evaluations of concept prototypes. Get to market faster with electro-mechanical solutions.
These days, simple products tend to blend electrical and mechanical systems. A simple requirement for a camera, screen, or sensor can quickly increase engineering complexity, shattering your development timelines and budgets. New products need to be prototyped early and often to reduce risk and allow you to gather critical user feedback as early as possible. When you test your system early, you identify technical and usability issues and squash them before they become big problems down the line.
Here’s the problem – electrical hardware design, software and firmware development, prototyping PCBs… that all takes time and resources. You don’t want to put that effort into a design that is rapidly changing and developing. You need to validate your ideas quickly and put them in front of users to gather feedback before being burdened with PCB layout and firmware/software development. So what do you do?
Just like you can use crude physical mock-ups to validate ideas, you can use breadboards, open-source hardware like Arduinos or Raspberry Pis, and simple code on the front end of the design process to quickly iterate and validate your ideas, concepts, and system architectures.
Using these electronics prototyping platforms before PCB layout and firmware/software development reduces development cost, time, and rework. They allow for faster iteration of concepts and help you to build richer prototypes that behave more like the final product. These prototypes help you conduct better and earlier testing and user research. In some cases, you can short circuit (ha!) the electrical design and even utilize hardware like an Arduino or Raspberry Pi in the initial release of your product. This will help you get your product to market quicker and into the hands of real users as soon as possible.
If you are designing a system with critical timing or dependencies between electromechanical components like motors, pumps, or solenoids, you’ll need a way to test the architecture. You need to control and sequence these components, but you can only get so far with turning on and off power supplies to coordinate actions! Rather, use relays or transistors to drive your components. Then you can control the system with an Arduino or Raspberry Pi running a simple state machine to handle the timing sequence. The Arduino allows for Pulse-width modulation (PWM) control to do things like modulating DC motor speeds or changing LED intensity. M3 used a similar approach to validate a particularly complex mechanical architecture in an automated cleaning system for disinfecting surgical tools. It included numerous motors, pumps, and valves that all had critical timing relative to each other. We were able to update the system architecture easily and quickly as we evaluated fluid dispensing methods and learned how the different components worked together. We sequenced full cleaning cycles to ensure the fluid system met all our client’s requirements. Best of all, sequencing or timing tweaks were as simple as changing a couple lines of code. This ensured we had fully validated the mechanical system before the electrical and software team began work. This is a huge reduction in risk and a big win for any product development project.
Having the ability to create prototypes early that faithfully reproduce not only the function of the final product, but the user experience as well is a huge advantage when gathering user feedback. How many times have you tested an early prototype with a client or user, only to have them focus on the state of the prototype? You want to know “how well does this accomplish the task?” They want to know “Will it look like that?”, “Is it really that big?”, or “How do I use it?” Use the power of your open-source hardware to engage with the user and polish up your prototype. Arduinos and Raspberry Pis have countless options for easily adding buttons, touch screens, displays, lighting, sensors, etc. Use these items in your prototype so your user gets a feel for interacting with the product even if it’s a preliminary prototype. The early usability feedback will be invaluable as the design progresses.
In the automated cleaning system example above, M3 added more sophisticated features like user control buttons, lighting, sensors, and even a display so that ultimately it had all the functions of the final product. We were able to make a true “works-like” and “looks-like” prototype very early in the project. Our client loved it. It allowed their executives and sales team to gather feedback on the product long before the design was finalized, allowing for easy, and early, changes along the way.
In another recent project, M3 decided to make our own non-contact temperature station to help us safely allow folks back in our studio after the COVID-19 shutdown. Of course, the heart of the device is an Arduino. We utilized an infra-red temperature sensor and time-of-flight distance sensor for the sensing, both of which have readily available libraries for the Arduino. This makes programming a breeze. The Arduino drives simple transistors to control the LEDs for user feedback. The best part of this prototype is that we packaged it into a 3D printed housing and an inexpensive make-up mirror from Amazon that presents to users as a finished design. It’s a familiar form factor and the user isn’t distracted by wires, breadboards, PCBs, etc. We even mounted LED strip lights inside the make-up mirror to indicate if the user has a temperature above or below 100°F for a fully integrated experience. Not only did this let us test the functional aspects of the prototype, but we were also able to test and adjust the lighting to provide an intuitive user interface. We were able to resolve issues and move right into design revisions for the system. On your next prototype, consider using an Arduino or Raspberry Pi to test the user interactions along with the functional elements. This type of testing shortens design time dramatically and reduces risk of a big redesign later in the development process.
If you really want to push the use of open-source prototyping platforms to the limit, consider using them in production designs. This may be appealing, but if you have high volumes, requirements for sophisticated electronics or firmware, or if your product is cost-sensitive, this likely won’t work for you. Additionally, the supply chain for these prototyping platforms isn’t always reliable. However, if you have limited resources, limited time, and low volumes, this might get you across the finish line. M3 has had success using open source platforms in small production runs where our client needed to validate the market for their product. In one case, we used a Raspberry PI to quickly get a product to market, do extensive testing among their customers, and prove its value in the field. After this successful initial production run, our client was able to do a cost reduction design effort that removed the Raspberry Pi in favor of a lower cost PCBA.
Let’s take a quick look at some pros and cons of using an open-source solution in production.
As complexity of new products continues to rise, it is critical to test and validate your design as early as possible to reduce risk, reduce cost, and reduce delays. Open-source electronics like the Arduino or Raspberry Pi are excellent tools to use in your prototypes to test your functional design and to gather valuable user feedback as soon as possible. These platforms can be faster, cheaper, and more flexible compared to prototyping PCBAs and writing custom firmware early in your product development. You can iterate concepts quicker and add user interface elements to create richer prototypes that elevate your user testing. In some cases, you might be able to short circuit the whole electrical and firmware development and just use an Arduino or Raspberry PI in your product… just make sure you clear it with the electrical engineers!