Commit Graph

106 Commits

Author SHA1 Message Date
fde727b601 Button: Adding C sources and C examples
This commit adds C sources and examples for the button sensor.

Signed-off-by: Abhishek Malik <abhishek.malik@intel.com>
2016-11-08 13:38:52 -08:00
1630ebfca4 otp538u: C implementation; FTI; C++ wraps C
Signed-off-by: Jon Trulson <jtrulson@ics.com>
2016-11-07 13:53:43 -07:00
3eb3a0b825 guvas12d: C implementation; FTI; C++ wraps C
Signed-off-by: Jon Trulson <jtrulson@ics.com>
2016-11-04 12:52:33 -06:00
1f954a8cbf ppd42ns: C implementation; C++ wraps C
Signed-off-by: Jon Trulson <jtrulson@ics.com>
2016-11-02 17:51:05 -06:00
7b9fbd8738 buzzer: C implementation; C++ wraps C
Signed-off-by: Jon Trulson <jtrulson@ics.com>
2016-10-28 16:48:53 -06:00
f623414c04 jhd1313m1: Added while loop to LCD example c/cxx
Make these just a bit more interesting - continuously change color
and keep updating the lcd.  Also, echo the write via printf.

Signed-off-by: Noel Eck <noel.eck@intel.com>
2016-10-28 10:37:25 -07:00
c09ab37a59 mma7660: C implementation; FTI; C++ wraps C
Signed-off-by: Jon Trulson <jtrulson@ics.com>
2016-10-27 15:13:20 -06:00
58dfa9d95a uln200xa: C implementation and examples
Signed-off-by: Jon Trulson <jtrulson@ics.com>
2016-10-24 16:05:39 -06:00
f101db2af1 linefinder: C implementation; FTI; C++ wraps C
Signed-off-by: Jon Trulson <jtrulson@ics.com>
2016-10-21 14:22:54 -06:00
8ac8be9e0a md: C implementation; C++ wraps C
Signed-off-by: Jon Trulson <jtrulson@ics.com>
2016-10-18 17:04:50 -06:00
770e43c627 rpr220: add C driver and examples; FTI; C++ wraps C
Signed-off-by: Jon Trulson <jtrulson@ics.com>
2016-10-14 13:53:34 -06:00
07d0168a96 rotaryencoder: add C driver and example; FTI; C++ wraps C
Signed-off-by: Jon Trulson <jtrulson@ics.com>
2016-10-13 16:00:04 -06:00
8624a07b77 lm35: add C driver and example; FTI; C++ wraps C
Signed-off-by: Jon Trulson <jtrulson@ics.com>
2016-10-12 16:37:59 -06:00
64b142ecf3 jhd1313m1: Initial C implementation
Signed-off-by: Jon Trulson <jtrulson@ics.com>
2016-10-07 15:42:16 -06:00
7fe6f856a1 lcm1602: Initial C implementation
Signed-off-by: Jon Trulson <jtrulson@ics.com>
2016-10-07 15:42:12 -06:00
0086626173 bmi160: add C driver and example. Add SPI support, other improvments.
This adds SPI support to the BMI160, as well as a C driver and a C
example.  In addition, some changes were made to more properly detect
and handle errors.

Functions supplied by the bosch_bmi160 driver source code is also
exported and made available to callers who want more than what the
basic driver support.  Bus access methods (I2C and SPI) are also now
exposed to both C and C++.

Signed-off-by: Jon Trulson <jtrulson@ics.com>
2016-09-29 15:41:18 -06:00
e7c80217c2 C examples: move mraa_init() calls out of C examples and into C drivers.
Signed-off-by: Jon Trulson <jtrulson@ics.com>
2016-09-28 17:34:42 -06:00
b8061943aa biss0001: add C driver and example, C++ wraps C driver
Signed-off-by: Jon Trulson <jtrulson@ics.com>
2016-09-23 14:18:08 -06:00
22c7310428 yg1006: add C driver and example, C++ wraps C driver
Signed-off-by: Jon Trulson <jtrulson@ics.com>
2016-09-23 12:20:05 -06:00
c9ed65f22d water: C example, fix bad error message
Signed-off-by: Jon Trulson <jtrulson@ics.com>
2016-09-23 12:20:05 -06:00
dff782a477 water: add C driver and example. C++ wraps C driver.
Signed-off-by: Jon Trulson <jtrulson@ics.com>
2016-09-22 16:43:48 -06:00
06547dcd07 server: Replaced servo.c w/servo.h in C sample header
Possible copy/paste error - example source included sensor
library source.

Signed-off-by: Noel Eck <noel.eck@intel.com>
2016-09-19 17:11:37 -07:00
5a763ea5f5 mvs06068: Removed example file
This has be implemented in collision.c.

Signed-off-by: Noel Eck <noel.eck@intel.com>
2016-09-19 15:50:37 -07:00
324af8fc92 examples: Cleaned up C examples.
This commit cleans up multiple items with the UPM C example source.

    * Switch from usleep and sleep to upm_delay* methods
    * Include a mraa_init and check return value prior to using sensor
    * All example mains now return
    * Added include for mraa.h and upm_utilites.h to all examples
    * Reformatted/removed tabs
    * Updated author line for the examples I wrote

