655 Commits

Author SHA1 Message Date
Noel Eck
ac89a4a130 examples: Add install component for all examples
Provide the functionality to install all UPM examples to
DATADIR/upm/examples.

Signed-off-by: Noel Eck <noel.eck@intel.com>
2017-11-16 12:07:00 -08:00
Noel Eck
18b8ca2633 examples/python: Add/update shebang line
Added/updated the shebang line on all python examples with:

Also chmod +x a few of the python examples.

Signed-off-by: Noel Eck <noel.eck@intel.com>
2017-11-02 15:39:45 -07:00
Noel Eck
a96c607fb5 pyupm_led: Fixed example for led
This commit fixes issue 614.  Updated the example to use pyupm_led as
the module name (and skip the local module rename).

Signed-off-by: Noel Eck <noel.eck@intel.com>
2017-11-02 14:52:41 -07:00
Abhishek Malik
6cc5c9691d Examples: Removing MRAA reference from examples
Signed-off-by: Abhishek Malik <abhishek.malik@intel.com>
2017-10-02 10:41:07 -07:00
Mihai Tudor Panu
e8aeaff162 curieimu: adding missing include for c++ example
Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
2017-09-27 16:52:24 -07:00
Noel Eck
5cefe7f5f3 examples: Remove heap allocation from C++ examples
Cleanup of UPM C++ examples.  Switched from heap allocation to
stack allocation when possible.  This simplifies the samples since it
removes the need for explicit memory management.  A script was used to
identify and replace pointer use.  To simplify the replace script, I
re-formatted the C++ examples using the UPM .clang-format file.
Unfortuantely this changes the look of the UPM C++ examples to a large
degree.  However, examples will now have a standard look/feel and
uniform formatting.

    * Ran clang-format w/provided UPM .clang-format file
    * Removed new's/delete's whenever possible (left those in interface
      examples)
    * Added IIO sensor library implementation of callback void* arg
    * Converted all sleeps to upm defined delays (added header when
      necessary)
    * Scrubbed CXX example includes

Signed-off-by: Noel Eck <noel.eck@intel.com>
2017-09-19 12:41:58 -07:00
Stefan Andritoiu
ae77966204 java: added some of the missing samples
Signed-off-by: Stefan Andritoiu <stefan.andritoiu@gmail.com>
Signed-off-by: Abhishek Malik <abhishek.malik@intel.com>
2017-08-10 16:57:11 -07:00
Nicolas Oliver
7bee29ba62 sonar: fix sonar scan
remove utf8 characters from:
  * examples/c++/mcp9808.cxx
  * examples/c++/tmp006.cxx
  * src/bmp280/bmp280.c
  * src/max30100/max30100.c

add -j8 options to make command in scripts/sonar-scan.sh

Signed-off-by: Nicolas Oliver <dario.n.oliver@intel.com>
2017-07-28 14:56:57 -07:00
Noel Eck
5e7a8b41a3 memory: Hide all copy/assignment ops for class w/heap allocation
Many of the UPM libraries allocate space on the heap but do not
explicitly handle copying and assignment.  This commit uses C++11 delete
to forbit both the copy and assignment operator for these classes.

The C++ examples which used assignment operators to initialize class
instances were also updated since it did not appear necessary in those
cases to use the assignment operator.

Signed-off-by: Noel Eck <noel.eck@intel.com>
2017-07-14 11:47:06 -07:00
Stefan Andritoiu
74cb3504f3 java: updated examples to use AbstractList<> for data containers
Signed-off-by: Bogdan Ichim <bogdan.ichim@rinftech.com>
Signed-off-by: Stefan Andritoiu <stefan.andritoiu@gmail.com>
Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
2017-06-27 12:17:12 -07:00
Abhishek Malik
b90c5a7710 HCSR04: Modifying implementation and adding examples
Signed-off-by: Abhishek Malik <abhishek.malik@intel.com>
2017-06-07 11:46:12 -07:00
Noel Eck
da18bac925 ims: Updated IMS sensor addressing
The IMS library will now change its I2C address after resetting the HW to a new
address.  It will attempt to close the mraa context and re-init each
time.

