## 3 Development of RF WPT-Enabled IoT Application  
### Design Methodology  
The general methodology for the development of embedded applications and specifically its application towards the design of the wireless sensor network (WSN) solutions have been discussed in [53; 54], respectively. The traditional design flow consists of six phases, depicted in Figure 1[54]:  
1. In the first phase, the application is analyzed, and the requirements, desired functionalities, and operating environment get identified. 2. The data collected during the first stage are used for evaluating the design dimensions and balancing the respective trade-offs during the second stage. 3. The defined design dimensions and functionalities become the input of the third phase. During this phase, the technical requirements are defined, and the system's architecture, as well as the architectures of the HW and software (SW) components, are chosen. The completion of phase three may require multiple iterations or even result in a return to phase two if it is found that the defined requirements cannot be fulfilled. 4. The focus of the fourth phase is on the design and implementation of the new HW and SW components, configuration or modification of the already-existing components and the integration and testing of all the components as a single system. 5. Once all the components of the system are implemented and tested, a few nodes are prototyped and deployed in the test environment to test the networking mechanisms and check the performance of the network as a whole. If some problems are detected, the design may return to one of the earlier phases. 6. If no problems are detected, the application is deployed and tested on a large scale, and, if it succeeds, it may enter mass production. When this comes to the energy harvesting powered applications, these general guidelines and specifically phases 1-3 need to be adapted. Unfortunately, we are not aware of any previous attempts to methodologize the procedure of developing and in what follows we address this obvious omission. The principal difference between designing a conventional WSN application and the one, to be powered with energy harvesting, is the significance and depth of accounting the environment and its effects. For the conventional battery-powered system, the environment primarily affects the operation of the sensors (e.g., consider the sun heating up a sensor, making it report wrong pressure value) or change the radio channel condition (e.g., consider a car blocking the line of sight between a sensor node and a gateway). Meanwhile, for the systems based on energy harvesting, the changes in the environment (e.g., the closed curtains on a window) may drastically change the amount of energy available to the sensor nodes. Therefore, when analyzing the requirements of an EH-based application, the special attention needs to be paid to the study of the environment of operation and the dynamic processes happening there. This study must specify what orders of energy can be harvested in this particular environment from different sources. What is more important is that this study should also come up with the _energy availability model_, which would answer such questions as:  
* Does the energy become available periodically or randomly? * How long can the period of energy unavailability last? * How big can be the fluctuations in the energy? * Are there any particular trends in energy availability patterns? * How does the collected energy scales up depending on the position and design dimensions of the device? In parallel with the energy availability model definition, the model for IoT device consumption also needs to be determined. The careful comparison of these two models shows whether the target application is feasible and what are the key design dimensions and trade-offs.