Skip to content

Latest commit

 

History

History
161 lines (137 loc) · 18.2 KB

README.md

File metadata and controls

161 lines (137 loc) · 18.2 KB

Wippersnapper Component Definitions

Welcome! This repository contains JSON definition files and images that allow components and sensors to be used with WipperSnapper, Adafruit IO's no-code IoT service.

Click here to submit suggestions or requests for new Adafruit.io WipperSnapper components >>>

How Will It Work?

Anyone can add a new component to Wippersnapper by writing a small amount of descriptive JSON and adding an image! If accepted, a supported component will:

Appear in this list

Screen Shot 2021-12-02 at 4 28 11 PM

Generate a custom web form, like this

Screen Shot 2021-12-02 at 4 28 40 PM

Have its current status tracked or controlled, like this

Screen Shot 2021-12-02 at 4 29 31 PM

And work seamlessly with the rest of IO, including Dashboards and Triggers!

Contributing

We have a guide on adding components to this repository on the Adafruit Learning System

Pin Component Format

title Pin Component Definition
description A pin-based WipperSnapper component for use in Adafruit IO
type object
required
displayName
mode
direction
additionalProperties false
properties
displayName
description The human-friendly name of this component.
type string
minLength 3
maxLength 24
mode
description This component's mode, either DIGITAL or ANALOG.
type string
pattern ^(DIGITAL|ANALOG)$
direction
description This component's direction, either INPUT or OUTPUT.
type string
pattern ^(INPUT|OUTPUT)$
autoSelectString
description A hint for automatically looking up pin names that may be appropriate for this kind of component.
type string
minLength 3
maxLength 24
selectPullUp
description If true, the user will be able to select pull up or down options.
type boolean
pull
description This component's pull setting, either UP or DOWN.
type string
pattern ^(UP|DOWN)$
selectReadMode
description If true, the user will be able to select the read mode between pin and voltage options.
type boolean
analogReadMode
description For ANALOG mode components, specifies whether to read values (PIN_VALUE) or voltages (PIN_VOLTAGE). Will be a default if selectReadMode option is true.
type string
pattern ^(PIN_VALUE|PIN_VOLTAGE)$
defaultPeriod
description If present, the component form will allow the user to set its period, with this value as the default (in seconds)
type number
minimum 30
maximum 86400
forceOnPeriod
description If true, the user must specify a period (won't be optional in the form).
type boolean
visualization
description Specifies which visual component to use in the WipperSnapper interface and how to configure it
type object
discriminator
propertyName type
required
type
oneOf
properties additionalProperties
type
const switch false
offLabel false
type string false
offIcon false
type string false
onLabel false
type string false
onIcon false
type string false
type false
properties additionalProperties
type false
const button false
pressedLabel false
type string false
unpressedLabel false
type string false
properties additionalProperties
type false
const slider false

I2C Component Format

todo

Legend

I2C Sensor Types

Possible values for an I2C component's subcomponents' sensorType field:

  • "unspecified"
  • "accelerometer"
  • "magnetic-field"
  • "orientation"
  • "gyroscope"
  • "light"
  • "pressure"
  • "proximity"
  • "gravity"
  • "acceleration"
  • "rotation"
  • "humidity"
  • "ambient-temp"
  • "ambient-temp-fahrenheit"
  • "object-temp"
  • "object-temp-fahrenheit"
  • "voltage"
  • "current"
  • "color"
  • "raw"
  • "pm10-std"
  • "pm25-std"
  • "pm100-std"
  • "pm10-env"
  • "pm25-env"
  • "pm100-env"
  • "co2"
  • "gas-resistance"
  • "altitude"
  • "lux"
  • "eco2"
  • "unitless-percent"
  • "tvoc"