Signed-off-by: Noel Eck <noel.eck@intel.com>
2017-05-31 14:39:07 -07:00
Stefan Andritoiu
2b70bea44f java: Fixed HTU21DSample
Signed-off-by: Stefan Andritoiu <stefan.andritoiu@gmail.com>
Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
2017-05-31 11:43:54 -07:00
Jon Trulson
274fd9b608 lsm6dsl: Initial implementation; C; C++ wraps C; FTI; examples
Signed-off-by: Jon Trulson <jtrulson@ics.com>
2017-05-23 16:20:51 -06:00
Jon Trulson
ee0aaa89eb lsm6ds3h: Initial implementation; C; FTI: C++; C++ wraps C; examples
Signed-off-by: Jon Trulson <jtrulson@ics.com>
2017-05-22 16:43:49 -06:00
Niti Rohilla
07f3029f10 upm: enable LIDAR-Lite V3 Optical Distance Measurement sensor library
and example

LIDAR-Lite v3, a compact, high-performance optical distance measurement
sensor from Garmin™. It is the ideal solution for drone, robot or unmanned
vehicle applications.

The library provided is libupm-lidarlitev3.so
The example provided is lidarlitev3.cxx where it will print the distance
of object/obstacle from the sensor.

The image of the sensor is at docs/images/lidarlitev3.jpg

Signed-off-by: Saloni Jain <saloni.jain@tcs.com>
Signed-off-by: Niti Rohilla <niti.rohilla@tcs.com>
Signed-off-by: Abhishek Malik <abhishek.malik@intel.com>
2017-05-19 10:27:53 -07:00
Abhishek Malik
b4bc15201b VEML6070: Adding separate i2c contexts for separate addresses
Signed-off-by: Abhishek Malik <abhishek.malik@intel.com>
2017-05-18 14:28:29 -07:00
Jon Trulson
c70f378f72 lis2ds12: Initial implementation C; C++; FTI; examples
Signed-off-by: Jon Trulson <jtrulson@ics.com>
2017-05-15 14:59:22 -06:00
Mihai Tudor Panu
c484056cf0 htu21d: add js and py samples, put sensor on known limitations list
Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
2017-05-11 13:04:21 -07:00
Jon Trulson
21a1860ec2 rn2903: Initial implementation; C; C++ wraps C; examples
This requires a new MRAA with UART sendbreak support.

Signed-off-by: Jon Trulson <jtrulson@ics.com>
2017-05-09 13:44:12 -06:00
Abhishek Malik
6c383dbd42 TMP006: Adding very basic support for TMP007
Signed-off-by: Abhishek Malik <abhishek.malik@intel.com>
2017-05-08 10:30:55 -07:00
g-vidal
7688e5f230 TCA9548A : initial implementation
merged with #413 from maleek

Signed-off-by: g-vidal <gerard.vidal@ens-lyon.fr>
Signed-off-by: Keelan Lightfoot <keelanlightfoot@gmail.com>
Signed-off-by: Jon Trulson <jtrulson@ics.com>
2017-05-07 16:41:32 -06:00
Abhishek Malik
e7ca8cf18b VEML6070: Initial Commit
This commit provides a basic driver for the Vishay VEML6070 UV
Sensor. Some functionality might be missing. Binding examples have
not been tested as of now.

Signed-off-by: Abhishek Malik <abhishek.malik@intel.com>
2017-05-04 11:18:13 -07:00
Noel Eck
563519ae4f unicode: Remove B7 unicode character from examples
The 00B7 unicode character in 4 of the Java examples can cause warnings
(and possible errors) when compiling.  Removed to minimize this risk.

Signed-off-by: Noel Eck <noel.eck@intel.com>
2017-04-28 11:39:57 -07:00
Stefan Andritoiu
fe9254c004 java: Created a general interface that is no longer included in each package and updated examples
Signed-off-by: Bogdan Ichim <bogdan.ichim@rinftech.com>
Signed-off-by: Stefan Andritoiu <stefan.andritoiu@gmail.com>
2017-04-25 11:57:54 -07:00
Noel Eck
21ecbd90eb ANDROID: Treat utilities as its own library
Since src/utilities now builds a C/C++ library, other targets which were
using symbols from utilities now need to include the correct target
dependency.  This is mainly for upm_delay* functions.  Added utilities-c
target to all sensor library CMakeLists.txt which require it.

