About the project

Many Internet of Things devices are made to be wireless. In order for them to operate, they make use of some form of energy harvesting system. Once power is harvested, it is stored in an energy storage unit, which is then used to power the device with values neither constant nor of high magnitude. The result is then, when dealing with a wireless device, it is highly likely, if not guaranteed, that there will be times when the system is not powered. In order to help with power usage, a hysteresis loop is introduced in order to guarantee the device is not constantly cycling on and off when it is charged at the minimum power threshold. However, this hysteresis loop also causes inconsistency for when the device is active and inactive. Therefore, a method of ensuring that the device is only active at specific times is necessary.


The solution presented by our team to this problem is the creation of a device which utilizes a wake-up system to wait for a wake-up signal to be received. Upon reception, the wake-up system will interrupt the hysteresis loop and force the microcontroller (MCU) to activate, allowing the device to complete time-dependent tasks. This will create an efficient and feasible way of waking up low-power wireless IoT devices, allowing for greater ability for IoT devices to be synchronized and to perform tasks in unison if they have enough charge to be powered on and are in sleep-mode.

Overview

The end-product is expected to be a low-power IoT device composed of a digital computing platform (a low-power MCU), supporting electronics for the MCU, an RF Harvester, and a Wake-Up system. The system will be designed to operate in commercial environments, such as office buildings, where electro-magnetic noise is not of significant concern and where RF signals are likely to be received.


The final product will be a low-power IoT device composed of a digital computing platform (MCU), a RF Harvester, a Wake-Up module and an energy storage unit. All of these modules will be assembled on a PCB with a suitable enclosure for protection from the environment (i.e. dust, low levels of moisture). Further details on each portion of the product are provided below.


The MCU will be programmable by the user, and can be used in any way the user sees fit and reasonable. The pins will be broken out so that the final product can interface with other boards, making the product like a device “shield.” It will be necessary for the device to at least have one pin configured as a digital input. When “woken up” by the Wake-Up system, the pin will be pulled high or low, allowing for the MCU to be aware that it was activated by a trigger instead of by receiving its minimum operating voltage. A secondary pin can also be used to make the Wake-Up system send a signal to other neighboring IoT nodes. There will be an output pin used to connect to the transmission antenna, along with a provided guide on how to program the functionality to transmit the trigger signal if the user intends to use the device to trigger another one.


The RF Harvester will not be something the user will be able to interface with or access. Any attempt to change the operation of the harvester may result in unexpected behaviour and possibly failure of the whole device. The Wake-Up system is the module responsible for receiving and processing the input trigger. It is up to the user on how to generate the RF signal to trigger the device. A provided option is using one of these IoT devices to trigger another one. The device is meant to trigger when a number of specific frequencies are used in the analog trigger. This implementation prevents accidental triggering which could significantly drain the device's energy if it keeps cycling on and off. The trigger is not intended to be secure from external sources; meaning that if someone knows the frequency pattern being used, they will be able to trigger the IoT device if it has enough charge to support the device being active.