This code is based off ofthe my9221 driver. This modification was
done by Jun Kato, but abandoned.
This driver will not work correctly on Galileo.
Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
This module was developed and tested on the Grove NFC Tag. It is an
8KB EEPROM accessable (with various protection capabilites) via I2C
and NFC capable devices.
The code was based on the Seeed Studio example code with some help
from the datasheet.
Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
This module was developed on the Grove Serial Camera. It connects to
the UART and runs at 115200 baud. It was developed based on the Seeed
Studio Arduino sketch, as there appears to be no protocol
documentation available.
Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
There were a few issues with this driver, corrected in this update.
1) i2c transactions were not working - I replaced the i2c
implementation with the MRAA i2c class implementation.
2) status check was inverted - fixed.
3) fixed up #defines in header file to avoid naming collisions (ADDR,
etc).
4) Added capability to supply bus and i2c address to ctor, setting
defaults of 0, and TH02_ADDR respectively.
NOTE: For proper operation on Edison using the arduino breakout
board, the voltage needs to be set to 3.3V rather than 5v. On G2, 5v
works fine.
Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
This driver implements support for the Sparkfun Single Lead Heart Rate
Monitor, based on the AD8232 chip.
It simply outputs ADC data that needs to be sent somewhere for
plotting. The Sparkfun page has some suggestions.
Alternatively, if you have an oscilliscope that supports a 'Roll'
mode, you can get an EKG-like display by measuring the OUT pin.
https://www.sparkfun.com/products/12650
Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
The driver implements support for the Grove 3-Axis Digital
Accelerometer(±400g), using the h3lis331dl chip.
Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
The driver implements support for the DTMF Shield based on the ht9170.
Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: Zion Orent <zorent@ics.com>
Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
This module implements support for the Grove BLE (Bluetooth Low
Energy) device. It is implemented as a UART device accepting an "AT"
command set.
Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: Zion Orent <zorent@ics.com>
Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
The module supports the LV-MaxSonar EZ1, EZ2, EZ3 and EZ4 ultrasonic
range finders. It was developed and tested on the EZ3 variant.
Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
This module implements support for the Adafruit UV sensor:
https://www.adafruit.com/products/1777
Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: Zion Orent <zorent@ics.com>
Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
This was tested with the Grove FM Receiver. Unfortunately, there is
no documentation on how to control the device using the D1 and D2 pins
that Seeed provides. There is a switch on the device that can control
all of the elements, power, volume, and seek +/-.
The supplied example can turn the device on, and do a seek, but not
much else.
Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: Zion Orent <zorent@ics.com>
Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
Rewrite the i2c module to be based around the MRAA C++ API,
since this makes resource management easier inside of the UPM
C++ classes.
i2clcd.{h,cxx}: remove the close() function. This now automatically gets
called when the object goes out of scope, inside the destructor.
examples/i2clcd: fix C++/Python/Javascript examples that explicitly called the close function.
The I2c context now gets called by the destructor of the sensor class. This
happens when the object goes out of scope or when it gets deleted, if the
object was created using the new keyword, as is the case here.
Signed-off-by: Wouter van Verre <wouter.van.verre@intel.com>
Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
This driver implements support for the Grove Recorder. It records up
to about 10 seconds of audio, and can play it back on command.
Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: Zion Orent <zorent@ics.com>
Signed-off-by: John Van Drasek <john.r.van.drasek@intel.com>
This driver implements support for the Grove Water Flow sensor. It
uses an integrated hall effect sensor, connected to a GPIO configured
as an interrupt, to compute water flow in LPM (Liters Per Minute).
Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: Zion Orent <zorent@ics.com>
Signed-off-by: John Van Drasek <john.r.van.drasek@intel.com>
This driver was tested on a Grove Geared Stepper with Driver, the
uln2003a paired with a 28BYJ-48 unipolar stepper motor.
Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: John Van Drasek <john.r.van.drasek@intel.com>
This driver implements support for the ZFM20 fingerprint module. It
was tested on a Grove Fingerprint Sensor.
Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: Zion Orent <zorent@ics.com>
Signed-off-by: John Van Drasek <john.r.van.drasek@intel.com>
Additionally, add some error checking in the constructor, and determine
the ADC resolution and use that in the voltage calculation rather than
a hardcoded 1024.0.
Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: Zion Orent <zorent@ics.com>
Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
The library implements support for the grove water level switch.
Signed-off-by: Zion Orent <zorent@ics.com>
Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: John Van Drasek <john.r.van.drasek@intel.com>
This library implements support for the apds9002 luminance sensor.
Signed-off-by: Zion Orent <zorent@ics.com>
Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: John Van Drasek <john.r.van.drasek@intel.com>
This library implements support for the MHZ16 CO2 sensor.
Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: Zion Orent <zorent@ics.com>
Signed-off-by: John Van Drasek <john.r.van.drasek@intel.com>
Implements the flex analog sensor. See
http://bildr.org/2012/11/flex-sensor-arduino/
for wiring instructions.
Signed-off-by: Zion Orent <zorent@ics.com>
Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: John Van Drasek <john.r.van.drasek@intel.com>
The library implements support for the Adafruit MotorShield 1438:
http://www.adafruit.com/products/1438
This shield supports 4 DC motors or 2 Stepper motors.
It makes use of the pca9685 UPM library, and therefore requires that
PR #123 and PR #134 are merged first:
PR 123: pkgconfig.in: allow a module to specify dependencies on
another module
PR 134: pca9685: Initial implementation
Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: Zion Orent <zorent@ics.com>
Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
This module implements support for the Grove EL Driver.
Signed-off-by: Zion Orent <zorent@ics.com>
Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
The library implements support for the Adafruit MotorShield 1438:
http://www.adafruit.com/products/1438
This shield supports 4 DC motors or 2 Stepper motors.
It makes use of the pca9685 UPM library, and therefore requires that
PR #123 and PR #134 are merged first:
PR 123: pkgconfig.in: allow a module to specify dependencies on
another module
PR 134: pca9685: Initial implementation
Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: Zion Orent <zorent@ics.com>
Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
This library implements generic support for the pca9685 16 channel 12
bit PWM LED controller. This controller is used on some Adafruit
motor shields.
Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: Zion Orent <zorent@ics.com>
Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
This module implements support for the Grove I2C Motor Driver.
The device *requires* a 100Khz I2C bus speed. It will not work on
anything faster.
Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: Zion Orent <zorent@ics.com>
Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
This module implementes support for the Grove QTouch sensor.
Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: Zion Orent <zorent@ics.com>
Signed-off-by: John Van Drasek <john.r.van.drasek@intel.com>
This was tested on the RobotBase Dual H-Bridge motor control board.
There are two examples:
l298-example: This example demonstrates using the class to contol one
of the H-Brdges to control a DC motor.
l298-stepper-example: This example demonstrates using the class to
control a 4-wire dual-phase stepper motor.
Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: Zion Orent <zorent@ics.com>
Signed-off-by: John Van Drasek <john.r.van.drasek@intel.com>
This module was tested with the Grove Differential Amplifier, with a
weight sensor attached.
Signed-off-by: Zion Orent <zorent@ics.com>
Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: John Van Drasek <john.r.van.drasek@intel.com>
This module implements support for the Grove GSR (Galvanic Skin
Response) sensor.
Signed-off-by: Zion Orent <zorent@ics.com>
Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: John Van Drasek <john.r.van.drasek@intel.com>