Moved macro for __FILENAME__ from upm_utilities.h to upm_fti.h since
ONLY the FTI headers used this.

Signed-off-by: Noel Eck <noel.eck@intel.com>
2017-04-24 10:27:44 -07:00
Noel Eck
0bd68e4e2b ANDROID: CMake/src changes to build on android-24
* Updated pom file generation: Generate pom files after all sensor
      library targets have been created - allows for dependencies
    * Changes for compiling on Android
    * Check for mraa build options: Look at symbols in mraa library to
      determine UPM build options (example: mraa_iio_init, mraa_firmata_init)
    * Add per target summary for C/C++/java/nodejs/python
    * Added hierarchy to fti include directory...
        old: #include "upm_voltage.h"
        new: #include "fti/upm_voltage.h"
    * Removed unimplemented methods from mpu9150 library and java example
    * Add utilities-c target for all c examples.  Most of the C examples
      rely on the upm_delay methods.  Add a dependency on the utilities-c
      target for all c examples.
    * Updated the examples/CMakeLists.txt to add dependencies passed via
      TARGETS to the target name parsed from the example name.  Also updated
      the interface example names to start with 'interfaces'.
    * Updated src/examples/CMakeLists.txt to ALWAYS remove examples from the
      example_src_list (moved this from end of function to beginning).

Signed-off-by: Noel Eck <noel.eck@intel.com>
2017-04-24 10:27:35 -07:00
Jon Trulson
5cc4e2120a lsm303d: Initial implementation, C, C++ wraps C
Signed-off-by: Jon Trulson <jtrulson@ics.com>
2017-04-19 16:44:40 -06:00
Jon Trulson
1f5f466691 lsm303agr: Initial implementation, C, FTI, C++ wraps C
Signed-off-by: Jon Trulson <jtrulson@ics.com>
2017-04-18 12:07:05 -06:00
Jon Trulson
19c58ebba2 lsm303: rename to lsm303dlh
There are a variety of LSM303 devices out there with various
incompatibilities and differing capabilities.  The current lsm303
driver in UPM only supports the LSM303DLH variant, so it has been
renamed to lsm303dlh to avoid confusion and to make it clear which
variant is actually supported.

All examples and source files have been renamed, including header
files.  In addition, the class name, LSM303, has been renamed to
LSM303DLH.  No other functionality or behavior has been changed.

Signed-off-by: Jon Trulson <jtrulson@ics.com>
2017-04-12 11:52:50 -06:00
Mihai Tudor Panu
7e5f6e9856 max31723: added bus parameter to constructor
Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
2017-04-10 18:37:08 -07:00
Mihai Tudor Panu
d004aa68b7 lpd8806: added bus parameter to constructor
Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
2017-04-10 18:36:05 -07:00
Noel Eck
39df7fd10f examples: Handle additional example dependencies
Dependencies added via 'TARGETS' in add_example are 'in addition to' the
dependency provided by the example filename.

    * Small change to examples/CMakeLists.txt to handle additional
      dependencies
    * Prefix 'interfaces-' onto the interfaces examples

Signed-off-by: Noel Eck <noel.eck@intel.com>
2017-04-06 14:16:55 -07:00
Abhishek Malik
b8738b32ca Removing example not required anymore
Signed-off-by: Abhishek Malik <abhishek.malik@intel.com>
2017-04-06 10:20:47 -07:00
Jon Trulson
cdb697fd7b nrf8001 examples: minor changes to avoid clang build failures
Signed-off-by: Jon Trulson <jtrulson@ics.com>
2017-04-05 18:28:36 -06:00
Noel Eck
e2fe04927f examples: Added ending 'Interesting' tags
A handful of examples were missing the terminating 'Interesting' tag.
Added these.