Signed-off-by: Noel Eck <noel.eck@intel.com>
2016-09-19 15:45:22 -07:00
239ab49d6b sht1x: Initial implementation
This driver was developed with a DFRobot SHT10 Temperature and Humidity
sensor.  This driver should work on all SHT1X devices.

It requires a 10K pull-up resistor connected to the data pin.
The sensor can be run at differing voltages from 2.5v to 5v.

Signed-off-by: Jon Trulson <jtrulson@ics.com>
2016-09-16 16:52:49 -06:00
6a6a572069 dfrec: Initial implementation
This module implements support for the DFRobot EC (Electrical
Conductivity) meter.  It relies on the use of the DS18B20 UPM C module
for temperature gathering.

It has a pretty complicated calibration procedure which is somewhat
documented on the DFRobot wiki.  Functions have been added to support
changing the various coefficients as desired.

Signed-off-by: Jon Trulson <jtrulson@ics.com>
2016-09-14 14:09:15 -07:00
6d437c8007 ds18b20: Add a C implementation and inprove documentation
This commit adds a C implementation for the DS18B20.  The C++
implementation was untouched (ie: it does not wrap the C
implementation).  This can be done in the future if desired.

In addition, add an ascii-schematic to both the .h and .hpp files to
better illustrate how to wire up the DS 1-wire interface for the UART.

Signed-off-by: Jon Trulson <jtrulson@ics.com>
2016-09-14 14:09:15 -07:00
5088ee99e6 examples/c/CMakeLists.txt: make sure C examples link only with C libs
Previously, C examples were being linked with the C++ libs.  This
worked, since currently (until ds18b20) all C++ libraries with C
components simply wrapped the C componenets.

Now we make sure that only the C libs are ever linked with the C
examples.

Signed-off-by: Jon Trulson <jtrulson@ics.com>
2016-09-14 14:09:14 -07:00
f9a36314fb LED: Added C Src and Example
Changed from Grove LED to LED.

Signed-off-by: Abhishek Malik <abhishek.malik@intel.com>
2016-09-14 14:09:13 -07:00
1caf805d2b Moisture: Add C Src and Example
Changed from GroveMoisture.

Signed-off-by: Abhishek Malik <abhishek.malik@intel.com>
2016-09-14 14:09:12 -07:00
0f7bb5573c Collision: Added C Src and Example
This module was initially known as GroveCollision. It has been
now changed to Collision. C source and examples added.

Signed-off-by: Abhishek Malik <abhishek.malik@intel.com>
2016-09-14 14:09:12 -07:00
1b9b142b2e grove: Small changes to build grove library
* Removed relay and rotary from grove library
    * Removed relay and rotary from grove SWIG interfaces
    * Fixed warning for o2 printf %
    * Fixed return value warning for _get_normalized method used by
      my analog sensors.

Signed-off-by: Noel Eck <noel.eck@intel.com>
2016-09-14 14:09:10 -07:00
af417d3ae1 Fixing Build errors
Signed-off-by: Abhishek Malik <abhishek.malik@intel.com>
2016-09-14 14:09:08 -07:00
3c51f638f1 A110X: Fixing Build error
Signed-off-by: Abhishek Malik <abhishek.malik@intel.com>
2016-09-14 14:09:07 -07:00
d548fc62ab Examples: Added C Examples
Added examples for:
mq303a
m24lr64e
mpr121
servo
a110x
gp2y0a
ttp223
loudness
tsl2561

Signed-off-by: Abhishek Malik <abhishek.malik@intel.com>
2016-09-14 14:09:07 -07:00
e58c651b67 slide: Added slide potentiometer sensor C source
Added the C source for the flex sensor with necessary changes to cmake,
examples, and docs.

    * Renamed all files with groveslide to slide
    * Replaced all instances of groveslide with slide
    * Added C source for slide sensor
    * Updated all cmake files
    * Added C example for slide sensor
    * Split out slide sensor from grove library

Signed-off-by: Noel Eck <noel.eck@intel.com>
2016-09-14 14:09:01 -07:00
e2bec11c23 flex: Added flex sensor C source
Added the C source for the flex sensor with necessary changes to cmake,
examples, and docs.

Signed-off-by: Noel Eck <noel.eck@intel.com>
2016-09-14 14:09:00 -07:00
bec533d8bd joystick12: Added 2 axis analog joystick12 C sensor
Added the C source for the joystick12 with necessary changes to cmake,
examples, and docs.

Signed-off-by: Noel Eck <noel.eck@intel.com>
2016-09-14 14:09:00 -07:00
b781405a95 ldt0028: Added piezo vibration sensor C source
Added the C source for the light sensor with necessary changes to cmake,
examples, docs.

Signed-off-by: Noel Eck <noel.eck@intel.com>
2016-09-14 14:08:59 -07:00
571f9c9498 light: Added light sensor C source
Added the C source for the light sensor with necessary changes to cmake,
examples, docs.

    * Renamed all files with grovelight to light
    * Replaced all instances of grovelight with light
    * Added C source for light sensor
    * Updated all cmake files
    * Added C example for light sensor
    * Split out light sensor from grove library

