Giter Club home page Giter Club logo

mbed-os-ublox-app's Introduction

mbed-os: u-blox Test Application

This repo contains an application that pulls together all the bits of the u-blox integration of the new mbed 5 release and builds something runnable for Sara-N.

Prerequisites

To fetch and build the code in this repository you need first to install the mbed CLI tools and their prerequisites. This will include a compiler (you can use GCC_ARM, ARM or IAR) and you will need to use mbed config to tell the mbed CLI tools where that compiler is.

Repo Structure

The repo structure is quite confusing; it goes like this:

  • What you see here is the top level. It contains only the test application.
  • Look for the vital little file mbed-os.lib. It really is vital.
  • Because github can't do references to repos from within repos (like good 'ole SVN did), ARM have invented these .lib files. The name is very confusing as all the file contains is a link to another repo (lnk would have been a better file extension to choose). When you use the mbed command line tools or the mbed on-line IDE it understands these .lib files. So the effect of mbed-os.lib is to tell the mbed tools to go get the github URL inside the mbed-os.lib file and put it in the sub-directory mbed-os. In the on-line IDE this is called a library, hence the confusing name.
  • So, you MUST use the mbed command line tools to sort everything out for you. For instance, to create a new mbed-os application for yourself, let's call it my-app, create the my-app directory, cd to it and then (assuming you have the mbed CLI tools installed) enter mbed new .. This will go and get all of the latest mbed-os release and put it into the correct sub-directories. All you need to do then is add your application file(s) to the top-level directory and you have a code tree which should compile and run 'on' mbed-os.

Downloading This Code

  • Clone this repo.
  • Change directory to this repo and run:

mbed update

...to get the very latest mbed.

Building This Code

You need to set the target and the toolchain that you want to use. The target and toolchain we'll use with this application is SARA_NBIOT_EVK and we will chose the toolchain ARM, though note that GCC_ARM and IAR toolchains are also supported. To get a list of supported targets and their toolchains enter mbed compile -S.

You can set the target and toolchain for this application once by entering the following two commands (while in the top-level directory of the cloned repo):

mbed target SARA_NBIOT_EVK

mbed toolchain ARM

Once this is done, build the code with:

mbed compile

You will find the output files in the sub-directory .build\SARA_NBIOT_EVK\ARM\.

Other Things

  • By default mbed builds with maximum optimisation and no debug information, i.e. a release build. To build in such a way that source level single stepping is available, do a clean build with the following switch added to your compilation command line:

--profile mbed-os/tools/profiles/debug.json

...so for instance:

mbed compile -c --profile mbed-os/tools/profiles/debug.json

  • Eclipse project files are included but you can also build from the command-line as above.

mbed-os-ublox-app's People

Contributors

robmeades avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.