There is an option for both online and offline server, but the offline version is more realistic since internet access would not be available most time
1. LoRa Gateway
- Broadcast Local Server to connect with mobile devices
- Users can connect through WiFi local servers to check data & can operate Motor, set the timer etc
- Send request to connect to Node LoRa device
- Receive GPS data through LoRa from Node LoRa Device.
- Save previous GPS data received from Node Device (with time stamp)
- Motor control button on local server (Can be operate by Mobile Web Browser)
2. Lora Node
- Receive GPS data and send it to Gateway LoRa (if connected).
- Store previous GPS data (if LoRa not connected)
- Have the option to send GPS data to AWS Cloud using GPRS (only if LoRa is not present).
- Will receive Motor control command from Gateway (only if connected with LoRa)
- Have an option to send the last known Location on registered Mobile number through GSM if Lora Disconnects for “X minutes”.
General Firmware Logic
A. IF LoRa Connects (Gateway & Node)
- Node will send GPS (live) data to gateway (every A Minute) (A is a condition that we decide on). Same time Node will save GPS data in its Heap Memory.
- User can send set control command for Motor at Node.
- User can connect and get Live GPS data on Local Server on gateway which is sended by Node.
- GPRS and GSM will be powered OFF for saving battery life or put on sleep mode at some specific period.
B. IF LoRa Not Connected
- Node will continue to save GPS data in its Heap Memory
- If LoRa not get connect for X mins , last saved GPS location will be send to registered Mobile Number on GSM
- The GPRS will send Live GPS data (or last known location data) on AWS.
This is still undergoing review with the team, additional firmware conditions would be added if need be.