Signed-off-by: Noel Eck <noel.eck@intel.com>
2016-09-14 14:08:59 -07:00
0e52ea619b gsr: Added gsr sensor C source
Added the C source for the gsr sensor with necessary changes to cmake,
examples, docs.

    * Renamed all files with grovegsr to gsr
    * Replaced all instances of grovegsr with gsr
    * Added C source for gsr sensor
    * Updated all cmake files
    * Added C example for gsr sensor
    * Fixed C++ threshold method from throwing on a successfull aio read

Signed-off-by: Noel Eck <noel.eck@intel.com>
2016-09-14 14:08:58 -07:00
a19678948b emg: Added emg sensor C source
Added the C source for the emg sensor with necessary changes to cmake,
examples, docs.

    * Renamed all files with groveemg to emg
    * Replaced all instances of groveemg with emg
    * Added C source for emg sensor
    * Updated all cmake files
    * Added C example for emg sensor

Signed-off-by: Noel Eck <noel.eck@intel.com>
2016-09-14 14:08:58 -07:00
f9878b3fe6 o2: Added O2 sensor C source
Added the C source for the O2 sensor with necessary changes to cmake,
examples, docs.

    * Renamed all files with groveo2 to o2
    * Replaced all instances of groveo2 with o2
    * Added C source for o2 sensor
    * Updated all cmake files
    * Added C example for o2 sensor

Signed-off-by: Noel Eck <noel.eck@intel.com>
2016-09-14 14:08:57 -07:00
fe318a78d2 mqx: C gas sensors mq2-mq9
Implement a single source file for the following:

    * mq2: H2/LPG/CH4/CO/alcohol/smoke/propane/etc
    * mq3: Alcohol/benzine/CH4/hexane/LPG/CO
    * mq4: CNG (mostly methane)
    * mq5: H2/LPG/CH4/CO/alcohol
    * mq6: LPG (mostly propane/butane)
    * mq7: CO
    * mq8: H
    * mq9: CO/CH4/LPG

The documentation for these sensors notes that they do not read an exact
gas concentration.  Some of the sensors have examples for how to
calibrate with a 'clean air environment' for outputing ppm, but this is
not the case for all mqx sensors.  Because of this, the output can be
read as a normalized output (0.0->1.0), raw volts (normalized * aRef),
or a scaled/offset voltage.

Signed-off-by: Noel Eck <noel.eck@intel.com>
2016-09-14 14:08:56 -07:00
2b6dd5f3fd cmake: Cleanup of cmake messages.
* Removed unessesary spaces.
    * Changed INFO to STATUS since INFO is not a cmake message
      keyword.
    * Changed a few messages from status/info to warning.
    * Fixed trailing carriage return on yuidoc execute_process.
    * Removed my debug messages for CXX vs C.

Signed-off-by: Noel Eck <noel.eck@intel.com>
2016-09-14 14:08:55 -07:00
b608232cb9 vdiv: Added vdiv C source.
Multiple changes related to building the vdiv c source w/c example.

    * Renamed GroveVdiv to vdiv (all cases) throughout source, examples,
    directory names, and documentation.

    * Added C source.

    * Tested C sensor code on edison

    * Updated CMakeLists.txt for examples-c to build from
    <sensorname>-c.  This was a small change to get c examples to build
    for sensors in which the C++ does NOT wrap the C.

    * Added C example for vdiv.

Signed-off-by: Noel Eck <noel.eck@intel.com>
2016-09-14 14:07:55 -07:00
668aa320b9 dfrph_c_example: Fixed small copy/paste error
Removed urm37 string.  Re-aligned source.

Signed-off-by: Noel Eck <noel.eck@intel.com>
2016-09-14 14:07:55 -07:00
dcb4e83251 dfrorp: Initial implementation
This module implements support for the DFRobot Analog ORP
(Oxidation/Reduction Potential) Meter.

It requires 5.0 volts, but the more accurate the voltage specified (to
the constructor), the more accurate the meter (paraphrased from the
wiki).

Signed-off-by: Jon Trulson <jtrulson@ics.com>
2016-09-14 14:07:52 -07:00
21297e80d4 hka5: Initial implementation
This module implements support for the DFRobot Laser PM2.5 Sensor.  It
connects to a UART at 9600 baud.  This is the only baud rate
supported.  It optionally supports Reset and Set/Sleep gpios as well.

Signed-off-by: Jon Trulson <jtrulson@ics.com>
2016-09-14 14:07:50 -07:00
4a8ddc10ad nmea_gps: add support for ubloc I2c reading of NMEA data
These changes allow NMEA data to be read via I2C on UBLOX compliant
devices that support this capability, such as the LEA-6H based GPS
shield from DFRobot.

It adds a new init() function to the C code, and a new constructor to
the C++ code. It also adds 5 new examples for C, C++, Javascript,
Python, and Java.

Signed-off-by: Jon Trulson <jtrulson@ics.com>
2016-09-14 14:07:49 -07:00