Git Product home page Git Product logo

neblina-swift's Introduction

Neblina™ Development Kit iOS/OSX Swift

=========

Neblina Board

Neblina™

The Neblina™ module is a low-power self-contained AHRS, VRU and IMU with Bluetooth® SMART connectivity developed by Motsai. The miniature board built with the latest HDI PCB technology, features a high-performance patent-pending sensor fusion algorithm on-board, that makes it perfect for wearable technology devices in applications such as biomechanical analysis, sports performance analytics, remote physical therapy monitoring, quantified self , health and fitness tracking, among others.

Neblina™ Development Kit

DK Board

The Neblina™ Development Kit serves as a reference design for Neblina™ integration, I/O expansion and an onboard Debug J-Tag for custom firmware development. The development kit with the extensive software support allows system integrators and evaluators to start development within minutes.

This repository is part of the development kit that provides a Swift interface to interact with the Neblina™.

Prerequisite

  • Have on hand a Neblina™ module or Development Kit
  • An iPad or iPhone and a Mac computer with Bluetooth LE capability.
  • Clone or download this repo.
  • XCode 8 is required to compile
  • iOS/OSX programming skills

Functional check

Follow the hardware Quick Start guide to make sure that the Neblina™ module or Development Kit is powered on and functional.

Download or Clone this repo using the command

$ git clone https://github.com/Motsai/neblina-swift.git

Open the NebCtrlPanel project (iOS or OSX), compile and execute the App. The initial screen will list all available Neblina™ devices. Select one of the Neblina™ that shows up.

iPhone Screen Shot OSX Screen Shot
iPhone Screen Shot NebCtrlPanel OSX

The iPhone & iPad will switch to the command screen. The "BLE Data Port" switch will be on if the communication with Neblina™ is successful. Switch on the Quaternion stream. The quaternion data should be displayed at the bottom of the screen.

iPhone Screen Shot iPad Screen Shot
iPhone Screen Shot iPad Screen Shot

Making your own App with Neblina™

The project NebTutorial1 is the starting point to get a feel of how to connect to the Neblina™ via Bluetooth and retreive data. It is a simple iPhone App that shows a TableView with a list of detected Neblina™ device, a button to enable Euler Angle Stream and a TextField to display the Euler data.

Tutorial1 Screen Shot

Need to know when creating new project

In order to get swift compiler to compile with C defined constant, we need to specify a bridging header. This is done going into Build Settings and set the Object-C Bridging Header with "Neblina-Bridging-Header.h". This Neblina-Bridging-Header.h header file located in src folder of the root of this repository. See Xcode screen shot bellow for more details.

XCode Screen Shot

Beside the bridging head, the following files are also needed to be added to the project. They are located in src folder from the root of this repo.

  • neblinaFusion.h
  • Neblina-Bridging-Header.h
  • neblina.h
  • Neblina.swift
  • NeblinaControl.swift

API documentations

http://docs.motsai.com

neblina-swift's People

Contributors

acourt avatar jsamch avatar hnhoan avatar

Watchers

James Cloos avatar  avatar  avatar Abhay Ghatpande avatar  avatar Omid Sarbishei avatar Scott Laughlin avatar  avatar  avatar

Forkers

nagyistge

neblina-swift's Issues

Packet count and data rate

It would be a great tool for debugging and tuning firmware to have packet count and calculate data rate display on iOS

Quaternion output differs from Euler angle output

In some orientations, the visualisation is incorrect when Euler angles are used. In some orientations, notably when the yaw is around 90 degrees, the Euler angle does not show the same orientation as the quaternion. The quaternion representation is correct.

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.