{ "// Library": {"comment": "Library name. Usually synonymous with the chip ID (e.g. fooinc0378). However, in the case where this library implements multiple sensor classes, choose a name which describes the full functionality (e.g. fooincled).", "required": true}, "Library": "sensortemplate", "// Description": {"comment": "Library description. This library provides support for the fooincled family of sensors.", "required": true}, "Description": "This is a sensor library template used for new sensors", "// Sensor Class": {"comment": "Sensor/actuator class object which corresponds to the sensor/actuator C++ class (case sensitive).", "required": true}, "Sensor Class": { "SensorTemplate": { "// Name": {"comment": "Sensor display name as indicated by the datasheet or manufacturer", "required": true}, "Name": "Template Sensor", "// Description": {"comment": "In-depth description of the C++ sensor/actuator class. Include any necessary information on what is required for this implementation to work.", "required": true}, "Description": "This sensor template can be used to generate code stubs for new sensor library development", "// Aliases": {"comment": "Known vendor/manufacturer part numbers or names for the sensor/actuator/s supported by this class. Part numbers/IDs are preferred when available.", "required": false}, "Aliases": ["template"], "// Categories": {"comment": "One or more categories that his sensor class fits in.", "required": true}, "Categories": ["other"], "// Connections": {"comment": "One or more connection types for this sensor class.", "required": true}, "Connections": ["i2c"], "// Project Type": {"comment": "One or more application fields or project types sensor is suited for (e.g. prototyping, industrial)", "required": true}, "Project Type": ["prototyping"], "// Manufacturers": {"comment": "One or more manufacturers for the hardware supported by this class.", "required": true}, "Manufacturers": ["generic"], "// Kits": {"comment": "One or more retail kits that provide this sensor", "required": false}, "Kits": [], "// Images": {"comment": "A single small (0-20k) html-viewable image file (located in docs/images). Please do not use existing, copyrighted images with your sensors.", "required": false}, "Image": "sensortemplate.jpg", "// Examples": {"comment": "Functional examples showing the main use cases for this sensor class. At least one is required.", "required": true}, "Examples": { "// Java": {"comment": "One or more Java examples.", "required": false}, "Java": ["SensorTemplateSample.java"], "// Python": {"comment": "One or more Python examples.", "required": false}, "Python": ["sensortemplate.py"], "// Node.js": {"comment": "One or more Node.js examples.", "required": false}, "Node.js": ["sensortemplate.js"], "// C++": {"comment": "One or more C++ examples.", "required": true}, "C++": ["sensortemplate.cxx"], "// C": {"comment": "One or more C examples.", "required": false}, "C": null }, "// Specifications": {"comment": "Catch-all for HW specifications.", "required": false}, "Specifications": { "// Vdd": {"comment": "Example specification. Provides unit value and range.", "required": false}, "Vdd": {"unit": "v", "low" : 1.7, "high": 3.6}, "// Ioff": {"comment": "Example specification. Provides unit value and range.", "required": false}, "Ioff" : {"unit": "mA", "typical": 0.0}, "// Iavg": {"comment": "Example specification. Provides unit value and range.", "required": false}, "Iavg": {"unit": "mA", "low" : 1, "high": 2}, "// Measured Range": {"comment": "Example specification. Provides unit value and range.", "required": false}, "Measured Range": {"unit": "raw", "low" : 0, "high": 1023}, "// Other Specs": {"comment": "Example specification. Provides unit value and range."}, "Other Specs": {} }, "// Platforms": {"comment": "Catch-all for listing platforms used to validate this sensor class.", "required": false}, "Platforms": { "// Intel Joule Module": {"comment": "Example platform.", "required": false}, "Intel Joule Module": { "// Notes": {"comment": "JSON Object or Array which documents this platform.", "required": false}, "Notes": ["Requires pull-up resistors with carrier board"], "// Images": {"comment": "JSON Object or Array which documents this platform.", "required": false}, "Images": [""] } }, "// Urls": {"comment": "Collection of external URLs which provide additional documentation for this sensor class.", "required": true}, "Urls" : { "// Product Pages": {"comment": "Provide at least one URL for a product web-site where users can get additional information on this sensor.", "required": true}, "Product Pages": ["https://software.intel.com/en-us/iot/hardware/sensors/short-title-case-description-from-datasheet-manditory"], "// Datasheets": {"comment": "Array of product datasheets", "required": false}, "Datasheets": [], "// Schematics": {"comment": "Array of product schematic pages.", "required": false}, "Schematics": [] } } } }