Many organizations struggle to find good hardware designers; there are a bunch of software guys out there but your design is eventually going to need custom hardware.  There’s also the problem that, for an embedded solution, close integration is needed between hardware and software and what’s really needed are designers who have a blend of skills covering both areas.

Rapid Prototypes

There are 100’s of development boards available supporting all kinds of devices but none is going to be an exact fit for your requirements and code developed for an off-the-shelf board will almost always need to be reworked when transferred to the actual hardware.  So why not consider developing on your own hardware from the start of your project?  This approach has other advantages such as the ability to prove out specific component performance, designs can even include 2 different components as alternatives that can be populated as an either-or option.  You’re aiming for a fully functional representation of your target hardware without being too concerned about the size.

We have experience designing such rapid prototype boards.  We work with you to create a design in as little as 1 or 2 weeks, then we’ll order the boards and hand-build a few prototypes; hand building gives you the option to build partially-populated boards, for example just the power supply section which can be fully tested in isolation – we can hand-build designs using discrete components as small as 0402 and ICs with pin pitches down to 0.4 mm. Prototype boards usually include test points and often have extra components (e.g. DIP switches) to permit isolation of various parts of the circuit.  Typical build duration for such boards is 1 day for a medium-complexity board.

Hardware vs Software

You can’t think of hardware and software separately; embedded processors often have multi-purpose pins — Freescale’s KEAZ128 device has a pin marked ‘PTC4/SWD_CLK/KBI0_P20/RTC_CLKOUT/FTM1_CH0/ACMP0_IN2’ which means that if you run FTM1_CH0 as a PWM output, you can’t use any of the other functions.  You have to consider the software as you design the hardware.  Our designers have experience in this area and can help you cut through the confusion to get to a working product sooner rather than later.