IRPyro API  (sKEMLIB1)
Collection of routines and data structures covering the functionality of the IRPyro sensor
IRPyro API (sKEMLIB1)
Date
March 2018
Version
Release 1.0.6

Introduction

The IRPyro API provides a consistent set of functions to communicate with one or multiple IRPyro sensors. The functions have been designed to be independent of the type of circuit board or micro controller used to make the code portable to other platforms.

The IRPyro API components are:

IRPyro API structure

Motivation

This library has been created to help IRPyro users to access the sensor and discover its capabilities:

  • Establish I2C connection to the IRPyro sensor
  • Configure the IRPyro sensor:
  • Turn channels on/off
  • Set analog and digital filters
  • Set sample rates
  • Set gains
  • Set power mode
  • Set wake-up thresholds and times
  • Set master/slave mode for syncing between IRPyro
  • Read sensor output into software data structure
  • Reset / Close

In order to reduce the learning curve, the code provided has been designed to be easy to use. Due to open nature and the layered approach of the code, the designer can access lower level functions to improve performance and /or reduce memory footprint.

The current implementation is customized for the STM32F303K8T6 processors using the STM standard peripheral library for the low level functions, and C99 option enabled for macros support.

Attention

© COPYRIGHT 2018 _KEMET, Ltd

    Copyright (c) 2018, _KEMET, Ltd 
    All rights reserved.

    THIS SOFTWARE IS PROVIDED BY _KEMET, Ltd ''AS IS'' AND ANY
    EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
    WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
    DISCLAIMED. IN NO EVENT SHALL _KEMET, Ltd BE LIABLE FOR ANY
    DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
    (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
    LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
    ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
    (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
    SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.