outerspace provides a multi-disciplinary offering in product development that includes embedded software design services.
Embedded software development allows us to develop more sophisticated products for clients. Our clients often have a specific pain point they need to resolve with their software platform, or a legacy product that needs embedded software plus industrial design, mechanical engineering and systems engineering.

Products that need high-level processing power, AI integration or edge computing, require embedded software development.
We provide embedded software expertise to create custom hardware products with custom Linux operating systems that can be used in multiple applications.
The operating system platforms for custom hardware that we’re currently developing for clients, have essentially the compute power of a cell phone.
These platforms have video streaming and newer process units enabling AI, machine learning, machine vision, facial recognition, and behavioral recognition. These attributes require a lot of processing power.
Yocto and Linux based distribution
If a client wants a custom look and form for their product, we integrate custom computing hardware. We then use the Yocto development environment to create a custom linux distribution.
There are other competing tools, but Yocto is the more comprehensive framework to give ultimate flexibility in configuring it to the new hardware.
Our embedded software experts create new Linux versions by taking baseline Linux and creating custom hardware systems for clients.
We’re working on products with thermal imaging cameras and others with occupancy detection systems.
Both use similar approaches in terms of creating a Linux platform; the hardware underneath is different; the path and the result is different; but the process of using Yocto to build up a custom operating system, to integrate with cameras in the system, is similar.
identifying products that need embedded software expertise
Products and systems that require complex processing power to process a lot of data for say a camera, or image recognition human detection locally for their product, require embedded software development.
We collaborate with clients in a wide-range of markets. We ask them, “Is there going to be an off-the-shelf piece of hardware or is the product volume high enough that custom hardware is required?”
If it’s not cost sensitive and if the physical product is large enough then perhaps an off-the-shelf Compulab, Variscite or even a Raspberry Pi could be used.
With off-the-shelf hardware, an operating system should exist, so a custom operating system isn’t needed, but a new camera or peripheral may need integration.
If a client requires their own custom hardware and they’re going to manufacture five thousand plus products per annum, off-the-shelf solutions are usually cost prohibitive.
the embedded software development process
As embedded software designers, our team understands where every component needs to fit. We know how to use the tool chain and the environment of the framework.

It’s standard practice in embedded software development to re-use these learnings. Our team re-uses the different layers and selects the layers that you need. They add a new layer for a customization – the hardware layer; the software platform layer, then essentially hook them up to the application or the business logic.
multiple layers, embedded software systems and hardware development
If the business logic is, for example, to start a camera and create a video stream, there are a lot of things that have to happen through the layers down to the hardware level.
Our software clients develop software that sits on top of the platform we’ve developed, to create great product solutions. They create an Application Programming Interface or API that sits on top of the stack and asks high level commands to enable everything to turn on and come through.
If you’re looking to develop a sophisticated product that needs embedded software design. Talk to us.