diff --git a/src/a110x/a110x.json b/src/a110x/a110x.json
new file mode 100755
index 00000000..f5a6fbc3
--- /dev/null
+++ b/src/a110x/a110x.json
@@ -0,0 +1,222 @@
+{
+ "Library": "a110x",
+ "Description": "A110X Hall Effect Library",
+ "Sensor Class":
+ {
+ "a1101":
+ {
+ "Brief": "API for the A110X Hall Effect Sensors",
+ "Description": "UPM module for the A110X (A1101, A1102, A1103, A1104, and A1106) Hall Effect sensors. It outputs a digital signal indicating whether it is detecting a magnetic field with south polarity perpendicular to the sensor element.",
+ "Part Numbers": ["a110x"],
+ "Categories": ["halleffect"],
+ "Connections": ["gpio"],
+ "Project Type": ["prototyping", "industrial"],
+ "Manufacturers": ["seeed"],
+ "Kits": ["robok"],
+ "Image": "a110x.jpg",
+ "Examples":
+ {
+ "Java": ["A110XSample.java", "A110X_intrSample.java"],
+ "Python": ["a110x.py"],
+ "Node.js": ["a110x.js"],
+ "C++": ["a110x-intr.cxx", "a110x.cxx"],
+ "C": ["a110x.c"]
+ },
+ "Specifications":
+ {
+ "Vcc": {"unit": "V", "low" : 3.8, "high": 24},
+ "Ioutoff" : {"unit": "uA", "low" : 0.0, "high": 10},
+ "Supply Current": {"unit": "mA", "low": 3.8, "high": 7.5},
+ "Operate Point": {"unit": "G", "low": 50, "high": 160},
+ "Release Point": {"unit": "G", "low": 10, "high": 130},
+ "Hysteresis": {"unit": "G", "low": 20, "high": 80}
+ },
+ "Platforms":
+ {
+ "Intel Joule Module":
+ {
+ "Notes": ["Requires pull-up resistors with carrier board"],
+ "Images": [""]
+ }
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/grove-hall-sensor-p-965.html"],
+ "Datasheets": ["http://www.allegromicro.com/en/Products/Part_Numbers/1101/1101.pdf"],
+ "Schematics": ["https://learn.adafruit.com/assets/26693"]
+ }
+ },
+ "a1102":
+ {
+ "Brief": "API for the A110X Hall Effect Sensors",
+ "Description": "UPM module for the A110X (A1101, A1102, A1103, A1104, and A1106) Hall Effect sensors. It outputs a digital signal indicating whether it is detecting a magnetic field with south polarity perpendicular to the sensor element.",
+ "Part Numbers": ["a110x"],
+ "Categories": ["halleffect"],
+ "Connections": ["gpio"],
+ "Project Type": ["prototyping", "industrial"],
+ "Manufacturers": ["seeed"],
+ "Kits": ["robok"],
+ "Image": "a110x.jpg",
+ "Examples":
+ {
+ "Java": ["A110XSample.java", "A110X_intrSample.java"],
+ "Python": ["a110x.py"],
+ "Node.js": ["a110x.js"],
+ "C++": ["a110x-intr.cxx", "a110x.cxx"],
+ "C": ["a110x.c"]
+ },
+ "Specifications":
+ {
+ "Vcc": {"unit": "V", "low" : 3.8, "high": 24},
+ "Ioutoff" : {"unit": "uA", "low" : 0.0, "high": 10},
+ "Supply Current": {"unit": "mA", "low": 3.8, "high": 7.5},
+ "Operate Point": {"unit": "G", "low": 130, "high": 230},
+ "Release Point": {"unit": "G", "low": 75, "high": 175},
+ "Hysteresis": {"unit": "G", "low": 30, "high": 80}
+ },
+ "Platforms":
+ {
+ "Intel Joule Module":
+ {
+ "Notes": ["Requires pull-up resistors with carrier board"],
+ "Images": [""]
+ }
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/grove-hall-sensor-p-965.html"],
+ "Datasheets": ["http://www.allegromicro.com/en/Products/Part_Numbers/1101/1101.pdf"],
+ "Schematics": ["https://learn.adafruit.com/assets/26693"]
+ }
+ },
+ "a1103":
+ {
+ "Brief": "API for the A110X Hall Effect Sensors",
+ "Description": "UPM module for the A110X (A1101, A1102, A1103, A1104, and A1106) Hall Effect sensors. It outputs a digital signal indicating whether it is detecting a magnetic field with south polarity perpendicular to the sensor element.",
+ "Part Numbers": ["a110x"],
+ "Categories": ["halleffect"],
+ "Connections": ["gpio"],
+ "Project Type": ["prototyping", "industrial"],
+ "Manufacturers": ["seeed"],
+ "Kits": ["robok"],
+ "Image": "a110x.jpg",
+ "Examples":
+ {
+ "Java": ["A110XSample.java", "A110X_intrSample.java"],
+ "Python": ["a110x.py"],
+ "Node.js": ["a110x.js"],
+ "C++": ["a110x-intr.cxx", "a110x.cxx"],
+ "C": ["a110x.c"]
+ },
+ "Specifications":
+ {
+ "Vcc": {"unit": "V", "low" : 3.8, "high": 24},
+ "Ioutoff" : {"unit": "uA", "low" : 0.0, "high": 10},
+ "Supply Current": {"unit": "mA", "low": 3.8, "high": 7.5},
+ "Operate Point": {"unit": "G", "low": 220, "high": 340},
+ "Release Point": {"unit": "G", "low": 165, "high": 285},
+ "Hysteresis": {"unit": "G", "low": 30, "high": 80}
+ },
+ "Platforms":
+ {
+ "Intel Joule Module":
+ {
+ "Notes": ["Requires pull-up resistors with carrier board"],
+ "Images": [""]
+ }
+ },
+ "Urls" :
+ {
+ "Product Pages": ["http://wiki.seeed.cc/Grove-Hall_Sensor/", "https://www.seeedstudio.com/grove-hall-sensor-p-965.html"],
+ "Datasheets": ["http://www.allegromicro.com/en/Products/Part_Numbers/1101/1101.pdf"],
+ "Schematics": []
+ }
+ },
+ "a1104":
+ {
+ "Brief": "API for the A110X Hall Effect Sensors",
+ "Description": "UPM module for the A110X (A1101, A1102, A1103, A1104, and A1106) Hall Effect sensors. It outputs a digital signal indicating whether it is detecting a magnetic field with south polarity perpendicular to the sensor element.",
+ "Part Numbers": ["a110x"],
+ "Categories": ["halleffect"],
+ "Connections": ["gpio"],
+ "Project Type": ["prototyping", "industrial"],
+ "Manufacturers": ["seeed"],
+ "Kits": ["robok"],
+ "Image": "a110x.jpg",
+ "Examples":
+ {
+ "Java": ["A110XSample.java", "A110X_intrSample.java"],
+ "Python": ["a110x.py"],
+ "Node.js": ["a110x.js"],
+ "C++": ["a110x-intr.cxx", "a110x.cxx"],
+ "C": ["a110x.c"]
+ },
+ "Specifications":
+ {
+ "Vcc": {"unit": "V", "low" : 3.8, "high": 24},
+ "Ioutoff" : {"unit": "uA", "low" : 0.0, "high": 10},
+ "Supply Current": {"unit": "mA", "low": 3.8, "high": 7.5},
+ "Operate Point": {"unit": "G", "low": 70, "high": 350},
+ "Release Point": {"unit": "G", "low": 50, "high": 330},
+ "Hysteresis": {"unit": "G", "low": 20}
+ },
+ "Platforms":
+ {
+ "Intel Joule Module":
+ {
+ "Notes": ["Requires pull-up resistors with carrier board"],
+ "Images": [""]
+ }
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/grove-hall-sensor-p-965.html"],
+ "Datasheets": ["http://www.allegromicro.com/en/Products/Part_Numbers/1101/1101.pdf"],
+ "Schematics": ["https://learn.adafruit.com/assets/26693"]
+ }
+ },
+ "a1106":
+ {
+ "Brief": "API for the A110X Hall Effect Sensors",
+ "Description": "UPM module for the A110X (A1101, A1102, A1103, A1104, and A1106) Hall Effect sensors. It outputs a digital signal indicating whether it is detecting a magnetic field with south polarity perpendicular to the sensor element.",
+ "Part Numbers": ["a110x"],
+ "Categories": ["halleffect"],
+ "Connections": ["gpio"],
+ "Project Type": ["prototyping", "industrial"],
+ "Manufacturers": ["seeed"],
+ "Kits": ["robok"],
+ "Image": "a110x.jpg",
+ "Examples":
+ {
+ "Java": ["A110XSample.java", "A110X_intrSample.java"],
+ "Python": ["a110x.py"],
+ "Node.js": ["a110x.js"],
+ "C++": ["a110x-intr.cxx", "a110x.cxx"],
+ "C": ["a110x.c"]
+ },
+ "Specifications":
+ {
+ "Vcc": {"unit": "V", "low" : 3.8, "high": 24},
+ "Ioutoff" : {"unit": "uA", "low" : 0.0, "high": 10},
+ "Supply Current": {"unit": "mA", "low": 3.8, "high": 7.5},
+ "Operate Point": {"unit": "G", "low": 280, "high": 400},
+ "Release Point": {"unit": "G", "low": 180, "high": 300},
+ "Hysteresis": {"unit": "G", "low": 70, "high": 140}
+ },
+ "Platforms":
+ {
+ "Intel Joule Module":
+ {
+ "Notes": ["Requires pull-up resistors with carrier board"],
+ "Images": [""]
+ }
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/grove-hall-sensor-p-965.html"],
+ "Datasheets": ["http://www.allegromicro.com/en/Products/Part_Numbers/1101/1101.pdf"],
+ "Schematics": ["https://learn.adafruit.com/assets/26693"]
+ }
+ }
+ }
+}
diff --git a/src/ad8232/ad8232.json b/src/ad8232/ad8232.json
new file mode 100755
index 00000000..027bb29a
--- /dev/null
+++ b/src/ad8232/ad8232.json
@@ -0,0 +1,46 @@
+{
+ "Library": "ad8232",
+ "Description": "Single Lead Heart Rate Monitor",
+ "Sensor Class":
+ {
+ "AD8232":
+ {
+ "Brief": "AD8232 Heart Rate Monitor Library",
+ "Description": "This module simply spits out the ADC values reported by the sensor, with the intent to send that data, via serial or network port, somewhere to another piece of software running on a computer that plots the data for you, like an EKG.",
+ "Part Numbers": ["ad8232"],
+ "Categories": ["heartrate"],
+ "Connections": ["gpio", "aio"],
+ "Project Type": ["medical"],
+ "Manufacturers": ["sparkfun"],
+ "Kits": [],
+ "Image": "ad8232.jpg",
+ "Examples":
+ {
+ "Java": ["Ad8232Example.java"],
+ "Python": ["ad8232.py"],
+ "Node.js": ["ad8232.js"],
+ "C++": ["ad8232.cxx"],
+ "C": ["bmp280.c"]
+ },
+ "Specifications":
+ {
+ "Vdd": {"unit": "V", "low" : 2.0, "high": 3.5},
+ "ESD Rating": {"unit": "kV", "low": 8}
+ },
+ "Platforms":
+ {
+ "Intel Joule Module":
+ {
+ "Notes": ["Sensor must be driven at 3.3v only."],
+ "Images": [""]
+ }
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.sparkfun.com/products/12650"],
+ "Datasheets": ["https://cdn.sparkfun.com/datasheets/Sensors/Biometric/AD8232.pdf"],
+ "Schematics": ["https://cdn.sparkfun.com/datasheets/Sensors/Biometric/AD8232_Heart_Rate_Monitor_v10.pdf"]
+ }
+ }
+ }
+}
diff --git a/src/adafruitms1438/adafruitms1438.json b/src/adafruitms1438/adafruitms1438.json
new file mode 100755
index 00000000..fcd2cc64
--- /dev/null
+++ b/src/adafruitms1438/adafruitms1438.json
@@ -0,0 +1,48 @@
+{
+ "Library": "adafruitms1438",
+ "Description": "Module for the Adafruit Motor Shield 1438",
+ "Sensor Class":
+ {
+ "adafruitms1438":
+ {
+ "Brief": "API for the AdafruitMS1438 Motor Shield",
+ "Description": "This class implements support for the stepper and DC motors that can be connected to this Motor Shield.",
+ "Part Numbers": ["adafruitms1438"],
+ "Categories": ["motor"],
+ "Connections": ["i2c"],
+ "Project Type": ["motor"],
+ "Manufacturers": ["adafruit"],
+ "Kits": [],
+ "Image": "adafruitms1438.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": ["adafruitms1438-stepper.py", "adafruitms1438.py"],
+ "Node.js": ["adafruitms1438-stepper.js", "adafruitms1438.js"],
+ "C++": ["adafruitms1438-stepper.cxx", "adafruitms1438.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Vmotor": {"unit": "V", "low": 4.5, "high": 13.5},
+ "Amotor": {"unit": "A", "high": 1.2},
+ "Apeak": {"unit": "A", "high": 3},
+ "Vlogic": {"unit": "V", "low": 3.3, "high": 5}
+ },
+ "Platforms":
+ {
+ "Intel Joule Module":
+ {
+ "Notes": ["The two servo connections are not controlled by the PCA9685 controller (or this class). They are connected directly to digital PWM pins 9 and 10 on the Arduino* breakout board."],
+ "Images": [""]
+ }
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.adafruit.com/products/1438"],
+ "Datasheets": ["https://cdn-shop.adafruit.com/datasheets/TB6612FNG_datasheet_en_20121101.pdf"],
+ "Schematics": ["https://learn.adafruit.com/adafruit-motor-shield-v2-for-arduino"]
+ }
+ }
+ }
+}
diff --git a/src/adafruitss/adafruitss.json b/src/adafruitss/adafruitss.json
new file mode 100755
index 00000000..db53e77e
--- /dev/null
+++ b/src/adafruitss/adafruitss.json
@@ -0,0 +1,47 @@
+{
+ "Library": "adafruitss",
+ "Description": "Adafruit Servo Shield",
+ "Sensor Class":
+ {
+ "adafruitss":
+ {
+ "Brief": "Adafruit PCA9685-based Servo Shield library",
+ "Description": "UPM library for the PCA9685-based Adafruit 16-channel servo shield.",
+ "Part Numbers": ["adafruitss"],
+ "Categories": ["servos"],
+ "Connections": ["i2c"],
+ "Project Type": ["servos"],
+ "Manufacturers": ["adafruit"],
+ "Kits": [],
+ "Image": "adafruitss.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": [],
+ "Node.js": [],
+ "C++": ["adafruitss.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Vmotor": {"unit": "v", "low": 0, "high": 6},
+ "Vlogic": {"unit": "V", "low": 3.3, "high": 5},
+ "PWM Frequency": {"unit": "KHz", "high": 1.6}
+ },
+ "Platforms":
+ {
+ "Intel Joule Module":
+ {
+ "Notes": ["If 3 or more GWS servos are attached, results could be unpredictable. Adafruit Industries recommend installing a capacitor on the board, which should alleviate the issue. Sizing depends on servos and their number."],
+ "Images": [""]
+ }
+ },
+ "Urls" :
+ {
+ "Product Pages": ["http://www.adafruit.com/product/1411"],
+ "Datasheets": ["https://cdn-shop.adafruit.com/datasheets/PCA9685.pdf"],
+ "Schematics": ["https://learn.adafruit.com/assets/36081"]
+ }
+ }
+ }
+}
diff --git a/src/adc121c021/adc121c021.json b/src/adc121c021/adc121c021.json
new file mode 100755
index 00000000..8c41568c
--- /dev/null
+++ b/src/adc121c021/adc121c021.json
@@ -0,0 +1,47 @@
+{
+ "Library": "adc121c021",
+ "Description": "I2C 12-bit Analog to Digital Converter with Alert Pin",
+ "Sensor Class":
+ {
+ "adc121c021":
+ {
+ "Brief": "API for the ADC121C021 I2C Analog-to-Digital Converter",
+ "Description": "UPM module for the ADC121C021 12-bit analog-to-digital converter (ADC). By constantly providing a reference voltage, this sensor helps increase the accuracy of a value collected from an analog sensor.",
+ "Part Numbers": ["adc121c021"],
+ "Categories": ["aio"],
+ "Connections": ["i2c"],
+ "Project Type": ["prototyping"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "adc121c021.jpg",
+ "Examples":
+ {
+ "Java": ["ADC121C021Sample.java"],
+ "Python": ["adc121c021.py"],
+ "Node.js": ["adc121c021.js"],
+ "C++": ["adc121c021.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Working Voltage": {"unit": "v", "low" : 5.0, "high": 5.0},
+ "Resolution" : {"unit": "Bit", "low" : 12, "high": 12},
+ "Sample Rate": {"unit": "ksps", "low" : 188.9, "high": 188.9}
+ },
+ "Platforms":
+ {
+ "Intel Joule Module":
+ {
+ "Notes": ["Requires pull-up resistors with carrier board"],
+ "Images": [""]
+ }
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-I2C-ADC-p-1580.html"],
+ "Datasheets": ["https://raw.githubusercontent.com/SeeedDocument/Grove-I2C_ADC/master/res/ADC121C021_Datasheet.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/adis16448/adis16448.json b/src/adis16448/adis16448.json
new file mode 100755
index 00000000..1c4d4c4b
--- /dev/null
+++ b/src/adis16448/adis16448.json
@@ -0,0 +1,46 @@
+{
+ "Library": "adis16448",
+ "Description": "Industrial Grade Ten Degrees of Freedom Inertial Sensor",
+ "Sensor Class":
+ {
+ "adis16448":
+ {
+ "Brief": "API for the Analog Devices ADIS16448 Accelerometer",
+ "Description": "This is an industrial-grade accelerometer by Analog Devices.",
+ "Part Numbers": ["adis16448"],
+ "Categories": ["imu"],
+ "Connections": ["spi"],
+ "Project Type": ["prototyping", "industrial"],
+ "Manufacturers": ["generic"],
+ "Kits": [],
+ "Image": "adis16448.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": [],
+ "Node.js": ["adis16448.js"],
+ "C++": ["adis16448.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Working Voltage": {"unit": "v", "low": 3.15, "high": 3.45},
+ "Working Current": {"unit": "mA", "low": 76, "high": 104}
+ },
+ "Platforms":
+ {
+ "Intel Joule Module":
+ {
+ "Notes": ["Requires pull-up resistors with carrier board"],
+ "Images": [""]
+ }
+ },
+ "Urls" :
+ {
+ "Product Pages": ["http://www.analog.com/en/products/sensors/inertial-measurement-units/adis16448.html"],
+ "Datasheets": ["http://www.analog.com/media/en/technical-documentation/data-sheets/ADIS16448.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/adxl335/adxl335.json b/src/adxl335/adxl335.json
new file mode 100755
index 00000000..85ef5d25
--- /dev/null
+++ b/src/adxl335/adxl335.json
@@ -0,0 +1,46 @@
+{
+ "Library": "adxl335",
+ "Description": "Low-power, 3-axis +/- 3 g Accelerometer",
+ "Sensor Class":
+ {
+ "adxl335":
+ {
+ "Brief": "API for the Analog Devices ADIS16448 Accelerometer",
+ "Description": "UPM module for the ADXL335 3-axis analog accelerometer. This was tested on a Grove 3-axis Analog Accelerometer. It uses 3 analog pins, one for each axis: X, Y, and Z.",
+ "Part Numbers": ["adxl335"],
+ "Categories": ["imu", "accelerometers"],
+ "Connections": ["analog"],
+ "Project Type": ["prototyping", "industrial"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "adxl335.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": ["adxl335.py"],
+ "Node.js": ["adxl335.js"],
+ "C++": ["adxl335.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Working Voltage": {"unit": "v", "low": 1.8, "high": 3.6},
+ "Working Current": {"unit": "uA", "low": 350, "high": 350}
+ },
+ "Platforms":
+ {
+ "Intel Joule Module":
+ {
+ "Notes": ["Requires pull-up resistors with carrier board"],
+ "Images": [""]
+ }
+ },
+ "Urls" :
+ {
+ "Product Pages": ["http://www.analog.com/en/products/mems/accelerometers/adxl335.html"],
+ "Datasheets": ["http://www.analog.com/media/en/technical-documentation/data-sheets/ADXL335.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/adxl345/adxl345.json b/src/adxl345/adxl345.json
new file mode 100755
index 00000000..7e0fa4cb
--- /dev/null
+++ b/src/adxl345/adxl345.json
@@ -0,0 +1,46 @@
+{
+ "Library": "adxl345",
+ "Description": "3-axis, +/- 2/4/8/16 g Digital Accelerometer",
+ "Sensor Class":
+ {
+ "adxl345":
+ {
+ "Brief": "API for the ADXL345 3-Axis Digital Accelerometer",
+ "Description": "ADXL345 is a 3-axis digital accelerometer. The sensor has configurable resolutions to measure +/- 2g, +/- 4g, +/- 8g, or +/- 16g.",
+ "Part Numbers": ["adxl335"],
+ "Categories": ["imu", "accelerometers"],
+ "Connections": ["i2c"],
+ "Project Type": ["prototyping", "industrial"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "adxl335.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": ["adxl345.py"],
+ "Node.js": ["adxl345.js"],
+ "C++": ["adxl345.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Working Voltage": {"unit": "v", "low": 2, "high": 3.6},
+ "Working Current": {"unit": "uA", "low": 30, "high": 140}
+ },
+ "Platforms":
+ {
+ "Intel Edison":
+ {
+ "Notes": ["The Grove* version of the sensor is incompatible with and not detected on the I2C bus by the Intel(R) Edison using an Arduino* breakout board at 5V (3V works fine)."],
+ "Images": [""]
+ }
+ },
+ "Urls" :
+ {
+ "Product Pages": ["http://www.analog.com/en/products/mems/accelerometers/adxl345.html"],
+ "Datasheets": ["http://www.seeedstudio.com/wiki/images/2/2c/ADXL345_datasheet.pdf", "http://www.analog.com/media/en/technical-documentation/data-sheets/ADXL345.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/adxrs610/adxrs610.json b/src/adxrs610/adxrs610.json
new file mode 100755
index 00000000..b6088f66
--- /dev/null
+++ b/src/adxrs610/adxrs610.json
@@ -0,0 +1,46 @@
+{
+ "Library": "adxrs610",
+ "Description": "Gyro Breakout Board (300 Degrees/second)",
+ "Sensor Class":
+ {
+ "adxrs610":
+ {
+ "Brief": "DFRobot ADXRS610 Gyro Breakout Board",
+ "Description": "The ADXRS610 is a MEMS based single axis gyroscope with a range of +/- 300 degrees/sec. It also incorporates a temperature sensing unit that can be used for advanced calibration. This sensor returns an analog voltage proportional to the rotation about the Z-axis in degrees/sec. The temperature component returns a proportional analog values in degrees C. This driver was developed using the DFRobot ADXRS610 Gyro Beakout board.",
+ "Part Numbers": ["adxrs610"],
+ "Categories": ["imu", "gyroscope"],
+ "Connections": ["analog"],
+ "Project Type": ["prototyping", "industrial"],
+ "Manufacturers": ["dfrobot"],
+ "Kits": [],
+ "Image": "adxrs610.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": ["adxrs610.py"],
+ "Node.js": ["adxrs610.js"],
+ "C++": ["adxrs610.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Vdd": {"unit": "v", "low" : 5.0, "high": 5.0},
+ "Quiescent Current": {"unit": "mA", "low": 3.5, "high": 4.5}
+ },
+ "Platforms":
+ {
+ "Intel Joule Module":
+ {
+ "Notes": ["Requires pull-up resistors with carrier board"],
+ "Images": [""]
+ }
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.dfrobot.com/product-642.html"],
+ "Datasheets": ["http://image.dfrobot.com/image/data/SEN0070/ADXRS610%20datasheet_EN.pdf"],
+ "Schematics": ["http://image.dfrobot.com/image/data/SEN0070/ADXRS610_Gyro_Breakout.pdf"]
+ }
+ }
+ }
+}
diff --git a/src/am2315/am2315.json b/src/am2315/am2315.json
new file mode 100755
index 00000000..9df39119
--- /dev/null
+++ b/src/am2315/am2315.json
@@ -0,0 +1,48 @@
+{
+ "Library": "am2315",
+ "Description": "Digital Temperature and Humidity Sensor",
+ "Sensor Class":
+ {
+ "am2315":
+ {
+ "Brief": "API for the AM2315 Temperature & Humidity Sensor",
+ "Description": "The AM2315 is a digital humidity sensor with temperature output. RH reports between 0 and 100%, and the temperature range is -40 to +125 degC. The sampling period of this sensor is 2 seconds. Reads occurring more often than that return cached data.",
+ "Part Numbers": ["am2315"],
+ "Categories": ["humidity", "temperature"],
+ "Connections": ["i2c"],
+ "Project Type": ["prototyping", "industrial"],
+ "Manufacturers": ["adafruit"],
+ "Kits": [],
+ "Image": "am2315.jpg",
+ "Examples":
+ {
+ "Java": ["AM2315Example.java"],
+ "Python": [],
+ "Node.js": [],
+ "C++": ["am2315.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Vcc": {"unit": "v", "low" : 3.5, "high": 5.5},
+ "Current Draw": {"unit": "mA", "low": 0.0, "high": 10},
+ "Temperature Sensor Range": {"unit": "degC", "low": -20, "high": 80},
+ "Humidity Sensor Range": {"unit": "%", "low": 0, "high": 100}
+ },
+ "Platforms":
+ {
+ "Intel Joule Module":
+ {
+ "Notes": ["Requires pull-up resistors with carrier board"],
+ "Images": [""]
+ }
+ },
+ "Urls" :
+ {
+ "Product Pages": ["http://www.adafruit.com/products/1293"],
+ "Datasheets": ["https://cdn-shop.adafruit.com/datasheets/AM2315.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
diff --git a/src/bmm150/bmm150.json b/src/bmm150/bmm150.json
new file mode 100755
index 00000000..bef7e038
--- /dev/null
+++ b/src/bmm150/bmm150.json
@@ -0,0 +1,47 @@
+{
+ "Library": "bmx050",
+ "Description": "Bosch 3-axis Magnetometer",
+ "Sensor Class":
+ {
+ "BME280":
+ {
+ "Brief": "3-axis Geomagnetic Sensor",
+ "Description": "The BMM150 is a standalone geomagnetic sensor for consumer market applications. It allows measurements of the magnetic field in three perpendicular axes. Based on Bosch's proprietary FlipCore technology, performance and features of BMM150 are carefully tuned and perfectly match the demanding requirements of all 3-axis mobile applications such as electronic compass, navigation or augmented reality. An evaluation circuitry (ASIC) converts the output of the geomagnetic sensor to digital results which can be read out over the industry standard digital interfaces (SPI and I2C). Not all functionality of this chip has been implemented in this driver, however all the pieces are present to add any desired functionality. This driver supports both I2C (default) and SPI operation.",
+ "Part Numbers": ["bme280"],
+ "Categories": ["pressure", "humidity", "temperature"],
+ "Connections": ["gpio", "i2c", "spi"],
+ "Project Type": ["prototyping", "industrial"],
+ "Manufacturers": ["bosch"],
+ "Kits": [],
+ "Image": "bmm150.jpg",
+ "Examples":
+ {
+ "Java": ["bmm150_Example.java"],
+ "Python": ["bmm150.py"],
+ "Node.js": ["bmm150.js"],
+ "C++": ["bmm150.cxx"],
+ "C": ["bmm150.c"]
+ },
+ "Specifications":
+ {
+ "Vdd": {"unit": "v", "low" : 1.62, "high": 3.6},
+ "Temperature Range": {"unit": "degC", "low" : -40, "high": 85},
+ "Sensing Range": {"unit": "uT (±)", "low": 1300, "high": 2500}
+ },
+ "Platforms":
+ {
+ "Intel Joule Module":
+ {
+ "Notes": ["Requires pull-up resistors with carrier board"],
+ "Images": [""]
+ }
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.bosch-sensortec.com/bst/products/all_products/bmm150"],
+ "Datasheets": ["https://ae-bst.resource.bosch.com/media/_tech/media/datasheets/BST-BMM150-DS001-01.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/bmpx8x/bmpx8x.json b/src/bmpx8x/bmpx8x.json
new file mode 100755
index 00000000..accd16e7
--- /dev/null
+++ b/src/bmpx8x/bmpx8x.json
@@ -0,0 +1,50 @@
+{
+ "Library": "bmpx8x",
+ "Description": "BMP Atmospheric Pressure Sensor",
+ "Sensor Class":
+ {
+ "bmpx8x":
+ {
+ "Brief": "BMP Atmospheric Pressure Sensor",
+ "Description": "The BME280 is as combined digital humidity, pressure and temperature sensor based on proven sensing principles. The sensor module is housed in an extremely compact metal-lid LGA package with a footprint of only 2.5 * 2.5 mm2 with a height of 0.93 mm. Its small dimensions and its low power consumption allow the implementation in battery driven devices such as handsets, GPS modules or watches. The BME280 is register and performance compatible to the Bosch Sensortec BMP280 digital pressure sensor",
+ "Part Numbers": ["bmpx8x"],
+ "Categories": ["pressure"],
+ "Connections": ["i2c"],
+ "Project Type": ["prototyping", "industrial"],
+ "Manufacturers": ["seeed", "adafruit", "sparkfun"],
+ "Kits": [],
+ "Image": "bmp085.jpg",
+ "Examples":
+ {
+ "Java": ["BMPX8XSample.java"],
+ "Python": ["bmpx8x.py"],
+ "Node.js": ["bmpx8x.js"],
+ "C++": ["bmpx8x.cxx"],
+ "C": ["bmpx8x.c"]
+ },
+ "Specifications":
+ {
+ "Vdd": {"unit": "v", "low" : 1.8, "high": 3.6},
+ "Supply Current": {"unit": "uA", "low": 3, "high": 32},
+ "Peak Current": {"unit": "uA", "low": 650, "high": 1000},
+ "Standby Current": {"unit": "uA", "low": 0.1, "high": 0.1},
+ "Pressure Range": {"unit": "hPa", "low" : 300, "high": 1100},
+ "Temperature Range": {"unit": "C", "low" : -40, "high": 85}
+ },
+ "Platforms":
+ {
+ "Intel Joule Module":
+ {
+ "Notes": ["Requires pull-up resistors with carrier board"],
+ "Images": [""]
+ }
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.adafruit.com/product/1900"],
+ "Datasheets": ["https://cdn-shop.adafruit.com/datasheets/1900_BMP183.pdf", "https://www.sparkfun.com/datasheets/Components/General/BST-BMP085-DS000-05.pdf"],
+ "Schematics": ["https://learn.adafruit.com/adafruit-bmp183-spi-barometric-pressure-and-altitude-sensor/downloads#schematic"]
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/bmx055/bmx055.json b/src/bmx055/bmx055.json
new file mode 100755
index 00000000..0ab391cd
--- /dev/null
+++ b/src/bmx055/bmx055.json
@@ -0,0 +1,50 @@
+{
+ "Library": "bmx055",
+ "Description": "BMX055 9-axis Sensor Module",
+ "Sensor Class":
+ {
+ "BME280":
+ {
+ "Brief": "BMX055 9-axis Sensor Module",
+ "Description": "The BMX055 is an integrated 9-axis sensor for the detection of movements and rotations and magnetic heading. It comprises the full functionality of a triaxial, low-g acceleration sensor, a triaxial angular rate sensor and a triaxial geomagnetic sensor. The BMX055 senses orientation, tilt, motion, acceleration, rotation, shock, vibration and heading in cell phones, handhelds, computer peripherals, man-machine interfaces, virtual reality features and game controllers. The BMX055 is essentially 3 separate devices in one: the BMA250E Accelerometer, the BMG160 Gyroscope, and the BMM150 Magnetometer. They are completely independant of each other. This driver provides a very simple interface to these 3 devices. If finer control is desired, you should just use the separate BMA25E, BMG160, and BMM150 device classes directly. This driver simply initializes all three devices, and provides a mechanism to read accelerometer, gyroscope and magnetometer data from them.",
+ "Part Numbers": ["bmx055"],
+ "Categories": ["imu", "accelerometer", "gyroscope", "magnetometer"],
+ "Connections": ["gpio", "i2c", "spi"],
+ "Project Type": ["prototyping", "industrial"],
+ "Manufacturers": ["bosch"],
+ "Kits": [],
+ "Image": "bmp280.jpg",
+ "Examples":
+ {
+ "Java": ["BMX055_Example.java"],
+ "Python": ["bmx055.py"],
+ "Node.js": ["bmx055.js"],
+ "C++": ["bmx055.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Vdd": {"unit": "v", "low" : 2.4, "high": 3.6},
+ "Measurement Range (Accelerometer)": {"unit": "g", "low": 2, "high": 16},
+ "Measurement Range (Gyroscope)": {"unit": "deg/s", "low": 125, "high": 2000},
+ "Measurement Range (Magnetometer)": {"unit": "LSB/uT", "typ": 3.3},
+ "Iavg": {"unit": "uA", "low" : 130, "high": 5000},
+ "Temperature Range": {"unit": "C", "low" : -40, "high": 85}
+ },
+ "Platforms":
+ {
+ "Intel Joule Module":
+ {
+ "Notes": ["Requires pull-up resistors with carrier board"],
+ "Images": [""]
+ }
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.bosch-sensortec.com/bst/products/all_products/bmx055"],
+ "Datasheets": ["https://ae-bst.resource.bosch.com/media/_tech/media/datasheets/BST-BMX055-DS000-02.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/bno055/bno055.json b/src/bno055/bno055.json
new file mode 100755
index 00000000..d2528274
--- /dev/null
+++ b/src/bno055/bno055.json
@@ -0,0 +1,49 @@
+{
+ "Library": "bno055",
+ "Description": "API for the BNO055 Absolute Orientation 9DOF Fusion Hub",
+ "Sensor Class":
+ {
+ "bno055":
+ {
+ "Brief": "Intelligent 9-axis Absolute Orientation Sensor",
+ "Description": "The BNO055 is a System in Package (SiP), integrating a triaxial 14-bit accelerometer, a triaxial 16-bit gyroscope with a range of +/- 2000 degrees per second, a triaxial geomagnetic sensor and a 32-bit cortex M0+ microcontroller running Bosch Sensortec sensor fusion software, in a single package. This sensor handles the hard problem of combining various sensor information into a reliable measurement of sensor orientation (refered to as 'sensor fusion'). The onboard MCU runs this software and can provide fusion output in the form of Euler Angles, Quaternions, Linear Acceleration, and Gravity Vectors in 3 axes. The focus on this driver has been on supporting the fusion components. Less support is available for use of this device as a generic accelerometer, gyroscope and magnetometer, however enough infrastructure is available to add any missing functionality. This device requires calibration in order to operate accurately. Methods are provided to retrieve calibration data (once calibrated) to be stored somewhere else, like in a file. A method is provided to load this data as well. Calibration data is lost on a power cycle. See one of the examples for a description of how to calibrate the device, but in essence: There is a calibration status register available (getCalibrationStatus()) that returns the calibration status of the accelerometer (ACC), magnetometer (MAG), gyroscope (GYR), and overall system (SYS). Each of these values range from 0 (uncalibrated) to 3 (fully calibrated). Calibration involves certain motions to get all 4 values at 3. The motions are as follows (though see the datasheet for more information): GYR: Simply let the sensor sit flat for a few seconds. ACC: Move the sensor in various positions. Start flat, then rotate slowly by 45 degrees, hold for a few seconds, then continue rotating another 45 degrees and hold, etc. 6 or more movements of this type may be required. You can move through any axis you desire, but make sure that the device is lying at least once perpendicular to the x, y, and z axis. MAG: Move slowly in a figure 8 pattern in the air, until the calibration values reaches 3. SYS: This will usually reach 3 when the other items have also reached 3. If not, continue slowly moving the device though various axes until it does.",
+ "Part Numbers": ["bno055"],
+ "Categories": ["accelerometer", "compass"],
+ "Connections": ["gpio", "i2c"],
+ "Project Type": ["prototyping", "industrial"],
+ "Manufacturers": ["adafruit"],
+ "Kits": [],
+ "Image": "bno055.jpg",
+ "Examples":
+ {
+ "Java": ["BNO055_Example.java"],
+ "Python": ["bno055.py"],
+ "Node.js": ["bno055.js"],
+ "C++": ["bno055.cxx"],
+ "C": ["bno055.c"]
+ },
+ "Specifications":
+ {
+ "Vsource": {"unit": "v", "low" : 2.4, "high": 3.6},
+ "Supply Current": {"unit": "mA", "low": 0.33, "high": 12.3},
+ "Supply Current (Suspended)": {"unit": "uA", "typ": 40},
+ "Gyroscope Ranges": {"unit": "deg/s", "low": 125, "high": 2000},
+ "Magnetometer Ranges":
+ },
+ "Platforms":
+ {
+ "Intel Joule Module":
+ {
+ "Notes": ["Requires pull-up resistors with carrier board"],
+ "Images": [""]
+ }
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.adafruit.com/products/2472"],
+ "Datasheets": ["https://cdn-learn.adafruit.com/assets/assets/000/036/832/original/BST_BNO055_DS000_14.pdf"],
+ "Schematics": ["https://cdn-learn.adafruit.com/assets/assets/000/024/546/medium800/sensors_BNO055_REV-C.png?1429569060"]
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/cjq4435/cjq4435.json b/src/cjq4435/cjq4435.json
new file mode 100755
index 00000000..913d1288
--- /dev/null
+++ b/src/cjq4435/cjq4435.json
@@ -0,0 +1,46 @@
+{
+ "Library": "cjq4435",
+ "Description": "API for the CJQ4435 MOSFET",
+ "Sensor Class":
+ {
+ "cjq4435":
+ {
+ "Brief": "CJQ4435 MOSFET",
+ "Description": "UPM module for the CJQ4435 MOSFET. It was developed using the Grove MOSFET module, but could be used with any MOSFET. A MOSFET is like a switch, but it can switch much faster than a mechanical relay. Here, we implement support via MRAA pulse width modulation (PWM) functions. Note: available periods vary depending on the capabilities of your platform.",
+ "Part Numbers": ["cjq4435"],
+ "Categories": ["electric"],
+ "Connections": ["gpio", "pwm"],
+ "Project Type": ["prototyping", "robotics"],
+ "Manufacturers": ["seeed"],
+ "Kits": ["robok"],
+ "Image": "cjq4435.jpg",
+ "Examples":
+ {
+ "Java": ["CJQ4435Sample.java"],
+ "Python": ["cjq4435.py"],
+ "Node.js": ["cjq4435.js"],
+ "C++": ["cjq4435.cxx"],
+ "C": ["cjq4435.c"]
+ },
+ "Specifications":
+ {
+ "Trigger Voltage": {"unit": "V", "typ" : 5},
+ "Working Voltage" : {"unit": "V", "low" : 5, "high": 15}
+ },
+ "Platforms":
+ {
+ "Intel Joule Module":
+ {
+ "Notes": ["Requires pull-up resistors with carrier board"],
+ "Images": [""]
+ }
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-MOSFET-p-1594.html", "http://wiki.seeed.cc/Grove-MOSFET/"],
+ "Datasheets": ["https://raw.githubusercontent.com/SeeedDocument/Grove-MOSFET/master/res/CJQ4435.pdf"],
+ "Schematics": ["https://github.com/SeeedDocument/Grove-MOSFET/raw/master/res/Grove%20-%20MOSFET%20.pdf"]
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/collision/collision.json b/src/collision/collision.json
new file mode 100755
index 00000000..14babddd
--- /dev/null
+++ b/src/collision/collision.json
@@ -0,0 +1,45 @@
+{
+ "Library": "collision",
+ "Description": "API for the Collision Sensor",
+ "Sensor Class":
+ {
+ "collision":
+ {
+ "Brief": "Grove Collision Sensor",
+ "Description": "The Collision Sensor can detect whether any collision movement or vibration happens. It outputs a low pulse signal when vibration is detected.",
+ "Part Numbers": ["collision"],
+ "Categories": ["collision", "accelerometer"],
+ "Connections": ["gpio"],
+ "Project Type": ["prototyping", "robotics"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "collision.jpg",
+ "Examples":
+ {
+ "Java": ["Collision.java"],
+ "Python": ["collision.py"],
+ "Node.js": ["collision.js"],
+ "C++": ["collision.cxx"],
+ "C": ["collision.c"]
+ },
+ "Specifications":
+ {
+ "Vsource": {"unit": "V", "low" : 3.3, "high": 5}
+ },
+ "Platforms":
+ {
+ "Intel Joule Module":
+ {
+ "Notes": ["Requires pull-up resistors with carrier board"],
+ "Images": [""]
+ }
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-Collision-Sensor-p-1132.html", "http://wiki.seeed.cc/Grove-Collision_Sensor/"],
+ "Datasheets": ["https://raw.githubusercontent.com/SeeedDocument/Grove-Collision_Sensor/master/res/DataSheet-MVS0608_02-v2_1.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/curieimu/curieimu.json b/src/curieimu/curieimu.json
new file mode 100755
index 00000000..e5ff5e66
--- /dev/null
+++ b/src/curieimu/curieimu.json
@@ -0,0 +1,39 @@
+{
+ "Library": "curieimu",
+ "Description": "Bosch Atmospheric Sensor Library",
+ "Sensor Class":
+ {
+ "curieimu":
+ {
+ "Brief": "Digital Humidity, Pressure, and Temperature Sensor",
+ "Description": "Curie IMU is a 6-axis accelerometer.",
+ "Part Numbers": ["curieimu"],
+ "Categories": ["IMU", "accelerometer", "compass"],
+ "Connections": ["firmata"],
+ "Project Type": ["prototyping", "industrial"],
+ "Manufacturers": ["bosch"],
+ "Kits": [],
+ "Image": "curieimu.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": ["curieimu.py"],
+ "Node.js": ["curieimu.js"],
+ "C++": ["curieimu.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+
+ },
+ "Platforms":
+ {},
+ "Urls" :
+ {
+ "Product Pages": [],
+ "Datasheets": [],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/cwlsxxa/cwlsxxa.json b/src/cwlsxxa/cwlsxxa.json
new file mode 100755
index 00000000..fc3331eb
--- /dev/null
+++ b/src/cwlsxxa/cwlsxxa.json
@@ -0,0 +1,60 @@
+{
+ "Library": "cwlsxxa",
+ "Description": "API for the Veris CWLSXXA CO2 Sensor Family",
+ "Sensor Class":
+ {
+ "cwlsxxa":
+ {
+ "Brief": "Veris CWLSXXA CO2 Sensor",
+ "Description": "The driver was developed using the CWLSHTA CO2 Gas sensor. The 'T' variant supports a temperature transmitter, and the 'H' variant supports a humidity sensor. All 3 signals are provided by the device as analog 0-5Vdc, 0-10Vdc, or 4-20ma loop current outputs. For devices supporting temperature, the valid temperature range is 10C to 50C. The humidity ranges from 0% to 100% (non-condensing). The CO2 sensor ranges from 0 to 2000 ppm. This driver was developed using the 5Vdc outputs and the 4-20ma outputs. For voltage outputs, your MCU must be configured for 5V operation. In addition, you must configure the sensor (via it's configuration switches) to output 0-5VDC only. Using any other analog reference voltage will require the appropriate external circuitry (such as a voltage divider) in order to interface safely with your MCU. In addition, the sensor can be configured for 4-20ma usage, by specifying the correct receiver resistance (in ohms) in the constructor. This sensor was tested with a Cooking Hacks (Libelium) 4-channel 4-20ma Arduino interface shield. For this interface, the receiver resistance was specified as 165.0 ohms. For devices which do not support temperature, use '-1' as the temperature pin number in the object constructor. If temperature measurement is disabled, getTemperature() will always return 0C/32F. For devices which do not support humidity, use '-1' as the temperature pin number in the object constructor. If humidity measurement is disabled, getHumidity() will always return 0.",
+ "Part Numbers": ["cwlsxxa"],
+ "Categories": ["temp", "gaseous"],
+ "Connections": ["analog"],
+ "Project Type": ["industrial"],
+ "Manufacturers": ["veris"],
+ "Kits": [],
+ "Image": "cwlsxxa.jpg",
+ "Examples":
+ {
+ "Java": ["CWLSXXA_Example.java"],
+ "Python": ["cwlsxxa.py"],
+ "Node.js": ["cwlsxxa.js"],
+ "C++": ["cwlsxxa.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Vsource (DC)": {"unit": "VDC", "low": 20, "high": 30},
+ "Vsource (AC)": {"unit": "VAC", "typ": 24},
+
+ "CO2 Measurement Range": {"unit": "ppm", "low": 0, "high": 5000},
+ "CO2 Accuracy": {"unit": "ppm ±", "typ": 30},
+ "CO2 Repeatability": {"unit": "ppm ±", "typ": 20},
+ "CO2 Response Time": {"unit": "s", "max": 60},
+
+ "RH Measurement Range": {"unit": "%", "low": 0, "high": 100},
+ "RH Operating Temperature Range": {"unit": "degC", "low": 10, "high": 35},
+ "RH Accuracy": {"unit": "%", "typ": 2},
+ "RH Stability": {"unit": "%", "typ": 1},
+
+ "Temperature Accuracy": {"unit": "degC", "typ": 0.5},
+ "Temperature Resolution": {"unit": "degC", "typ": 0.1},
+ "Temperature Range": {"unit": "degC", "low": 10, "high": 35}
+ },
+ "Platforms":
+ {
+ "Intel Joule Module":
+ {
+ "Notes": ["Requires pull-up resistors with carrier board"],
+ "Images": [""]
+ }
+ },
+ "Urls" :
+ {
+ "Product Pages": ["http://www.veris.com/Item/CWLSHTA.aspx"],
+ "Datasheets": ["http://www.veris.com/docs/Datasheets/CDL_CDW_d0117.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/dfrec/dfrec.json b/src/dfrec/dfrec.json
new file mode 100755
index 00000000..029a51d2
--- /dev/null
+++ b/src/dfrec/dfrec.json
@@ -0,0 +1,40 @@
+{
+ "Library": "dfrec",
+ "Description": "DFRobot EC Meter Library",
+ "Sensor Class":
+ {
+ "dfrec":
+ {
+ "Brief": "Analog Electrical Conductivity (EC) Sensor",
+ "Description": "The driver was tested with the DFRobot EC Analog Sensor. This device measure the electrical conductivity of an aqueous solution. The included probe is a K=1 model. Calibration is somewhat complicated - see the DFRobot wiki for instructions on calibration. Functions are provided to supply the appropriate values. By default, the values used in the DFRobot arduino example are used.",
+ "Part Numbers": ["dfrec"],
+ "Categories": ["ec", "conductivity"],
+ "Connections": ["analog", "uart"],
+ "Project Type": ["industrial"],
+ "Manufacturers": ["dfrobot"],
+ "Kits": [],
+ "Image": "dfrec.jpg",
+ "Examples":
+ {
+ "Java": ["DFREC_Example.java"],
+ "Python": ["dfrec.py"],
+ "Node.js": ["dfrec.js"],
+ "C++": ["dfrec.cxx"],
+ "C": ["dfrec.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "Typ": 5},
+ "Measurement Range": {"unit": "mS/cm", "low": 1, "high": 20},
+ "Operating Temperature": {"unit": "degC", "low": 5, "high": 40}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.dfrobot.com/product-1123.html"],
+ "Datasheets": [""],
+ "Schematics": ["http://image.dfrobot.com/image/data/DFR0300/DFR0300_v1.0_schematic.pdf"]
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/dfrorp/dfrorp.json b/src/dfrorp/dfrorp.json
new file mode 100755
index 00000000..9c928e05
--- /dev/null
+++ b/src/dfrorp/dfrorp.json
@@ -0,0 +1,40 @@
+{
+ "Library": "dfrorp",
+ "Description": "UPM C++ API for the DFRobot ORP (Oxidation/Reduction Potential)",
+ "Sensor Class":
+ {
+ "dfrorp":
+ {
+ "Brief": "Analog Oxidation Reduction Potential (ORP) Sensor",
+ "Description": "This library was tested with the DFRobot ORP (Oxidation/Reduction Potential) Sensor. To calibrate: Disconnect the sensor probe (but leave the sensor interface board connected). Then run one of the examples while holding down the 'calibrate' button on the device. Read the ORP value reported (it should be fairly small). This value is what you should supply to setCalibrationOffset(). Then reconnect the probe to the interface board and you should be ready to go. DO NOT press the calibrate button on the interface board while the probe is attached or you can permanently damage the probe.",
+ "Part Numbers": ["dfrorp"],
+ "Categories": ["orp", "liquid"],
+ "Connections": ["analog"],
+ "Project Type": ["industrial"],
+ "Manufacturers": ["dfrobot"],
+ "Kits": [],
+ "Image": "dfrorp.jpg",
+ "Examples":
+ {
+ "Java": ["DFRORP_Example.java"],
+ "Python": ["dfrorp.py"],
+ "Node.js": ["dfrorp.js"],
+ "C++": ["dfrorp.cxx"],
+ "C": ["dfrorp.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "Typ": 5},
+ "Measurement Range": {"unit": "V", "low": -2, "high": 2},
+ "Operating Temperature": {"unit": "degC", "low": 5, "high": 70}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.dfrobot.com/product-1071.html"],
+ "Datasheets": ["https://www.dfrobot.com/wiki/index.php/Analog_ORP_Meter(SKU:SEN0165)"],
+ "Schematics": ["http://image.dfrobot.com/image/data/SEN0165/OPR%20meter%20V1.0%20Schematic.pdf"]
+ }
+ }
+ }
+}""
diff --git a/src/dfrph/dfrph.json b/src/dfrph/dfrph.json
new file mode 100755
index 00000000..086c1d28
--- /dev/null
+++ b/src/dfrph/dfrph.json
@@ -0,0 +1,40 @@
+{
+ "Library": "dfrph",
+ "Description": "API for the DFRobot pH Sensors",
+ "Sensor Class":
+ {
+ "dfrph":
+ {
+ "Brief": "Analog pH Sensor",
+ "Description": "TThis sensor family returns an analog voltage proportional to the acidity or alkalinity of a liquid -- it's pH value. This driver was developed using the DFRobot Analog pH meter and the DFRobot Analog pH Meter Pro. Calibration instructions, taken and slightly reworded from the DFRobot wiki at: http://dfrobot.com/wiki/index.php/PH_meter%28SKU:_SEN0161%29 1) Connect equipment: the pH electrode is connected to the BNC connector on the pH meter board, and then the pH meter board is connected to the analog port 0 of the controller. When the controller gets power, you will see the blue LED on board is on. 2) Put the pH electrode into the standard solution whose pH value is 7.00. Run the dfrph example and note the pH output value. Compare the value with 7.00, and calculate the difference. This is the value you should supply to the setOffset() method. 3) Put the pH electrode into the pH standard solution whose value is 4.00. Then wait about one minute, and adjust the potentiometer on the interface board. Let the value stabilise at around 4.00. At this time,the acidic calibration has been completed and you can measure the pH value of an acidic solution. 4) According to the linear characteristics of pH electrode itself, after the above calibration,you can directly measure the pH value of the alkaline solution. If you want to get better accuracy, you can recalibrate it. Alkaline calibration use the standard solution whose pH value is 9.18. Also adjust the potentiometer and let the value stabilise at around 9.18. After this calibration, you can measure the pH value of an alkaline solution.",
+ "Part Numbers": ["dfrph"],
+ "Categories": ["pH", "liquid"],
+ "Connections": ["analog"],
+ "Project Type": ["industrial"],
+ "Manufacturers": ["dfrobot"],
+ "Kits": [],
+ "Image": "dfrph.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": ["dfrph.py"],
+ "Node.js": ["dfrph.js"],
+ "C++": ["dfrph.cxx"],
+ "C": ["dfrph.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "Typ": 5},
+ "Measurement Range": {"unit": "pH", "low": 0, "high": 14},
+ "Operating Temperature": {"unit": "degC", "low": 0, "high": 60}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.dfrobot.com/product-1110.html"],
+ "Datasheets": ["https://www.dfrobot.com/wiki/index.php/PH_meter(SKU:_SEN0161)"],
+ "Schematics": ["http://image.dfrobot.com/image/data/SEN0161/pH%20meter%20V1.0%20SCH.pdf"]
+ }
+ }
+ }
+}""
diff --git a/src/ds1307/ds1307.json b/src/ds1307/ds1307.json
new file mode 100755
index 00000000..4d51a913
--- /dev/null
+++ b/src/ds1307/ds1307.json
@@ -0,0 +1,41 @@
+{
+ "Library": "ds1307",
+ "Description": "DS1307 Real-Time Clock library",
+ "Sensor Class":
+ {
+ "ds1307":
+ {
+ "Brief": "DS1307 Real Time Clock (RTC) Module",
+ "Description": "UPM module for the DS1307-based real-time clock. The clock can provide information about seconds, minutes, hours, day of the week, day of the month, month, and year. It can operate in either a 24-hour or a 12-hour format. This device can also output a square wave at 1Khz, 4Khz, 8Khz, and 32Khz. However, this capability is not implemented in this module.",
+ "Part Numbers": ["ds1307"],
+ "Categories": ["RTC", "timekeeping"],
+ "Connections": ["i2c"],
+ "Project Type": ["prototyping", "industrial"],
+ "Manufacturers": ["seeed", "maxim"],
+ "Kits": [],
+ "Image": "ds1307.jpg",
+ "Examples":
+ {
+ "Java": ["DS1307Sample.java"],
+ "Python": ["ds1307.py"],
+ "Node.js": ["ds1307.js"],
+ "C++": ["ds1307.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 4.5, "high": 5.5},
+ "Active Current": {"unit": "mA", "Typ": 1.5},
+ "Standby Current (Oscillator On)": {"unit": "nA", "low": 480, "high": 800},
+ "Operating Temperature": {"unit": "degC", "low": 0, "high": 70}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.maximintegrated.com/en/products/digital/real-time-clocks/DS1307.html/tb_tab0"],
+ "Datasheets": ["https://datasheets.maximintegrated.com/en/ds/DS1307.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/ds1808lc/ds1808lc.json b/src/ds1808lc/ds1808lc.json
new file mode 100755
index 00000000..4e78b17b
--- /dev/null
+++ b/src/ds1808lc/ds1808lc.json
@@ -0,0 +1,40 @@
+{
+ "Library": "ds1808lc",
+ "Description": "API for DS1808 Dual Log Digital Potentiometer as a Light Controller",
+ "Sensor Class":
+ {
+ "ds1808lc":
+ {
+ "Brief": "DS1808LC Lighting Controller",
+ "Description": "The Maxim Integrated [DS1808](http://www.maximintegrated.com/en/products/analog/data-converters/digital-potentiometers/DS1808.html) Dual Log Digital Potentiometer",
+ "Part Numbers": ["ds1808lc"],
+ "Categories": ["lighting"],
+ "Connections": ["i2c"],
+ "Project Type": ["prototyping", "industrial"],
+ "Manufacturers": ["maxim"],
+ "Kits": [],
+ "Image": "ds1808lc.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": [],
+ "Node.js": [],
+ "C++": ["ds1808lc.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "+-V", "Typ": 12},
+ "Voltage Range": {"unit": "+-%", "Typ": 10},
+ "Operating Temperature": {"unit": "degC", "low": -40, "high": 85}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.maximintegrated.com/en/products/analog/data-converters/digital-potentiometers/DS1808.html"],
+ "Datasheets": ["https://datasheets.maximintegrated.com/en/ds/DS1808.pdf"],
+ "Schematics": [""]
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/ds18b20/ds18b20.json b/src/ds18b20/ds18b20.json
new file mode 100755
index 00000000..ea8aa45e
--- /dev/null
+++ b/src/ds18b20/ds18b20.json
@@ -0,0 +1,40 @@
+{
+ "Library": "ds18b20",
+ "Description": "API for the DS18B20 1-Wire Temperature Sensor",
+ "Sensor Class":
+ {
+ "ds18b20":
+ {
+ "Brief": "DS18B20 1-Wire Temperature Sensor",
+ "Description": "The driver was tested with the DFRobot EC Analog Sensor. This device measure the electrical conductivity of an aqueous solution. The included probe is a K=1 model. Calibration is somewhat complicated - see the DFRobot wiki for instructions on calibration. Functions are provided to supply the appropriate values. By default, the values used in the DFRobot arduino example are used.",
+ "Part Numbers": ["ds18b20"],
+ "Categories": ["ec", "conductivity"],
+ "Connections": ["uart"],
+ "Project Type": ["prototyping", "industrial"],
+ "Manufacturers": ["dallas"],
+ "Kits": [],
+ "Image": "ds18b20.jpg",
+ "Examples":
+ {
+ "Java": [""],
+ "Python": ["ds18b20.py"],
+ "Node.js": ["ds18b20.js"],
+ "C++": ["ds18b20.cxx"],
+ "C": ["ds18b20.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 3.0, "high": 5.5},
+ "Measurement Range": {"unit": "degC", "low": -55, "high": 125},
+ "+-.5degC Accuracy Range": {"unit": "degC", "low": -10, "high": 85}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.sparkfun.com/products/11050"],
+ "Datasheets": ["http://cdn.sparkfun.com/datasheets/Sensors/Temp/DS18B20.pdf"],
+ "Schematics": [""]
+ }
+ }
+ }
+}""
diff --git a/src/ds2413/ds2413.json b/src/ds2413/ds2413.json
new file mode 100755
index 00000000..7805185d
--- /dev/null
+++ b/src/ds2413/ds2413.json
@@ -0,0 +1,40 @@
+{
+ "Library": "ds2413",
+ "Description": "1-Wire Dual Channel Addressable Switch Library",
+ "Sensor Class":
+ {
+ "ds2413":
+ {
+ "Brief": "1-Wire Dual Channel Addressable Switch",
+ "Description": "The DS2413 is a dual-channel programmable I/O 1-Wire(r) chip. The PIO outputs are configured as open-drain and provide up to 20mA continuous sink capability and off-state operating voltage up to 28V. Control and sensing of the PIO pins is performed with a dedicated device-level command protocol. This device requires the use of a UART to provide access to a Dallas 1-wire bus, via a new facility supported by MRAA (once the relevant PR is accepted), using the UartOW access class. It is important to realize that the UART is only being used to access and control a Dallas 1-wire compliant bus, it is not actually a UART device. Multiple DS2413 devices can be connected to this bus. This module will identify all such devices connected, and allow you to access them using an index starting at 0.",
+ "Part Numbers": ["ds2413"],
+ "Categories": ["switch"],
+ "Connections": ["uart"],
+ "Project Type": ["prototyping", "industrial"],
+ "Manufacturers": ["maxim", "adafruit"],
+ "Kits": [],
+ "Image": "ds2413.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": ["ds2413.py"],
+ "Node.js": ["ds2413.js"],
+ "C++": ["ds2413.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 2.8, "high": 5.5},
+ "Input Load Current": {"unit": "uA", "low": 3.5, "high": 950},
+ "Operating Temperature": {"unit": "degC", "low": 0, "high": 70}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["http://www.maximintegrated.com/datasheet/index.mvp/id/4588", "https://learn.adafruit.com/adafruit-1-wire-gpio-breakout-ds2413/overview"],
+ "Datasheets": ["http://www.adafruit.com/datasheets/DS2413.pdf"],
+ "Schematics": ["https://learn.adafruit.com/assets/15639"]
+ }
+ }
+ }
+}
diff --git a/src/e50hx/e50hx.json b/src/e50hx/e50hx.json
new file mode 100755
index 00000000..6896d282
--- /dev/null
+++ b/src/e50hx/e50hx.json
@@ -0,0 +1,42 @@
+{
+ "Library": "e50hx",
+ "Description": "UPM API for the Veris E50HX Energy Meter",
+ "Sensor Class":
+ {
+ "e50hx":
+ {
+ "Brief": "Veris E50HX (E50H2/E50H5) Energy Meter Module",
+ "Description": "This module implements support for the Veris E50H2 and E50H5 BACnet Energy Meters. From the datasheet: The E50H5 BACnet MS/TP DIN Rail Meter with Data Logging combines exceptional performance and easy installation to deliver a cost-effective solution for power monitoring applications. Native serial communication via BACnet MS/TP provides complete accessibility of all measurements to your Building Automation System The data logging capability protects data in the event of a power failure. The E50H5 can be easily installed on standard DIN rail, surface mounted or contained in an optional NEMA 4 enclosure, as needed. The front-panel LCD display makes device installation and setup easy and provides local access to the full set of detailed measurements. This module was developed using the upm::BACNETMSTP module, based on libbacnet-stack 0.8.3. Both libbacnet 0.8.3 and the upm::BACNETMSTP libraries must be present in order to build this module. This driver was developed on the E50H5. The Trend Log functionality is not currently supported. The Binary Input Objects are also not supported as these are only used for the Alarm bits which are already available from Analog Input Object 52 as an alarm bitfield incorporating all of the supported alarm indicators. It was connected using an RS232->RS485 interface. You cannot use the built in MCU TTL UART pins for accessing this device -- you must use a full Serial RS232->RS485 or USB-RS485 interface connected via USB.",
+ "Part Numbers": ["e50hx"],
+ "Categories": ["energy"],
+ "Connections": ["rs485"],
+ "Project Type": ["industrial"],
+ "Manufacturers": ["veris"],
+ "Kits": [],
+ "Image": "e50hx.jpg",
+ "Examples":
+ {
+ "Java": ["E50HX_Example.java"],
+ "Python": ["e50hx.py"],
+ "Node.js": ["e50hx.js"],
+ "C++": ["e50hx.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "AC Operating Voltage": {"unit": "VAC", "low": 90, "high": 600},
+ "AC Power Usage": {"unit": "VA", "Max": 5},
+ "DC Operating Voltage": {"unit": "VDC", "low": 125, "high": 300},
+ "DC Power Usage": {"unit": "W", "Max": 3},
+ "Operating Temperature": {"unit": "degC", "low": -30, "high": 70}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["http://www.veris.com/Item/E50H5.aspx"],
+ "Datasheets": ["http://www.veris.com/docs/Datasheets/E5x_d0117.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/ecezo/ecezo.json b/src/ecezo/ecezo.json
new file mode 100755
index 00000000..277b3d5f
--- /dev/null
+++ b/src/ecezo/ecezo.json
@@ -0,0 +1,44 @@
+{
+ "Library": "ecezo",
+ "Description": "API for the EC-EZO EC Sensor",
+ "Sensor Class":
+ {
+ "ecezo":
+ {
+ "Brief": "Electrical Conductivity (EC) Circuit",
+ "Description": "This driver was tested with the Atlas Scientific Electrical Conductivity kit. This device can operate in either UART or I2C modes.",
+ "Part Numbers": ["ecezo"],
+ "Categories": ["ec", "conductivity", "liquid"],
+ "Connections": ["i2c", "uart"],
+ "Project Type": ["industrial"],
+ "Manufacturers": ["atlas", "sparkfun"],
+ "Kits": [],
+ "Image": "ecezo.jpg",
+ "Examples":
+ {
+ "Java": ["ECEZO_Example.java"],
+ "Python": ["ecezo.py"],
+ "Node.js": ["ecezo.js"],
+ "C++": ["ecezo.cxx"],
+ "C": ["ecezo.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 3.3, "high": 5},
+ "Operating Current": {"unit": "mA", "low": 19, "high": 50},
+ "Conductivity Probe Range": {"unit": "K", "low": 0.1, "high": 10},
+ "Accurate Reading Range (K=0.1)": {"unit": "uS", "low": 0.5, "high": 50000},
+ "Accurate Reading Range (K=1.0)": {"unit": "uS", "low": 5, "high": 200000},
+ "Accurate Reading Range (K=10.0)": {"unit": "uS", "low": 10, "high": 1000000},
+ "Operating Temperature": {"unit": "degC", "low": 1, "high": 35}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.atlas-scientific.com/product_pages/kits/ec_k1_0_kit.html", "https://www.sparkfun.com/products/12908"],
+ "Datasheets": ["https://cdn.sparkfun.com/datasheets/Sensors/Biometric/EC_EZO_Datasheet.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/ecs1030/ecs1030.json b/src/ecs1030/ecs1030.json
new file mode 100755
index 00000000..20a57ba1
--- /dev/null
+++ b/src/ecs1030/ecs1030.json
@@ -0,0 +1,39 @@
+{
+ "Library": "ecs1030",
+ "Description": "ECS1030 Electricity Sensor Library",
+ "Sensor Class":
+ {
+ "ecs1030":
+ {
+ "Brief": "Non-Invasive Current Sensor",
+ "Description": "This non-invasive current sensor can be clamped around the supply line of an electrical load to tell you how much current is passing through it. It does this by acting as an inductor and responding to the magnetic field around a current-carrying conductor. This particular current sensor measures a load up to 30 A, which makes it great for building your own energy monitors.",
+ "Part Numbers": ["ecs1030"],
+ "Categories": ["meter", "electric"],
+ "Connections": ["analog"],
+ "Project Type": ["industrial"],
+ "Manufacturers": ["sparkfun"],
+ "Kits": [],
+ "Image": "ecs1030.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": [],
+ "Node.js": [],
+ "C++": ["ecs1030.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Measurable Current": {"unit": "V", "low": 1, "nominal": 30, "maximum": 60},
+ "Operating Temperature": {"unit": "degC", "low": -40, "high": 65}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.sparkfun.com/products/11005"],
+ "Datasheets": ["https://cdn.sparkfun.com/datasheets/Sensors/Current/ECS1030-L72-SPEC.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/ehr/ehr.json b/src/ehr/ehr.json
new file mode 100755
index 00000000..6db2c11a
--- /dev/null
+++ b/src/ehr/ehr.json
@@ -0,0 +1,40 @@
+{
+ "Library": "ehr",
+ "Description": "API for the Ear-clip Heart Rate Sensor",
+ "Sensor Class":
+ {
+ "ehr":
+ {
+ "Brief": "Ear-clip Heart Rate Sensor",
+ "Description": "UPM module for the ear-clip heart rate sensor. It is used to measure your heart rate.",
+ "Part Numbers": ["ehr"],
+ "Categories": ["heartrate"],
+ "Connections": ["gpio"],
+ "Project Type": ["medical", "wearables", "prototyping"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "ehr.jpg",
+ "Examples":
+ {
+ "Java": ["EHRSample.java"],
+ "Python": ["ehr.py"],
+ "Node.js": ["ehr.js"],
+ "C++": ["ehr.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 3, "high": 5},
+ "Operating Current": {"unit": "mA", "typ": 6.5},
+ "Measurement Range": {"unit": "bpm", "min": 30}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-Ear-clip-Heart-Rate-Sensor-p-1116.html"],
+ "Datasheets": ["http://wiki.seeedstudio.com/wiki/Grove_-_Heart_rate_ear_clip_kit"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/eldriver/eldriver.json b/src/eldriver/eldriver.json
new file mode 100755
index 00000000..916c36d7
--- /dev/null
+++ b/src/eldriver/eldriver.json
@@ -0,0 +1,40 @@
+{
+ "Library": "eldriver",
+ "Description": "API for the EL Driver Module",
+ "Sensor Class":
+ {
+ "eldriver":
+ {
+ "Brief": "Electroluminescent Wire (EL) Driver",
+ "Description": "The EL Driver allows you to easily light up an EL wire with just one single cable.",
+ "Part Numbers": ["eldriver"],
+ "Categories": ["lighting"],
+ "Connections": ["gpio"],
+ "Project Type": ["prototyping", "commercial", "wearables"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "eldriver.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": ["eldriver.py"],
+ "Node.js": ["eldriver.js"],
+ "C++": ["eldriver.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 3.3, "high": 5},
+ "Operating Current": {"unit": "mA", "max": 300},
+ "Supported EL Capacitance": {"unit": "nF", "max": 15}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-EL-Driver-p-2269.html"],
+ "Datasheets": ["http://wiki.seeed.cc/Grove-EL_Driver/"],
+ "Schematics": ["https://raw.githubusercontent.com/SeeedDocument/Grove-EL_Driver/master/res/Grove-EL_Driver_v1.0.pdf"]
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/electromagnet/electromagnet.json b/src/electromagnet/electromagnet.json
new file mode 100755
index 00000000..7fa03e5f
--- /dev/null
+++ b/src/electromagnet/electromagnet.json
@@ -0,0 +1,41 @@
+{
+ "Library": "electromagnet",
+ "Description": "Electromagnet Library",
+ "Sensor Class":
+ {
+ "electromagnet":
+ {
+ "Brief": "API for the Electromagnet",
+ "Description": "The Electromagnet can hold up to 1 kg (approximately 2.2 lbs)",
+ "Part Numbers": ["electromagnet"],
+ "Categories": ["electric", "magnetic"],
+ "Connections": ["gpio"],
+ "Project Type": ["prototyping"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "electromagnet.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": ["electromagnet.py"],
+ "Node.js": ["electromagnet.js"],
+ "C++": ["electromagnet.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "typ": 5},
+ "Operating Current": {"unit": "mA", "typ": 400},
+ "Standby Current": {"unit": "uA", "typ": 200},
+ "Max Load Weight": {"unit": "kgs", "typ": 1}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-Electromagnet-p-1820.html"],
+ "Datasheets": ["https://raw.githubusercontent.com/SeeedDocument/Grove-Electromagnet/master/res/ZYE1-P20-15.pdf", "http://wiki.seeed.cc/Grove-Electromagnet/"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/emg/emg.json b/src/emg/emg.json
new file mode 100755
index 00000000..be218529
--- /dev/null
+++ b/src/emg/emg.json
@@ -0,0 +1,38 @@
+{
+ "Library": "emg",
+ "Description": "Grove EMG Muscle Signal Reader Library",
+ "Sensor Class":
+ {
+ "emg":
+ {
+ "Brief": "Electromyography (EMG) Sensor",
+ "Description": "Grove EMG muscle signal reader gathers small muscle signals, then processes them, and returns the result.",
+ "Part Numbers": ["emg"],
+ "Categories": ["electromyography", "medical"],
+ "Connections": ["analog"],
+ "Project Type": ["wearables", "computer interfacing", "prototyping"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "emg.jpg",
+ "Examples":
+ {
+ "Java": ["Emg.java"],
+ "Python": ["emg.py"],
+ "Node.js": ["emg.js"],
+ "C++": ["emg.cxx"],
+ "C": ["emg.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 3.3, "high": 5}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-EMG-Detector-p-1737.html"],
+ "Datasheets": ["http://wiki.seeed.cc/Grove-EMG_Detector/"],
+ "Schematics": ["https://raw.githubusercontent.com/SeeedDocument/Grove-EMG_Detector/master/res/Grove-EMG_Sensor_v1.1_SCH.pdf"]
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/enc03r/enc03r.json b/src/enc03r/enc03r.json
new file mode 100755
index 00000000..f1a7164d
--- /dev/null
+++ b/src/enc03r/enc03r.json
@@ -0,0 +1,40 @@
+{
+ "Library": "enc03r",
+ "Description": "ENC03R Single Axis Gyro Library",
+ "Sensor Class":
+ {
+ "enc03r":
+ {
+ "Brief": "Single-axis Analog Gyro Module",
+ "Description": "UPM module for the ENC03R single axis analog gyro. This gyroscope measures x-axis angular velocity, that is how fast the sensor is rotating around the x-axis. Calibration of the sensor is necessary for accurate readings.",
+ "Part Numbers": ["enc03r"],
+ "Categories": ["gyroscope", "IMU", "Discontinued"],
+ "Connections": ["analog"],
+ "Project Type": ["prototyping", ],
+ "Manufacturers": ["murata", "seeed"],
+ "Kits": ["robok"],
+ "Image": "enc03r.jpg",
+ "Examples":
+ {
+ "Java": ["ENC03RSample.java"],
+ "Python": ["enc03r.py"],
+ "Node.js": ["enc03r.js"],
+ "C++": ["enc03r.cxx"],
+ "C": ["enc03r.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 2.7, "high": 5.25},
+ "Response Time": {"unit": "Hz", "typ": 50},
+ "Operating Temperature": {"unit": "decC", "low": -5, "high": 75}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-Single-Axis-Analog-Gyro-p-1451.html"],
+ "Datasheets": ["http://www.seeedstudio.com/wiki/File:Analog_Gyro_datasheet.pdf", "http://wiki.seeedstudio.com/wiki/Grove_-_Single_Axis_Analog_Gyro"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/flex/flex.json b/src/flex/flex.json
new file mode 100755
index 00000000..99b840e2
--- /dev/null
+++ b/src/flex/flex.json
@@ -0,0 +1,39 @@
+{
+ "Library": "flex",
+ "Description": "API for the Spectra Symbol Flex Sensor",
+ "Sensor Class":
+ {
+ "flex":
+ {
+ "Brief": "Resistive Flex Sensor",
+ "Description": "A simple flex sensor. The resistance across the sensor increases when flexed. Patented technology by Spectra Symbol, these sensors were used in the original Nintendo* Power Glove.",
+ "Part Numbers": ["flex"],
+ "Categories": ["flex sensors"],
+ "Connections": ["analog"],
+ "Project Type": ["prototyping", "industrial"],
+ "Manufacturers": ["sparkfun"],
+ "Kits": [],
+ "Image": "flex.jpg",
+ "Examples":
+ {
+ "Java": ["FlexSensorExample.java"],
+ "Python": [],
+ "Node.js": ["flex.js"],
+ "C++": ["flex.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Flat Resistance": {"unit": "KOhms", "typ": 10},
+ "Bend Resistance": {"unit": "KOhms", "low": 60, "high": 110},
+ "Temperature Range": {"unit": "degC", "low": -35, "high": 80}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.sparkfun.com/products/8606"],
+ "Datasheets": ["https://cdn.sparkfun.com/datasheets/Sensors/ForceFlex/FLEXSENSORREVA1.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/gas/gas.json b/src/gas/gas.json
new file mode 100755
index 00000000..18acfbcc
--- /dev/null
+++ b/src/gas/gas.json
@@ -0,0 +1,283 @@
+{
+ "Library": "gas",
+ "Description": "Gas Sensor Library",
+ "Sensor Class":
+ {
+ "mq2":
+ {
+ "Brief": "MQ2 Methane, Butane, Liquefied Petroleum Gas (LPG), and Smoke Sensor",
+ "Description": "The MQ2 Gas Sensor module is useful for gas leakage detection (in home and industry). It can detect LPG, i-butane, methane, alcohol, hydrogen, smoke, and other combustible gases. It's a medium-sensitivity sensor with a detection range of 300-10,000 ppm.",
+ "Part Numbers": ["mq2"],
+ "Categories": ["gas"],
+ "Connections": ["analog"],
+ "Project Type": ["prototyping", "safety", "industrial"],
+ "Manufacturers": ["seeed"],
+ "Kits": ["hak"],
+ "Image": "mq2-5.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": [],
+ "Node.js": [],
+ "C++": ["gas-mq2.cxx"],
+ "C": ["gas-mqx.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "typ": 5},
+ "Operating Current": {"unit": "mA", "low": 0.1, "high": 160},
+ "Heater Resistance": {"unit": "Ohms", "typ": 33},
+ "Sensor Resistance": {"unit": "KOhms", "low": 3, "high": 30}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-Gas-Sensor(MQ2)-p-937.html"],
+ "Datasheets": ["http://wiki.seeed.cc/Grove-Gas_Sensor-MQ2/"],
+ "Schematics": []
+ }
+ },
+
+ "mq3":
+ {
+ "Brief": "MQ3 Alcohol, Ethanol, Smoke Sensor",
+ "Description": "The MQ3 Gas Sensor module is useful for gas leakage detection (in home and industry). It can detect alcohol vapors and benzine. It's highly sensitive but has a long warm-up time of about 1 minute. It's detection range is 0.04-4 mg/L Alcohol.",
+ "Part Numbers": ["mq3"],
+ "Categories": ["gas"],
+ "Connections": ["analog"],
+ "Project Type": ["prototyping", "safety", "industrial"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "mq3-9.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": [],
+ "Node.js": [],
+ "C++": ["gas-mq3.cxx"],
+ "C": ["gas-mqx.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "typ": 5},
+ "Operating Current": {"unit": "mA", "low": 0.1, "high": 150},
+ "Heater Resistance": {"unit": "Ohms", "typ": 33},
+ "Sensor Resistance": {"unit": "MOhms", "low": 1, "high": 8},
+ "Detectable Concentration": {"unit": "mg/L", "low": 0.05, "high": 10}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-Gas-Sensor%28MQ3%29-p-1418.html"],
+ "Datasheets": ["http://wiki.seeed.cc/Grove-Gas_Sensor-MQ3/"],
+ "Schematics": []
+ }
+ },
+
+ "mq4":
+ {
+ "Brief": "MQ4 Methane and Connecticut Natural Gas (CNG) Sensor",
+ "Description": "The MQ4 Gas Sensor module is useful for detecting CH4 (Methane), and natural gas concentrations in the air. It has a detection range of 100-10000 ppm. For optimum use, it requires calibration after a pre-heat time of at least 24 hours. See the datasheet for details.",
+ "Part Numbers": ["mq4"],
+ "Categories": ["gas"],
+ "Connections": ["analog"],
+ "Project Type": ["prototyping", "safety", "industrial"],
+ "Manufacturers": ["dfrobot"],
+ "Kits": [],
+ "Image": "mq2-5.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": [],
+ "Node.js": [],
+ "C++": ["gas-mq4.cxx"],
+ "C": ["gas-mqx.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "typ": 5},
+ "Operating Current": {"unit": "mA", "low": 0.1, "high": 150},
+ "Heater Resistance": {"unit": "Ohms", "typ": 33},
+ "Sensor Resistance": {"unit": "KOhms", "low": 10, "high": 60},
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.dfrobot.com/product-683.html"],
+ "Datasheets": ["http://image.dfrobot.com/image/data/SEN0129/MQ-4.pdf", "https://www.dfrobot.com/wiki/index.php/Analog_Gas_Sensor(MQ4)_(SKU:SEN0129)"],
+ "Schematics": []
+ }
+ },
+
+ "mq5":
+ {
+ "Brief": "MQ5 Natural Gas and Liquefied Petroleum Gas (LPG) Sensor",
+ "Description": "The MQ5 Gas Sensor module is useful for gas leakage detection (in home and industry). It can detect LPG, natural gas, town gas, and so on. It is highly sensitive and has a detection range of 300-10,000 ppm.",
+ "Part Numbers": ["mq5"],
+ "Categories": ["gas"],
+ "Connections": ["analog"],
+ "Project Type": ["prototyping", "safety", "industrial"],
+ "Manufacturers": ["seeed"],
+ "Kits": ["eak"],
+ "Image": "mq2-5.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": [],
+ "Node.js": [],
+ "C++": ["gas-mq5.cxx"],
+ "C": ["gas-mqx.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "typ": 5},
+ "Operating Current": {"unit": "mA", "low": 0.1, "high": 160},
+ "Heater Resistance": {"unit": "Ohms", "typ": 31},
+ "Sensor Resistance": {"unit": "KOhms", "low": 10, "high": 60},
+ "Detectable Concentration": {"unit": "ppm", "low": 200, "high": 10000}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-Gas-Sensor%28MQ5%29-p-938.html"],
+ "Datasheets": ["http://wiki.seeed.cc/Grove-Gas_Sensor-MQ5/", "https://raw.githubusercontent.com/SeeedDocument/Grove-Gas_Sensor-MQ5/master/res/MQ-5.pdf"],
+ "Schematics": []
+ }
+ },
+
+ "mq6":
+ {
+ "Brief": "MQ6 Liquefied Petroleum Gas (LPG) and Butane Sensor",
+ "Description": "The MQ6 Gas Sensor module is useful for detecting LPG, iso-butane, propane, and LNG concentrations in the air. It has a detection range of 200-10000 ppm. For optimum use, it requires calibration after a pre-heat time of at least 24 hours. See the datasheet for details.",
+ "Part Numbers": ["mq6"],
+ "Categories": ["gas"],
+ "Connections": ["analog"],
+ "Project Type": ["prototyping", "safety", "industrial"],
+ "Manufacturers": ["dfrobot"],
+ "Kits": [],
+ "Image": "mq2-5.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": [],
+ "Node.js": [],
+ "C++": ["gas-mq6.cxx"],
+ "C": ["gas-mqx.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "typ": 5},
+ "Operating Current": {"unit": "mA", "low": 0.1, "high": 150},
+ "Heater Resistance": {"unit": "Ohms", "typ": 33},
+ "Sensor Resistance": {"unit": "KOhms", "low": 10, "high": 60},
+ "Detectable Concentration": {"unit": "ppm", "low": 200, "high": 10000}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.dfrobot.com/product-685.html"],
+ "Datasheets": ["https://www.dfrobot.com/wiki/index.php/LPG_Gas_Sensor(MQ6)_(SKU:SEN0131)", "http://image.dfrobot.com/image/data/SEN0131/MQ-6.pdf"],
+ "Schematics": ["http://image.dfrobot.com/image/data/SEN0131/MQ-X%20Schematic.pdf"]
+ }
+ },
+
+ "mq7":
+ {
+ "Brief": "MQ7 Carbon Monoxide Sensor",
+ "Description": "The Grove MQ7 Gas Sensor module is useful for detecting Carbon Monoxide (CO) concentrations in the air. It has a detection range of 20-2000 ppm. For optimum use, it requires calibration after a pre-heat time of 48 hours. See the datasheet for details.",
+ "Part Numbers": ["mq7"],
+ "Categories": ["gas"],
+ "Connections": ["analog"],
+ "Project Type": ["prototyping", "safety", "industrial"],
+ "Manufacturers": ["dfrobot"],
+ "Kits": [],
+ "Image": "mq3-9.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": [],
+ "Node.js": [],
+ "C++": ["gas-mq7.cxx"],
+ "C": ["gas-mqx.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "typ": 5},
+ "Operating Current": {"unit": "mA", "typ": 70},
+ "Heater Resistance": {"unit": "Ohms", "typ": 33},
+ "Detectable Concentration": {"unit": "ppm", "low": 20, "high": 2000}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.dfrobot.com/product-686.html"],
+ "Datasheets": ["https://www.dfrobot.com/wiki/index.php/Carbon_Monoxide_Gas_Sensor(MQ7)_(SKU:SEN0132)", "http://image.dfrobot.com/image/data/SEN0132/MQ-7.pdf"],
+ "Schematics": ["http://image.dfrobot.com/image/data/SEN0132/MQ-X%20Schematic.pdf"]
+ }
+ },
+
+ "mq8":
+ {
+ "Brief": "MQ8 Flammable (Hydrogen) Gas Sensor",
+ "Description": "The MQ8 Gas Sensor module is useful for detecting Hydrogen gas concentrations in the air. It has a detection range of 100-10000 ppm. For optimum use, it requires calibration after a pre-heat time of at least 24 hours. See the datasheet for details.",
+ "Part Numbers": ["mq8"],
+ "Categories": ["gas"],
+ "Connections": ["analog"],
+ "Project Type": ["prototyping", "safety", "industrial"],
+ "Manufacturers": ["dfrobot"],
+ "Kits": [],
+ "Image": "mq2-5.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": [],
+ "Node.js": [],
+ "C++": ["gas-mq8.cxx"],
+ "C": ["gas-mqx.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "typ": 5},
+ "Operating Current": {"unit": "mA", "max": 160},
+ "Heater Resistance": {"unit": "Ohms", "typ": 31},
+ "Sensor Resistance": {"unit": "KOhms", "low": 10, "high": 60},
+ "Detectable Concentration": {"unit": "ppm", "low": 100, "high": 10000}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.dfrobot.com/product-687.html"],
+ "Datasheets": ["https://www.dfrobot.com/wiki/index.php/Hydrogen_Gas_Sensor(MQ8)_(SKU:SEN0133)", "http://image.dfrobot.com/image/data/SEN0133/MQ-8.pdf"],
+ "Schematics": ["http://image.dfrobot.com/image/data/SEN0133/MQ-X%20Schematic.pdf"]
+ }
+ },
+
+ "mq9":
+ {
+ "Brief": "MQ9 Carbon Monoxide (CO) and Flammable Gas Sensor",
+ "Description": "The Grove MQ9 Gas Sensor module is useful for gas leakage detection (in home and industry). It can detect carbon monoxide, coal gas, and liquefied gas. Its sensitivity is 10-1,000 ppm CO, and 100-10,000 ppm Gas.",
+ "Part Numbers": ["mq9"],
+ "Categories": ["gas"],
+ "Connections": ["analog"],
+ "Project Type": ["prototyping", "safety", "industrial"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "mq3-9.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": [],
+ "Node.js": [],
+ "C++": ["gas-mq9.cxx"],
+ "C": ["gas-mqx.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "typ": 5},
+ "Operating Current": {"unit": "mA", "low": 0.1, "high": 68},
+ "Heater Resistance": {"unit": "Ohms", "typ": 33},
+ "Sensor Resistance": {"unit": "Ohms", "low": 2, "high": 20000},
+ "Detectable Concentration": {"unit": "ppm", "low": 200, "high": 10000}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-Gas-Sensor%28MQ9%29-p-1419.html"],
+ "Datasheets": ["http://wiki.seeed.cc/Grove-Gas_Sensor-MQ9/", "https://raw.githubusercontent.com/SeeedDocument/Grove-Gas_Sensor-MQ9/master/res/MQ-9.pdf"],
+ "Schematics": ["https://raw.githubusercontent.com/SeeedDocument/Grove-Gas_Sensor-MQ9/master/res/Gas_Sensor_Schematic.pdf"]
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/gp2y0a/gp2y0a.json b/src/gp2y0a/gp2y0a.json
new file mode 100755
index 00000000..792518ca
--- /dev/null
+++ b/src/gp2y0a/gp2y0a.json
@@ -0,0 +1,39 @@
+{
+ "Library": "gp2y0a",
+ "Description": "API for the GP2Y0A family of IR Proximity Sensors",
+ "Sensor Class":
+ {
+ "gp2y0a":
+ {
+ "Brief": "Analog Infrared (IR) Based Distance Sensor",
+ "Description": "Sensors of this family return an analog voltage corresponding to the distance of an object from the sensor. The voltage is lower when objects are far away; the voltage increases as objects get closer to the sensor.",
+ "Part Numbers": ["gp2y0a"],
+ "Categories": ["proximity", "light"],
+ "Connections": ["analog"],
+ "Project Type": ["prototyping", "robotics"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "gp2y0a.jpg",
+ "Examples":
+ {
+ "Java": ["Gp2y0aExample.java"],
+ "Python": ["gp2y0a.py"],
+ "Node.js": ["gp2y0a.js"],
+ "C++": ["gp2y0a.cxx"],
+ "C": ["gp2y0a.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 2.5, "typ": 5, "high": 7},
+ "Operating Current": {"unit": "mA", "typ": 33, "max": 50},
+ "Measurement Range": {"unit": "cm", "low": 10, "high": 80}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-80cm-Infrared-Proximity-Sensor-p-788.html"],
+ "Datasheets": ["http://wiki.seeed.cc/Grove-80cm_Infrared_Proximity_Sensor/"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/gprs/gprs.json b/src/gprs/gprs.json
new file mode 100755
index 00000000..c5808ce7
--- /dev/null
+++ b/src/gprs/gprs.json
@@ -0,0 +1,40 @@
+{
+ "Library": "gprs",
+ "Description": "API for the GPRS Module",
+ "Sensor Class":
+ {
+ "gprs":
+ {
+ "Brief": "General Packet Radio Service (GPRS) Module",
+ "Description": "The driver was tested with the GPRS Module, V2. It's a GSM GPRS module based on the SIM900. This module uses a standard 'AT' command set. See the datasheet for a full list of available commands and their possible responses.",
+ "Part Numbers": ["gprs"],
+ "Categories": ["wireless"],
+ "Connections": ["uart"],
+ "Project Type": ["prototyping", "wireless"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "gprs.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": ["gprs.py"],
+ "Node.js": ["gprs.js"],
+ "C++": ["gprs.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Input Voltage (5v Pin)": {"unit": "V", "Typ": 5},
+ "Input Voltage (Vin Pin)": {"unit": "V", "low": 6.5, "high": 12},
+ "Power Consumption": {"unit": "mA", "low": 1.5},
+ "Operating Temperature": {"unit": "degC", "low": -40, "high": 85}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/GPRS-Shield-V3.0-p-2333.html"],
+ "Datasheets": ["http://www.seeedstudio.com/document/SIM900datasheeet.zip", "http://wiki.seeedstudio.com/wiki/GPRS_Shield_V3.0", "http://www.seeedstudio.com/wiki/images/7/72/AT_Commands_v1.11.pdf", "http://garden.seeedstudio.com/images/a/a8/SIM900_AT_Command_Manual_V1.03.pdf", "http://garden.seeedstudio.com/images/a/a0/SIM900_ATC_V1_00.pdf"],
+ "Schematics": ["http://www.seeedstudio.com/wiki/File:GPRS_Shield_v3.0.pdf"]
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/grovecollision/grovecollision.json b/src/grovecollision/grovecollision.json
new file mode 100755
index 00000000..72de150d
--- /dev/null
+++ b/src/grovecollision/grovecollision.json
@@ -0,0 +1,41 @@
+{
+ "Library": "grovecollision",
+ "Description": "API for the Grove Collision Sensor",
+ "Sensor Class":
+ {
+ "grovecollision":
+ {
+ "Brief": "Grove Collision Sensor",
+ "Description": "The Grove Collision Sensor can detect whether any collision movement or vibration happens. It outputs a low pulse signal when vibration is detected.",
+ "Part Numbers": ["grovecollision"],
+ "Categories": ["collision", "deprecated"],
+ "Connections": ["gpio"],
+ "Project Type": ["prototyping", "robotics"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "grovecollision.jpg",
+ "Examples":
+ {
+ "Java": ["GroveCollision.java"],
+ "Python": ["grovecollision.py"],
+ "Node.js": ["grovecollision.js"],
+ "C++": ["grovecollision.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 3.3, "high": 5},
+ "Operating Current": {"unit": "mA", "max": 2},
+ "Reaction Point": {"unit": "mg", "typ": 50},
+ "Off Resistance": {"unit": "MOhms", "min": 30},
+ "On Resistance": {"unit": "Ohms", "max": 100}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-Collision-Sensor-p-1132.html"],
+ "Datasheets": ["https://raw.githubusercontent.com/SeeedDocument/Grove-Collision_Sensor/master/res/DataSheet-MVS0608_02-v2_1.pdf", "http://wiki.seeed.cc/Grove-Collision_Sensor/"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/groveehr/groveehr.json b/src/groveehr/groveehr.json
new file mode 100755
index 00000000..a00b4403
--- /dev/null
+++ b/src/groveehr/groveehr.json
@@ -0,0 +1,40 @@
+{
+ "Library": "groveehr",
+ "Description": "API for the Ear-clip Heart Rate Sensor",
+ "Sensor Class":
+ {
+ "groveehr":
+ {
+ "Brief": "Ear-clip Heart Rate Sensor",
+ "Description": "UPM module for the ear-clip heart rate sensor. It is used to measure your heart rate.",
+ "Part Numbers": ["groveehr"],
+ "Categories": ["heartrate", "deprecated"],
+ "Connections": ["gpio"],
+ "Project Type": ["medical", "wearables", "prototyping"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "groveehr.jpg",
+ "Examples":
+ {
+ "Java": ["GroveEHRSample.java"],
+ "Python": ["groveehr.py"],
+ "Node.js": ["groveehr.js"],
+ "C++": ["groveehr.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 3, "high": 5},
+ "Operating Current": {"unit": "mA", "typ": 6.5},
+ "Measurement Range": {"unit": "bpm", "min": 30}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-Ear-clip-Heart-Rate-Sensor-p-1116.html"],
+ "Datasheets": ["http://wiki.seeedstudio.com/wiki/Grove_-_Heart_rate_ear_clip_kit"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/groveeldriver/groveeldriver.json b/src/groveeldriver/groveeldriver.json
new file mode 100755
index 00000000..b3d2bb24
--- /dev/null
+++ b/src/groveeldriver/groveeldriver.json
@@ -0,0 +1,40 @@
+{
+ "Library": "groveeldriver",
+ "Description": "API for the Grove EL Driver Module",
+ "Sensor Class":
+ {
+ "groveeldriver":
+ {
+ "Brief": "Grove Electroluminescent Wire (EL) Driver",
+ "Description": "The Grove EL Driver allows you to easily light up an EL wire with just one single cable.",
+ "Part Numbers": ["groveeldriver"],
+ "Categories": ["lighting", "deprecated"],
+ "Connections": ["gpio"],
+ "Project Type": ["prototyping", "commercial", "wearables"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "groveeldriver.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": ["groveeldriver.py"],
+ "Node.js": ["groveeldriver.js"],
+ "C++": ["groveeldriver.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 3.3, "high": 5},
+ "Operating Current": {"unit": "mA", "max": 300},
+ "Supported EL Capacitance": {"unit": "nF", "max": 15}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-EL-Driver-p-2269.html"],
+ "Datasheets": ["http://wiki.seeed.cc/Grove-EL_Driver/"],
+ "Schematics": ["https://raw.githubusercontent.com/SeeedDocument/Grove-EL_Driver/master/res/Grove-EL_Driver_v1.0.pdf"]
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/groveelectromagnet/groveelectromagnet.json b/src/groveelectromagnet/groveelectromagnet.json
new file mode 100755
index 00000000..ed0736d1
--- /dev/null
+++ b/src/groveelectromagnet/groveelectromagnet.json
@@ -0,0 +1,41 @@
+{
+ "Library": "groveelectromagnet",
+ "Description": "Grove Electromagnet Library",
+ "Sensor Class":
+ {
+ "groveelectromagnet":
+ {
+ "Brief": "API for the Grove Electromagnet",
+ "Description": "The Grove Electromagnet can hold up to 1 kg (approximately 2.2 lbs)",
+ "Part Numbers": ["groveelectromagnet"],
+ "Categories": ["electric", "magnetic", "deprecated"],
+ "Connections": ["gpio"],
+ "Project Type": ["prototyping"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "groveelectromagnet.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": ["groveelectromagnet.py"],
+ "Node.js": ["groveelectromagnet.js"],
+ "C++": ["groveelectromagnet.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "typ": 5},
+ "Operating Current": {"unit": "mA", "typ": 400},
+ "Standby Current": {"unit": "uA", "typ": 200},
+ "Max Load Weight": {"unit": "kgs", "typ": 1}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-Electromagnet-p-1820.html"],
+ "Datasheets": ["https://raw.githubusercontent.com/SeeedDocument/Grove-Electromagnet/master/res/ZYE1-P20-15.pdf", "http://wiki.seeed.cc/Grove-Electromagnet/"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/groveemg/groveemg.json b/src/groveemg/groveemg.json
new file mode 100755
index 00000000..76e5f0ef
--- /dev/null
+++ b/src/groveemg/groveemg.json
@@ -0,0 +1,38 @@
+{
+ "Library": "groveemg",
+ "Description": "Grove EMG Muscle Signal Reader Library",
+ "Sensor Class":
+ {
+ "groveemg":
+ {
+ "Brief": "Grove Electromyography (EMG) Sensor",
+ "Description": "Grove EMG muscle signal reader gathers small muscle signals, then processes them, and returns the result.",
+ "Part Numbers": ["groveemg"],
+ "Categories": ["electromyography", "medical", "deprecated"],
+ "Connections": ["analog"],
+ "Project Type": ["wearables", "computer interfacing", "prototyping"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "groveemg.jpg",
+ "Examples":
+ {
+ "Java": ["GroveEmg.java"],
+ "Python": ["groveemg.py"],
+ "Node.js": ["groveemg.js"],
+ "C++": ["groveemg.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 3.3, "high": 5}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-EMG-Detector-p-1737.html"],
+ "Datasheets": ["http://wiki.seeed.cc/Grove-EMG_Detector/"],
+ "Schematics": ["https://raw.githubusercontent.com/SeeedDocument/Grove-EMG_Detector/master/res/Grove-EMG_Sensor_v1.1_SCH.pdf"]
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/grovegprs/grovegprs.json b/src/grovegprs/grovegprs.json
new file mode 100755
index 00000000..be2b4a97
--- /dev/null
+++ b/src/grovegprs/grovegprs.json
@@ -0,0 +1,40 @@
+{
+ "Library": "grovegprs",
+ "Description": "API for the Grove GPRS Module",
+ "Sensor Class":
+ {
+ "grovegprs":
+ {
+ "Brief": "Grove General Packet Radio Service (GPRS) Module",
+ "Description": "The driver was tested with the Grove GPRS Module, V2. It's a GSM GPRS module based on the SIM900. This module uses a standard 'AT' command set. See the datasheet for a full list of available commands and their possible responses.",
+ "Part Numbers": ["grovegprs"],
+ "Categories": ["wireless"],
+ "Connections": ["uart"],
+ "Project Type": ["prototyping", "wireless"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "grovegprs.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": ["grovegprs.py"],
+ "Node.js": ["grovegprs.js"],
+ "C++": ["grovegprs.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Input Voltage (5v Pin)": {"unit": "V", "Typ": 5},
+ "Input Voltage (Vin Pin)": {"unit": "V", "low": 6.5, "high": 12},
+ "Power Consumption": {"unit": "mA", "low": 1.5},
+ "Operating Temperature": {"unit": "degC", "low": -40, "high": 85}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/GPRS-Shield-V3.0-p-2333.html"],
+ "Datasheets": ["http://www.seeedstudio.com/document/SIM900datasheeet.zip", "http://wiki.seeedstudio.com/wiki/GPRS_Shield_V3.0", "http://www.seeedstudio.com/wiki/images/7/72/AT_Commands_v1.11.pdf", "http://garden.seeedstudio.com/images/a/a8/SIM900_AT_Command_Manual_V1.03.pdf", "http://garden.seeedstudio.com/images/a/a0/SIM900_ATC_V1_00.pdf"],
+ "Schematics": ["http://www.seeedstudio.com/wiki/File:GPRS_Shield_v3.0.pdf"]
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/grovegsr/grovegsr.json b/src/grovegsr/grovegsr.json
new file mode 100755
index 00000000..f6535450
--- /dev/null
+++ b/src/grovegsr/grovegsr.json
@@ -0,0 +1,39 @@
+{
+ "Library": "grovegsr",
+ "Description": "API for the Grove GSR Galvanic Skin Response Sensor",
+ "Sensor Class":
+ {
+ "grovegsr":
+ {
+ "Brief": "Galvanic Skin Response (GSR) Sensor",
+ "Description": "Measures the electrical conductance of skin to measure strong emotional reactions. In other words, it measures sweat on your fingers as an indicator of strong emotional reactions.",
+ "Part Numbers": ["grovegsr"],
+ "Categories": ["skinresponse"],
+ "Connections": ["analog"],
+ "Project Type": ["medical", "interface", "wearables", "prototyping"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "grovegsr.jpg",
+ "Examples":
+ {
+ "Java": ["GroveGsr.java"],
+ "Python": ["grovegsr.py"],
+ "Node.js": ["grovegsr.js"],
+ "C++": ["grovegsr.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 3.3, "high": 5},
+ "Operating Current": {"unit": "mA", "low": 0.7, "high": 3},
+ "Operating Temperature": {"unit": "degC", "min": 0, "max": 70}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-GSR-sensor-p-1614.html"],
+ "Datasheets": ["http://wiki.seeed.cc/Grove-GSR_Sensor/", "file:///C:/Users/Malachai/Downloads/Lm324.pdf"],
+ "Schematics": ["https://github.com/SeeedDocument/Grove-GSR_Sensor/raw/master/res/Grove%20-%20GSR_v1.2_SCH.pdf", "https://github.com/SeeedDocument/Grove-GSR_Sensor/raw/master/res/Grove%20-%20GSR%20v1.0%20SCH.pdf"]
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/grovelinefinder/grovelinefinder.json b/src/grovelinefinder/grovelinefinder.json
new file mode 100755
index 00000000..0168daef
--- /dev/null
+++ b/src/grovelinefinder/grovelinefinder.json
@@ -0,0 +1,40 @@
+{
+ "Library": "grovelinefinder",
+ "Description": "Grove Line Finder Sensor Library",
+ "Sensor Class":
+ {
+ "grovelinefinder":
+ {
+ "Brief": "Infrared (IR) Based Line Finder",
+ "Description": "UPM module for the Line Finder sensor. It outputs a digital signal indicating whether it is detecting black on a white background, or white on a black background.",
+ "Part Numbers": ["grovelinefinder"],
+ "Categories": ["grovelinefinder"],
+ "Connections": ["gpio"],
+ "Project Type": ["robotics", "prototyping"],
+ "Manufacturers": ["seeed", "dfrobot"],
+ "Kits": ["robok"],
+ "Image": "grovelinefinder.jpg",
+ "Examples":
+ {
+ "Java": ["GroveLineFinderSample.java"],
+ "Python": ["grovelinefinder.py"],
+ "Node.js": ["grovelinefinder.js"],
+ "C++": ["grovelinefinder.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 2.7, "high": 5.5},
+ "Operating Current": {"unit": "uA", "typ": 210},
+ "Operating Temperature": {"unit": "degC", "low": -40, "high": 125}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-Line-Finder-v1.1-p-2712.html"],
+ "Datasheets": ["file:///C:/Users/Malachai/Downloads/Lmv358.pdf", "http://wiki.seeed.cc/Grove-Line_Finder/"],
+ "Schematics": ["https://easyeda.com/Seeed/Grove_Line_Finder_v1_1-dfc99c72325e41ff93a451882fd2e143"]
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/grovemoisture/grovemoisture.json b/src/grovemoisture/grovemoisture.json
new file mode 100755
index 00000000..b7b51084
--- /dev/null
+++ b/src/grovemoisture/grovemoisture.json
@@ -0,0 +1,38 @@
+{
+ "Library": "grovemoisture",
+ "Description": "API for the Grove Moisture Sensor",
+ "Sensor Class":
+ {
+ "grovemoisture":
+ {
+ "Brief": "Grove Moisture Sensor",
+ "Description": "UPM module for the Grove Moisture Sensor. This sensor can be used to detect the moisture content of soil or whether there is water around the sensor. As the moisture content increases, so does the value that is read. Note: this sensor is not designed to be left in soil nor to be used outdoors.",
+ "Part Numbers": ["grovemoisture"],
+ "Categories": ["moisture"],
+ "Connections": ["analog"],
+ "Project Type": ["liquid", "prototyping"],
+ "Manufacturers": ["seeed"],
+ "Kits": ["eak", "hak"],
+ "Image": "grovemoisture.jpg",
+ "Examples":
+ {
+ "Java": ["GroveMoistureSample.java"],
+ "Python": ["grovemoisture.py"],
+ "Node.js": ["grovemoisture.js"],
+ "C++": ["grovemoisture.cxx"],
+ "C": []
+ },
+ "Specifications": {
+ "Vsource": {"unit": "V", "min": 3.3, "max": 5 },
+ "Operating Temperature": {"unit": "°C", "min": -40, "max": 85 },
+ "Supply Current": {"unit": "mA", "min" : 0, "max" : 35 }
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-Moisture-Sensor-p-955.html"],
+ "Datasheets": ["http://wiki.seeed.cc/Grove-Moisture_Sensor/"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/groveo2/groveo2.json b/src/groveo2/groveo2.json
new file mode 100755
index 00000000..e8df80d4
--- /dev/null
+++ b/src/groveo2/groveo2.json
@@ -0,0 +1,39 @@
+{
+ "Library": "groveo2",
+ "Description": "Grove O2 Oxygen Gas Sensor Library",
+ "Sensor Class":
+ {
+ "groveo2":
+ {
+ "Brief": "Grove Oxygen (O2) Concentration Sensor",
+ "Description": "The Grove O2 Oxygen Gas sensor measures the oxygen concentration in the air.",
+ "Part Numbers": ["groveo2"],
+ "Categories": ["gas", "oxygen", "deprecated"],
+ "Connections": ["analog"],
+ "Project Type": ["environmental", "prototyping"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "groveo2.jpg",
+ "Examples":
+ {
+ "Java": ["GroveO2Example.java"],
+ "Python": ["groveo2.py"],
+ "Node.js": ["groveo2.js"],
+ "C++": ["groveo2.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Measurement Range": {"unit": "% Vol", "low": 0, "high": 25},
+ "Sensitivity": {"unit": "mA (in air)", "low": 0.1, "high": 0.3},
+ "Operating Temperature": {"unit": "degC", "low": -20, "high": 50}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/grove-gas-sensoro2-p-1541.html"],
+ "Datasheets": ["http://wiki.seeed.cc/Grove-Gas_Sensor-O2/"],
+ "Schematics": ["https://github.com/SeeedDocument/Grove_Gas_Sensor_O2/raw/master/resources/Schematics_O2.zip"]
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/grovescam/grovescam.json b/src/grovescam/grovescam.json
new file mode 100755
index 00000000..76b8596f
--- /dev/null
+++ b/src/grovescam/grovescam.json
@@ -0,0 +1,39 @@
+{
+ "Library": "grovescam",
+ "Description": "Grove Serial Camera Library",
+ "Sensor Class":
+ {
+ "grovescam":
+ {
+ "Brief": "Serial Camera Module",
+ "Description": "UPM module for the ear-clip heart rate sensor. It is used to measure your heart rate.",
+ "Part Numbers": ["grovescam"],
+ "Categories": ["imaging", "deprecated"],
+ "Connections": ["uart"],
+ "Project Type": ["prototyping", "access control", "security"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "grovescam.jpg",
+ "Examples":
+ {
+ "Java": ["GROVESCAMSample.java"],
+ "Python": ["grovescam.py"],
+ "Node.js": ["grovescam.js"],
+ "C++": ["grovescam.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "typ": 5},
+ "Resolution": {"unit": "", "max": "640x480"}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-Serial-Camera-Kit-p-1608.html"],
+ "Datasheets": ["http://www.seeedstudio.com/wiki/Grove_-_Serial_Camera_Kit"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/grovespeaker/grovespeaker.json b/src/grovespeaker/grovespeaker.json
new file mode 100755
index 00000000..5433d528
--- /dev/null
+++ b/src/grovespeaker/grovespeaker.json
@@ -0,0 +1,40 @@
+{
+ "Library": "grovespeaker",
+ "Description": "API for the Grove Speaker",
+ "Sensor Class":
+ {
+ "grovespeaker":
+ {
+ "Brief": "Grove Speaker Module",
+ "Description": "UPM module for the Grove Speaker. This sensor can generate different tones and sounds depending on the frequency of the input signal.",
+ "Part Numbers": ["grovespeaker"],
+ "Categories": ["sound", "deprecated"],
+ "Connections": ["gpio"],
+ "Project Type": ["sound", "prototyping"],
+ "Manufacturers": ["seeed"],
+ "Kits": ["hak"],
+ "Image": "grovespeaker.jpg",
+ "Examples":
+ {
+ "Java": ["GroveSpeakerSample.java"],
+ "Python": ["grovespeaker.py"],
+ "Node.js": ["grovespeaker.js"],
+ "C++": ["grovespeaker.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 4, "high": 5.5},
+ "Voltage Gain": {"unit": "dB", "typ": 46},
+ "Bandwidth": {"unit": "KHz", "min": 20}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-Speaker-p-1445.html"],
+ "Datasheets": ["http://wiki.seeed.cc/Grove-Speaker/", "https://raw.githubusercontent.com/SeeedDocument/Grove-Speaker/master/res/LM386_Low_Voltage_Audio_Power_Amplifier_Datasheet.pdf"],
+ "Schematics": ["https://raw.githubusercontent.com/SeeedDocument/Grove-Speaker/master/res/Grove-Speaker_v1.0_sch.pdf"]
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/groveultrasonic/groveultrasonic.json b/src/groveultrasonic/groveultrasonic.json
new file mode 100755
index 00000000..04025123
--- /dev/null
+++ b/src/groveultrasonic/groveultrasonic.json
@@ -0,0 +1,40 @@
+{
+ "Library": "groveultrasonic",
+ "Description": "Grove Ultrasonic Sensor Library",
+ "Sensor Class":
+ {
+ "groveultrasonic":
+ {
+ "Brief": "Ultrasonic Proximity Sensor",
+ "Description": "This Grove Ultrasonic sensor is a non-contact distance measurement module which is compatible with the Grove system. It is designed for easy modular project usage with industrial performance. Detection ranges from 3 cm (1.2") to 4 m (13'1.5") and works best when the object is within a 30 degree angle relative to the sensor.",
+ "Part Numbers": ["groveultrasonic"],
+ "Categories": ["proximity", "deprecated"],
+ "Connections": ["gpio"],
+ "Project Type": ["robotics", "prototyping"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "groveultrasonic.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": [],
+ "Node.js": ["groveultrasonic.js"],
+ "C++": ["groveultrasonic.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 3.2, "high": 5.2},
+ "Operating Current": {"unit": "mA", "typ": 8},
+ "Measurement Range": {"unit": "cm", "low": 2, "high": 350}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-Ultrasonic-Ranger-p-960.html"],
+ "Datasheets": ["http://wiki.seeed.cc/Grove-Ultrasonic_Ranger/"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/grovevdiv/grovevdiv.json b/src/grovevdiv/grovevdiv.json
new file mode 100755
index 00000000..1cd35844
--- /dev/null
+++ b/src/grovevdiv/grovevdiv.json
@@ -0,0 +1,37 @@
+{
+ "Library": "grovevdiv",
+ "Description": "API for the Grove Voltage Divider Sensor",
+ "Sensor Class":
+ {
+ "grovevdiv":
+ {
+ "Brief": "Grove Voltage Divider Sensor",
+ "Description": "UPM module for the Grove Voltage Divider sensor.",
+ "Part Numbers": ["grovevdiv"],
+ "Categories": ["electric", "deprecated"],
+ "Connections": ["gpio"],
+ "Project Type": ["robotics", "prototyping"],
+ "Manufacturers": ["seeed"],
+ "Kits": ["robok"],
+ "Image": "grovevdiv.jpg",
+ "Examples":
+ {
+ "Java": ["GroveVDivSample.java"],
+ "Python": ["grovevdiv.py"],
+ "Node.js": ["grovevdiv.js"],
+ "C++": ["grovevdiv.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "typ": 5}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-Voltage-Divider-p-1472.html"],
+ "Datasheets": ["http://wiki.seeed.cc/Grove-Voltage_Divider/"],
+ "Schematics": ["https://github.com/SeeedDocument/Grove-Voltage_Divider/raw/master/res/LMV358ID_Datasheet.pdf"]
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/grovewater/grovewater.json b/src/grovewater/grovewater.json
new file mode 100755
index 00000000..f62bbb06
--- /dev/null
+++ b/src/grovewater/grovewater.json
@@ -0,0 +1,40 @@
+{
+ "Library": "grovewater",
+ "Description": "Grove Water Sensor Library",
+ "Sensor Class":
+ {
+ "grovewater":
+ {
+ "Brief": "Grove Water Sensor",
+ "Description": "UPM module for the Grove Water sensor.",
+ "Part Numbers": ["grovewater"],
+ "Categories": ["liquid", "deprecated"],
+ "Connections": ["gpio"],
+ "Project Type": ["agriculture", "environmental", "prototyping"],
+ "Manufacturers": ["seeed"],
+ "Kits": ["eak"],
+ "Image": "grovewater.jpg",
+ "Examples":
+ {
+ "Java": ["GroveWaterSample.java"],
+ "Python": ["grovewater.py"],
+ "Node.js": ["grovewater.js"],
+ "C++": ["grovewater.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 4.7, "high": 5.25},
+ "Operating Current": {"unit": "mA", "max": 20},
+ "Working Temperature": {"unit": "degC", "low": 10, "high": 30}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-Water-Sensor-p-748.html"],
+ "Datasheets": ["http://wiki.seeed.cc/Grove-Water_Sensor/"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/grovewfs/grovewfs.json b/src/grovewfs/grovewfs.json
new file mode 100755
index 00000000..2131bedc
--- /dev/null
+++ b/src/grovewfs/grovewfs.json
@@ -0,0 +1,40 @@
+{
+ "Library": "grovewfs",
+ "Description": "API for the Grove Water Flow Sensor",
+ "Sensor Class":
+ {
+ "grovewfs":
+ {
+ "Brief": "Water Flow Sensor",
+ "Description": "This sensor is used to measure water flow in liters per minute (LPM). It incorporates a Hall Effect sensor. The UPM module defines an interrupt routine to be triggered on each low pulse, keeping count. This device requires a 10K pull-up resistor for the signal line (yellow wire). There is a schematic diagram on the SeeedStudio site (3/2015): http://www.seeedstudio.com/wiki/index.php?title=G1/2_Water_Flow_sensor However, be careful when wiring this up - the schematic appears to have a bug in it: the lower left connection of the signal line (yellow) to Vcc (red) should not be there. The sensor can work with this connection, but probably not for very long.",
+ "Part Numbers": ["grovewfs"],
+ "Categories": ["liquid", "deprecated"],
+ "Connections": ["gpio"],
+ "Project Type": ["agriculture", "monitoring", "prototyping"],
+ "Manufacturers": ["seeed"],
+ "Kits": ["eak"],
+ "Image": "grovewfs.jpg",
+ "Examples":
+ {
+ "Java": ["GroveWFSSample.java"],
+ "Python": ["grovewfs.py"],
+ "Node.js": ["grovewfs.js"],
+ "C++": ["grovewfs.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 5, "high": 24},
+ "Operating Current": {"unit": "mA", "typ": 15},
+ "Water Pressure": {"unit": "MPa", "max": 2},
+ "Water Temperature": {"unit": "degC", "max": 120}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/G1%26amp%3B2%26quot%3B-Water-Flow-Sensor-p-635.html"],
+ "Datasheets": ["http://wiki.seeedstudio.com/wiki/G1/2_Water_Flow_sensor", "http://www.seeedstudio.com/wiki/images/b/b7/Water_flow_sensor_datasheet.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/gsr/gsr.json b/src/gsr/gsr.json
new file mode 100755
index 00000000..d5d85edf
--- /dev/null
+++ b/src/gsr/gsr.json
@@ -0,0 +1,39 @@
+{
+ "Library": "gsr",
+ "Description": "API for the Grove GSR Galvanic Skin Response Sensor",
+ "Sensor Class":
+ {
+ "gsr":
+ {
+ "Brief": "Galvanic Skin Response (GSR) Sensor",
+ "Description": "Measures the electrical conductance of skin to measure strong emotional reactions. In other words, it measures sweat on your fingers as an indicator of strong emotional reactions.",
+ "Part Numbers": ["gsr"],
+ "Categories": ["skinresponse"],
+ "Connections": ["analog"],
+ "Project Type": ["medical", "interface", "wearables", "prototyping"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "gsr.jpg",
+ "Examples":
+ {
+ "Java": ["Gsr.java"],
+ "Python": ["gsr.py"],
+ "Node.js": ["gsr.js"],
+ "C++": ["gsr.cxx"],
+ "C": ["gsr.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 3.3, "high": 5},
+ "Operating Current": {"unit": "mA", "low": 0.7, "high": 3},
+ "Operating Temperature": {"unit": "degC", "min": 0, "max": 70}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-GSR-sensor-p-1614.html"],
+ "Datasheets": ["http://wiki.seeed.cc/Grove-GSR_Sensor/", "file:///C:/Users/Malachai/Downloads/Lm324.pdf"],
+ "Schematics": ["https://github.com/SeeedDocument/Grove-GSR_Sensor/raw/master/res/Grove%20-%20GSR_v1.2_SCH.pdf", "https://github.com/SeeedDocument/Grove-GSR_Sensor/raw/master/res/Grove%20-%20GSR%20v1.0%20SCH.pdf"]
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/guvas12d/guvas12d.json b/src/guvas12d/guvas12d.json
new file mode 100755
index 00000000..de3955c2
--- /dev/null
+++ b/src/guvas12d/guvas12d.json
@@ -0,0 +1,40 @@
+{
+ "Library": "guvas12d",
+ "Description": "API for the GUVA-S12D UV Sensor",
+ "Sensor Class":
+ {
+ "guvas12d":
+ {
+ "Brief": "Grove Analog UV Sensor",
+ "Description": "UPM module for the GUVA-S12D UV sensor",
+ "Part Numbers": ["guvas12d"],
+ "Categories": ["ultraviolet"],
+ "Connections": ["gpio"],
+ "Project Type": ["environmental", "prototyping"],
+ "Manufacturers": ["seeed"],
+ "Kits": ["eak"],
+ "Image": "guvas12d.jpg",
+ "Examples":
+ {
+ "Java": ["GUVAS12DSample.java"],
+ "Python": ["guvas12d.py"],
+ "Node.js": ["guvas12d.js"],
+ "C++": ["guvas12d.cxx"],
+ "C": ["guvas12d.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 3, "high": 5.1},
+ "Operating Current": {"unit": "mA", "typ": 0.31},
+ "Response Wavelength": {"unit": "nm", "low": 240, "high": 370},
+ "Working Temperature": {"unit": "degC", "low": -30, "high": 85}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-UV-Sensor-p-1540.html"],
+ "Datasheets": ["http://wiki.seeed.cc/Grove-UV_Sensor/", "https://raw.githubusercontent.com/SeeedDocument/Grove-UV_Sensor/master/res/Grove-UV_Sensor_v1.1_Datasheets.zip"],
+ "Schematics": ["https://github.com/SeeedDocument/Grove-UV_Sensor/raw/master/res/Grove%20-%20UV%20Sensor%20v1.1sch.pdf"]
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/h3lis331dl/h3lis331dl.json b/src/h3lis331dl/h3lis331dl.json
new file mode 100755
index 00000000..1a3caaff
--- /dev/null
+++ b/src/h3lis331dl/h3lis331dl.json
@@ -0,0 +1,39 @@
+{
+ "Library": "h3lis331dl",
+ "Description": "H3LIS331DL I2C Accelerometer (400g) Library",
+ "Sensor Class":
+ {
+ "h3lis331dl":
+ {
+ "Brief": "I2C 3-axis Digital Accelerometer (400g)",
+ "Description": "This is a high-performance, high-range accelerometer for extreme applications.",
+ "Part Numbers": ["h3lis331dl"],
+ "Categories": ["accelerometer"],
+ "Connections": ["i2c"],
+ "Project Type": ["IMU", "prototyping"],
+ "Manufacturers": ["seeed", "stmicro"],
+ "Kits": [],
+ "Image": "h3lis331dl.jpg",
+ "Examples":
+ {
+ "Java": ["H3LIS331DLSample.java"],
+ "Python": ["h3lis331dl.py"],
+ "Node.js": ["h3lis331dl.js"],
+ "C++": ["h3lis331dl.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 3.3, "high": 5},
+ "Operating Current": {"unit": "uA", "typ": 300},
+ "Measurement Range": {"unit": "+-g", "low": 100, "high": 400}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["httpshttps://www.seeedstudio.com/Grove-3Axis-Digital-Accelerometer400g-p-1897.html"],
+ "Datasheets": ["http://www.st.com/web/en/resource/technical/document/datasheet/DM00053090.pdf", "http://wiki.seeed.cc/Grove-3-Axis_Digital_Accelerometer-400g/"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/h803x/h803x.json b/src/h803x/h803x.json
new file mode 100755
index 00000000..b6e4daff
--- /dev/null
+++ b/src/h803x/h803x.json
@@ -0,0 +1,39 @@
+{
+ "Library": "h803x",
+ "Description": "UPM API for the Veris H803X Energy Meter",
+ "Sensor Class":
+ {
+ "h803x":
+ {
+ "Brief": "Veris H803X Energy Meter Module",
+ "Description": "The H8036 is similar to the H8035, but provides much more data. The Enercept H8035/H8036 is an innovative three-phase networked (Modbus RTU) power transducer that combines electronics and high accuracy industrial grade CTs in a single package. The need for external electrical enclosures is eliminated, greatly reducing installation time and cost. Color-coordination between voltage leads and CTs makes phase matching easy. Additionally, these transducers automatically detect and compensate for phase reversal, eliminating the concern of CT load orientation. Up to 63 Transducers can be daisy-chained on a single RS-485 network. This module was developed using libmodbus 3.1.2, and the H8035. The H8036 has not been tested. libmodbus 3.1.2 must be present for this module to build. It was developed using an RS232->RS485 interface. You cannot use the built in MCU TTL UART pins for accessing this device -- you must use a full Serial RS232->RS485 or USB-RS485 interface connected via USB.",
+ "Part Numbers": ["h803x"],
+ "Categories": ["energy", "electric"],
+ "Connections": ["uart"],
+ "Project Type": ["prototyping"],
+ "Manufacturers": ["veris"],
+ "Kits": [],
+ "Image": "h803x.jpg",
+ "Examples":
+ {
+ "Java": ["H803X_Example.java"],
+ "Python": ["h803x.py"],
+ "Node.js": ["h803x.js"],
+ "C++": ["h803x.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "VAC", "low": 208, "high": 480},
+ "Operating Current": {"unit": "A", "max": 2400},
+ "Operating Temperature": {"unit": "degC", "low": 0, "high": 60}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["http://www.veris.com/Item/H8035-0100-2.aspx"],
+ "Datasheets": ["http://www.veris.com/docs/Datasheets/H803x_d0117.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/hcsr04/hcsr04.json b/src/hcsr04/hcsr04.json
new file mode 100755
index 00000000..9c746ba9
--- /dev/null
+++ b/src/hcsr04/hcsr04.json
@@ -0,0 +1,39 @@
+{
+ "Library": "hcsr04",
+ "Description": "HC-SR04 Ultrasonic Sensor Library",
+ "Sensor Class":
+ {
+ "hcsr04":
+ {
+ "Brief": "HC-SR04 Ultrasonic Distance Measuring Sensor",
+ "Description": "This module defines the HC-SR04 interface for libhcsr04.",
+ "Part Numbers": ["hcsr04"],
+ "Categories": ["ultrasonic", "distance"],
+ "Connections": ["gpio"],
+ "Project Type": ["robotics", "safety", "prototyping"],
+ "Manufacturers": ["sparkfun"],
+ "Kits": [],
+ "Image": "hcsr04.jpg",
+ "Examples":
+ {
+ "Java": ["HCSR04Sample.java"],
+ "Python": ["hcsr04.py"],
+ "Node.js": ["hcsr04.js"],
+ "C++": ["hcsr04.cxx"],
+ "C": ["hcsr04.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "typ": 5},
+ "Operating Current": {"unit": "mA", "typ": 15},
+ "Measurement Range": {"unit": "cm", "low": 2, "high": 400}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.sparkfun.com/products/13959"],
+ "Datasheets": ["https://cdn.sparkfun.com/datasheets/Sensors/Proximity/HCSR04.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/hdc1000/hdc1000.json b/src/hdc1000/hdc1000.json
new file mode 100755
index 00000000..abec9db9
--- /dev/null
+++ b/src/hdc1000/hdc1000.json
@@ -0,0 +1,39 @@
+{
+ "Library": "hdc1000",
+ "Description": "API for the HDC1000 Temperature & Humidity Sensor",
+ "Sensor Class":
+ {
+ "hdc1000":
+ {
+ "Brief": "HDC1000 Temperature and Humidity Sensor",
+ "Description": "The HDC1000 is a digital humidity sensor with integrated temperature sensor that provides excellent measurement accuracy at very low power. The device measures humidity based on a novel capacitive sensor. The humidity and temperature sensors are factory calibrated. The innovative WLCSP (Wafer Level Chip Scale Package) simplifies board design with the use of an ultra-compact package. The sensing element of the HDC1000 is placed on the bottom part of the device, which makes the HDC1000 more robust against dirt, dust, and other environmental contaminants. The HDC1000 is functional within the full -40 to +125 [degC] temperature range.",
+ "Part Numbers": ["hdc1000"],
+ "Categories": ["temperature", "humidity"],
+ "Connections": ["i2c"],
+ "Project Type": ["environmental", "", "prototyping"],
+ "Manufacturers": ["ti"],
+ "Kits": [],
+ "Image": "hdc1000.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": ["hdc1000.py"],
+ "Node.js": [],
+ "C++": ["hdc1000.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 3, "high": 5},
+ "Operating Current": {"unit": "uA", "low": 0.82, "high": 1.2},
+ "Operating Temperature": {"unit": "degC", "low": -40, "high": 125}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["http://www.ti.com/product/HDC1000/description"],
+ "Datasheets": ["http://www.ti.com/lit/ds/symlink/hdc1000.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/hdxxvxta/hdxxvxta.json b/src/hdxxvxta/hdxxvxta.json
new file mode 100755
index 00000000..a00db245
--- /dev/null
+++ b/src/hdxxvxta/hdxxvxta.json
@@ -0,0 +1,36 @@
+{
+ "Library": "hdxxvxta",
+ "Description": "API for the Veris HDXXVXTA Humidity Transmitter",
+ "Sensor Class":
+ {
+ "hdxxvxta":
+ {
+ "Brief": "Veris HDXXVXTA Humidity Transmitter",
+ "Description": "The driver was developed using the HD2NVSTA1 humidity transmitter. The 'T' variant supports a temperature transmitter as well. Both signals are provided by the device as analog 0-5Vdc or 0-10Vdc outputs. The A1 variant supports a temperature range of -40C-50C, while the A2 variant supports a range of 0C-50C. Humidity ranges for all devices in this device family range from 0% to 100% (non-condensing). This driver used the 5Vdc outputs for obvious reasons. Your MCU must be configured for 5V operation. Using any other analog reference voltage will require the appropriate external circuitry (such as a voltage divider) in order to interface safely with your MCU. For devices which do not support temperature, use '-1' as the temperature pin number in the object constructor. If temperature measurement is disabled, getTemperature() will always return 0C/32F.",
+ "Part Numbers": ["hdxxvxta"],
+ "Categories": ["humidity"],
+ "Connections": ["analog"],
+ "Project Type": ["environmental", "prototyping"],
+ "Manufacturers": ["veris"],
+ "Kits": [],
+ "Image": "hdxxvxta.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": ["hdxxvxta.py"],
+ "Node.js": ["hdxxvxta.js"],
+ "C++": ["hdxxvxta.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ },
+ "Urls" :
+ {
+ "Product Pages": [],
+ "Datasheets": [],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/hka5/hka5.json b/src/hka5/hka5.json
new file mode 100755
index 00000000..527bf2d9
--- /dev/null
+++ b/src/hka5/hka5.json
@@ -0,0 +1,38 @@
+{
+ "Library": "hka5",
+ "Description": "API for the DFRobot Laser Particulate Matter (PM) Sensor",
+ "Sensor Class":
+ {
+ "hka5":
+ {
+ "Brief": "DFRobot Laser Particulate Matter (PM) Sensor",
+ "Description": "This driver was tested with a 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.",
+ "Part Numbers": ["hka5"],
+ "Categories": ["gaseous"],
+ "Connections": ["gpio", "uart"],
+ "Project Type": ["environmental", "prototyping"],
+ "Manufacturers": ["dfrobot"],
+ "Kits": [],
+ "Image": "hka5.jpg",
+ "Examples":
+ {
+ "Java": ["HKA5_Example.java"],
+ "Python": ["hka5.py"],
+ "Node.js": ["hka5.js"],
+ "C++": ["hka5.cxx"],
+ "C": ["hka5.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 3.3, "high": 5},
+ "Operating Current": {"unit": "mA", "typ": 10}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.dfrobot.com/wiki/index.php/DFRobot_LM35_Linear_Temperature_Sensor_(SKU:DFR0023)"],
+ "Datasheets": ["http://image.dfrobot.com/image/data/DFR0023/DFR0023_Datasheet.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/hm11/hm11.json b/src/hm11/hm11.json
new file mode 100755
index 00000000..099a0ca0
--- /dev/null
+++ b/src/hm11/hm11.json
@@ -0,0 +1,39 @@
+{
+ "Library": "hm11",
+ "Description": "HM-11 Bluetooth 4.0 Low Energy Module Library",
+ "Sensor Class":
+ {
+ "hm11":
+ {
+ "Brief": "Bluetooth Low Energy Module",
+ "Description": "The driver was tested with the Grove BLE module. It's an HM-11 BLE 4.0 module based on a TI CC2541 chip. It operates using a standard 'AT' command set. See the datasheet for a full list of available commands and their possible responses: http://www.seeedstudio.com/wiki/images/c/cd/Bluetooth4_en.pdf It is connected via a UART at 9,600 baud.",
+ "Part Numbers": ["hm11"],
+ "Categories": ["bluetooth"],
+ "Connections": ["uart"],
+ "Project Type": ["wireless", "wearables", "prototyping"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "hm11.jpg",
+ "Examples":
+ {
+ "Java": ["HM11Sample.java"],
+ "Python": ["hm11.py"],
+ "Node.js": ["hm11.js"],
+ "C++": ["hm11.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 2.0, "typ": 3.3, "high": 3.6},
+ "Peak Operating Current": {"unit": "mA", "typ": 15},
+ "Operating Temperature": {"unit": "degC", "low": -40, "high": 65},
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Bluetooth-V4.0-HM-11-BLE-Module-p-1803.html"],
+ "Datasheets": ["http://wiki.seeed.cc/Bluetooth_V4.0_HM_11_BLE_Module/"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/hmc5883l/hmc5883l.json b/src/hmc5883l/hmc5883l.json
new file mode 100755
index 00000000..8ed6f47e
--- /dev/null
+++ b/src/hmc5883l/hmc5883l.json
@@ -0,0 +1,40 @@
+{
+ "Library": "hmc5883l",
+ "Description": "HMC5883L Magnetometer Library",
+ "Sensor Class":
+ {
+ "hmc5883l":
+ {
+ "Brief": "Grove 3-Axis Digital Compass",
+ "Description": "Honeywell [HMC5883L] (http://www.adafruit.com/datasheets/HMC5883L_3-Axis_Digital_Compass_IC.pdf) is a 3-axis digital compass. Communication with HMC5883L is simple and all done through an I2C interface. Different breakout boards are available. Typically, a 3V supply is all that is needed to power the sensor.",
+ "Part Numbers": ["hmc5883l"],
+ "Categories": ["compass", "magnetometer"],
+ "Connections": ["i2c"],
+ "Project Type": ["IMU", "prototyping"],
+ "Manufacturers": ["seeed", "honeywell"],
+ "Kits": ["robok"],
+ "Image": "hmc5883l.jpg",
+ "Examples":
+ {
+ "Java": ["Hmc5883lSample.java"],
+ "Python": ["hmc5883l.py"],
+ "Node.js": ["hmc5883l.js"],
+ "C++": ["hmc5883l.cxx"],
+ "C": ["hmc5883l.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 3.3, "high": 5},
+ "Operating Current": {"unit": "uA", "low": 2.5, "high": 640},
+ "Output Rate": {"unit": "Hz", "max": 116}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-3-Axis-Digital-Compass-p-759.html"],
+ "Datasheets": ["http://wiki.seeed.cc/Grove-3-Axis_Compass_V1.0/", "https://raw.githubusercontent.com/SeeedDocument/Grove-3-Axis_Compass_V1.0/master/res/HMC5883.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/hmtrp/hmtrp.json b/src/hmtrp/hmtrp.json
new file mode 100755
index 00000000..fcb3a462
--- /dev/null
+++ b/src/hmtrp/hmtrp.json
@@ -0,0 +1,40 @@
+{
+ "Library": "hmtrp",
+ "Description": "API for the HM-TRP Serial RF Pro Transceiver",
+ "Sensor Class":
+ {
+ "hmtrp":
+ {
+ "Brief": "Serial RF Pro Module",
+ "Description": "UPM support for the HM-TRP Serial RF Pro transceiver. This was tested specifically with the Grove Serial RF Pro transceiver. In theory, this class should work with the following devices: HM-TRP-433: 414000000-454000000Hz HM-TRP-470: 450000000-490000000Hz HM-TRP-868: 849000000-889000000Hz HM-TRP-915: 895000000-935000000Hz The only difference is the transmit and receive frequencies supported. By default, the device simply sends and receives any data presented on its UART interface. It can be put into a configuration mode by grounding the CONFIG pin on the transceiver.",
+ "Part Numbers": ["hmtrp"],
+ "Categories": ["wireless"],
+ "Connections": ["uart"],
+ "Project Type": ["wireless", "prototyping"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "hmtrp.jpg",
+ "Examples":
+ {
+ "Java": ["HMTRPSample.java"],
+ "Python": ["hmtrp.py"],
+ "Node.js": ["hmtrp.js"],
+ "C++": ["hmtrp.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 4.75, "typ": 5.0, "high": 5.25},
+ "Sleep Current": {"unit": "uA", "typ": 1},
+ "Transmission Distance": {"unit": "Km", "max": 1},
+ "Operating Temperature": {"unit": "degC", "low": -40, "high": 85}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-Serial-RF-Pro-p-794.html"],
+ "Datasheets": ["http://wiki.seeed.cc/Grove-Serial_RF_Pro/", "https://github.com/SeeedDocument/Grove-Serial_RF_Pro/raw/master/res/HM-TRP-RS232_enV1.0_20120604.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/hp20x/hp20x.json b/src/hp20x/hp20x.json
new file mode 100755
index 00000000..aa01fe20
--- /dev/null
+++ b/src/hp20x/hp20x.json
@@ -0,0 +1,40 @@
+{
+ "Library": "hp20x",
+ "Description": "API for the HP20X-based Grove Barometer (High-Accuracy)",
+ "Sensor Class":
+ {
+ "hp20x":
+ {
+ "Brief": "HP20X Barometer (High-Accuracy)",
+ "Description": "This is a high-accuracy barometer providing pressure, altitude, and temperature data. It can be calibrated for a given altitude offset, and a wide range of interrupt generating capabilities are supported. As usual, see the HP20X datasheet for more details. This module was developed using a Grove Barometer (High-Accuracy) based on an HP206C chip.",
+ "Part Numbers": ["hp20x"],
+ "Categories": ["pressure"],
+ "Connections": ["i2c"],
+ "Project Type": ["environmental", "prototyping"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "hp20x.jpg",
+ "Examples":
+ {
+ "Java": ["HP20xExample.java"],
+ "Python": ["hp20x.py"],
+ "Node.js": ["hp20x.js"],
+ "C++": ["hp20x.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 3.3, "high": 5.5},
+ "Operating Current": {"unit": "mA", "low": 0.635, "high": 1.1},
+ "Measurement Range": {"unit": "hPa", "low": 300, "high": 1200}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-Barometer-HighAccuracy-p-1865.html"],
+ "Datasheets": ["http://www.seeedstudio.com/wiki/File:HP206C_Datasheet.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/ht9170/ht9170.json b/src/ht9170/ht9170.json
new file mode 100755
index 00000000..4885819b
--- /dev/null
+++ b/src/ht9170/ht9170.json
@@ -0,0 +1,39 @@
+{
+ "Library": "ht9170",
+ "Description": "API for the HT9170 DTMF Decoder",
+ "Sensor Class":
+ {
+ "ht9170":
+ {
+ "Brief": "Dual Tone Multi Frequency (DTMF) Decoder",
+ "Description": "This driver was developed using the DTMF (Dual-Tone Multi-Frequency) Shield by Seeed Studio*. It can decode DTMF signals presented at its audio input. It does not generate DTMF signals.",
+ "Part Numbers": ["ht9170"],
+ "Categories": ["telephony"],
+ "Connections": ["gpio"],
+ "Project Type": ["telephone", "prototyping"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "ht9170.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": ["ht9170.py"],
+ "Node.js": ["ht9170.js"],
+ "C++": ["ht9170.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "typ": 5},
+ "Operating Current": {"unit": "mA", "typ": 3}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/DTMFDual-Tone-Multi-Frequency-Shield-p-1839.html"],
+ "Datasheets": ["http://www.holtek.com/pdf/comm/9170v111.pdf"],
+ "Schematics": ["http://www.dossant.com/projects/wp-content/uploads/2013/01/dtmf_mod3_schematic.pdf"]
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/htu21d/htu21d.json b/src/htu21d/htu21d.json
new file mode 100755
index 00000000..5345a2b7
--- /dev/null
+++ b/src/htu21d/htu21d.json
@@ -0,0 +1,33 @@
+{
+ "Library": "htu21d",
+ "Description": "API for the HTU21D Temperature & Humidity Sensor",
+ "Sensor Class":
+ {
+ "htu21d":
+ {
+ "Brief": "Digital Relative Humidity Sensor with Temperature",
+ "Description": "HTU21D by Measurement Specialties is a digital humidity sensor with temperature output. RH reports between 0 and 100%, and the temperature range is -40 to +125 degC. Note: getCompRH is the preferred function below (passing true to cause a measurement cycle). If actual values used for the compensated ready are necessary, use the getHumidity(false) and getTemperature(false) functions following the getCompRH call. Also note the sensor should not perform more than a couple of measurements per second to limit the heating of the sensor.",
+ "Part Numbers": ["htu21d"],
+ "Categories": ["temperature", "humidity"],
+ "Connections": ["i2c"],
+ "Project Type": ["environmental", "prototyping"],
+ "Manufacturers": ["seeed", "adafruit", "sparkfun"],
+ "Kits": [],
+ "Image": "htu21d.jpg",
+ "Examples":
+ {
+ "Java": ["HTU21DSample.java"],
+ "Python": ["htu21d.py"],
+ "Node.js": ["htu21d.js"],
+ "C++": ["htu21d.cxx"],
+ "C": []
+ },
+ "Urls" :
+ {
+ "Product Pages": [],
+ "Datasheets": [],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/hwxpxx/hwxpxx.json b/src/hwxpxx/hwxpxx.json
new file mode 100755
index 00000000..4e7afbb8
--- /dev/null
+++ b/src/hwxpxx/hwxpxx.json
@@ -0,0 +1,41 @@
+{
+ "Library": "hwxpxx",
+ "Description": "UPM API for the Veris HWXPXX Hardware Protocol Humidity and Temperature Sensor",
+ "Sensor Class":
+ {
+ "hwxpxx":
+ {
+ "Brief": "Veris HWXPXX Hardware Protocol Humidity and Temperature Sensor",
+ "Description": "This module implements support for the Veris HWXPHTX Hardware Protocol Humidity and Temperature Sensor family. It uses MODBUS over an RS485 interface. You must have libmodbus v3.1.2 (or greater) installed to compile and use this driver. This module was developed using libmodbus 3.1.2, and the HWXPHTX. This sensor supports humidity, and optionally, temperature, slider switch, and override switch reporting. The HWXPHTX used to develop this driver did not include the optional slider or override switches, however support for them is provided. It was developed using an RS232->RS485 inteface. You cannot use the built in MCU TTL UART pins for accessing this device -- you must use a full serial RS232->RS485 interface connected via USB.",
+ "Part Numbers": ["hwxpxx"],
+ "Categories": ["temperature"],
+ "Connections": ["uart"],
+ "Project Type": ["environmental", "prototyping"],
+ "Manufacturers": ["veris"],
+ "Kits": [],
+ "Image": "hwxpxx.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": ["hwxpxx.py"],
+ "Node.js": ["hwxpxx.js"],
+ "C++": ["hwxpxx.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage (DC)": {"unit": "V", "low": 12, "high": 30},
+ "Operating Voltage (AC)": {"unit": "VAC", "typ": 24},
+ "Operating Current": {"unit": "mA", "max": 100},
+ "Operating Range (RH)": {"unit": "%RH", "low": 0, "high": 100},
+ "Operating Range (Temp)": {"unit": "degC", "low": 10, "high": 35}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["http://www.veris.com/Item/HWXPHTX.aspx"],
+ "Datasheets": ["http://www.veris.com/docs/Datasheets/HWProtocol_d0117.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/hx711/hx711.json b/src/hx711/hx711.json
new file mode 100755
index 00000000..9d6c1771
--- /dev/null
+++ b/src/hx711/hx711.json
@@ -0,0 +1,38 @@
+{
+ "Library": "hx711",
+ "Description": "API for the HX711 Analog-to-Digital Converter",
+ "Sensor Class":
+ {
+ "hx711":
+ {
+ "Brief": "24-bit Analog-to-digital Converter",
+ "Description": "HX711 is a precision 24-bit analog-to-digital converter (ADC) designed for weight scales and industrial control applications to interface directly with a bridge sensor. This module was tested on the Intel(R) Galileo Gen 2 board.",
+ "Part Numbers": ["hx711"],
+ "Categories": ["adc"],
+ "Connections": ["gpio"],
+ "Project Type": ["prototyping"],
+ "Manufacturers": ["generic"],
+ "Kits": [],
+ "Image": "hx711.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": [],
+ "Node.js": ["hx711.js"],
+ "C++": ["hx711.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 2.7, "high": 5.5},
+ "Operating Current": {"unit": "mA", "max": 1.4}
+ },
+ "Urls" :
+ {
+ "Product Pages": [],
+ "Datasheets": ["http://image.dfrobot.com/image/data/SEN0160/hx711_english.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/ili9341/ili9341.json b/src/ili9341/ili9341.json
new file mode 100755
index 00000000..7f05d1a6
--- /dev/null
+++ b/src/ili9341/ili9341.json
@@ -0,0 +1,38 @@
+{
+ "Library": "ili9341",
+ "Description": "API for the ILI9342 LCD",
+ "Sensor Class":
+ {
+ "ili9341":
+ {
+ "Brief": "SPI Based LCD",
+ "Description": "This module defines the interface for the ILI9341 display library.",
+ "Part Numbers": ["ili9341"],
+ "Categories": ["display"],
+ "Connections": ["spi"],
+ "Project Type": ["graphics", "prototyping"],
+ "Manufacturers": ["adafruit"],
+ "Kits": [],
+ "Image": "ili9341.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": ["ili9341.py"],
+ "Node.js": ["ili9341.js"],
+ "C++": ["ili9341.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 3, "high": 5},
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.adafruit.com/product/2090"],
+ "Datasheets": ["http://www.adafruit.com/datasheets/ILI9341.pdf"],
+ "Schematics": ["https://cdn-learn.adafruit.com/assets/assets/000/015/463/medium800/adafruit_products_schem.png?1395173896"]
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/ims/ims.json b/src/ims/ims.json
new file mode 100755
index 00000000..ffb20c33
--- /dev/null
+++ b/src/ims/ims.json
@@ -0,0 +1,40 @@
+{
+ "Library": "ims",
+ "Description": "API for the Catnip Electronics I2C Moisture Sensor",
+ "Sensor Class":
+ {
+ "ims":
+ {
+ "Brief": "I2C Moisture Sensor",
+ "Description": "I2C Sensor which can be used to read moisture, light, and temperature which must run at 100kHz.",
+ "Part Numbers": ["ims"],
+ "Categories": ["moisture"],
+ "Connections": ["i2c"],
+ "Project Type": ["environmental", "prototyping"],
+ "Manufacturers": ["catnip"],
+ "Kits": [],
+ "Image": "ims.jpg",
+ "Examples":
+ {
+ "Java": ["IMS_Example.java"],
+ "Python": ["ims.py"],
+ "Node.js": ["ims.js"],
+ "C++": ["ims.cxx"],
+ "C": ["ims.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 3.3, "high": 5},
+ "Operating Current": {"unit": "mA", "low": 0.7, "high": 14},
+ "Operating Temperature": {"unit": "degC", "low": 0, "high": 85}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.tindie.com/products/miceuz/i2c-soil-moisture-sensor/"],
+ "Datasheets": [],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/ina132/ina132.json b/src/ina132/ina132.json
new file mode 100755
index 00000000..ccc5ec48
--- /dev/null
+++ b/src/ina132/ina132.json
@@ -0,0 +1,38 @@
+{
+ "Library": "ina132",
+ "Description": "API for the INA132 Differential Amplifier Sensor",
+ "Sensor Class":
+ {
+ "ina132":
+ {
+ "Brief": "Grove Differential Amplifier",
+ "Description": "The INA132 Differential Amplifier Sensor is designed for precise differential-input amplification. This sensor was tested amplifying the signal from a Weight Sensor (Load Cell) 0-500g",
+ "Part Numbers": ["ina132"],
+ "Categories": ["electric"],
+ "Connections": ["analog"],
+ "Project Type": ["prototyping"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "ina132.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": ["ina132.py"],
+ "Node.js": ["ina132.js"],
+ "C++": ["ina132.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 2.7, "high": 5.5},
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-Differential-Amplifier-p-1284.html"],
+ "Datasheets": ["http://wiki.seeed.cc/Grove-Differential_Amplifier_v1.2", "https://raw.githubusercontent.com/SeeedDocument/Grove-Differential_Amplifier_v1.2/master/res/Ina132.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/isd1820/isd1820.json b/src/isd1820/isd1820.json
new file mode 100755
index 00000000..34931566
--- /dev/null
+++ b/src/isd1820/isd1820.json
@@ -0,0 +1,33 @@
+{
+ "Library": "isd1820",
+ "Description": "API support for the ISD1820-based Grove Voice Recorder",
+ "Sensor Class":
+ {
+ "isd1820":
+ {
+ "Brief": "Grove Voice Recording and Playback Module",
+ "Description": "This class implements support for the Grove Voice Recorder. There are two digital pins: one that enables recording, and the other that plays back what was previously recorded.",
+ "Part Numbers": ["isd1820"],
+ "Categories": ["audio"],
+ "Connections": ["gpio"],
+ "Project Type": ["audio", "prototyping"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "isd1820.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": ["isd1820.py"],
+ "Node.js": ["isd1820.js"],
+ "C++": ["isd1820.cxx"],
+ "C": []
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-Recorder-p-1825.html"],
+ "Datasheets": ["http://wiki.seeed.cc/Grove_Recorder/", "https://github.com/SeeedDocument/Grove_Recorder/raw/master/res/ISD1820P.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/itg3200/itg3200.json b/src/itg3200/itg3200.json
new file mode 100755
index 00000000..47e93714
--- /dev/null
+++ b/src/itg3200/itg3200.json
@@ -0,0 +1,40 @@
+{
+ "Library": "itg3200",
+ "Description": "API for the ITG-3200 3-Axis Digital Gyroscope",
+ "Sensor Class":
+ {
+ "itg3200":
+ {
+ "Brief": "Grove 3-Axis Digital Gyroscope",
+ "Description": "InvenSense* ITG-3200 is a 3-axis digital gyroscope. (https://www.sparkfun.com/datasheets/Sensors/Gyro/PS-ITG-3200-00-01.4.pdf) This sensor has been tested and can run at either 3.3V or 5V on Intel(R) Galileo.
However, it is incompatible with and not detected on the I2C bus by Intel(R) Edison using the Arduino* breakout board.",
+ "Part Numbers": ["itg3200"],
+ "Categories": ["gyroscope"],
+ "Connections": ["i2c"],
+ "Project Type": ["IMU", "prototyping"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "itg3200.jpg",
+ "Examples":
+ {
+ "Java": ["Itg3200Sample.java"],
+ "Python": ["itg3200.py"],
+ "Node.js": ["itg3200.js"],
+ "C++": ["itg3200.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 3.3, "high": 5},
+ "Operating Current": {"unit": "mA", "typ": 6.5},
+ "Standby Current": {"unit": "uA", "typ": 5}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-3-Axis-Digital-Gyro-p-750.html"],
+ "Datasheets": ["http://wiki.seeed.cc/Grove-3-Axis_Digital_Gyro/", "https://raw.githubusercontent.com/SeeedDocument/Grove-3-Axis_Digital_Gyro/master/res/ITG-3200.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/jhd1313m1/jhd1313m1.json b/src/jhd1313m1/jhd1313m1.json
new file mode 100755
index 00000000..84325470
--- /dev/null
+++ b/src/jhd1313m1/jhd1313m1.json
@@ -0,0 +1,38 @@
+{
+ "Library": "jhd1313m1",
+ "Description": "API for the JHD1313M1 I2C LCD Controller",
+ "Sensor Class":
+ {
+ "jhd1313m1":
+ {
+ "Brief": "LCD Display Driver for the JHD1313M1 Controller for HD44780-based Displays",
+ "Description": "JHD1313M1 has two I2C addreses: one belongs to a controller, very similar to the upm::Lcm1602 LCD driver, that controls the HD44780-based display, and the other controls only the backlight. This module was tested with the Seeed Grove LCD RGB Backlight v2.0 display that requires 5V to operate.",
+ "Part Numbers": ["jhd1313m1"],
+ "Categories": ["display"],
+ "Connections": ["i2c"],
+ "Project Type": ["display", "prototyping"],
+ "Manufacturers": ["seeed"],
+ "Kits": ["gsk"],
+ "Image": "jhd1313m1.jpg",
+ "Examples":
+ {
+ "Java": ["Jhd1313m1Sample.java", "Jhd1313m1_lcdSample.java"],
+ "Python": ["jhd1313m1-lcd.py"],
+ "Node.js": ["jhd1313m1-lcd.js"],
+ "C++": ["jhd1313m1-lcd.cxx"],
+ "C": ["jhd1313m1.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "typ": 5},
+ "Operating Current": {"unit": "mA", "max": 60}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-LCD-RGB-Backlight-p-1643.html?cPath=34_36"],
+ "Datasheets": ["http://wiki.seeed.cc/Grove-LCD_RGB_Backlight/"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/joystick12/joystick12.json b/src/joystick12/joystick12.json
new file mode 100755
index 00000000..b3023c2a
--- /dev/null
+++ b/src/joystick12/joystick12.json
@@ -0,0 +1,33 @@
+{
+ "Library": "joystick12",
+ "Description": "API for the ElecFreaks* Joystick v 1.2-1.4 Breakout",
+ "Sensor Class":
+ {
+ "joystick12":
+ {
+ "Brief": "2-axis Analog Joystick",
+ "Description": "This module defines the Joystick API, and implementation for the X and Y buttons could be treated as normal GPIO - this enables easier interrupt support. This driver should be compatible with any 2-axis analog joystick.",
+ "Part Numbers": ["joystick12"],
+ "Categories": ["input"],
+ "Connections": ["analog"],
+ "Project Type": ["prototyping"],
+ "Manufacturers": ["generic"],
+ "Kits": ["robok"],
+ "Image": "joystick12.jpg",
+ "Examples":
+ {
+ "Java": ["Joystick12Sample.java", "Joystick12_exampleSample.java"],
+ "Python": ["joystick12.py"],
+ "Node.js": ["joystick12.js"],
+ "C++": ["joystick12.cxx"],
+ "C": ["joystick12.c"]
+ },
+ "Urls" :
+ {
+ "Product Pages": ["http://www.elecfreaks.com/estore/joystick-breakout-module-bkout-md01.html"],
+ "Datasheets": ["https://www.elecfreaks.com/wiki/index.php?title=Joystick_breakout_module"],
+ "Schematics": ["http://elecfreaks.com/store/download/schematic-red.pdf"]
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/kxcjk1013/kxcjk1013.json b/src/kxcjk1013/kxcjk1013.json
new file mode 100755
index 00000000..66460b35
--- /dev/null
+++ b/src/kxcjk1013/kxcjk1013.json
@@ -0,0 +1,40 @@
+{
+ "Library": "kxcjk1013",
+ "Description": "KXCJK1013 Tri-axis Digital Accelerometer API",
+ "Sensor Class":
+ {
+ "kxcjk1013":
+ {
+ "Brief": "Tri-axis Digital Accelerometer",
+ "Description": "he KXCJK is a tri-axis +/-2g, +/-4g or +/-8g silicon micromachined accelerometer.",
+ "Part Numbers": ["kxcjk1013"],
+ "Categories": ["accelerometer"],
+ "Connections": ["iio", "i2c"],
+ "Project Type": ["imu", "prototyping"],
+ "Manufacturers": ["kionix"],
+ "Kits": [],
+ "Image": "kxcjk1013.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": [],
+ "Node.js": [],
+ "C++": ["kxcjk1013.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 1.71, "typ": 2.6, "high": 3.6},
+ "Operating Current": {"unit": "uA", "low": 0.9, "high": 135},
+ "Operating Temperature": {"unit": "degC", "low": -40, "high": 85}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": [],
+ "Datasheets": ["http://kionixfs.kionix.com/en/datasheet/KXCJK-1013%20Specifications%20Rev%202.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/l298/l298.json b/src/l298/l298.json
new file mode 100755
index 00000000..07bbf696
--- /dev/null
+++ b/src/l298/l298.json
@@ -0,0 +1,38 @@
+{
+ "Library": "l298",
+ "Description": "API for the L298 Dual H-Bridge Motor Driver",
+ "Sensor Class":
+ {
+ "l298":
+ {
+ "Brief": "Dual H-bridge Motor Driver",
+ "Description": "It was developed using the RobotBase Dual H-Bridge module. This module can support 2 DC motors, or one 2-phase stepper motor. It requires 3 pins per DC motor (or H-bridge), or 4 pins for the stepper motor (uses both H-bridges).",
+ "Part Numbers": ["l298"],
+ "Categories": ["motors"],
+ "Connections": ["gpio", "pwm"],
+ "Project Type": ["robotics", "prototyping"],
+ "Manufacturers": ["seeed", "sparkfun"],
+ "Kits": [],
+ "Image": "l298.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": ["l298.py", "l298-stepper.py"],
+ "Node.js": ["l298.js", "l298-stepper.js"],
+ "C++": ["l298.cxx", "l298-stepper.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Motor Supply Voltage": {"unit": "V", "low": 6, "high": 35},
+ "Motor Supply Current": {"unit": "A", "typ": 2}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.sparkfun.com/products/9670"],
+ "Datasheets": [],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/l3gd20/l3gd20.json b/src/l3gd20/l3gd20.json
new file mode 100755
index 00000000..2a12e1bf
--- /dev/null
+++ b/src/l3gd20/l3gd20.json
@@ -0,0 +1,40 @@
+{
+ "Library": "l3gd20",
+ "Description": "L3GD20 Tri-axis Digital Gyroscope API",
+ "Sensor Class":
+ {
+ "l3gd20":
+ {
+ "Brief": "L3GD20 Tri-axis Digital Gyroscope",
+ "Description": "The L3GD20 The L3GD20 is a low-power three-axis angular rate sensor. This driver supports IIO and I2C modes. Some methods will only work in one mode or the other. See the documentation on the methods to determine whether a given method is operation in a given mode. Both the I2C and IIO mechanisms make use of the calibration and denoise algorithms. For I2C mode, not all capabilities of the device are supported, but a complete register map and low level read/write methods are provided to add any missing functionality.",
+ "Part Numbers": ["l3gd20"],
+ "Categories": ["gyroscope"],
+ "Connections": ["iio", "i2c"],
+ "Project Type": ["IMU", "prototyping"],
+ "Manufacturers": ["stmicro"],
+ "Kits": [],
+ "Image": "l3gd20.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": [],
+ "Node.js": [],
+ "C++": ["l3gd20.cxx", "l3gd20-i2c.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 2.4, "high": 3.6},
+ "Operating Current": {"unit": "mA", "typ": 6.1},
+ "Operating Temperature": {"unit": "degC", "low": -40, "high": 85}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["http://www.st.com/en/mems-and-sensors/l3gd20.html"],
+ "Datasheets": ["http://www.st.com/resource/en/datasheet/l3gd20.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/lcdks/lcdks.json b/src/lcdks/lcdks.json
new file mode 100755
index 00000000..8ac50415
--- /dev/null
+++ b/src/lcdks/lcdks.json
@@ -0,0 +1,37 @@
+{
+ "Library": "lcdks",
+ "Description": "API for the generic LCD Keypad Shield",
+ "Sensor Class":
+ {
+ "lcdks":
+ {
+ "Brief": "LCD Keypad Shield",
+ "Description": "The LCD Keypad Shield uses 7 digital outputs and 1 analog input (for the keypad). The outputs are used to drive an attached LCM1602 LCD controller. This driver should be compatible with the similar LCD keypad shields from Sainsmart, DFRobot and Sparkfun.",
+ "Part Numbers": ["lcdks"],
+ "Categories": ["userinput"],
+ "Connections": ["gpio", "analog"],
+ "Project Type": ["control", "prototyping"],
+ "Manufacturers": ["sainsmart", "dfrobot", "sparkfun"],
+ "Kits": [],
+ "Image": "lcdks.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": ["lcdks.py"],
+ "Node.js": ["lcdks.js"],
+ "C++": ["lcdks.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "typ": 5},
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.sparkfun.com/products/13293", "http://www.sainsmart.com/sainsmart-1602-lcd-keypad-shield-for-arduino-duemilanove-uno-mega2560-mega1280.html", "http://www.dfrobot.com/index.php?route=product/product&product_id=51"],
+ "Datasheets": ["http://linksprite.com/wiki/index.php5?title=16_X_2_LCD_Keypad_Shield_for_Arduino_V2"],
+ "Schematics": ["https://cdn.sparkfun.com/datasheets/Dev/Arduino/Shields/16X2_LCD_shield.pdf"]
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/lcm1602/lcm1602.json b/src/lcm1602/lcm1602.json
new file mode 100755
index 00000000..cb4220a1
--- /dev/null
+++ b/src/lcm1602/lcm1602.json
@@ -0,0 +1,38 @@
+{
+ "Library": "lcm1602",
+ "Description": "API for the LCM1602 I2C controller for HD44780-based displays",
+ "Sensor Class":
+ {
+ "lcm1602":
+ {
+ "Brief": "LCD Display Driver for the LCM1602 Controller for HD44780-based Displays",
+ "Description": "UPM module for the ear-clip heart rate sensor. It is used to measure your heart rate.",
+ "Part Numbers": ["lcm1602"],
+ "Categories": ["display"],
+ "Connections": ["gpio"],
+ "Project Type": ["display", "prototyping"],
+ "Manufacturers": ["adafruit", "sparkfun", "seeed"],
+ "Kits": [],
+ "Image": "lcm1602.jpg",
+ "Examples":
+ {
+ "Java": ["Lcm1602_i2cSample.java", "Lcm1602_parallelSample.java"],
+ "Python": [],
+ "Node.js": [],
+ "C++": ["lcm1602-i2c.cxx", "lcm1602-parallel.cxx"],
+ "C": ["lcm1602-i2c.c", "lcm1602-parallel.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 4.8, "typ": 5, "high": 5.2},
+ "Operating Current": {"unit": "mA", "max": 150},
+ },
+ "Urls" :
+ {
+ "Product Pages": [],
+ "Datasheets": ["https://www.adafruit.com/datasheets/TC1602A-01T.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/ldt0028/ldt0028.json b/src/ldt0028/ldt0028.json
new file mode 100755
index 00000000..68ea88e3
--- /dev/null
+++ b/src/ldt0028/ldt0028.json
@@ -0,0 +1,37 @@
+{
+ "Library": "ldt0028",
+ "Description": "API for LDT0-028 PZT Film-Based Sensors",
+ "Sensor Class":
+ {
+ "ldt0028":
+ {
+ "Brief": "Piezo Vibration Sensor",
+ "Description": "This module defines the LDT0-028 interface for libupm-ldt0028",
+ "Part Numbers": ["ldt0028"],
+ "Categories": ["vibration"],
+ "Connections": ["analog"],
+ "Project Type": ["industrial", "prototyping"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "ldt0028.jpg",
+ "Examples":
+ {
+ "Java": ["LDT0028Sample.java"],
+ "Python": ["ldt0028.py"],
+ "Node.js": ["ldt0028.js"],
+ "C++": ["ldt0028.cxx"],
+ "C": ["ldt0028.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 3.3, "high": 5}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-Piezo-Vibration-Sensor-p-1411.html"],
+ "Datasheets": ["http://wiki.seeed.cc/Grove-Piezo_Vibration_Sensor/", "https://raw.githubusercontent.com/SeeedDocument/Grove-Piezo_Vibration_Sensor/master/res/Piezo_Vibration_Sensor.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/lidarlitev3/lidarlitev3.json b/src/lidarlitev3/lidarlitev3.json
new file mode 100755
index 00000000..9bc75ca1
--- /dev/null
+++ b/src/lidarlitev3/lidarlitev3.json
@@ -0,0 +1,38 @@
+{
+ "Library": "lidarlitev3",
+ "Description": "API for the LIDARLITEV3 Optical Distance Measurement Sensor",
+ "Sensor Class":
+ {
+ "lidarlitev3":
+ {
+ "Brief": "Optical Distance Measurement Sensor",
+ "Description": "It is a compact, high-performance optical distance measurement sensor from Garmin.",
+ "Part Numbers": ["lidarlitev3"],
+ "Categories": ["distance"],
+ "Connections": ["i2c", "pwm"],
+ "Project Type": ["robotics", "prototyping"],
+ "Manufacturers": ["garmin"],
+ "Kits": [],
+ "Image": "lidarlitev3.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": [],
+ "Node.js": [],
+ "C++": ["lidarlitev3.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "typ": 5},
+ "Operating Current": {"unit": "mA", "low": 105, "high": 130}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.sparkfun.com/products/14032"],
+ "Datasheets": ["http://static.garmin.com/pumac/LIDAR_Lite_v3_Operation_Manual_and_Technical_Specifications.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/light/light.json b/src/light/light.json
new file mode 100755
index 00000000..c8f67b81
--- /dev/null
+++ b/src/light/light.json
@@ -0,0 +1,40 @@
+{
+ "Library": "light",
+ "Description": "API for the Light Sensor",
+ "Sensor Class":
+ {
+ "light":
+ {
+ "Brief": "Analog Light Sensor",
+ "Description": "The light sensor detects the intensity of the ambient light. As the light intensity of the environment increases, the resistance of the sensor decreases. This means the raw value from the analog pin is larger in bright light and smaller in the dark. A very approximate lux value can also be returned.",
+ "Part Numbers": ["light"],
+ "Categories": ["light"],
+ "Connections": ["analog"],
+ "Project Type": ["environmental", "security", "prototyping"],
+ "Manufacturers": ["seeed"],
+ "Kits": ["gsk"],
+ "Image": "light.jpg",
+ "Examples":
+ {
+ "Java": ["LightSample.java"],
+ "Python": ["light.py"],
+ "Node.js": ["light.js"],
+ "C++": ["light.cxx"],
+ "C": ["light.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 3, "high": 5},
+ "Operating Current": {"unit": "mA", "low": 0.5, "high": 3},
+ "Response Time": {"unit": "ms", "low": 20, "high": 30}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-Light-Sensor-p-746.html"],
+ "Datasheets": ["http://wiki.seeed.cc/Grove-Light_Sensor/", "https://github.com/SeeedDocument/Grove_Light_Sensor/raw/master/res/LS06-M%CE%A65_datasheet.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/linefinder/linefinder.json b/src/linefinder/linefinder.json
new file mode 100755
index 00000000..d0627657
--- /dev/null
+++ b/src/linefinder/linefinder.json
@@ -0,0 +1,40 @@
+{
+ "Library": "linefinder",
+ "Description": "Grove Line Finder Sensor Library",
+ "Sensor Class":
+ {
+ "linefinder":
+ {
+ "Brief": "Infrared (IR) Based Line Finder",
+ "Description": "UPM module for the Line Finder sensor. It outputs a digital signal indicating whether it is detecting black on a white background, or white on a black background.",
+ "Part Numbers": ["linefinder"],
+ "Categories": ["linefinder"],
+ "Connections": ["gpio"],
+ "Project Type": ["robotics", "prototyping"],
+ "Manufacturers": ["seeed", "dfrobot"],
+ "Kits": ["robok"],
+ "Image": "linefinder.jpg",
+ "Examples":
+ {
+ "Java": ["LineFinderSample.java"],
+ "Python": ["linefinder.py"],
+ "Node.js": ["linefinder.js"],
+ "C++": ["linefinder.cxx"],
+ "C": ["linefinder.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 2.7, "high": 5.5},
+ "Operating Current": {"unit": "uA", "typ": 210},
+ "Operating Temperature": {"unit": "degC", "low": -40, "high": 125}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-Line-Finder-v1.1-p-2712.html"],
+ "Datasheets": ["file:///C:/Users/Malachai/Downloads/Lmv358.pdf", "http://wiki.seeed.cc/Grove-Line_Finder/"],
+ "Schematics": ["https://easyeda.com/Seeed/Grove_Line_Finder_v1_1-dfc99c72325e41ff93a451882fd2e143"]
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/lis2ds12/lis2ds12.json b/src/lis2ds12/lis2ds12.json
new file mode 100755
index 00000000..1fbb961a
--- /dev/null
+++ b/src/lis2ds12/lis2ds12.json
@@ -0,0 +1,39 @@
+{
+ "Library": "lis2ds12",
+ "Description": "API for the LIS2DS12 3-axis Accelerometer",
+ "Sensor Class":
+ {
+ "lis2ds12":
+ {
+ "Brief": "Digital 3-axis Accelerometer",
+ "Description": "The LIS2DS12 is an ultra-low-power high performance three-axis linear accelerometer belonging to the "pico" family which leverages on the robust and mature manufacturing processes already used for the production of micromachined accelerometers. The LIS2DS12 has user-selectable full scales of 2g/4g/8g/16g and is capable of measuring accelerations with output data rates from 1 Hz to 6400 Hz. Not all functionality of this chip has been implemented in this driver, however all the pieces are present to add any desired functionality. This driver supports both I2C (default) and SPI operation.",
+ "Part Numbers": ["lis2ds12"],
+ "Categories": ["accelerometer"],
+ "Connections": ["i2c", "spi", "gpio"],
+ "Project Type": ["imu", "prototyping"],
+ "Manufacturers": ["stmicro"],
+ "Kits": [],
+ "Image": "lis2ds12.jpg",
+ "Examples":
+ {
+ "Java": ["LIS2DS12_Example.java"],
+ "Python": ["lis2ds12.py"],
+ "Node.js": ["lis2ds12.js"],
+ "C++": ["lis2ds12.cxx"],
+ "C": ["lis2ds12.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 1.62, "high": 1.98},
+ "Operating Current": {"unit": "uA", "low": 0.7, "high": 150},
+ "Operating Temperature": {"unit": "degC", "low": -40, "high": 85}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["http://www.st.com/en/mems-and-sensors/lis2ds12.html"],
+ "Datasheets": ["http://www.st.com/content/ccc/resource/technical/document/datasheet/ce/32/55/ac/e1/87/46/84/DM00177048.pdf/files/DM00177048.pdf/jcr:content/translations/en.DM00177048.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/lm35/lm35.json b/src/lm35/lm35.json
new file mode 100755
index 00000000..b5956f48
--- /dev/null
+++ b/src/lm35/lm35.json
@@ -0,0 +1,38 @@
+{
+ "Library": "lm35",
+ "Description": "API for the DFRobot LM35 Linear Temperature Sensor",
+ "Sensor Class":
+ {
+ "lm35":
+ {
+ "Brief": "Analog Temperature Sensor",
+ "Description": "This sensor returns an analog voltage proportional to the temperature of the ambient environment. This driver was developed using the DFRobot LM35 Linear Temperature Sensor",
+ "Part Numbers": ["lm35"],
+ "Categories": ["temperature"],
+ "Connections": ["analog"],
+ "Project Type": ["environmental", "monitoring", "prototyping"],
+ "Manufacturers": ["dfrobot", "nationalsemiconductor"],
+ "Kits": [],
+ "Image": "lm35.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": ["lm35.py"],
+ "Node.js": ["lm35.js"],
+ "C++": ["lm35.cxx"],
+ "C": ["lm35.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 3.3, "high": 5},
+ "Measurement Range": {"unit": "degC", "low": 0, "high": 100}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.dfrobot.com/product-76.html"],
+ "Datasheets": ["http://image.dfrobot.com/image/data/DFR0023/DFR0023_Datasheet.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/lol/lol.json b/src/lol/lol.json
new file mode 100755
index 00000000..4501cea6
--- /dev/null
+++ b/src/lol/lol.json
@@ -0,0 +1,33 @@
+{
+ "Library": "lol",
+ "Description": "API for the Olimex LoL Array",
+ "Sensor Class":
+ {
+ "lol":
+ {
+ "Brief": "Lots of LEDs (LoL) Array Rev A",
+ "Description": "This module defines the LoL API and implementation for a simple framebuffer.",
+ "Part Numbers": ["lol"],
+ "Categories": ["display"],
+ "Connections": ["gpio"],
+ "Project Type": ["prototyping"],
+ "Manufacturers": ["olimex"],
+ "Kits": [],
+ "Image": "lol.jpg",
+ "Examples":
+ {
+ "Java": ["LoLSample.java", "LoL_exampleSample.java"],
+ "Python": [],
+ "Node.js": [],
+ "C++": ["lol.cxx"],
+ "C": []
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.olimex.com/Products/Duino/Shields/SHIELD-LOL/"],
+ "Datasheets": [],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/loudness/loudness.json b/src/loudness/loudness.json
new file mode 100755
index 00000000..9bc9e967
--- /dev/null
+++ b/src/loudness/loudness.json
@@ -0,0 +1,39 @@
+{
+ "Library": "loudness",
+ "Description": "API for the Loudness Sensor",
+ "Sensor Class":
+ {
+ "loudness":
+ {
+ "Brief": "Loudness Sensor",
+ "Description": "This sensor family returns an analog voltage proportional to the loudness of the ambient environment. It's output does not correspond to a particular sound level in decibels. The higher the output voltage, the louder the ambient noise level. This device uses an electret microphone for sound input. This driver was developed using the DFRobot Loudness Sensor V2 and the Grove Loudness sensor.",
+ "Part Numbers": ["loudness"],
+ "Categories": ["audio"],
+ "Connections": ["analog"],
+ "Project Type": ["noise control", "prototyping"],
+ "Manufacturers": ["seeed", "dfrobot"],
+ "Kits": [],
+ "Image": "loudness.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": ["loudness.py"],
+ "Node.js": ["loudness.js"],
+ "C++": ["loudness.cxx"],
+ "C": ["loudness.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 3.5, "high": 10},
+ "Measurement Range": {"unit": "Hz", "low": 50, "high": 2000}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-Loudness-Sensor-p-1382.html"],
+ "Datasheets": ["http://wiki.seeed.cc/Grove-Loudness_Sensor/", "https://raw.githubusercontent.com/SeeedDocument/Grove-Loudness_Sensor/master/res/LM2904DR.pdf"],
+ "Schematics": ["https://raw.githubusercontent.com/SeeedDocument/Grove-Loudness_Sensor/master/res/Grove_loudness_sensor.pdf"]
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/lpd8806/lpd8806.json b/src/lpd8806/lpd8806.json
new file mode 100755
index 00000000..9e76a885
--- /dev/null
+++ b/src/lpd8806/lpd8806.json
@@ -0,0 +1,37 @@
+{
+ "Library": "lpd8806",
+ "Description": "API for the LPD8806 RGB LED Strip Controller",
+ "Sensor Class":
+ {
+ "lpd8806":
+ {
+ "Brief": "Digital RGB LED Strip Controller",
+ "Description": "FastPixel* LPD8806 is an RGB LED strip controller.",
+ "Part Numbers": ["lpd8806"],
+ "Categories": ["display"],
+ "Connections": ["spi"],
+ "Project Type": ["lighting", "rgb", "prototyping"],
+ "Manufacturers": ["adafruit"],
+ "Kits": [],
+ "Image": "lpd8806.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": [],
+ "Node.js": [],
+ "C++": ["lpd8806.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "max": 5},
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.adafruit.com/product/306"],
+ "Datasheets": ["https://cdn-learn.adafruit.com/downloads/pdf/digital-led-strip.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/lsm303agr/lsm303agr.json b/src/lsm303agr/lsm303agr.json
new file mode 100755
index 00000000..28d14422
--- /dev/null
+++ b/src/lsm303agr/lsm303agr.json
@@ -0,0 +1,38 @@
+{
+ "Library": "lsm303agr",
+ "Description": "API for the LSM303AGR 3-Axis Geomagnetic Sensor",
+ "Sensor Class":
+ {
+ "lsm303agr":
+ {
+ "Brief": "Ultra-Compact High-Performance eCompass Module",
+ "Description": "The LSM303AGR is an ultra-low-power high-performance system-in-package featuring a 3D digital linear acceleration sensor and a 3D digital magnetic sensor. The LSM303AGR has linear acceleration full scales of 2g/4g/8g/16g and a magnetic field dynamic range of 50 Gauss. Not all functionality of this chip has been implemented in this driver, however all the pieces are present to add any desired functionality. This driver supports only I2C operation.",
+ "Part Numbers": ["lsm303agr"],
+ "Categories": ["magnetometer"],
+ "Connections": ["i2c"],
+ "Project Type": ["imu", "prototyping"],
+ "Manufacturers": ["stmicro"],
+ "Kits": [],
+ "Image": "lsm303agr.jpg",
+ "Examples":
+ {
+ "Java": ["LSM303AGR_Example.java"],
+ "Python": ["lsm303agr.py"],
+ "Node.js": ["lsm303agr.js"],
+ "C++": ["lsm303agr.cxx"],
+ "C": ["lsm303agr.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 1.71, "high": 3.6},
+ "Operating Current": {"unit": "uA", "low": 2, "high": 200}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["http://www.st.com/en/mems-and-sensors/lsm303agr.html"],
+ "Datasheets": ["http://www.st.com/content/ccc/resource/technical/document/datasheet/74/c4/19/54/62/c5/46/13/DM00177685.pdf/files/DM00177685.pdf/jcr:content/translations/en.DM00177685.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/lsm303d/lsm303d.json b/src/lsm303d/lsm303d.json
new file mode 100755
index 00000000..10420053
--- /dev/null
+++ b/src/lsm303d/lsm303d.json
@@ -0,0 +1,40 @@
+{
+ "Library": "lsm303d",
+ "Description": "API for the LSM303D 3-Axis Geomagnetic Sensor",
+ "Sensor Class":
+ {
+ "lsm303d":
+ {
+ "Brief": "Ultra-compact high-performance eCompass module",
+ "Description": "The LSM303D is an ultra-low-power high-performance system-in-package featuring a 3D digital linear acceleration sensor and a 3D digital magnetic sensor. The LSM303D has linear acceleration full scales of 2g/4g/8g/16g and a magnetic field dynamic range of 50 Gauss. Not all functionality of this chip has been implemented in this driver, however all the pieces are present to add any desired functionality. This driver supports only I2C operation.",
+ "Part Numbers": ["lsm303d"],
+ "Categories": ["compass"],
+ "Connections": ["i2c"],
+ "Project Type": ["robotics", "prototyping"],
+ "Manufacturers": ["stmicro"],
+ "Kits": [],
+ "Image": "lsm303d.jpg",
+ "Examples":
+ {
+ "Java": ["LSM303D_Example.java"],
+ "Python": ["lsm303d.py"],
+ "Node.js": ["lsm303d.js"],
+ "C++": ["lsm303d.cxx"],
+ "C": ["lsm303d.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 2.16, "high": 3.6},
+ "Operating Current": {"unit": "uA", "typ": 300},
+ "Operating Temperature": {"unit": "degC", "low": -40, "high": 85}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["http://www.st.com/en/mems-and-sensors/lsm303d.html"],
+ "Datasheets": ["http://www.st.com/content/ccc/resource/technical/document/datasheet/1c/9e/71/05/4e/b7/4d/d1/DM00057547.pdf/files/DM00057547.pdf/jcr:content/translations/en.DM00057547.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/lsm303dlh/lsm303dlh.json b/src/lsm303dlh/lsm303dlh.json
new file mode 100755
index 00000000..c95f0af6
--- /dev/null
+++ b/src/lsm303dlh/lsm303dlh.json
@@ -0,0 +1,37 @@
+{
+ "Library": "lsm303dlh",
+ "Description": "API for the LSM303DLH Accelerometer & Compass",
+ "Sensor Class":
+ {
+ "lsm303dlh":
+ {
+ "Brief": "Triaxial Accelerometer/magnetometer",
+ "Description": "This module defines the LSM303DLH 3-axis magnetometer/3-axis accelerometer. This module was tested with the Seeed Studio* Grove 6-Axis Accelerometer & Compass module used over I2C. The magnetometer and acceleromter are accessed at two seperate I2C addresses.",
+ "Part Numbers": ["lsm303dlh"],
+ "Categories": ["compass", "accelerometer"],
+ "Connections": ["i2c"],
+ "Project Type": ["imu", "prototyping"],
+ "Manufacturers": ["seeed", "adafruit", "stmicro"],
+ "Kits": [],
+ "Image": "lsm303dlh.jpg",
+ "Examples":
+ {
+ "Java": ["LSM303DLHSample.java"],
+ "Python": ["lsm303dlh.py"],
+ "Node.js": ["lsm303dlh.js"],
+ "C++": ["lsm303dlh.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "typ": 3.3}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/grove-6axis-accelerometercompass-p-1448.html?cPath=144_146"],
+ "Datasheets": ["http://wiki.seeedstudio.com/wiki/Grove_-_6-Axis_Accelerometer%26Compass_V1.0"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/lsm6ds3h/lsm6ds3h.json b/src/lsm6ds3h/lsm6ds3h.json
new file mode 100755
index 00000000..30f58c2b
--- /dev/null
+++ b/src/lsm6ds3h/lsm6ds3h.json
@@ -0,0 +1,40 @@
+{
+ "Library": "lsm6ds3h",
+ "Description": "API for the LSM6DS3H 3-axis Accelerometer and Gyroscope",
+ "Sensor Class":
+ {
+ "lsm6ds3h":
+ {
+ "Brief": "Digital 3-axis Accelerometer and Gyroscope",
+ "Description": "The LSM6DS3H is a system-in-package featuring a 3D digital accelerometer and a 3D digital gyroscope performing at 1.1 mA (up to 1.6 kHz ODR) in high performance mode and enabling always-on low-power features for an optimal motion experience for the consumer. Not all functionality of this chip has been implemented in this driver, however all the pieces are present to add any desired functionality. This driver supports both I2C (default) and SPI operation.",
+ "Part Numbers": ["lsm6ds3h"],
+ "Categories": ["accelerometer", "gyroscope"],
+ "Connections": ["i2c", "spi", "gpio"],
+ "Project Type": ["imu", "prototyping"],
+ "Manufacturers": ["stmicro"],
+ "Kits": [],
+ "Image": "lsm6ds3h.jpg",
+ "Examples":
+ {
+ "Java": ["LSM6DS3H_Example.java"],
+ "Python": ["lsm6ds3h.py"],
+ "Node.js": ["lsm6ds3h.js"],
+ "C++": ["lsm6ds3h.cxx"],
+ "C": ["lsm6ds3h.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 1.71, "high": 3.6},
+ "Operating Current": {"unit": "mA", "low": 0.85, "high": 1.1},
+ "Operating Temperature": {"unit": "degC", "low": -40, "high": 85}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["http://www.st.com/en/mems-and-sensors/lsm6ds3h.html"],
+ "Datasheets": ["http://www.st.com/content/ccc/resource/technical/document/datasheet/group0/38/96/79/af/ab/62/42/c3/DM00229854/files/DM00229854.pdf/jcr:content/translations/en.DM00229854.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/lsm6dsl/lsm6dsl.json b/src/lsm6dsl/lsm6dsl.json
new file mode 100755
index 00000000..9ade1327
--- /dev/null
+++ b/src/lsm6dsl/lsm6dsl.json
@@ -0,0 +1,40 @@
+{
+ "Library": "lsm6dsl",
+ "Description": "API for the LSM6DSL 3-axis Accelerometer and Gyroscope",
+ "Sensor Class":
+ {
+ "lsm6dsl":
+ {
+ "Brief": "Digital 3-axis Accelerometer and Gyroscope",
+ "Description": "The LSM6DSL is a system-in-package featuring a 3D digital accelerometer and a 3D digital gyroscope performing at 0.65 mA in high performance mode and enabling always-on low-power features for an optimal motion experience for the consumer. Not all functionality of this chip has been implemented in this driver, however all the pieces are present to add any desired functionality. This driver supports both I2C (default) and SPI operation.",
+ "Part Numbers": ["lsm6dsl"],
+ "Categories": ["accelerometer", "gyroscope"],
+ "Connections": ["i2c", "spi", "gpio"],
+ "Project Type": ["imu", "prototyping"],
+ "Manufacturers": ["stmicro"],
+ "Kits": [],
+ "Image": "lsm6dsl.jpg",
+ "Examples":
+ {
+ "Java": ["LSM6DSL_Example.java"],
+ "Python": ["lsm6dsl.py"],
+ "Node.js": ["lsm6dsl.js"],
+ "C++": ["lsm6dsl.cxx"],
+ "C": ["lsm6dsl.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 1.71, "high": 3.6},
+ "Operating Current": {"unit": "mA", "low": 0.4, "high": 0.65},
+ "Operating Temperature": {"unit": "degC", "low": -40, "high": 85}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["http://www.st.com/en/mems-and-sensors/lsm6dsl.html"],
+ "Datasheets": ["http://www.st.com/content/ccc/resource/technical/document/datasheet/ee/23/a0/dc/1d/68/45/52/DM00237456.pdf/files/DM00237456.pdf/jcr:content/translations/en.DM00237456.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/lsm9ds0/lsm9ds0.json b/src/lsm9ds0/lsm9ds0.json
new file mode 100755
index 00000000..c8c05630
--- /dev/null
+++ b/src/lsm9ds0/lsm9ds0.json
@@ -0,0 +1,39 @@
+{
+ "Library": "lsm9ds0",
+ "Description": "API for the LSM9DS0 Gyroscope/Accelerometer/Magnetometer",
+ "Sensor Class":
+ {
+ "lsm9ds0":
+ {
+ "Brief": "Triaxial Gyroscope/Accelerometer/Magnetometer Sensor",
+ "Description": "The LSM9DS0 is a system-in-package featuring a 3D digital linear acceleration sensor, a 3D digital angular rate sensor, and a 3D digital magnetic sensor. The LSM9DS0 has a linear acceleration full scale of 2g/4g/6g/8g/16g, a magnetic field full scale of 2/4/8/12 gauss and an angular rate of 245/500/2000 dps. While not all of the functionality of this device is supported initially, methods and register definitions are provided that should allow an end user to implement whatever features are required. This driver was developed on a Sparkfun 9DOF edison block.",
+ "Part Numbers": ["lsm9ds0"],
+ "Categories": ["gyroscope", "accelerometer", "magnetometer"],
+ "Connections": ["i2c", "gpio"],
+ "Project Type": ["robotics", "wearables", "prototyping"],
+ "Manufacturers": ["sparkfun", "stmicro"],
+ "Kits": [],
+ "Image": "lsm9ds0.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": ["lsm9ds0.py"],
+ "Node.js": ["lsm9ds0.js"],
+ "C++": ["lsm9ds0.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Accelerometer Range (+-)": {"unit": "g", "low": 2, "high": 16},
+ "Magnetometer Range (+-)": {"unit": "gauss", "low": 2, "high": 12},
+ "Gyroscope Range (+-)": {"unit": "deg/s", "low": 245, "high": 2000}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.sparkfun.com/products/13033"],
+ "Datasheets": [],
+ "Schematics": ["https://cdn.sparkfun.com/datasheets/Dev/Edison/9dof_block.pdf"]
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/m24lr64e/m24lr64e.json b/src/m24lr64e/m24lr64e.json
new file mode 100755
index 00000000..763cc006
--- /dev/null
+++ b/src/m24lr64e/m24lr64e.json
@@ -0,0 +1,38 @@
+{
+ "Library": "m24lr64e",
+ "Description": "API for the M24LR64E NFC Tag",
+ "Sensor Class":
+ {
+ "m24lr64e":
+ {
+ "Brief": "Dynamic NFC/RFID Tag Module",
+ "Description": "The M24LR64E NFC tag is an 8KB electrically erasable programmable read-only memory (EEPROM) that can be written to or read from using I2C and NFC-equipped devices. The user mode (default) allows read and write access to all 8KB of space, provided the sector security status (SSS) allows it. The root mode allows modification of the SSS data and other information, provided the proper password is submitted. The default password for a new tag is 0x00000000. See the datasheet for more details. The Seeed Studio* wiki page for this device includes a link to an Android* application that can be used to also read and write the device via NFC, as well as set NFC passwords, which cannot be done via I2C.",
+ "Part Numbers": ["m24lr64e"],
+ "Categories": ["rfid", "wireless"],
+ "Connections": ["i2c", "nfc"],
+ "Project Type": ["access control", "prototyping"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "m24lr64e.jpg",
+ "Examples":
+ {
+ "Java": ["M24LR64ESample.java"],
+ "Python": ["m24lr64e.py"],
+ "Node.js": ["m24lr64e.js"],
+ "C++": ["m24lr64e.cxx"],
+ "C": ["m24lr64e.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 1.8, "high": 5.5},
+ "Operating Temperature": {"unit": "degC", "low": -40, "high": 85}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/Grove-NFC-Tag-p-1866.html"],
+ "Datasheets": ["http://www.seeedstudio.com/wiki/Grove_-_NFC_Tag", "https://raw.githubusercontent.com/SeeedDocument/Grove-NFC_Tag/master/res/M24LR64E-R.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/mag3110/mag3110.json b/src/mag3110/mag3110.json
new file mode 100755
index 00000000..9272744e
--- /dev/null
+++ b/src/mag3110/mag3110.json
@@ -0,0 +1,39 @@
+{
+ "Library": "mag3110",
+ "Description": "API for the MAG3110 Three-Axis Digital Magnetometer",
+ "Sensor Class":
+ {
+ "mag3110":
+ {
+ "Brief": "MAG3110 Three-Axis Digital Magnetometer",
+ "Description": "The MAG3110 is a small, low-power digital 3D magnetic sensor with a wide dynamic range to allow operation in PCBs with high extraneous magnetic fields. It measures the components of the local magnetic field, the sum of the geomagnetic field and the magnetic field created by components on the circuit board. It can be used in conjunction with a 3-axis accelerometer so that orientation-independent accurate compass heading information may be achieved It is capable of measuring local magnetic fields up to 10 Gauss with output data rates up to 80 Hz.",
+ "Part Numbers": ["mag3110"],
+ "Categories": ["magnetometer"],
+ "Connections": ["i2c"],
+ "Project Type": ["imu", "prototyping"],
+ "Manufacturers": ["freescale"],
+ "Kits": [],
+ "Image": "mag3110.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": ["mag3110.py"],
+ "Node.js": [],
+ "C++": ["mag3110.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 1.95, "high": 3.6},
+ "Operating Current": {"unit": "uA", "low": 8.6, "high": 900},
+ "Operating Temperature": {"unit": "degC", "low": -40, "high": 85}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["http://www.nxp.com/products/sensors/magnetometers/high-accuracy-3d-magnetometer:MAG3110"],
+ "Datasheets": ["http://www.nxp.com/docs/en/data-sheet/MAG3110.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/max30100/max30100.json b/src/max30100/max30100.json
new file mode 100755
index 00000000..1ca82617
--- /dev/null
+++ b/src/max30100/max30100.json
@@ -0,0 +1,38 @@
+{
+ "Library": "max30100",
+ "Description": "API for the Pulse Oximeter and Heart-Rate Sensor",
+ "Sensor Class":
+ {
+ "max30100":
+ {
+ "Brief": "Pulse Oximeter and Heart-rate Sensor",
+ "Description": "The MAX30100 is an integrated pulse oximetry and heartrate monitor sensor solution. It combines two LEDs, a photodetector, optimized optics, and low-noise analog signal processing to detect pulse oximetry and heart-rate signals.",
+ "Part Numbers": ["max30100"],
+ "Categories": ["heartrate", "pulse-ox"],
+ "Connections": ["i2c", "gpio"],
+ "Project Type": ["medical", "wearables", "prototyping"],
+ "Manufacturers": ["maxim"],
+ "Kits": [],
+ "Image": "max30100.jpg",
+ "Examples":
+ {
+ "Java": ["MAX30100_Example.java"],
+ "Python": ["max30100.py"],
+ "Node.js": ["max30100.js"],
+ "C++": ["max30100.cxx"],
+ "C": ["max30100.c"]
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 1.8, "high": 3.3},
+ "Operating Current": {"unit": "uA", "low": 0.7, "high": 1200}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.maximintegrated.com/en/products/analog/sensors-and-sensor-interface/MAX30100.html"],
+ "Datasheets": ["https://datasheets.maximintegrated.com/en/ds/MAX30100.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/max31723/max31723.json b/src/max31723/max31723.json
new file mode 100755
index 00000000..f62621e5
--- /dev/null
+++ b/src/max31723/max31723.json
@@ -0,0 +1,40 @@
+{
+ "Library": "max31723",
+ "Description": "API for the MAX31723 Temperature Sensor",
+ "Sensor Class":
+ {
+ "max31723":
+ {
+ "Brief": "SPI/3-wire Digital Thermometer",
+ "Description": "Maxim Integrated* [MAX31723](http://datasheets.maximintegrated.com/en/ds/MAX31722-MAX31723.pdf) is a low-voltage 3-wire/SPI temperature sensor controller. This module was tested on the Maxim Integrated [MAX31732PMB1 PMOD module](http://datasheets.maximintegrated.com/en/ds/MAX31723PMB1.pdf) from the analog PMOD kit.",
+ "Part Numbers": ["max31723"],
+ "Categories": ["temperature"],
+ "Connections": ["spi"],
+ "Project Type": ["environmental", "prototyping"],
+ "Manufacturers": ["maxim"],
+ "Kits": [],
+ "Image": "max31723.jpg",
+ "Examples":
+ {
+ "Java": [],
+ "Python": [],
+ "Node.js": [],
+ "C++": ["max31723.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 1.7, "high": 3.7},
+ "Operating Current": {"unit": "uA", "low": 100, "high":1200},
+ "Operating Temperature": {"unit": "degC", "low": -55, "high": 125}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.maximintegrated.com/en/products/analog/sensors-and-sensor-interface/MAX31723.html"],
+ "Datasheets": ["https://datasheets.maximintegrated.com/en/ds/MAX31722-MAX31723.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/max31855/max31855.json b/src/max31855/max31855.json
new file mode 100755
index 00000000..b4583650
--- /dev/null
+++ b/src/max31855/max31855.json
@@ -0,0 +1,38 @@
+{
+ "Library": "max31855",
+ "Description": "API for the MAX31855 Thermocouple Amplifier",
+ "Sensor Class":
+ {
+ "max31855":
+ {
+ "Brief": "Thermocouple-to-Digital Converter",
+ "Description": "Maxim Integrated* [MAX31855](http://datasheets.maximintegrated.com/en/ds/MAX31855.pdf) is a cold-junction compensated thermocouple-to-digital converter. This module was tested on the Maxim Integrated [MAX31855PMB1 PMOD module] (http://datasheets.maximintegrated.com/en/ds/MAX31855PMB1.pdf) from the analog PMOD kit.",
+ "Part Numbers": ["max31855"],
+ "Categories": ["temperature"],
+ "Connections": ["spi"],
+ "Project Type": ["thermal", "prototyping"],
+ "Manufacturers": ["maxim", "adafruit"],
+ "Kits": [],
+ "Image": "max31855.jpg",
+ "Examples":
+ {
+ "Java": ["MAX31855Example.java"],
+ "Python": [],
+ "Node.js": [],
+ "C++": ["max31855.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 3, "high": 3.6},
+ "Operating Current": {"unit": "uA", "max": 1500}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.maximintegrated.com/en/products/analog/sensors-and-sensor-interface/MAX31855.html"],
+ "Datasheets": ["https://datasheets.maximintegrated.com/en/ds/MAX31855.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/max44000/max44000.json b/src/max44000/max44000.json
new file mode 100755
index 00000000..5b0fabdc
--- /dev/null
+++ b/src/max44000/max44000.json
@@ -0,0 +1,40 @@
+{
+ "Library": "max44000",
+ "Description": "API for the MAX44000 Ambient and Infrared Proximity Sensor",
+ "Sensor Class":
+ {
+ "max44000":
+ {
+ "Brief": "Ambient and Infrared Proximity Sensor",
+ "Description": "Maxim Integrated* [MAX44000](http://datasheets.maximintegrated.com/en/ds/MAX44000.pdf) is an ambient and infrared proximity sensor. This module was tested on the Maxim Integrated [MAX44000PMB1 PMOD module] (http://datasheets.maximintegrated.com/en/ds/MAX44000PMB1.pdf) from the analog PMOD kit.",
+ "Part Numbers": ["max44000"],
+ "Categories": ["proximity"],
+ "Connections": ["i2c"],
+ "Project Type": ["robotics", "prototyping"],
+ "Manufacturers": ["maxim"],
+ "Kits": [],
+ "Image": "max44000.jpg",
+ "Examples":
+ {
+ "Java": ["MAX44000Sample.java"],
+ "Python": [],
+ "Node.js": [],
+ "C++": ["max44000.cxx"],
+ "C": []
+ },
+ "Specifications":
+ {
+ "Operating Voltage": {"unit": "V", "low": 1.7, "high": 3.6},
+ "Operating Current": {"unit": "mA", "low": 10, "high":110},
+ "Operating Temperature": {"unit": "degC", "low": -40, "high": 105}
+
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.maximintegrated.com/en/products/analog/sensors-and-sensor-interface/MAX44000.html"],
+ "Datasheets": ["https://datasheets.maximintegrated.com/en/ds/MAX44000.pdf"],
+ "Schematics": []
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/o2/o2.json b/src/o2/o2.json
new file mode 100755
index 00000000..301bc8fe
--- /dev/null
+++ b/src/o2/o2.json
@@ -0,0 +1,39 @@
+{
+ "Library": "o2",
+ "Description": "O2 Oxygen Gas Sensor Library",
+ "Sensor Class":
+ {
+ "o2":
+ {
+ "Brief": "Oxygen (O2) Concentration Sensor",
+ "Description": "The Grove O2 Oxygen Gas sensor measures the oxygen concentration in the air.",
+ "Part Numbers": ["o2"],
+ "Categories": ["gas", "oxygen"],
+ "Connections": ["analog"],
+ "Project Type": ["environmental", "prototyping"],
+ "Manufacturers": ["seeed"],
+ "Kits": [],
+ "Image": "o2.jpg",
+ "Examples":
+ {
+ "Java": ["O2Example.java"],
+ "Python": ["o2.py"],
+ "Node.js": ["o2.js"],
+ "C++": ["o2.cxx"],
+ "C": ["o2.c"]
+ },
+ "Specifications":
+ {
+ "Measurement Range": {"unit": "% Vol", "low": 0, "high": 25},
+ "Sensitivity": {"unit": "mA (in air)", "low": 0.1, "high": 0.3},
+ "Operating Temperature": {"unit": "degC", "low": -20, "high": 50}
+ },
+ "Urls" :
+ {
+ "Product Pages": ["https://www.seeedstudio.com/grove-gas-sensoro2-p-1541.html"],
+ "Datasheets": ["http://wiki.seeed.cc/Grove-Gas_Sensor-O2/"],
+ "Schematics": ["https://github.com/SeeedDocument/Grove_Gas_Sensor_O2/raw/master/resources/Schematics_O2.zip"]
+ }
+ }
+ }
+}
\ No newline at end of file