Signed-off-by: Noel Eck <noel.eck@intel.com>
2017-04-05 15:43:02 -07:00
Noel Eck
96b219d2fb examples: Added 'Interesting' tag to examples
* Added //! [Interesting] tag to all examples which were missing this
* Removed windows CR/LF
* Removed pointers from examples since these are not needed.  Removed
  try/catch which seems to be there only to handle failing pointers and
  return value from main.
* Reformatted examples when the formatting was wonky/inconstant.

Signed-off-by: Noel Eck <noel.eck@intel.com>
2017-04-05 15:16:20 -07:00
Noel Eck
52879b0b04 contributions.md: Updated sensortemplate script
C/C++ CMakeLists.txt lines are no longer needed - removed.
Converted bash script to a function to add some error checking.
Removed redundant author/copyright entry.

Signed-off-by: Noel Eck <noel.eck@intel.com>
2017-04-05 15:16:20 -07:00
Noel Eck
048f1ac08e examples: C/C++ examples use transitive dependencies
Updated the examples to comprehend transitive dependencies.  This means
that each example target will no longer have a giant list of -I includes
(the examples at the end of the list had includes for all previous
examples, upwards of 200 -I's on the command line).

    * Created a CMakeLists.txt in the upm/examples directory, moved
      common functionality to this level.
    * C/C++ examples now look to the filename for their dependency
      target name, ie; gas-mq2.cxx adds a dependency to the 'gas' target
    * Updated a handful of C/C++ example names to reflect this
    * Example CMake flow - glob the list of files, add targets for any
      special case examples, then att targets for all the rest

Signed-off-by: Noel Eck <noel.eck@intel.com>
2017-04-05 15:16:20 -07:00
Jon Trulson
c57a0d2c30 bmpx8x: rewrite in C; FTI; C++ wraps C
This driver has been rewritten from scratch.

See docs/apichanges.md for a list of API compatibility changes
compared to the original driver.

Signed-off-by: Jon Trulson <jtrulson@ics.com>
2017-04-05 11:29:08 -06:00
Abhishek Malik
8d43c431f2 ABP: Making driver generic
Signed-off-by: Abhishek Malik <abhishek.malik@intel.com>
2017-04-04 14:34:11 -07:00
Abhishek Malik
dc7c012c24 RSC: Minor comment changes
Signed-off-by: Abhishek Malik <abhishek.malik@intel.com>
2017-04-03 14:16:52 -07:00
Abhishek Malik
96eb834e9b RSC: Initial Commit
Signed-off-by: Abhishek Malik <abhishek.malik@intel.com>
2017-04-03 09:56:54 -07:00
Jon Trulson
b239866e99 bmm150 C example: use correct units in output
Signed-off-by: Jon Trulson <jtrulson@ics.com>
2017-03-30 18:19:25 -06:00
Jon Trulson
6a4f06d51b mcp2515 C examples: add default config for Arduino 101
Signed-off-by: Jon Trulson <jtrulson@ics.com>
2017-03-30 17:34:31 -06:00
Jon Trulson
e765dcf57b bma250e,bmc150,bmg160,bmi055,bmm150,bmx055: C++ examples: use instance rather than allocation
Signed-off-by: Jon Trulson <jtrulson@ics.com>
2017-03-30 16:43:35 -06:00
Jon Trulson
c014ffddcd bmx055: remove bmm150, use new bmm150 library
Signed-off-by: Jon Trulson <jtrulson@ics.com>
2017-03-30 16:43:35 -06:00
Jon Trulson
aeaf84ccc6 bmm150: split into new library, C port, FTI, C++ wraps C
Signed-off-by: Jon Trulson <jtrulson@ics.com>
2017-03-30 16:43:35 -06:00
Jon Trulson
3d0461b40a bmx055: remove bma250e, use new bma250e library
Signed-off-by: Jon Trulson <jtrulson@ics.com>
2017-03-30 16:43:35 -06:00
Jon Trulson
5aed632782 bma250e: split into new library, C port, FTI, C++ wraps C
Signed-off-by: Jon Trulson <jtrulson@ics.com>
2017-03-30 16:43:35 -06:00