Code Monkey home page Code Monkey logo

s1-sdk's Introduction

S1 Software Development Kit

This is the main SDK for the S1 System-on-Module. It doesn't do much on it's own, you should use it with an example. Try it with the FPGA blinky demo, or the S1 ECG demo.

You will however need to setup your system in order to build everything.

Setting up the tools

  • First, download and extract the Nordic nRF5 SDK somewhere onto your system.

Then install the following tools:

MacOS

We recommend using homebrew along with our brew formula to install everything.

Windows

Most of these tools are available as installers, but some of them might need Cygwin or similar. It's best to Google how to do this, and we will update this page once we've tested it.

Linux

Most of these tools are available from standard package managers, but you can build them for source quite easily.

Overview of files:

We've designed this SDK so you can add it as a sub-module into your own git projects. The files here are therefore very lightweight and designed to be easy to use.

  • Makefile - This is the core makefile that ensures that the nRF code can be built. You should call it with your own Makefile where you specify your applications files and any other settings you may want.

  • s1.c - These are the core functions that run on the nRF chip. Access them via s1.h

  • s1.h - Here you'll find the APIs for configuration and runtime functions that run on the nRF chip. You can include this file and call them from your own application code.

  • s1.ld - This is the linker file which determines the memory layout within the nRF chip when the code is built.

  • s1.pcf - The FPGA pin configuration resides here. The names of the pins correspond to the pins of the FPGA, where Dx are the exposed pins, and the remaining pins are internal to the module.

  • s1_tests - This folder includes a test application which the SDK is tested against on every release. Run this application on your module to check it's correctly functional. Note that it sets many different voltages on the Vio and Vaux lines, which may damage external circuitry. It's best run on a bare Popout board without any additional devices connected. To build the test application, run make S1_TEST=1 NRF_SDK_PATH=... directly from the SDK folder.

That's it! Again in order to use these files, it's better to look at an example project, and copy that layout for your own application.

Precautions

Be careful if you decide to access S1 core components outside of the SDK. The PMIC is capable of blowing up everything on the module if set incorrectly, and we're already tuned things to work as efficiently as possible.

It's also possible to misconfigure the battery charger and send dangerously high currents to small batteries. Be sure to read the datasheet of the PMIC, as well as our documentation center before connecting batteries to the S1.

Give us feedback

As this is a new project, we'd love for those using the S1 to let us know of any bugs or ideas for improvement. File them on the GitHub issue tab.

s1-sdk's People

Contributors

rohitrathnam avatar siliconwitch avatar

Watchers

 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.