Embedded software
Firmware, IoT devices and connected systems built to keep working in the field. Software that runs close to the hardware.
What we build
We write software that runs on the hardware itself, and the systems that keep those devices connected.
- Firmware for microcontrollers and embedded devices, bare-metal or on an RTOS.
- IoT devices and connected systems, from a single sensor node to a fleet in the field.
- Device-to-cloud data pipelines: telemetry going up, commands and configuration coming down.
- Sensor integration and real-time data handling, with the timing budgets the hardware demands.
- Connectivity over BLE, MQTT, Wi-Fi, LoRa and cellular.
- Over-the-air updates, so devices keep getting fixes and features after they ship.
- Power budgets and battery life for devices that need to run for years on one charge.
We work with your electronics team, or the manufacturer building your boards, so the software and the hardware fit together instead of fighting each other.
How we work
Every project starts with a call. In Discovery we map the hardware, the constraints and what the device actually has to do once it is out in the field. Then we send a Proposal with clear scope, timeline and cost.
Most embedded projects are fixed price: you see the scope and the number in the Proposal, approve both, and that is what you pay. Ongoing firmware maintenance can run on time and materials.
We Build in short iterations, with firmware you can flash onto real hardware and test at every step. The proof of progress is a build running on your bench, not a slide.
At Launch we help you get to production, then stay around for updates and field issues. What we deliver is agreed in the contract, and everything we hand over is documented.
Common questions
Can you work with our existing hardware and firmware?
Yes. We take over existing codebases regularly. We start with a short audit of the current firmware, schematics and constraints, tell you what is solid and what needs work, and give you a fixed price to move forward from there.
How long does an embedded project take?
Most run two to six months from first call to a device ready for production, depending on the connectivity, certification and how much hardware is still moving. We give you a timeline in the Proposal, before you commit.
How do you choose the language and stack?
We pick for the hardware and the timing constraints, not for fashion. C and C++ for tight microcontrollers, Rust where memory safety earns its place, embedded Linux for gateways and richer devices. We explain the trade-offs so you can decide with us.
Technologies we use
- C
- C++
- Rust
- Linux
- MQTT
Have a project in mind?
Tell us about it