GithubHelp home page GithubHelp logo

ruuvi / ruuvi.node_nrf91.c Goto Github PK

View Code? Open in Web Editor NEW
5.0 6.0 2.0 3.74 MB

nRF91 project for Ruuvi Node

License: BSD 3-Clause "New" or "Revised" License

CMake 11.85% C 84.35% C++ 3.09% JavaScript 0.01% Makefile 0.66% Shell 0.04%

ruuvi.node_nrf91.c's Introduction

ruuvi.node_nrf91.c

nRF91 project for Ruuvi Node

Build Environment

Ruuvi Node is developed using nRF Connect SDK(NCS) V1.4.0.

NCS

Nordic Semiconductor keeps up-to-date instructions on how to setup the SDK for Linux, Mac OSX and Windows. Instructions can be found at https://developer.nordicsemi.com/nRF_Connect_SDK/doc/1.4.0/nrf/getting_started.html

Cloning

To clone the directory follow the following. the examples given assume you are using linux. All commands assume that nRF Connect SDK has been setup as per the instructions in the above link.

cd ~/ncs/nrf/applications
git clone https://github.com/ruuvi/ruuvi.node_nrf91.c.git
cd ruuvi.node_nrf91.c

Building West

Once in the project directory, make can be used to build the different variances of the firmware and flash them to a board.

# Makes all required build directories and makes all FW variations
make

# Makes the LTE variance, then flashes it
make lte
make flash_lte

# Makes the debug LTE variance, then flashes it
make lte_debug
make flash_lte_debug

# Makes the NB-IoT variance, then flashes it
make nbiot
make flash_nbiot

# Makes the debug LTE variance, then flashes it
make nbiot_debug
make flash_nbiot_debug

# Cleans all build directories
make clean

Copies of the build files will be copied to the ruuvi.node_nrf91.c/ruuvi_node_builds/ These files can be used later on with nRF Connect or nrfjprog to flash the board later or on another computer.

Building Segger

Installing SES

Segger Embedded Studio Nordic Edition is required to be able to work with NCS projects. Instruction on installing this can be found at: https://developer.nordicsemi.com/nRF_Connect_SDK/doc/1.4.0/nrf/gs_installing.html#installing-ses-nordic-edition

Preparing the project

Due to the imorting scripts and the project being based on cmake and ninja the files are customised to the user. A script has been that can be run to chaneg the default username 'ruuviUser' to your. NOTE: this assumes that you are working on linux

To run the script run the following:

cd ~/ncs/nrf/applications/ruuvi.node_nrf91.c/SES/

# Replace bob with your username that is you home directory eg /home/bob
./prepare.sh bob

By running the script, all files in the SES project folder will have ruuviUser changed to your own and symlinks will also be edited.

Opening the project in SES

Ensure that SES Nordic Edition is open. Then go to File > Open Solution and navigate to ~/ncs/nrf/applications/ruuvi.node_nrf91.c/SES/LTE_DEBUG/ruuvi.node_nrf91.c.emProject

NOTE: The LTE_DEBUG.emProject is a solution within the project and should not be opened directly as the build will fail.

Licenses

Ruuvi code is BSD-3 licensed.

The GitHub workflow is adapted from @bifravst/firmware and is BSD-5-Clause-Nordic licensed.

ruuvi.node_nrf91.c's People

Contributors

thebasti0n avatar dependabot[bot] avatar ojousima avatar

Stargazers

Juha S Sarkijarvi avatar Elias Berg avatar  avatar Mohamed Abdelgaid avatar  avatar

Watchers

James Cloos avatar Elias Berg avatar Lauri Jämsä avatar  avatar  avatar  avatar

ruuvi.node_nrf91.c's Issues

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.