The Internet of Things (IoT), has been growing at an exponential rate in the last couple of years. Every year new devices invade human daily life and waiting to be controlled. Controlling software must be developed to interact with these devices and new applications could be built on top of them. Many people can’t experience the true advantages of IoT as they are unable to build applications since they lack the required technological background. Model-Driven Engineering (MDE) can help these people as it solves software engine ering problems using models of the physical and virtual world. There aren’t many attempts, which try to use MDE in the world of IoT. There are even less attempts that try to help the technology illiterates to build IoT applications. This diploma thesis proposes some tools to model IoT devices and the connections between them. In addition it provides a textual grammar for the definition of those models. Further, it develops a library for driving IoT devices through a common API. Also, using automated code source generation it proposes a way of controlling these devices through a raspberry pi and communication endpoints.