Abstract
In a near future it is expected that most things we rely on in our everyday life will contain sensors and electronic based information, have computing power, run embedded software and connect to networks. A multitude of heterogeneous things will operate in a highly dynamic environment and will collaborate with other connected systems and things to provide users with adaptable services. Constructing and controlling such adaptive things is complex. A main challenge is to cope with the dynamicity which requires the things to autonomously adapt to various execution contexts. In this paper we present an approach to develop adaptive firmwares for devices which do not have the resources to rely on advanced operating systems, middlewares or frameworks to support runtime adaptation. The paper is illustrated with the example of an adaptive temperature sensor network running on a microcontroller platform.