These changes add the ability to intialize a speaker instance to use a
PWM pin instead of a standard GPIO pin in order to emit sounds.
The current GPIO functionality is fairly constrained by the
implementation -- it only permits playing cerain hardcoded "notes".
The PWM support allows one to emit specific frequencies (currently
between 50-32Khz) using a PWM pin. Of course, you may still be
constrained by the limits of your PWM hardware in the end.
There are a few new functions provided to support this PWM mode. To
use the PWM mode of speaker, use the speaker_init_pwm() initialization
routine instead of speaker_init() (for C). For C++ and the SWIG
languages, pass "true" as the second argument to the constructor to
enable PWM mode. The default is "false", to match current default
behavior (GPIO).
Functions that are not related to a given mode (GPIO vs. PWM) will do
nothing if not usable in that mode.
Signed-off-by: Jon Trulson <jtrulson@ics.com>
uartat is the underlying UART driver, specifically for use with
AT-style command driven devices like modems.
The le910 support is provided in the form of examples that make use
of the uartat driver to interact with the device.
Signed-off-by: Jon Trulson <jtrulson@ics.com>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>