demo with update made to thread depreciation
Dependencies: GPS_Provider X_NUCLEO_GNSS1A1
README.md
- Committer:
- HarryKeane
- Date:
- 2020-01-31
- Revision:
- 4:4e909af6e7b9
- Parent:
- 1:8d270072416d
File content as of revision 4:4e909af6e7b9:
# TeseoLocation This repo contains a GPS_Provider example applications based on mbed OS and built with [mbed-cli](https://github.com/ARMmbed/mbed-cli) meant for building an executable. Please browse to subdirectories for specific documentation. Getting Started =============== Pre-Requisites -------------- To build this, you need to have a computer with the following software installed: * [CMake](http://www.cmake.org/download/). * [mbed-cli](https://github.com/ARMmbed/mbed-cli). Please note that **mbed-cli has its own set of dependencies**, listed in the installation instructions. * [Python](https://www.python.org/downloads/). * [ARM GCC toolchain 4.9.x](https://launchpad.net/gcc-arm-embedded/+milestone/4.9-2015-q3-update). * A serial terminal emulator (e.g. screen, pySerial, cu). * If the OS used is Windows, the serial driver of the board has to be correctly installed. * For boards with mbed interface firmware the installation instructions are located (here)[https://developer.mbed.org/handbook/Windows-serial-configuration] In order to use GPSProvider in mbed OS you need one the following hardware combination: * A supported target, such as the [NUCLEO-F401RE](http://www.st.com/en/evaluation-tools/nucleo-f401re.html), with an external GPS peripheral, such as an X-NUCLEO-GNSS1A1. The [`GPS_Provider`module](https://os.mbed.com/teams/ST/code/GPS_Provider/) provides the GPS APIs on mbed OS. Targets for GPS --------------- The following targets have been tested and work with these examples: * Boards with an ST shield plugged in: * NUCLEO-F401RE Building and testing the examples --------------------------------- __To build the example:__ 1. Clone the repository containing the example: ``` $ git clone https://github.com/to_be_defined/TeseoLocation.git ``` or, alternatively, ``` $ mbed import https://github.com/to_be_defined/TeseoLocation.git ``` **Tip:** If you don't have GitHub installed, you can [download a zip file](https://github.com/to_be_defined/TeseoLocation/archive/master.zip) of the repository. 2. Update the source tree: ``` $ mbed update ``` 3. Run the build: ``` $ mbed compile -t <ARM | GCC_ARM> -m <YOUR_TARGET> ``` 4. Exporting to desktop IDEs ``` $ mbed export -i <UVISION | GCC_ARM | IAR | COIDE> -m <YOUR_TARGET> ``` **Note:** Please, refer to [mbed-cli](https://github.com/ARMmbed/mbed-cli) for details about tool guidelines. __To run the application on your board:__ 1. Connect your mbed board to your computer over USB. It appears as removable storage. 2. When you run the ``mbed compile`` command, as you did above, mbed cli creates a BIN or an HEX file in a ```BUILD/<target-name>/<toolchain>``` directory under the example's directory. Drag and drop the file to the removable storage. __TeseoLocation application description:__ In this application, real time GNSS data received by the Teseo-LIV3F device can be displayed through a serial connection and a serial terminal on a PC. Furthermore the user can run commands enabling three [advanced features](https://github.com/to_be_defined/X_NUCLEO_GNSS1A1): * Geofencing * Odometer * Data Logging 1. A serial connection should be set up between the Nucleo and the X-NUCLEO-GNSS1A1 boards and the PC with the following parameters: * baud rate: 115200 * data: 8 bit * parity: none * stop: 1bit * flow control: none * New-line (Tx/Rx): CR ![](img/serial_setup.png) ![](img/serial_setup1.png) **figure 1** Serial connection parameters 2. The user can select among different options to: * get in a human readable format information related to the acquired GNSS position (or the satellites in view, the active satellites, and so on) * enable feature (geofencing, odometer, data logging) * configure a geofence circle * require geofence status * start/stop feature (odometer, data logging) ![](img/teseo_app.png) **figure 2** TeseoLocation Application menu