5. Working - rasikarane/Final-Embedded-Project GitHub Wiki
The pendant is very simple to operate. It has three modes which can be toggled between using a tactile switch. The output for the different modes have been displayed on the LED ring. Each mode has designated color for LED to distinguish between them. The complete working of the pendant is as follows:
On turning on for the first time, the GPS has to lock and detect signals. This is done by giving it clear view of the sky. Once the GPS locks the signals, it automatically sets time according to appropriate timezone. Now onward, it does not need to detect this. It remembers you previous location and its time zone.
Watch mode is the first mode that the pendant starts as default. It does the above steps to detect timezone and shows correct time. It displays this by using orange LED for hour hand and yellow LED for minute hand. If the hand overlap, it is indicated by a purple LED. This mode works similar to a regular watch except the interval. As I used 16 LED instead of 12, the interval to change from one LED to next is approximately 3.75 minutes instead of 5 minutes. We could use a 12 LED NeoPixel ring to avoid this confusion. To move to the next mode, simply press the switch for 3-4 seconds.
Navigation mode is the next mode. In this mode, GPS tracks your locations and provides directions to a fixed location that can be fed into the code in form of latitude and longitude. For this project, I have used my home address. A yellow LED will constantly point in the direction I should walt to reach home. Incase I walked in the wrong direction, the system takes feedback from GPS and compass and guides me back to the correct path by reversing the direction for the distance that I covered. This mode also had 5 ranges to make it easy to detect the destination. The yellow LED turns red indicating at about 5m away.
The last mode is the Compass mode. It simply always points towards North. It can be used to figure out directions.
Here is the link to the Demo video: FLORA Pendant Demo
Errors: The project is completely working yet it has some errors. The first error is that it is taking a long startup time initially to figure out the time. This maybe because of the weather conditions. Another error is that the navigation mode sometimes randomly flickers LEDs in any directions for fractions of seconds. I haven't been able to find out why it does so but it shows the correct direction if given sometime to calibrate. The third and last error is that I haven't been able to make it work on battery. I ordered the correct specification battery but the system doesn't work if connected to the battery. Currently, it only works on USB power. This is because maybe the battery I have, is faulty,but this issue can be solved by replacing it with a new one.