top of page
Nathan Ruttley

Development Platforms

Some projects require a robust development platform for testing out ideas, but what types of platform are there, and how can they propel your product development?


What is a Development Platform?

Development platforms are hardware, software, or firmware tools that aid you in developing your product’s functionality without having to fully complete the design. These tools should allow you to quickly iterate on ideas to test out features. They also need to be easy enough to use that the cost of creating them is outweighed by the time savings during development.


Types of Development Platform

There are ready-to-go development platforms out there and these are certainly worth a look, we are big advocates of encouraging people to get into prototyping! When you are ready to move towards custom hardware Embedism can support you in creating the perfect development platform for your project.


First, let’s take a look at existing off the shelf options before moving onto the more powerful and flexible custom solutions.


Existing Hardware Platforms

There are countless hardware development platforms available ranging from Arduino-compatible boards to development kits from individual vendors such as the Nordic DKs and TI LaunchPad. These typically need to be used with particular development environments in order to write code and applications.

The Arduino Uno - many people's first development platform

Key Benefits

Main Downsides

pre-verified hardware

often physically very large

online support forums

limited in functionality without expansion boards

low-cost

 

Existing Firmware Platforms

Some hardware development platforms are compatible with firmware tools such as Microsoft Makecode or other drag-n-drop interfaces.

Whilst the functionality of these tools is limited they can really help to speed up product development for simple products.

Key Benefits

Main Downsides

quick and easy to make simple applications

very limited in functionality

free

relies on using supported hardware

Custom Software Platforms

Developing code on embedded devices can be slow due to long compile times, limited debugging ability and the general inconvenience of being tethered to your desk and programming tools.


Embedism adopts an innovative approach that allows the enormous power of modern computers to be put to work for embedded development. We can create platforms and emulators for core aspects of your product that allow tweaks and performance enhancements to be made orders of magnitude faster than can be achieved by writing embedded code alone.


This works since we develop as much application code as possible to be platform independent, creating our own platform layer between the hardware and vendor HAL and your unique application code. To get your application running on the desktop this platform layer is recreated for the PC and the application ported over.

Key Benefits

Main Downsides

utilise computers to speed up development

requires specialist knowledge when writing and porting code

ideas can be tested extremely fast

upfront cost

allow for more flexible working methods

 

don’t have to deal with hardware issues

 

Custom Hardware and Firmware Platforms

The ultimate development platform is one that represents your product’s hardware, functionality, and also allows for testing in the target environment. This is very difficult to achieve using existing platforms and a computer-based emulator of your product can’t be used in the target environment - especially if it’s a wearable!


We can develop a custom hardware platform alongside the necessary software and firmware tools you need to test out your ideas. In the past we have created: drag-n-drop interfaces for controlling kitchen appliances, command line interfaces for wearables, rules engines for sensing devices, and dual-build code bases for emulating GUIs on both a PC and the target hardware.


You will have more control over your product’s development and as a result will reduce lengthy design iterations and get to market quicker!

Key Benefits

Main Downsides

utilise custom tools to speed up development

initial upfront cost and time

hardware can be tested in target environment

cost of change if target hardware needs to change significantly

lower overall project cost and time

 

identify project risks and hurdles earlier

 

something to show potential investors and backers

 


2 views
bottom of page