Embedded Software Services

Embedded software services from idea and prototyping through development, test and launch

Embedded firmware and device software

Ambimat Electronics writes the software that runs on the device itself: firmware on the microcontroller, the drivers that talk to sensors and actuators, and the code that gets measurements off the product and into a backend. It is the software half of AmbiIoT, Ambimat’s IoT and embedded product design and development service, and it pairs with electronics hardware design on the same programme or can be engaged against hardware a customer already has.

When a customer needs this

  • A board exists, or is being designed, and nothing runs on it yet.
  • A product must read a new sensor, drive a new actuator, or report to a different backend.
  • Firmware written for a prototype has to be made reliable enough for production and field use.
  • A device needs to move from a bare-metal loop to an RTOS, or from an RTOS to Embedded Linux, as the product grows.

Languages and processors

  • Development is in C and C++, with assembly-level programming where a part or a timing constraint requires it.
  • Targets range from legacy processors such as the 8085 through to the ARM Cortex-M series.
  • Silicon worked on includes Texas Instruments, Atmel/Microchip, NXP Semiconductors, Renesas, Nordic Semiconductors and Rabbit, among other vendors.

Operating systems and structure

Past products have taken Ambimat into Embedded Linux and RTOS programming at both the Hardware Abstraction Layer and the Application Layer. Separating the two matters on a product that will be revised: a HAL that isolates the silicon is what allows a later board respin, or a change of MCU vendor, without rewriting application logic.

Sensors, actuators and interfaces

Interfacing with sensors and actuators is the part of this practice with the widest range behind it, from temperature sensors through to fingerprint biometric sensors. Wired device interfaces used in shipped products include Modbus, RS485 and DLMS meter protocols, described with the products they were used in on design by technology.

Getting data off the device

Sensor and actuator data is carried to backend servers over MQTT or RESTful APIs. Where the volume of raw data is the cost driver, processing can be moved onto the device instead: the AmbiPower automatic meter reader parses meter data locally with an edge algorithm, which cuts the cellular data a utility pays for and improves the reliability of meter communication.

Where firmware sits in a programme

The customer owns the IP in every engagement.

Discuss a firmware requirement

Send the target MCU or board, the sensors involved and where the data has to end up, and Ambimat will come back on scope and approach. Contact Ambimat to start.