Introduction: Cellular GPS Tracker With Cloud Maps
This project shows you how to build a device that tracks GPS location, sends data via a Skywire cellular connection to the cloud, and plots the GPS coordinates on a cloud connected trail map that is accessible from any computer or smart-phone in the world.
Step 1: Collect the Hardware
This is a list of all the material used in the project:
List of material (all of which is available at Digikey.com)
Part Number ------------- Description
NL-SW-EVDO-V ------- Skywire Cellular modem from NimbeLink
NL-SWAK --------------- Skywire Arduino kit from NimbeLink
MA301.A.AB.001 ------- Magnet Mount Cellular & GPS antenna from Taoglas
CAB.011 ----------------- Two SMA to U.FL cables from Taoglas
A000057 ----------------- Arduino Leonardo Board
102-1092-BL-00100 ---- USB A to Micro B cable
List of material (all of which is available at Digikey.com)
Part Number ------------- Description
NL-SW-EVDO-V ------- Skywire Cellular modem from NimbeLink
NL-SWAK --------------- Skywire Arduino kit from NimbeLink
MA301.A.AB.001 ------- Magnet Mount Cellular & GPS antenna from Taoglas
CAB.011 ----------------- Two SMA to U.FL cables from Taoglas
A000057 ----------------- Arduino Leonardo Board
102-1092-BL-00100 ---- USB A to Micro B cable
Step 2: Connect Antennas
Connect two SMA to U.FL adapter cables to connectors marked X1 and X3 on Skywire EVDO modem.
The SMA end of the cable connects to the antenna cables. One cable is marked GPS the other is GSM.
The cable marked GPS should connect to connector X3 for the GPS connection.
The cable marked GSM should connect to connector X1 for the cellular connection.
The SMA end of the cable connects to the antenna cables. One cable is marked GPS the other is GSM.
The cable marked GPS should connect to connector X3 for the GPS connection.
The cable marked GSM should connect to connector X1 for the cellular connection.
Step 3: Assemble Hardware
Plug Arduino shield into Arduino Leonardo board.
Plug Skywire EVDO modem into Arduino shield like shown on the product website.
Plug Skywire EVDO modem into Arduino shield like shown on the product website.
Step 4: Create Map Account
To create the online maps, create a free Exosite Portals account.
1) Create a free "Community" portal account here: https://portals.exosite.com/signup?plan=3676938388
2) As part of the account creation process, you have to validate your email address.
3) Once its activated, log in to the Exosite portals account.
1) Create a free "Community" portal account here: https://portals.exosite.com/signup?plan=3676938388
2) As part of the account creation process, you have to validate your email address.
3) Once its activated, log in to the Exosite portals account.
Step 5: Add the Device
1) Click the "Devices" item in the menu bar on the left side of the screen.
Step 6: Device Setup - Device Type
Select "Generic Device" option.
Step 7: Device Setup - Device Setup
On this page, choose 'generic' and your desired timezone.
Leave the "Device Location" field blank.
Click continue and then Submit on the next page.
Leave the "Device Location" field blank.
Click continue and then Submit on the next page.
Step 8: Device List
When you get to the device list view, click on the new GPS Device.
Step 9: Device Information View
Copy the CIK value or write it down somewhere because you need that later. The CIK uniquely identifies your device from all the other devices on Exosite's server. When you report data to Exosite, you must reference the CIK value.
Then click "Add Data Source"
Then click "Add Data Source"
Step 10: Data Setup - Configuration
Enter a Data Source Name in the first field, it can be any friendly name.
For the Data Source Format field, select "string".
Leave Unit blank.
For the Alias field, enter "GPSdata" which is case sensitive.
Then press Submit. On the next screen, press QUIT, then close the Device Information window by either clicking the CLOSE button or the X in the corner of the window.
For the Data Source Format field, select "string".
Leave Unit blank.
For the Alias field, enter "GPSdata" which is case sensitive.
Then press Submit. On the next screen, press QUIT, then close the Device Information window by either clicking the CLOSE button or the X in the corner of the window.
Step 11: Return to Default Dashboard
In the upper right hand corner, click on your username, and then the 'Home' link in the drop down menu.
This will return you to your default dashboard view.
This will return you to your default dashboard view.
Step 12: Clean Up the Default Dashboard
Remove the default 'Widgets' by clicking the 'down arrow' in each widget and selecting 'delete', then clicking 'Continue' on the following screen.
Step 13: Add Trail Map Widget
Click 'ADD WIDGET'.
Step 14: Select Trail Map
In the first drop down menu, select "Trail Map ".
Provide a Block Title of your choice, something like "My GPS Map".
Then click "CONTINUE"
Provide a Block Title of your choice, something like "My GPS Map".
Then click "CONTINUE"
Step 15: Trail Map Configuration
Select Widget size to be 'Big 4x4' so the map will take up a large portion of the dashboard.
In the 'Choose Device' field, select "GPS Device".
In the 'Select Data Source for Trail Data" field, select "GPS Data Points".
Change the 'Map Trail History' field to how many hours of history you want to plot whenever the web page refreshes.
Then click 'SUBMIT'
In the 'Choose Device' field, select "GPS Device".
In the 'Select Data Source for Trail Data" field, select "GPS Data Points".
Change the 'Map Trail History' field to how many hours of history you want to plot whenever the web page refreshes.
Then click 'SUBMIT'
Step 16: Blank Map View
You should now have a dashboard filled by a map-view that you can interact with, but there are no data points on the map yet.
Step 17: Modify Arduino Code
Download the Arduino reference code here: http://nimbelink.com/wp-content/uploads/2014/10/DE...
Open the file with the latest Arduino IDE.
Find the line of code that says:
"X-Exosite-CIK:"
And modify by inserting your CIK into the example:
"X-Exosite-CIK: df49a2603a4a411d12aa42892ce8686exxxxxxxx\"
Then save the file.
Warning, the code example is not hardened, it works as-is, but this was thrown together quickly as a proof of concept. There are extra comments and some things that are not necessary, but it gets the job done. :)
Step 18: Upload Code Into Arduino
Connect USB cable to Arduino USB port and to your PC.
Use the Arduino IDE software to upload the modified sketch onto your Arduino Leonardo.
Use the Arduino IDE software to upload the modified sketch onto your Arduino Leonardo.
Step 19: Take Device for a Test Drive and Enjoy Your Exosite Trail Map!
Power up your device and take it for a drive.
When you stop, open your dashboard on a smart phone or computer and checkout your trail map. You should see real data points from your journey! The image shown here is real data from my device, going to and from work and a friend's house.
When using the NL-SWAK shield, if you power the Arduino with 5V or the USB cable, it works. For example, use a cigarette lighter to USB adapter. The NL-SWAK cannot handle 12V directly.
If you want to power from 12V, the NL-SWDK-EVDO-V kit can accept this directly.
This is a link to the dashboard with real data: https://portals.exosite.com/views/1265154472/2460159184
When you stop, open your dashboard on a smart phone or computer and checkout your trail map. You should see real data points from your journey! The image shown here is real data from my device, going to and from work and a friend's house.
When using the NL-SWAK shield, if you power the Arduino with 5V or the USB cable, it works. For example, use a cigarette lighter to USB adapter. The NL-SWAK cannot handle 12V directly.
If you want to power from 12V, the NL-SWDK-EVDO-V kit can accept this directly.
This is a link to the dashboard with real data: https://portals.exosite.com/views/1265154472/2460159184