A type of programming that is used to create software that runs on small devices such as microcontrollers or sensors.