Embedded software is computer software, written to control machines or devices that are not typically thought of as computers. It is typically specialized for the particular hardware that it runs on and has time and memory constraints. A precise and stable characteristic feature is that no or not all functions of embedded software are initiated/controlled via a human interface, but through machine-interfaces instead. Manufacturers 'build in' embedded software in the electronics of e.g. cars, telephones, modems, robots, appliances, toys, security systems, televisions and set-top boxes, and digital watches etc.
IoT frameworks might help support the interaction between "things" and allow for more complex structures like distributed computing and the development of distributed applications. Currently, some IoT frameworks seem to focus on real-time data logging solutions, offering some basis to work with many "things" and have them interact. If we are creating a fully fledged distributed IoT service, there are many angles to consider: development of the embedded device itself, the IT and networking services that power it, data and analytics, and design and development of an integrated UI.
For developing IoT project we will need to: