Configuration JSON:
diff --git a/load-wippersnapper-data.js b/load-wippersnapper-data.js
index 731db70..6c8165c 100644
--- a/load-wippersnapper-data.js
+++ b/load-wippersnapper-data.js
@@ -1,8 +1,8 @@
// Load Wippersnapper boards and components data
// Configuration - technically unused (instead ./ relative links) but useful for reference
-const BOARDS_JSON_URL = 'https://raw.githubusercontent.com/adafruit/Adafruit_Wippersnapper_Offline_Configurator/refs/heads/use_boards_sd_card/wippersnapper_boards.json'; //'wippersnapper_boards.json';
-const COMPONENTS_JSON_URL = 'https://raw.githubusercontent.com/adafruit/Adafruit_Wippersnapper_Offline_Configurator/refs/heads/use_boards_sd_card/wippersnapper_components.json'; //'wippersnapper_components.json';
+const BOARDS_JSON_URL = 'https://raw.githubusercontent.com/adafruit/Adafruit_Wippersnapper_Offline_Configurator/refs/heads/offline-mode/wippersnapper_boards.json'; //'wippersnapper_boards.json';
+const COMPONENTS_JSON_URL = 'https://raw.githubusercontent.com/adafruit/Adafruit_Wippersnapper_Offline_Configurator/refs/heads/offline-mode/wippersnapper_components.json'; //'wippersnapper_components.json';
// Global app state
const appState = {
@@ -159,7 +159,7 @@ function populateBoardSelect() {
// Filter boards to only include those with UF2 install method
const filteredBoards = Object.entries(appState.boardsData)
- .filter(([boardId, board]) => board.installMethod === 'uf2'); //['uf2', 'web-native-usb'].includes(board.installMethod)); //funhouse
+ .filter(([boardId, board]) => ['uf2', 'web-native-usb'].includes(board.installMethod)); //funhouse
// Sort boards by vendor and name
const sortedBoards = filteredBoards
diff --git a/wippersnapper-config-builder.js b/wippersnapper-config-builder.js
index d58a900..abd6393 100644
--- a/wippersnapper-config-builder.js
+++ b/wippersnapper-config-builder.js
@@ -126,6 +126,22 @@ const companionBoardConfigs = {
productURL: 'https://www.adafruit.com/product/4285',
documentationURL: 'https://learn.adafruit.com/adafruit-airlift-shield-esp32-wifi-co-processor',
image: 'https://cdn-shop.adafruit.com/640x480/4285-05.jpg'
+ },
+ 'seeed-xiao-s3sense-camera-addon': {
+ rtc: null,
+ sdCardCS: 21,
+ extras: 'SD Card, Camera, Microphone, Extra GPIOs D11+D12',
+ productURL: 'https://www.seeedstudio.com/XIAO-ESP32S3-Sense-p-5639.html',
+ documentationURL: 'https://wiki.seeedstudio.com/xiao_esp32s3_getting_started/',
+ image: 'https://files.seeedstudio.com/wiki/SeeedStudio-XIAO-ESP32S3/img/66.jpg'
+ },
+ 'seeed-xiao-ssd1306-expansion-base': {
+ rtc: 'PCF8563',
+ sdCardCS: 'D2',
+ extras: 'SD Card, Display, Piezo Speaker, LiPo connector',
+ productURL: 'https://www.seeedstudio.com/Seeeduino-XIAO-Expansion-board-p-4746.html',
+ documentationURL: 'https://wiki.seeedstudio.com/Seeeduino-XIAO-Expansion-Board/',
+ image: 'https://files.seeedstudio.com/wiki/Seeeduino-XIAO-Expansion-Board/Update_pic/zheng1.jpg'
}
};
@@ -249,7 +265,7 @@ document.addEventListener('DOMContentLoaded', function() {
if (boardImageElem) {
if (board.image) {
if (!board.image.startsWith('http')) {
- boardImageElem.src = "https://raw.githubusercontent.com/adafruit/Wippersnapper_Boards/refs/heads/rp2040_datalogger_feather/" + board.image;
+ boardImageElem.src = "https://raw.githubusercontent.com/adafruit/Wippersnapper_Boards/refs/heads/offline-mode/" + board.image;
} else {
boardImageElem.src = board.image;
}
@@ -365,7 +381,7 @@ document.addEventListener('DOMContentLoaded', function() {
// Mark SD CS pin as used
appState.usedPins.add(pin.number);
} else {
- console.warn(`SD card CS pin ${companion.sdCardCS} not found in selected board pins.`);
+ console.warn(`[${companionId}] SD card CS pin ${companion.sdCardCS} not found in selected board pins.`);
document.getElementById('sd-missing').classList.remove('hidden');
document.getElementById('sd-present').classList.add('hidden');
}
@@ -437,8 +453,12 @@ document.addEventListener('DOMContentLoaded', function() {
document.getElementById('sd-card-pin-select').classList.remove('hidden');
} else {
document.getElementById('sd-card-pin-select').classList.add('hidden');
+ appState.usedPins.delete(appState.sdCardCS);
+ document.getElementById('manual-sd-cs-pin').textContent = '';
+ document.getElementById('sd-cs-pin').textContent = '';
appState.sdCardCS = null;
}
+ populatePinsLists();
});
// RTC type selection handler
@@ -1932,7 +1952,8 @@ function generateConfiguration() {
referenceVoltage: appState.selectedBoard.referenceVoltage,
totalGPIOPins: appState.selectedBoard.totalGPIOPins,
totalAnalogPins: appState.selectedBoard.totalAnalogPins,
- statusLEDBrightness: appState.statusLEDBrightness
+ statusLEDBrightness: appState.statusLEDBrightness,
+ autoConfig: appState.enableautoConfig
},
components: []
};
diff --git a/wippersnapper_boards.js b/wippersnapper_boards.js
index 2aab613..9b49968 100644
--- a/wippersnapper_boards.js
+++ b/wippersnapper_boards.js
@@ -1,30 +1,30 @@
window.jsonBoardObject = {
"boards": {
- "metro-rp2040": {
- "boardName": "metro-rp2040",
- "mcuName": "rp2040",
+ "esp32s3-devkitc-1-n8": {
+ "boardName": "esp32s3-devkitc-1-n8",
+ "mcuName": "esp32s3",
"referenceVoltage": 3.3,
- "displayName": "Adafruit Metro RP2040",
- "vendor": "Adafruit",
- "productURL": "https://www.adafruit.com/product/5786",
- "documentationURL": "https://learn.adafruit.com/adafruit-metro-rp2040",
- "installMethod": "uf2",
- "installBoardName": "metro-rp2040",
+ "displayName": "ESP32-S3-DevKitC-1-N8 (8MB Flash, No PSRAM)",
+ "vendor": "Espressif",
+ "productURL": "https://www.adafruit.com/product/5312",
+ "documentationURL": "https://learn.adafruit.com/adafruit-metro-esp32-s3/wippersnapper-setup",
+ "installMethod": "web-native-usb",
+ "installBoardName": "esp32s3-devkitc-1-n8",
"rtc": null,
- "sdCardCS": 23,
+ "sdCardCS": null,
"pins": [
{
"number": 0,
"name": "D0",
- "displayName": "D0 (GP0, UART TX)",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
+ "displayName": "0 (Boot)",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": "INPUT"
},
{
"number": 1,
"name": "D1",
- "displayName": "D1 (GP1, UART RX)",
+ "displayName": "1",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -32,7 +32,7 @@ window.jsonBoardObject = {
{
"number": 2,
"name": "D2",
- "displayName": "D2 (GP2)",
+ "displayName": "2",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -40,7 +40,7 @@ window.jsonBoardObject = {
{
"number": 3,
"name": "D3",
- "displayName": "D3 (GP3)",
+ "displayName": "3",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -48,7 +48,7 @@ window.jsonBoardObject = {
{
"number": 4,
"name": "D4",
- "displayName": "D4 (GP4)",
+ "displayName": "4",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -56,7 +56,7 @@ window.jsonBoardObject = {
{
"number": 5,
"name": "D5",
- "displayName": "D5 (GP5)",
+ "displayName": "5",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -64,7 +64,7 @@ window.jsonBoardObject = {
{
"number": 6,
"name": "D6",
- "displayName": "D6 (GP6)",
+ "displayName": "6",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -72,7 +72,7 @@ window.jsonBoardObject = {
{
"number": 7,
"name": "D7",
- "displayName": "D7 (GP7, BOOT)",
+ "displayName": "7",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -80,7 +80,7 @@ window.jsonBoardObject = {
{
"number": 8,
"name": "D8",
- "displayName": "D8 (GP8)",
+ "displayName": "8",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -88,7 +88,7 @@ window.jsonBoardObject = {
{
"number": 9,
"name": "D9",
- "displayName": "D9 (GP9)",
+ "displayName": "9",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -96,7 +96,7 @@ window.jsonBoardObject = {
{
"number": 10,
"name": "D10",
- "displayName": "D10 (GP10)",
+ "displayName": "10",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -104,7 +104,7 @@ window.jsonBoardObject = {
{
"number": 11,
"name": "D11",
- "displayName": "D11 (GP11)",
+ "displayName": "11",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -112,7 +112,7 @@ window.jsonBoardObject = {
{
"number": 12,
"name": "D12",
- "displayName": "D12 (GP12)",
+ "displayName": "12",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -120,351 +120,351 @@ window.jsonBoardObject = {
{
"number": 13,
"name": "D13",
- "displayName": "D13 (GP13, LED)",
+ "displayName": "13",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 20,
- "name": "D20",
- "displayName": "D20 (GP20, SDA)",
+ "number": 14,
+ "name": "D14",
+ "displayName": "14",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 21,
- "name": "D21",
- "displayName": "D21 (GP21, SCL)",
+ "number": 15,
+ "name": "D15",
+ "displayName": "15",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 24,
- "name": "D24",
- "displayName": "D24 (GP24)",
+ "number": 16,
+ "name": "D16",
+ "displayName": "16",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 25,
- "name": "D25",
- "displayName": "D25 (GP25, NeoPixel)",
+ "number": 17,
+ "name": "D17",
+ "displayName": "17",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 28,
- "name": "D28",
- "displayName": "D28 (GP28, SPI MISO)",
+ "number": 18,
+ "name": "D18",
+ "displayName": "18",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 30,
- "name": "D30",
- "displayName": "D30 (GP30, SPI SCK)",
+ "number": 19,
+ "name": "D19",
+ "displayName": "19",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 31,
- "name": "D31",
- "displayName": "D31 (GP31, SPI MOSI)",
+ "number": 20,
+ "name": "D20",
+ "displayName": "20",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 23,
- "name": "D23",
- "displayName": "D23 (GP23, SD Card CS)",
+ "number": 21,
+ "name": "D21",
+ "displayName": "21",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 26,
- "name": "A26",
- "displayName": "A0 (GP26)",
- "direction": "",
+ "number": 35,
+ "name": "D35",
+ "displayName": "35",
"hasPWM": true,
- "hasServo": true
+ "hasServo": true,
+ "direction": ""
},
{
- "number": 27,
- "name": "A27",
- "displayName": "A1 (GP27)",
- "direction": "",
+ "number": 36,
+ "name": "D36",
+ "displayName": "36",
"hasPWM": true,
- "hasServo": true
+ "hasServo": true,
+ "direction": ""
},
{
- "number": 29,
- "name": "A29",
- "displayName": "A3 (GP29)",
- "direction": "",
+ "number": 37,
+ "name": "D37",
+ "displayName": "37",
"hasPWM": true,
- "hasServo": true
- }
- ],
- "analogPins": [
- {
- "number": 26,
- "name": "A26",
- "displayName": "A0 (GP26)",
+ "hasServo": true,
"direction": ""
},
{
- "number": 27,
- "name": "A27",
- "displayName": "A1 (GP27)",
+ "number": 38,
+ "name": "D38",
+ "displayName": "38",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
- "number": 28,
- "name": "A28",
- "displayName": "A2 (GP28)",
+ "number": 39,
+ "name": "D39",
+ "displayName": "39",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
- "number": 29,
- "name": "A29",
- "displayName": "A3 (GP29)",
- "direction": ""
- }
- ],
- "defaultI2C": {
- "i2cPortId": 0,
- "SCL": 21,
- "SDA": 20
- },
- "image": "https://cdn-shop.adafruit.com/640x480/5786-00.jpg",
- "totalAnalogPins": 4,
- "i2cPorts": [
- {
- "i2cPortId": 0,
- "SDA": 20,
- "SCL": 21
- }
- ],
- "totalGPIOPins": 25
- },
- "qtpy-esp32s3-n4r2": {
- "boardName": "qtpy-esp32s3-n4r2",
- "mcuName": "esp32s3",
- "referenceVoltage": 2.6,
- "displayName": "Adafruit QT Py S3 (2MB PSRAM)",
- "vendor": "Adafruit",
- "productURL": "https://www.adafruit.com/product/5700",
- "documentationURL": "https://learn.adafruit.com/adafruit-qt-py-esp32-s3",
- "installMethod": "uf2",
- "installBoardName": "qtpy-esp32s3-n4r2",
- "rtc": null,
- "sdCardCS": null,
- "pins": [
- {
- "number": 18,
- "name": "D18",
- "displayName": "A0",
+ "number": 40,
+ "name": "D40",
+ "displayName": "40",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 17,
- "name": "D17",
- "displayName": "A1",
+ "number": 41,
+ "name": "D41",
+ "displayName": "41",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 9,
- "name": "D9",
- "displayName": "A2",
+ "number": 42,
+ "name": "D42",
+ "displayName": "42",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 8,
- "name": "D8",
- "displayName": "A3",
+ "number": 43,
+ "name": "D43",
+ "displayName": "43 (TX)",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 7,
- "name": "D7",
- "displayName": "SDA",
+ "number": 44,
+ "name": "D44",
+ "displayName": "44 (RX)",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 6,
- "name": "D6",
- "displayName": "SCL",
+ "number": 45,
+ "name": "D45",
+ "displayName": "45",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 5,
- "name": "D5",
- "displayName": "D5 (UART TX)",
+ "number": 46,
+ "name": "D46",
+ "displayName": "46",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 35,
- "name": "D35",
- "displayName": "MOSI",
+ "number": 47,
+ "name": "D47",
+ "displayName": "47",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 37,
- "name": "D37",
- "displayName": "MISO",
+ "number": 48,
+ "name": "D48",
+ "displayName": "48 (NeoPixel)",
"hasPWM": true,
"hasServo": true,
"direction": ""
+ }
+ ],
+ "analogPins": [
+ {
+ "number": 1,
+ "name": "A1",
+ "displayName": "1 (ADC1_CH0)",
+ "direction": ""
},
{
- "number": 36,
- "name": "D36",
- "displayName": "SCK",
- "hasPWM": true,
- "hasServo": true,
+ "number": 2,
+ "name": "A2",
+ "displayName": "2 (ADC1_CH1)",
"direction": ""
},
{
- "number": 16,
- "name": "D16",
- "displayName": "D16 (UART RX)",
- "hasPWM": true,
- "hasServo": true,
+ "number": 3,
+ "name": "A3",
+ "displayName": "3 (ADC1_CH2)",
"direction": ""
},
{
- "number": 0,
- "name": "D0",
- "displayName": "Boot Pushbutton",
- "hasPWM": false,
- "hasServo": false,
- "direction": "INPUT"
+ "number": 4,
+ "name": "A4",
+ "displayName": "4 (ADC1_CH3)",
+ "direction": ""
},
{
- "number": 39,
- "name": "D39",
- "displayName": "D39 (NeoPixel)",
- "hasPWM": false,
- "hasServo": false,
+ "number": 5,
+ "name": "A5",
+ "displayName": "5 (ADC1_CH4)",
"direction": ""
- }
- ],
- "analogPins": [
+ },
{
- "number": 18,
- "name": "A18",
- "displayName": "A0",
+ "number": 6,
+ "name": "A6",
+ "displayName": "6 (ADC1_CH5)",
"direction": ""
},
{
- "number": 17,
- "name": "A17",
- "displayName": "A1",
+ "number": 7,
+ "name": "A7",
+ "displayName": "7 (ADC1_CH6)",
+ "direction": ""
+ },
+ {
+ "number": 8,
+ "name": "A8",
+ "displayName": "8 (ADC1_CH7)",
"direction": ""
},
{
"number": 9,
"name": "A9",
- "displayName": "A2",
+ "displayName": "9 (ADC1_CH8)",
"direction": ""
},
{
- "number": 8,
- "name": "A8",
- "displayName": "A3",
+ "number": 10,
+ "name": "A10",
+ "displayName": "10 (ADC1_CH9)",
"direction": ""
},
{
- "number": 7,
- "name": "A7",
- "displayName": "SDA",
+ "number": 11,
+ "name": "A11",
+ "displayName": "11 (ADC2_CH0)",
"direction": ""
},
{
- "number": 6,
- "name": "A6",
- "displayName": "SCL",
+ "number": 12,
+ "name": "A12",
+ "displayName": "12 (ADC2_CH1)",
"direction": ""
},
{
- "number": 5,
- "name": "A5",
- "displayName": "A5 (UART TX)",
+ "number": 13,
+ "name": "A13",
+ "displayName": "13 (ADC2_CH2)",
+ "direction": ""
+ },
+ {
+ "number": 14,
+ "name": "A14",
+ "displayName": "14 (ADC2_CH3)",
+ "direction": ""
+ },
+ {
+ "number": 15,
+ "name": "A15",
+ "displayName": "15 (ADC2_CH4)",
"direction": ""
},
{
"number": 16,
"name": "A16",
- "displayName": "A16 (UART RX)",
+ "displayName": "16 (ADC2_CH5)",
"direction": ""
- }
- ],
- "defaultI2C": {
- "i2cPortId": 0,
- "SCL": 40,
- "SDA": 41
- },
- "image": "boards/qtpy-esp32s3-n4r2/image.svg",
- "totalAnalogPins": 8,
+ },
+ {
+ "number": 17,
+ "name": "A17",
+ "displayName": "17 (ADC2_CH6)",
+ "direction": ""
+ },
+ {
+ "number": 18,
+ "name": "A18",
+ "displayName": "18 (ADC2_CH7)",
+ "direction": ""
+ },
+ {
+ "number": 19,
+ "name": "A19",
+ "displayName": "19 (ADC2_CH8)",
+ "direction": ""
+ },
+ {
+ "number": 20,
+ "name": "A20",
+ "displayName": "20 (ADC2_CH9)",
+ "direction": ""
+ }
+ ],
+ "defaultI2C": {
+ "i2cPortId": 0,
+ "SCL": 9,
+ "SDA": 8
+ },
+ "image": "boards/esp32s3-devkitc-1-n8/image.jpg",
+ "totalAnalogPins": 20,
"i2cPorts": [
{
"i2cPortId": 0,
- "SDA": 41,
- "SCL": 40
+ "SDA": 8,
+ "SCL": 9
}
],
- "totalGPIOPins": 13
+ "totalGPIOPins": 36
},
- "rpi-pico-w": {
- "boardName": "rpi-pico-w",
- "mcuName": "rp2040",
- "referenceVoltage": 3.3,
- "displayName": "Raspberry Pi Pico W",
- "vendor": "Raspberry Pi",
- "productURL": "https://www.adafruit.com/product/5526",
- "documentationURL": "https://learn.adafruit.com/quick-start-the-pico-w-with-wippersnapper/",
- "installMethod": "uf2",
- "installBoardName": "picow_rp2040_tinyusb",
+ "feather-esp32s2": {
+ "boardName": "feather-esp32s2",
+ "mcuName": "esp32s2",
+ "referenceVoltage": 2.6,
+ "displayName": "Adafruit ESP32-S2 Feather",
+ "vendor": "Adafruit",
+ "productURL": "https://www.adafruit.com/product/5000",
+ "documentationURL": "https://learn.adafruit.com/adafruit-esp32-s2-feather",
+ "installMethod": "web-native-usb",
+ "installBoardName": "feather-esp32s2",
"rtc": null,
"sdCardCS": null,
"pins": [
{
"number": 0,
"name": "D0",
- "displayName": "GP0 (UART TX)",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
+ "displayName": "D0 (Boot Push Button)",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": "INPUT"
},
{
"number": 1,
"name": "D1",
- "displayName": "GP1 (UART RX)",
+ "displayName": "D1",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -472,7 +472,7 @@ window.jsonBoardObject = {
{
"number": 2,
"name": "D2",
- "displayName": "GP2",
+ "displayName": "D2",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -480,7 +480,7 @@ window.jsonBoardObject = {
{
"number": 3,
"name": "D3",
- "displayName": "GP3",
+ "displayName": "D3",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -488,7 +488,7 @@ window.jsonBoardObject = {
{
"number": 4,
"name": "D4",
- "displayName": "GP4",
+ "displayName": "D4",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -496,7 +496,7 @@ window.jsonBoardObject = {
{
"number": 5,
"name": "D5",
- "displayName": "GP5",
+ "displayName": "D5",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -504,7 +504,7 @@ window.jsonBoardObject = {
{
"number": 6,
"name": "D6",
- "displayName": "GP6",
+ "displayName": "D6",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -512,23 +512,15 @@ window.jsonBoardObject = {
{
"number": 7,
"name": "D7",
- "displayName": "GP7",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 8,
- "name": "D8",
- "displayName": "GP8",
- "hasPWM": true,
- "hasServo": true,
+ "displayName": "D7 (I2C Power)",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
"number": 9,
"name": "D9",
- "displayName": "GP9",
+ "displayName": "D9",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -536,7 +528,7 @@ window.jsonBoardObject = {
{
"number": 10,
"name": "D10",
- "displayName": "GP10",
+ "displayName": "D10",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -544,7 +536,7 @@ window.jsonBoardObject = {
{
"number": 11,
"name": "D11",
- "displayName": "GP11",
+ "displayName": "D11",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -552,7 +544,7 @@ window.jsonBoardObject = {
{
"number": 12,
"name": "D12",
- "displayName": "GP12",
+ "displayName": "D12",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -560,391 +552,383 @@ window.jsonBoardObject = {
{
"number": 13,
"name": "D13",
- "displayName": "GP13",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 14,
- "name": "D14",
- "displayName": "GP14",
+ "displayName": "D13 (LED)",
"hasPWM": true,
- "hasServo": true,
+ "hasServo": false,
"direction": ""
},
{
- "number": 15,
- "name": "D15",
- "displayName": "GP15",
- "hasPWM": true,
- "hasServo": true,
+ "number": 33,
+ "name": "D33",
+ "displayName": "D33 (NeoPixel)",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
- "number": 16,
- "name": "D16",
- "displayName": "GP16",
- "hasPWM": true,
- "hasServo": true,
+ "number": 38,
+ "name": "D38",
+ "displayName": "D38 (UART RX)",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
- "number": 17,
- "name": "D17",
- "displayName": "GP17",
- "hasPWM": true,
- "hasServo": true,
+ "number": 39,
+ "name": "D39",
+ "displayName": "D39 (UART TX)",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
"number": 18,
- "name": "D18",
- "displayName": "GP18",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 19,
- "name": "D19",
- "displayName": "GP19",
+ "name": "A18",
+ "displayName": "A0",
+ "direction": "",
"hasPWM": true,
- "hasServo": true,
- "direction": ""
+ "hasServo": true
},
{
- "number": 20,
- "name": "D20",
- "displayName": "GP20",
+ "number": 17,
+ "name": "A17",
+ "displayName": "A1",
+ "direction": "",
"hasPWM": true,
- "hasServo": true,
- "direction": ""
+ "hasServo": true
},
{
- "number": 21,
- "name": "D21",
- "displayName": "GP21",
+ "number": 16,
+ "name": "A16",
+ "displayName": "A2",
+ "direction": "",
"hasPWM": true,
- "hasServo": true,
- "direction": ""
+ "hasServo": true
},
{
- "number": 22,
- "name": "D22",
- "displayName": "GP22",
+ "number": 15,
+ "name": "A15",
+ "displayName": "A3",
+ "direction": "",
"hasPWM": true,
- "hasServo": true,
- "direction": ""
+ "hasServo": true
},
{
- "number": 23,
- "name": "D23",
- "displayName": "GP23",
+ "number": 14,
+ "name": "A14",
+ "displayName": "A4",
+ "direction": "",
"hasPWM": true,
- "hasServo": true,
- "direction": ""
+ "hasServo": true
},
{
- "number": 24,
- "name": "D24",
- "displayName": "GP24",
+ "number": 8,
+ "name": "A8",
+ "displayName": "A5",
+ "direction": "",
"hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
+ "hasServo": true
+ }
+ ],
+ "analogPins": [
{
- "number": 25,
- "name": "D25",
- "displayName": "GP25",
- "hasPWM": true,
- "hasServo": true,
+ "number": 18,
+ "name": "A18",
+ "displayName": "A0",
"direction": ""
},
{
- "number": 26,
- "name": "D26",
- "displayName": "GP26",
- "hasPWM": true,
- "hasServo": true,
+ "number": 17,
+ "name": "A17",
+ "displayName": "A1",
"direction": ""
},
{
- "number": 27,
- "name": "D27",
- "displayName": "GP27",
- "hasPWM": true,
- "hasServo": true,
+ "number": 16,
+ "name": "A16",
+ "displayName": "A2",
"direction": ""
},
{
- "number": 28,
- "name": "D28",
- "displayName": "GP28",
- "hasPWM": true,
- "hasServo": true,
+ "number": 15,
+ "name": "A15",
+ "displayName": "A3",
"direction": ""
},
{
- "number": 29,
- "name": "D29",
- "displayName": "GP29",
- "hasPWM": true,
- "hasServo": true,
+ "number": 14,
+ "name": "A14",
+ "displayName": "A4",
"direction": ""
},
{
- "number": 64,
- "name": "D64",
- "displayName": "LED (BUILT-IN)",
- "hasPWM": false,
- "hasServo": false,
- "direction": ""
- }
- ],
- "analogPins": [
- {
- "number": 26,
- "name": "A26",
- "displayName": "A0 (GP0)",
- "direction": ""
- },
- {
- "number": 27,
- "name": "A27",
- "displayName": "A1 (GP1)",
- "direction": ""
- },
- {
- "number": 28,
- "name": "A28",
- "displayName": "A2 (GP2)",
- "direction": ""
- },
- {
- "number": 29,
- "name": "A29",
- "displayName": "A3 (GP3)",
+ "number": 8,
+ "name": "A8",
+ "displayName": "A5",
"direction": ""
}
],
"defaultI2C": {
"i2cPortId": 0,
- "SCL": 5,
- "SDA": 4
+ "SCL": 4,
+ "SDA": 3
},
- "image": "boards/rpi-pico-w/image.png",
- "totalAnalogPins": 4,
+ "image": "boards/feather-esp32s2/image.png",
+ "totalAnalogPins": 6,
"i2cPorts": [
{
"i2cPortId": 0,
- "SDA": 4,
- "SCL": 5
+ "SDA": 3,
+ "SCL": 4
}
],
- "totalGPIOPins": 31
+ "totalGPIOPins": 22
},
- "qtpy-esp32s3": {
- "boardName": "qtpy-esp32s3",
- "mcuName": "esp32s3",
+ "feather-esp32s2-reverse-tft": {
+ "boardName": "feather-esp32s2-reverse-tft",
+ "mcuName": "esp32s2",
"referenceVoltage": 2.6,
- "displayName": "Adafruit QT Py ESP32-S3 (NO PSRAM)",
+ "displayName": "ESP32-S2 Reverse TFT Feather",
"vendor": "Adafruit",
- "productURL": "https://www.adafruit.com/product/5426",
- "documentationURL": "https://learn.adafruit.com/adafruit-qt-py-esp32-s3",
- "installMethod": "uf2",
- "installBoardName": "qtpy-esp32s3",
+ "productURL": "https://www.adafruit.com/product/5345",
+ "documentationURL": "https://learn.adafruit.com/esp32-s2-reverse-tft-feather",
+ "installMethod": "web-native-usb",
+ "installBoardName": "feather-esp32s2-reverse-tft",
"rtc": null,
"sdCardCS": null,
"pins": [
{
- "number": 18,
- "name": "D18",
- "displayName": "A0",
- "hasPWM": true,
- "hasServo": true,
+ "number": 0,
+ "name": "D0",
+ "displayName": "D0 (Boot Push Button)",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": "INPUT"
+ },
+ {
+ "number": 1,
+ "name": "D1",
+ "displayName": "D1 Push Button",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
- "number": 17,
- "name": "D17",
- "displayName": "A1",
- "hasPWM": true,
- "hasServo": true,
+ "number": 2,
+ "name": "D2",
+ "displayName": "D2 Push Button",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
- "number": 9,
- "name": "D9",
- "displayName": "A2",
+ "number": 5,
+ "name": "D5",
+ "displayName": "D5",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 8,
- "name": "D8",
- "displayName": "A3",
+ "number": 6,
+ "name": "D6",
+ "displayName": "D6",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 7,
- "name": "D7",
- "displayName": "SDA",
+ "number": 9,
+ "name": "D9",
+ "displayName": "D9",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 6,
- "name": "D6",
- "displayName": "SCL",
+ "number": 10,
+ "name": "D10",
+ "displayName": "D10",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 5,
- "name": "D5",
- "displayName": "D5 (UART TX)",
+ "number": 11,
+ "name": "D11",
+ "displayName": "D11",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 35,
- "name": "D35",
- "displayName": "MOSI",
+ "number": 12,
+ "name": "D12",
+ "displayName": "D12",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 37,
- "name": "D37",
- "displayName": "MISO",
+ "number": 13,
+ "name": "D13",
+ "displayName": "D13 (LED)",
"hasPWM": true,
- "hasServo": true,
+ "hasServo": false,
"direction": ""
},
{
- "number": 36,
- "name": "D36",
- "displayName": "SCK",
- "hasPWM": true,
- "hasServo": true,
+ "number": 33,
+ "name": "D33",
+ "displayName": "D33 (NeoPixel)",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
- "number": 16,
- "name": "D16",
- "displayName": "D16 (UART RX)",
- "hasPWM": true,
- "hasServo": true,
+ "number": 21,
+ "name": "D21",
+ "displayName": "D21 (NeoPixel Power Pin)",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
- "number": 0,
- "name": "D0",
- "displayName": "Boot Pushbutton",
+ "number": 38,
+ "name": "D38",
+ "displayName": "D38 (UART RX)",
"hasPWM": false,
"hasServo": false,
- "direction": "INPUT"
+ "direction": ""
},
{
"number": 39,
"name": "D39",
- "displayName": "D39 (NeoPixel)",
+ "displayName": "D39 (UART TX)",
"hasPWM": false,
"hasServo": false,
"direction": ""
- }
- ],
- "analogPins": [
+ },
{
"number": 18,
"name": "A18",
"displayName": "A0",
- "direction": ""
+ "direction": "",
+ "hasPWM": true,
+ "hasServo": true
},
{
"number": 17,
"name": "A17",
"displayName": "A1",
- "direction": ""
+ "direction": "",
+ "hasPWM": true,
+ "hasServo": true
},
{
- "number": 9,
- "name": "A9",
+ "number": 16,
+ "name": "A16",
"displayName": "A2",
- "direction": ""
+ "direction": "",
+ "hasPWM": true,
+ "hasServo": true
+ },
+ {
+ "number": 15,
+ "name": "A15",
+ "displayName": "A3",
+ "direction": "",
+ "hasPWM": true,
+ "hasServo": true
+ },
+ {
+ "number": 14,
+ "name": "A14",
+ "displayName": "A4",
+ "direction": "",
+ "hasPWM": true,
+ "hasServo": true
},
{
"number": 8,
"name": "A8",
- "displayName": "A3",
+ "displayName": "A5",
+ "direction": "",
+ "hasPWM": true,
+ "hasServo": true
+ }
+ ],
+ "analogPins": [
+ {
+ "number": 18,
+ "name": "A18",
+ "displayName": "A0",
"direction": ""
},
{
- "number": 7,
- "name": "A7",
- "displayName": "SDA",
+ "number": 17,
+ "name": "A17",
+ "displayName": "A1",
"direction": ""
},
{
- "number": 6,
- "name": "A6",
- "displayName": "SCL",
+ "number": 16,
+ "name": "A16",
+ "displayName": "A2",
"direction": ""
},
{
- "number": 5,
- "name": "A5",
- "displayName": "A5 (UART TX)",
+ "number": 15,
+ "name": "A15",
+ "displayName": "A3",
"direction": ""
},
{
- "number": 16,
- "name": "A16",
- "displayName": "A16 (UART RX)",
+ "number": 14,
+ "name": "A14",
+ "displayName": "A4",
+ "direction": ""
+ },
+ {
+ "number": 8,
+ "name": "A8",
+ "displayName": "A5",
"direction": ""
}
],
"defaultI2C": {
"i2cPortId": 0,
- "SCL": 40,
- "SDA": 41
+ "SCL": 4,
+ "SDA": 3
},
- "image": "boards/qtpy-esp32s3/image.svg",
- "totalAnalogPins": 8,
+ "image": "boards/feather-esp32s2-reverse-tft/image.svg",
+ "totalAnalogPins": 6,
"i2cPorts": [
{
"i2cPortId": 0,
- "SDA": 41,
- "SCL": 40
+ "SDA": 3,
+ "SCL": 4
}
],
- "totalGPIOPins": 13
+ "totalGPIOPins": 20
},
- "feather-rp2040-adalogger": {
- "boardName": "feather-rp2040-adalogger",
- "mcuName": "rp2040",
- "referenceVoltage": 3.3,
- "displayName": "Adafruit Feather RP2040 Adalogger",
+ "feather-esp32s2-tft": {
+ "boardName": "feather-esp32s2-tft",
+ "mcuName": "esp32s2",
+ "referenceVoltage": 2.6,
+ "displayName": "Adafruit ESP32-S2 TFT Feather",
"vendor": "Adafruit",
- "productURL": "https://www.adafruit.com/product/5980",
- "documentationURL": "https://learn.adafruit.com/adafruit-feather-rp2040-adalogger",
- "installMethod": "uf2",
- "installBoardName": "feather_rp2040_adalogger_tinyusb",
- "rtc": null,
- "sdCardCS": 23,
- "pins": [
+ "productURL": "https://www.adafruit.com/product/5300",
+ "documentationURL": "https://learn.adafruit.com/adafruit-esp32-s2-tft-feather",
+ "installMethod": "web-native-usb",
+ "installBoardName": "feather-esp32s2-tft",
+ "rtc": null,
+ "sdCardCS": null,
+ "pins": [
{
- "number": 7,
- "name": "D7",
- "displayName": "GP7 (Boot Push Button)",
+ "number": 0,
+ "name": "D0",
+ "displayName": "D0 (Boot Push Button)",
"hasPWM": false,
"hasServo": false,
"direction": "INPUT"
@@ -952,7 +936,7 @@ window.jsonBoardObject = {
{
"number": 1,
"name": "D1",
- "displayName": "GP1",
+ "displayName": "D1 (UART TX)",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -960,7 +944,7 @@ window.jsonBoardObject = {
{
"number": 2,
"name": "D2",
- "displayName": "GP2",
+ "displayName": "D2 (UART RX)",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -968,7 +952,7 @@ window.jsonBoardObject = {
{
"number": 3,
"name": "D3",
- "displayName": "GP3",
+ "displayName": "D3",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -976,7 +960,7 @@ window.jsonBoardObject = {
{
"number": 4,
"name": "D4",
- "displayName": "GP4",
+ "displayName": "D4",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -984,7 +968,7 @@ window.jsonBoardObject = {
{
"number": 5,
"name": "D5",
- "displayName": "GP5",
+ "displayName": "D5",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -992,23 +976,7 @@ window.jsonBoardObject = {
{
"number": 6,
"name": "D6",
- "displayName": "GP6",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 7,
- "name": "D7",
- "displayName": "GP7",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 8,
- "name": "D8",
- "displayName": "GP8",
+ "displayName": "D6",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -1016,7 +984,7 @@ window.jsonBoardObject = {
{
"number": 9,
"name": "D9",
- "displayName": "GP9",
+ "displayName": "D9",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -1024,7 +992,7 @@ window.jsonBoardObject = {
{
"number": 10,
"name": "D10",
- "displayName": "GP10",
+ "displayName": "D10",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -1032,7 +1000,7 @@ window.jsonBoardObject = {
{
"number": 11,
"name": "D11",
- "displayName": "GP11",
+ "displayName": "D11",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -1040,7 +1008,7 @@ window.jsonBoardObject = {
{
"number": 12,
"name": "D12",
- "displayName": "GP12",
+ "displayName": "D12",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -1048,189 +1016,137 @@ window.jsonBoardObject = {
{
"number": 13,
"name": "D13",
- "displayName": "GP13",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 14,
- "name": "D14",
- "displayName": "GP14",
+ "displayName": "D13 (LED)",
"hasPWM": true,
- "hasServo": true,
+ "hasServo": false,
"direction": ""
},
{
- "number": 15,
- "name": "D15",
- "displayName": "GP15",
- "hasPWM": true,
- "hasServo": true,
+ "number": 33,
+ "name": "D33",
+ "displayName": "D33 (NeoPixel)",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
- "number": 16,
- "name": "D16",
- "displayName": "GP16",
- "hasPWM": true,
- "hasServo": true,
+ "number": 38,
+ "name": "D38",
+ "displayName": "D38 (UART RX)",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
- "number": 17,
- "name": "D17",
- "displayName": "GP17",
- "hasPWM": true,
- "hasServo": true,
+ "number": 39,
+ "name": "D39",
+ "displayName": "D39 (UART TX)",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
"number": 18,
- "name": "D18",
- "displayName": "GP18",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 19,
- "name": "D19",
- "displayName": "GP19",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 20,
- "name": "D20",
- "displayName": "GP20",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 21,
- "name": "D21",
- "displayName": "GP21",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 22,
- "name": "D22",
- "displayName": "GP22",
+ "name": "A18",
+ "displayName": "A0",
+ "direction": "",
"hasPWM": true,
- "hasServo": true,
- "direction": ""
+ "hasServo": true
},
{
- "number": 23,
- "name": "D23",
- "displayName": "GP23",
+ "number": 17,
+ "name": "A17",
+ "displayName": "A1",
+ "direction": "",
"hasPWM": true,
- "hasServo": true,
- "direction": ""
+ "hasServo": true
},
{
- "number": 24,
- "name": "D24",
- "displayName": "GP24",
+ "number": 16,
+ "name": "A16",
+ "displayName": "A2",
+ "direction": "",
"hasPWM": true,
- "hasServo": true,
- "direction": ""
+ "hasServo": true
},
{
- "number": 25,
- "name": "D25",
- "displayName": "GP25",
+ "number": 15,
+ "name": "A15",
+ "displayName": "A3",
+ "direction": "",
"hasPWM": true,
- "hasServo": true,
- "direction": ""
+ "hasServo": true
},
{
- "number": 26,
- "name": "D26",
- "displayName": "GP26",
+ "number": 14,
+ "name": "A14",
+ "displayName": "A4",
+ "direction": "",
"hasPWM": true,
- "hasServo": true,
- "direction": ""
+ "hasServo": true
},
{
- "number": 27,
- "name": "D27",
- "displayName": "GP27",
+ "number": 8,
+ "name": "A8",
+ "displayName": "A5",
+ "direction": "",
"hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
+ "hasServo": true
+ }
+ ],
+ "analogPins": [
{
- "number": 28,
- "name": "D28",
- "displayName": "GP28",
- "hasPWM": true,
- "hasServo": true,
+ "number": 18,
+ "name": "A18",
+ "displayName": "A0",
"direction": ""
},
{
- "number": 29,
- "name": "D29",
- "displayName": "GP29",
- "hasPWM": true,
- "hasServo": true,
+ "number": 17,
+ "name": "A17",
+ "displayName": "A1",
"direction": ""
},
{
- "number": 64,
- "name": "D64",
- "displayName": "LED (BUILT-IN)",
- "hasPWM": false,
- "hasServo": false,
- "direction": ""
- }
- ],
- "analogPins": [
- {
- "number": 26,
- "name": "A26",
- "displayName": "A0 (GP26)",
+ "number": 16,
+ "name": "A16",
+ "displayName": "A2",
"direction": ""
},
{
- "number": 27,
- "name": "A27",
- "displayName": "A1 (GP27)",
+ "number": 15,
+ "name": "A15",
+ "displayName": "A3",
"direction": ""
},
{
- "number": 28,
- "name": "A28",
- "displayName": "A2 (GP28)",
+ "number": 14,
+ "name": "A14",
+ "displayName": "A4",
"direction": ""
},
{
- "number": 29,
- "name": "A29",
- "displayName": "A3 (GP29)",
+ "number": 8,
+ "name": "A8",
+ "displayName": "A5",
"direction": ""
}
],
"defaultI2C": {
"i2cPortId": 0,
- "SCL": 5,
- "SDA": 4
+ "SCL": 41,
+ "SDA": 42
},
- "image": "https://cdn-shop.adafruit.com/640x480/5980-00.jpg",
- "totalAnalogPins": 4,
+ "image": "boards/feather-esp32s2-tft/image.svg",
+ "totalAnalogPins": 6,
"i2cPorts": [
{
"i2cPortId": 0,
- "SDA": 4,
- "SCL": 5
+ "SDA": 42,
+ "SCL": 41
}
],
- "totalGPIOPins": 31
+ "totalGPIOPins": 21
},
"feather-esp32s3": {
"boardName": "feather-esp32s3",
@@ -1476,18 +1392,18 @@ window.jsonBoardObject = {
],
"totalGPIOPins": 22
},
- "feather-esp32s2": {
- "boardName": "feather-esp32s2",
- "mcuName": "esp32s2",
+ "feather-esp32s3-4mbflash-2mbpsram": {
+ "boardName": "feather-esp32s3-4mbflash-2mbpsram",
+ "mcuName": "esp32s3",
"referenceVoltage": 2.6,
- "displayName": "Adafruit ESP32-S2 Feather",
+ "displayName": "Adafruit ESP32-S3 Feather with 4MB Flash 2MB PSRAM",
"vendor": "Adafruit",
- "productURL": "https://www.adafruit.com/product/5000",
- "documentationURL": "https://learn.adafruit.com/adafruit-esp32-s2-feather",
- "installMethod": "uf2",
- "installBoardName": "feather-esp32s2",
- "rtc": null,
- "sdCardCS": null,
+ "productURL": "https://www.adafruit.com/product/5477",
+ "documentationURL": "https://learn.adafruit.com/adafruit-esp32-s3-feather",
+ "installMethod": "web-native-usb",
+ "installBoardName": "feather-esp32s3-4mbflash-2mbpsram",
+ "rtc": null,
+ "sdCardCS": null,
"pins": [
{
"number": 0,
@@ -1548,9 +1464,17 @@ window.jsonBoardObject = {
{
"number": 7,
"name": "D7",
- "displayName": "D7 (I2C Power)",
- "hasPWM": false,
- "hasServo": false,
+ "displayName": "D7",
+ "hasPWM": true,
+ "hasServo": true,
+ "direction": ""
+ },
+ {
+ "number": 8,
+ "name": "D8",
+ "displayName": "D8",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
@@ -1593,6 +1517,14 @@ window.jsonBoardObject = {
"hasServo": false,
"direction": ""
},
+ {
+ "number": 14,
+ "name": "D14",
+ "displayName": "D14",
+ "hasPWM": true,
+ "hasServo": true,
+ "direction": ""
+ },
{
"number": 33,
"name": "D33",
@@ -1648,22 +1580,6 @@ window.jsonBoardObject = {
"direction": "",
"hasPWM": true,
"hasServo": true
- },
- {
- "number": 14,
- "name": "A14",
- "displayName": "A4",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
- },
- {
- "number": 8,
- "name": "A8",
- "displayName": "A5",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
}
],
"analogPins": [
@@ -1709,7 +1625,7 @@ window.jsonBoardObject = {
"SCL": 4,
"SDA": 3
},
- "image": "boards/feather-esp32s2/image.png",
+ "image": "boards/feather-esp32s3-4mbflash-2mbpsram/image.svg",
"totalAnalogPins": 6,
"i2cPorts": [
{
@@ -1720,16 +1636,16 @@ window.jsonBoardObject = {
],
"totalGPIOPins": 22
},
- "feather-esp32s2-reverse-tft": {
- "boardName": "feather-esp32s2-reverse-tft",
- "mcuName": "esp32s2",
+ "feather-esp32s3-reverse-tft": {
+ "boardName": "feather-esp32s3-reverse-tft",
+ "mcuName": "esp32s3",
"referenceVoltage": 2.6,
- "displayName": "ESP32-S2 Reverse TFT Feather",
+ "displayName": "ESP32-S3 Reverse TFT Feather",
"vendor": "Adafruit",
- "productURL": "https://www.adafruit.com/product/5345",
- "documentationURL": "https://learn.adafruit.com/esp32-s2-reverse-tft-feather",
- "installMethod": "uf2",
- "installBoardName": "feather-esp32s2-reverse-tft",
+ "productURL": "https://www.adafruit.com/product/5691",
+ "documentationURL": "https://learn.adafruit.com/esp32-s3-reverse-tft-feather",
+ "installMethod": "web-native-usb",
+ "installBoardName": "feather-esp32s3-reverse-tft",
"rtc": null,
"sdCardCS": null,
"pins": [
@@ -1821,14 +1737,6 @@ window.jsonBoardObject = {
"hasServo": false,
"direction": ""
},
- {
- "number": 21,
- "name": "D21",
- "displayName": "D21 (NeoPixel Power Pin)",
- "hasPWM": false,
- "hasServo": false,
- "direction": ""
- },
{
"number": 38,
"name": "D38",
@@ -1937,7 +1845,7 @@ window.jsonBoardObject = {
"SCL": 4,
"SDA": 3
},
- "image": "boards/feather-esp32s2-reverse-tft/image.svg",
+ "image": "boards/feather-esp32s3-reverse-tft/image.svg",
"totalAnalogPins": 6,
"i2cPorts": [
{
@@ -1946,25 +1854,25 @@ window.jsonBoardObject = {
"SCL": 4
}
],
- "totalGPIOPins": 20
+ "totalGPIOPins": 19
},
- "metroesp32s2": {
- "boardName": "metroesp32s2",
- "mcuName": "esp32s2",
+ "feather-esp32s3-tft": {
+ "boardName": "feather-esp32s3-tft",
+ "mcuName": "esp32s3",
"referenceVoltage": 2.6,
- "displayName": "Adafruit Metro ESP32-S2",
+ "displayName": "Adafruit ESP32-S3 TFT Feather",
"vendor": "Adafruit",
- "productURL": "https://www.adafruit.com/product/4775",
- "documentationURL": "https://learn.adafruit.com/adafruit-metro-esp32-s2",
- "installMethod": "uf2",
- "installBoardName": "metroesp32s2",
+ "productURL": "https://www.adafruit.com/product/5483",
+ "documentationURL": "https://learn.adafruit.com/adafruit-esp32-s3-tft-feather",
+ "installMethod": "web-native-usb",
+ "installBoardName": "feather-esp32s3-tft",
"rtc": null,
"sdCardCS": null,
"pins": [
{
"number": 0,
"name": "D0",
- "displayName": "D0 (Boot0 Push Button)",
+ "displayName": "D0 (Boot Btn)",
"hasPWM": false,
"hasServo": false,
"direction": "INPUT"
@@ -1972,7 +1880,7 @@ window.jsonBoardObject = {
{
"number": 1,
"name": "D1",
- "displayName": "D1",
+ "displayName": "D1 (UART TX)",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -1980,7 +1888,7 @@ window.jsonBoardObject = {
{
"number": 2,
"name": "D2",
- "displayName": "D2",
+ "displayName": "D2 (UART RX)",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -2004,7 +1912,7 @@ window.jsonBoardObject = {
{
"number": 5,
"name": "D5",
- "displayName": "D5 (UART TX)",
+ "displayName": "D5",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -2012,7 +1920,7 @@ window.jsonBoardObject = {
{
"number": 6,
"name": "D6",
- "displayName": "D6 (UART RX)",
+ "displayName": "D6",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -2068,9 +1976,9 @@ window.jsonBoardObject = {
{
"number": 13,
"name": "D13",
- "displayName": "D13",
+ "displayName": "D13 (LED)",
"hasPWM": true,
- "hasServo": true,
+ "hasServo": false,
"direction": ""
},
{
@@ -2082,147 +1990,471 @@ window.jsonBoardObject = {
"direction": ""
},
{
- "number": 15,
- "name": "D15",
- "displayName": "D15",
- "hasPWM": true,
- "hasServo": true,
+ "number": 33,
+ "name": "D33",
+ "displayName": "D33 (NeoPixel)",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
- "number": 16,
- "name": "D16",
- "displayName": "D16",
+ "number": 18,
+ "name": "A18",
+ "displayName": "A0",
+ "direction": "",
"hasPWM": true,
- "hasServo": true,
- "direction": ""
+ "hasServo": true
},
{
- "number": 21,
- "name": "D21",
- "displayName": "D21",
+ "number": 17,
+ "name": "A17",
+ "displayName": "A1",
+ "direction": "",
"hasPWM": true,
- "hasServo": true,
- "direction": ""
+ "hasServo": true
},
{
- "number": 42,
- "name": "D42",
- "displayName": "Built-in LED",
+ "number": 16,
+ "name": "A16",
+ "displayName": "A2",
+ "direction": "",
"hasPWM": true,
- "hasServo": false,
- "direction": ""
+ "hasServo": true
},
{
- "number": 45,
- "name": "D45",
- "displayName": "D45 (NeoPixel)",
- "hasPWM": false,
- "hasServo": false,
- "direction": ""
+ "number": 15,
+ "name": "A15",
+ "displayName": "A3",
+ "direction": "",
+ "hasPWM": true,
+ "hasServo": true
}
],
"analogPins": [
{
- "number": 0,
- "name": "A0",
+ "number": 18,
+ "name": "A18",
"displayName": "A0",
"direction": ""
},
{
- "number": 1,
- "name": "A1",
+ "number": 17,
+ "name": "A17",
"displayName": "A1",
"direction": ""
},
{
- "number": 2,
- "name": "A2",
+ "number": 16,
+ "name": "A16",
"displayName": "A2",
"direction": ""
},
{
- "number": 3,
- "name": "A3",
+ "number": 15,
+ "name": "A15",
"displayName": "A3",
"direction": ""
},
{
- "number": 4,
- "name": "A4",
+ "number": 14,
+ "name": "A14",
"displayName": "A4",
"direction": ""
},
{
- "number": 5,
- "name": "A5",
- "displayName": "A5 (IO5)",
+ "number": 8,
+ "name": "A8",
+ "displayName": "A5",
"direction": ""
- },
+ }
+ ],
+ "defaultI2C": {
+ "i2cPortId": 0,
+ "SCL": 41,
+ "SDA": 42
+ },
+ "image": "boards/feather-esp32s3-tft/image.svg",
+ "totalAnalogPins": 6,
+ "i2cPorts": [
{
- "number": 6,
- "name": "A6",
- "displayName": "A6 (IO6)",
+ "i2cPortId": 0,
+ "SDA": 42,
+ "SCL": 41
+ }
+ ],
+ "totalGPIOPins": 20
+ },
+ "funhouse": {
+ "boardName": "funhouse",
+ "mcuName": "esp32s2",
+ "referenceVoltage": 2.6,
+ "displayName": "Adafruit Funhouse ESP32-S2",
+ "vendor": "Adafruit",
+ "productURL": "https://www.adafruit.com/product/4985",
+ "documentationURL": "https://learn.adafruit.com/adafruit-funhouse",
+ "installMethod": "web-native-usb",
+ "installBoardName": "funhouse_noota",
+ "rtc": null,
+ "sdCardCS": null,
+ "pins": [
+ {
+ "number": 5,
+ "name": "D5",
+ "displayName": "Button Up",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
- "number": 7,
- "name": "A7",
- "displayName": "A7 (IO7)",
+ "number": 3,
+ "name": "D3",
+ "displayName": "Button Down",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
- "number": 8,
- "name": "A8",
- "displayName": "A8 (IO8)",
+ "number": 4,
+ "name": "D4",
+ "displayName": "Button Select",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
- "number": 9,
- "name": "A9",
- "displayName": "A9 (IO9)",
+ "number": 17,
+ "name": "D17",
+ "displayName": "D17 (A0)",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
- "number": 10,
- "name": "A10",
- "displayName": "A10 (IO10)",
+ "number": 2,
+ "name": "D2",
+ "displayName": "D2 (A1)",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
- "number": 11,
- "name": "A11",
- "displayName": "A11 (IO11)",
+ "number": 1,
+ "name": "D1",
+ "displayName": "D1 (A2)",
+ "hasPWM": true,
+ "hasServo": true,
+ "direction": ""
+ },
+ {
+ "number": 6,
+ "name": "D6",
+ "displayName": "D6",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 7,
+ "name": "D7",
+ "displayName": "D7",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 8,
+ "name": "D8",
+ "displayName": "D8",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 9,
+ "name": "D9",
+ "displayName": "D9",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 10,
+ "name": "D10",
+ "displayName": "D10",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 11,
+ "name": "D11",
+ "displayName": "D11",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
"number": 12,
- "name": "A12",
- "displayName": "A12 (IO12)",
+ "name": "D12",
+ "displayName": "D12",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
"number": 13,
- "name": "A13",
- "displayName": "A13 (IO13)",
+ "name": "D13",
+ "displayName": "D13",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
"number": 14,
- "name": "A14",
- "displayName": "A14 (IO14)",
+ "name": "D14",
+ "displayName": "D14 (DotStar Data)",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
"number": 15,
- "name": "A15",
- "displayName": "A15 (IO15)",
+ "name": "D15",
+ "displayName": "D15 (DotStar Clock)",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
"number": 16,
- "name": "A16",
- "displayName": "A16 (IO16)",
+ "name": "D16",
+ "displayName": "PIR Sensor",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 42,
+ "name": "D42",
+ "displayName": "Speaker/Piezo",
+ "hasPWM": true,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 44,
+ "name": "D44",
+ "displayName": "D44 (UART RX)",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 43,
+ "name": "D43",
+ "displayName": "D43 (UART TX)",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 18,
+ "name": "A18",
+ "displayName": "Light Sensor",
+ "direction": "",
+ "hasPWM": true,
+ "hasServo": true
+ }
+ ],
+ "analogPins": [
+ {
+ "number": 17,
+ "name": "A17",
+ "displayName": "A0",
+ "direction": ""
+ },
+ {
+ "number": 2,
+ "name": "A2",
+ "displayName": "A1",
+ "direction": ""
+ },
+ {
+ "number": 1,
+ "name": "A1",
+ "displayName": "A2",
+ "direction": ""
+ },
+ {
+ "number": 18,
+ "name": "A18",
+ "displayName": "Light Sensor",
+ "direction": ""
+ }
+ ],
+ "defaultI2C": {
+ "i2cPortId": 0,
+ "SCL": 33,
+ "SDA": 34
+ },
+ "image": "boards/funhouse/image.svg",
+ "totalAnalogPins": 4,
+ "i2cPorts": [
+ {
+ "i2cPortId": 0,
+ "SDA": 34,
+ "SCL": 33
+ }
+ ],
+ "totalGPIOPins": 21
+ },
+ "magtag": {
+ "boardName": "magtag",
+ "mcuName": "esp32s2",
+ "referenceVoltage": 2.6,
+ "displayName": "Adafruit MagTag \"2.9\"",
+ "vendor": "Adafruit",
+ "productURL": "https://www.adafruit.com/product/4800",
+ "documentationURL": "https://learn.adafruit.com/adafruit-magtag",
+ "installMethod": "web-native-usb",
+ "installBoardName": "magtag",
+ "rtc": null,
+ "sdCardCS": null,
+ "pins": [
+ {
+ "number": 1,
+ "name": "D1",
+ "displayName": "D1 (NeoPixel)",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 15,
+ "name": "D15",
+ "displayName": "Button A",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 14,
+ "name": "D14",
+ "displayName": "Button B",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 12,
+ "name": "D12",
+ "displayName": "Button C",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 11,
+ "name": "D11",
+ "displayName": "Button D",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 10,
+ "name": "D10",
+ "displayName": "D10",
+ "hasPWM": true,
+ "hasServo": true,
+ "direction": ""
+ },
+ {
+ "number": 18,
+ "name": "D18",
+ "displayName": "D18 (A1)",
+ "hasPWM": true,
+ "hasServo": true,
+ "direction": ""
+ },
+ {
+ "number": 13,
+ "name": "D13",
+ "displayName": "Built-in LED",
+ "hasPWM": true,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 43,
+ "name": "D43",
+ "displayName": "D43 (UART TX)",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 44,
+ "name": "D44",
+ "displayName": "D44 (UART RX)",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 17,
+ "name": "A17",
+ "displayName": "Piezo Speaker (A0)",
+ "direction": "",
+ "hasPWM": true,
+ "hasServo": true
+ },
+ {
+ "number": 3,
+ "name": "A3",
+ "displayName": "Light Sensor (A3)",
+ "direction": "",
+ "hasPWM": true,
+ "hasServo": true
+ },
+ {
+ "number": 4,
+ "name": "A4",
+ "displayName": "Voltage Monitor (A4)",
+ "direction": "",
+ "hasPWM": true,
+ "hasServo": true
+ }
+ ],
+ "analogPins": [
+ {
+ "number": 17,
+ "name": "A17",
+ "displayName": "Piezo Speaker (A0)",
+ "direction": ""
+ },
+ {
+ "number": 10,
+ "name": "A10",
+ "displayName": "D10",
+ "direction": ""
+ },
+ {
+ "number": 18,
+ "name": "A18",
+ "displayName": "A1 (D18)",
+ "direction": ""
+ },
+ {
+ "number": 3,
+ "name": "A3",
+ "displayName": "Light Sensor (A3)",
+ "direction": ""
+ },
+ {
+ "number": 4,
+ "name": "A4",
+ "displayName": "Voltage Monitor (A4)",
"direction": ""
}
],
@@ -2231,8 +2463,8 @@ window.jsonBoardObject = {
"SCL": 34,
"SDA": 33
},
- "image": "boards/metroesp32s2/image.svg",
- "totalAnalogPins": 17,
+ "image": "boards/magtag/image.svg",
+ "totalAnalogPins": 5,
"i2cPorts": [
{
"i2cPortId": 0,
@@ -2240,41 +2472,33 @@ window.jsonBoardObject = {
"SCL": 34
}
],
- "totalGPIOPins": 20
+ "totalGPIOPins": 13
},
- "metroesp32s3": {
- "boardName": "metroesp32s3",
- "mcuName": "esp32s3",
+ "metroesp32s2": {
+ "boardName": "metroesp32s2",
+ "mcuName": "esp32s2",
"referenceVoltage": 2.6,
- "displayName": "Adafruit Metro ESP32-S3",
+ "displayName": "Adafruit Metro ESP32-S2",
"vendor": "Adafruit",
- "productURL": "https://www.adafruit.com/product/5500",
- "documentationURL": "https://learn.adafruit.com/adafruit-metro-esp32-s3",
- "installMethod": "uf2",
- "installBoardName": "metro_esp32s3",
+ "productURL": "https://www.adafruit.com/product/4775",
+ "documentationURL": "https://learn.adafruit.com/adafruit-metro-esp32-s2",
+ "installMethod": "web-native-usb",
+ "installBoardName": "metroesp32s2",
"rtc": null,
- "sdCardCS": 45,
+ "sdCardCS": null,
"pins": [
{
"number": 0,
"name": "D0",
- "displayName": "Built-in Button (Boot0)",
+ "displayName": "D0 (Boot0 Push Button)",
"hasPWM": false,
"hasServo": false,
"direction": "INPUT"
},
{
- "number": 40,
- "name": "D40",
- "displayName": "D1 (UART TX)",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 41,
- "name": "D41",
- "displayName": "D1 (UART RX)",
+ "number": 1,
+ "name": "D1",
+ "displayName": "D1",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -2306,7 +2530,7 @@ window.jsonBoardObject = {
{
"number": 5,
"name": "D5",
- "displayName": "D5",
+ "displayName": "D5 (UART TX)",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -2314,7 +2538,7 @@ window.jsonBoardObject = {
{
"number": 6,
"name": "D6",
- "displayName": "D6",
+ "displayName": "D6 (UART RX)",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -2370,23 +2594,7 @@ window.jsonBoardObject = {
{
"number": 13,
"name": "D13",
- "displayName": "D13 (Built-in LED)",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 47,
- "name": "D47",
- "displayName": "D47 (SDA)",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 48,
- "name": "D48",
- "displayName": "D48 (SCL)",
+ "displayName": "D13",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -2394,7 +2602,7 @@ window.jsonBoardObject = {
{
"number": 14,
"name": "D14",
- "displayName": "A0 (GPIO14)",
+ "displayName": "D14",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -2402,7 +2610,7 @@ window.jsonBoardObject = {
{
"number": 15,
"name": "D15",
- "displayName": "A1 (GPIO15)",
+ "displayName": "D15",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -2410,31 +2618,7 @@ window.jsonBoardObject = {
{
"number": 16,
"name": "D16",
- "displayName": "A2 (GPIO16)",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 17,
- "name": "D17",
- "displayName": "A3 (GPIO17)",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 18,
- "name": "D18",
- "displayName": "A4 (GPIO18)",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 1,
- "name": "D1",
- "displayName": "A5 (GPIO1)",
+ "displayName": "D16",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -2442,7 +2626,7 @@ window.jsonBoardObject = {
{
"number": 21,
"name": "D21",
- "displayName": "D21 (MISO)",
+ "displayName": "D21",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -2450,23 +2634,15 @@ window.jsonBoardObject = {
{
"number": 42,
"name": "D42",
- "displayName": "D42 (MOSI)",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 39,
- "name": "D39",
- "displayName": "D39 (SCK)",
+ "displayName": "Built-in LED",
"hasPWM": true,
- "hasServo": true,
+ "hasServo": false,
"direction": ""
},
{
- "number": 46,
- "name": "D46",
- "displayName": "D46 (NeoPixel)",
+ "number": 45,
+ "name": "D45",
+ "displayName": "D45 (NeoPixel)",
"hasPWM": false,
"hasServo": false,
"direction": ""
@@ -2474,187 +2650,181 @@ window.jsonBoardObject = {
],
"analogPins": [
{
- "number": 14,
- "name": "A14",
- "displayName": "A0 (GPIO14)",
- "direction": ""
- },
- {
- "number": 15,
- "name": "A15",
- "displayName": "A1 (GPIO15)",
- "direction": ""
- },
- {
- "number": 16,
- "name": "A16",
- "displayName": "A2 (GPIO16)",
- "direction": ""
- },
- {
- "number": 17,
- "name": "A17",
- "displayName": "A3 (GPIO17)",
- "direction": ""
- },
- {
- "number": 18,
- "name": "A18",
- "displayName": "A4 (GPIO18)",
+ "number": 0,
+ "name": "A0",
+ "displayName": "A0",
"direction": ""
},
{
"number": 1,
"name": "A1",
- "displayName": "A5 (GPIO1)",
+ "displayName": "A1",
"direction": ""
},
{
"number": 2,
"name": "A2",
- "displayName": "D2 (GPIO2)",
+ "displayName": "A2",
"direction": ""
},
{
"number": 3,
"name": "A3",
- "displayName": "D3 (GPIO3)",
+ "displayName": "A3",
"direction": ""
},
{
"number": 4,
"name": "A4",
- "displayName": "D4 (GPIO4)",
+ "displayName": "A4",
"direction": ""
},
{
"number": 5,
"name": "A5",
- "displayName": "D5 (GPIO5)",
+ "displayName": "A5 (IO5)",
"direction": ""
},
{
"number": 6,
"name": "A6",
- "displayName": "D6 (GPIO6)",
+ "displayName": "A6 (IO6)",
"direction": ""
},
{
"number": 7,
"name": "A7",
- "displayName": "D7 (GPIO7)",
+ "displayName": "A7 (IO7)",
"direction": ""
},
{
"number": 8,
"name": "A8",
- "displayName": "D8 (GPIO8)",
+ "displayName": "A8 (IO8)",
"direction": ""
},
{
"number": 9,
"name": "A9",
- "displayName": "D9 (GPIO9)",
+ "displayName": "A9 (IO9)",
"direction": ""
},
{
"number": 10,
"name": "A10",
- "displayName": "D10 (GPIO10)",
+ "displayName": "A10 (IO10)",
"direction": ""
},
{
"number": 11,
"name": "A11",
- "displayName": "D11 (GPIO11)",
+ "displayName": "A11 (IO11)",
"direction": ""
},
{
"number": 12,
"name": "A12",
- "displayName": "D12 (GPIO12)",
+ "displayName": "A12 (IO12)",
"direction": ""
},
{
"number": 13,
"name": "A13",
- "displayName": "D13 (GPIO13)",
+ "displayName": "A13 (IO13)",
+ "direction": ""
+ },
+ {
+ "number": 14,
+ "name": "A14",
+ "displayName": "A14 (IO14)",
+ "direction": ""
+ },
+ {
+ "number": 15,
+ "name": "A15",
+ "displayName": "A15 (IO15)",
+ "direction": ""
+ },
+ {
+ "number": 16,
+ "name": "A16",
+ "displayName": "A16 (IO16)",
"direction": ""
}
],
"defaultI2C": {
"i2cPortId": 0,
- "SCL": 48,
- "SDA": 47
+ "SCL": 34,
+ "SDA": 33
},
- "image": "boards/metroesp32s3/image.png",
- "totalAnalogPins": 18,
+ "image": "boards/metroesp32s2/image.svg",
+ "totalAnalogPins": 17,
"i2cPorts": [
{
"i2cPortId": 0,
- "SDA": 47,
- "SCL": 48
+ "SDA": 33,
+ "SCL": 34
}
],
- "totalGPIOPins": 27
+ "totalGPIOPins": 20
},
- "qtpy-esp32s2": {
- "boardName": "qtpy-esp32s2",
- "mcuName": "esp32s2",
+ "metroesp32s3": {
+ "boardName": "metroesp32s3",
+ "mcuName": "esp32s3",
"referenceVoltage": 2.6,
- "displayName": "Adafruit QT Py ESP32-S2",
+ "displayName": "Adafruit Metro ESP32-S3",
"vendor": "Adafruit",
- "productURL": "https://www.adafruit.com/product/5325",
- "documentationURL": "https://learn.adafruit.com/adafruit-qt-py-esp32-s2",
+ "productURL": "https://www.adafruit.com/product/5500",
+ "documentationURL": "https://learn.adafruit.com/adafruit-metro-esp32-s3",
"installMethod": "uf2",
- "installBoardName": "qtpy-esp32s2",
+ "installBoardName": "metro_esp32s3",
"rtc": null,
- "sdCardCS": null,
+ "sdCardCS": 45,
"pins": [
{
- "number": 18,
- "name": "D18",
- "displayName": "A0",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
+ "number": 0,
+ "name": "D0",
+ "displayName": "Built-in Button (Boot0)",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": "INPUT"
},
{
- "number": 17,
- "name": "D17",
- "displayName": "A1",
+ "number": 40,
+ "name": "D40",
+ "displayName": "D1 (UART TX)",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 9,
- "name": "D9",
- "displayName": "A2",
+ "number": 41,
+ "name": "D41",
+ "displayName": "D1 (UART RX)",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 8,
- "name": "D8",
- "displayName": "A3",
+ "number": 2,
+ "name": "D2",
+ "displayName": "D2",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 7,
- "name": "D7",
- "displayName": "SDA",
+ "number": 3,
+ "name": "D3",
+ "displayName": "D3",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 6,
- "name": "D6",
- "displayName": "SCL",
+ "number": 4,
+ "name": "D4",
+ "displayName": "D4",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -2662,407 +2832,347 @@ window.jsonBoardObject = {
{
"number": 5,
"name": "D5",
- "displayName": "D5 (UART TX)",
+ "displayName": "D5",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 35,
- "name": "D35",
- "displayName": "MOSI",
+ "number": 6,
+ "name": "D6",
+ "displayName": "D6",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 37,
- "name": "D37",
- "displayName": "MISO",
+ "number": 7,
+ "name": "D7",
+ "displayName": "D7",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 36,
- "name": "D36",
- "displayName": "SCK",
+ "number": 8,
+ "name": "D8",
+ "displayName": "D8",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 16,
- "name": "D16",
- "displayName": "D16 (UART RX)",
+ "number": 9,
+ "name": "D9",
+ "displayName": "D9",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 0,
- "name": "D0",
- "displayName": "Boot Pushbutton",
- "hasPWM": false,
- "hasServo": false,
- "direction": "INPUT"
- },
- {
- "number": 39,
- "name": "D39",
- "displayName": "D39 (NeoPixel)",
- "hasPWM": false,
- "hasServo": false,
+ "number": 10,
+ "name": "D10",
+ "displayName": "D10",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
- }
- ],
- "analogPins": [
+ },
{
- "number": 18,
- "name": "A18",
- "displayName": "A0",
+ "number": 11,
+ "name": "D11",
+ "displayName": "D11",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
- "number": 17,
- "name": "A17",
- "displayName": "A1",
+ "number": 12,
+ "name": "D12",
+ "displayName": "D12",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
- "number": 9,
- "name": "A9",
- "displayName": "A2",
+ "number": 13,
+ "name": "D13",
+ "displayName": "D13 (Built-in LED)",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
- "number": 8,
- "name": "A8",
- "displayName": "A3",
+ "number": 47,
+ "name": "D47",
+ "displayName": "D47 (SDA)",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
- "number": 7,
- "name": "A7",
- "displayName": "SDA",
+ "number": 48,
+ "name": "D48",
+ "displayName": "D48 (SCL)",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
- "number": 6,
- "name": "A6",
- "displayName": "SCL",
+ "number": 14,
+ "name": "D14",
+ "displayName": "A0 (GPIO14)",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
- "number": 5,
- "name": "A5",
- "displayName": "A5 (UART TX)",
+ "number": 15,
+ "name": "D15",
+ "displayName": "A1 (GPIO15)",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
"number": 16,
- "name": "A16",
- "displayName": "A16 (UART RX)",
- "direction": ""
- }
- ],
- "defaultI2C": {
- "i2cPortId": 0,
- "SCL": 40,
- "SDA": 41
- },
- "image": "boards/qtpy-esp32s2/image.svg",
- "totalAnalogPins": 8,
- "i2cPorts": [
- {
- "i2cPortId": 0,
- "SDA": 41,
- "SCL": 40
- }
- ],
- "totalGPIOPins": 13
- },
- "funhouse": {
- "boardName": "funhouse",
- "mcuName": "esp32s2",
- "referenceVoltage": 2.6,
- "displayName": "Adafruit Funhouse ESP32-S2",
- "vendor": "Adafruit",
- "productURL": "https://www.adafruit.com/product/4985",
- "documentationURL": "https://learn.adafruit.com/adafruit-funhouse",
- "installMethod": "web-native-usb",
- "installBoardName": "funhouse_noota",
- "rtc": null,
- "sdCardCS": null,
- "pins": [
- {
- "number": 5,
- "name": "D5",
- "displayName": "Button Up",
- "hasPWM": false,
- "hasServo": false,
+ "name": "D16",
+ "displayName": "A2 (GPIO16)",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
- "number": 3,
- "name": "D3",
- "displayName": "Button Down",
- "hasPWM": false,
- "hasServo": false,
+ "number": 17,
+ "name": "D17",
+ "displayName": "A3 (GPIO17)",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
- "number": 4,
- "name": "D4",
- "displayName": "Button Select",
- "hasPWM": false,
- "hasServo": false,
+ "number": 18,
+ "name": "D18",
+ "displayName": "A4 (GPIO18)",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
- "number": 17,
- "name": "D17",
- "displayName": "D17 (A0)",
+ "number": 1,
+ "name": "D1",
+ "displayName": "A5 (GPIO1)",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 2,
- "name": "D2",
- "displayName": "D2 (A1)",
+ "number": 21,
+ "name": "D21",
+ "displayName": "D21 (MISO)",
+ "hasPWM": true,
+ "hasServo": true,
+ "direction": ""
+ },
+ {
+ "number": 42,
+ "name": "D42",
+ "displayName": "D42 (MOSI)",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 1,
- "name": "D1",
- "displayName": "D1 (A2)",
+ "number": 39,
+ "name": "D39",
+ "displayName": "D39 (SCK)",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 6,
- "name": "D6",
- "displayName": "D6",
+ "number": 46,
+ "name": "D46",
+ "displayName": "D46 (NeoPixel)",
"hasPWM": false,
"hasServo": false,
"direction": ""
- },
+ }
+ ],
+ "analogPins": [
{
- "number": 7,
- "name": "D7",
- "displayName": "D7",
- "hasPWM": false,
- "hasServo": false,
+ "number": 14,
+ "name": "A14",
+ "displayName": "A0 (GPIO14)",
"direction": ""
},
{
- "number": 8,
- "name": "D8",
- "displayName": "D8",
- "hasPWM": false,
- "hasServo": false,
+ "number": 15,
+ "name": "A15",
+ "displayName": "A1 (GPIO15)",
"direction": ""
},
{
- "number": 9,
- "name": "D9",
- "displayName": "D9",
- "hasPWM": false,
- "hasServo": false,
+ "number": 16,
+ "name": "A16",
+ "displayName": "A2 (GPIO16)",
"direction": ""
},
{
- "number": 10,
- "name": "D10",
- "displayName": "D10",
- "hasPWM": false,
- "hasServo": false,
+ "number": 17,
+ "name": "A17",
+ "displayName": "A3 (GPIO17)",
"direction": ""
},
{
- "number": 11,
- "name": "D11",
- "displayName": "D11",
- "hasPWM": false,
- "hasServo": false,
+ "number": 18,
+ "name": "A18",
+ "displayName": "A4 (GPIO18)",
"direction": ""
},
{
- "number": 12,
- "name": "D12",
- "displayName": "D12",
- "hasPWM": false,
- "hasServo": false,
+ "number": 1,
+ "name": "A1",
+ "displayName": "A5 (GPIO1)",
"direction": ""
},
{
- "number": 13,
- "name": "D13",
- "displayName": "D13",
- "hasPWM": false,
- "hasServo": false,
+ "number": 2,
+ "name": "A2",
+ "displayName": "D2 (GPIO2)",
"direction": ""
},
{
- "number": 14,
- "name": "D14",
- "displayName": "D14 (DotStar Data)",
- "hasPWM": false,
- "hasServo": false,
+ "number": 3,
+ "name": "A3",
+ "displayName": "D3 (GPIO3)",
"direction": ""
},
{
- "number": 15,
- "name": "D15",
- "displayName": "D15 (DotStar Clock)",
- "hasPWM": false,
- "hasServo": false,
+ "number": 4,
+ "name": "A4",
+ "displayName": "D4 (GPIO4)",
"direction": ""
},
{
- "number": 16,
- "name": "D16",
- "displayName": "PIR Sensor",
- "hasPWM": false,
- "hasServo": false,
+ "number": 5,
+ "name": "A5",
+ "displayName": "D5 (GPIO5)",
"direction": ""
},
{
- "number": 42,
- "name": "D42",
- "displayName": "Speaker/Piezo",
- "hasPWM": true,
- "hasServo": false,
+ "number": 6,
+ "name": "A6",
+ "displayName": "D6 (GPIO6)",
"direction": ""
},
{
- "number": 44,
- "name": "D44",
- "displayName": "D44 (UART RX)",
- "hasPWM": false,
- "hasServo": false,
+ "number": 7,
+ "name": "A7",
+ "displayName": "D7 (GPIO7)",
"direction": ""
},
{
- "number": 43,
- "name": "D43",
- "displayName": "D43 (UART TX)",
- "hasPWM": false,
- "hasServo": false,
+ "number": 8,
+ "name": "A8",
+ "displayName": "D8 (GPIO8)",
"direction": ""
},
{
- "number": 18,
- "name": "A18",
- "displayName": "Light Sensor",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
- }
- ],
- "analogPins": [
+ "number": 9,
+ "name": "A9",
+ "displayName": "D9 (GPIO9)",
+ "direction": ""
+ },
{
- "number": 17,
- "name": "A17",
- "displayName": "A0",
+ "number": 10,
+ "name": "A10",
+ "displayName": "D10 (GPIO10)",
"direction": ""
},
{
- "number": 2,
- "name": "A2",
- "displayName": "A1",
+ "number": 11,
+ "name": "A11",
+ "displayName": "D11 (GPIO11)",
"direction": ""
},
{
- "number": 1,
- "name": "A1",
- "displayName": "A2",
+ "number": 12,
+ "name": "A12",
+ "displayName": "D12 (GPIO12)",
"direction": ""
},
{
- "number": 18,
- "name": "A18",
- "displayName": "Light Sensor",
+ "number": 13,
+ "name": "A13",
+ "displayName": "D13 (GPIO13)",
"direction": ""
}
],
"defaultI2C": {
"i2cPortId": 0,
- "SCL": 33,
- "SDA": 34
+ "SCL": 48,
+ "SDA": 47
},
- "image": "boards/funhouse/image.svg",
- "totalAnalogPins": 4,
+ "image": "boards/metroesp32s3/image.png",
+ "totalAnalogPins": 18,
"i2cPorts": [
{
"i2cPortId": 0,
- "SDA": 34,
- "SCL": 33
+ "SDA": 47,
+ "SCL": 48
}
],
- "totalGPIOPins": 21
+ "totalGPIOPins": 27
},
- "feather-esp32s2-tft": {
- "boardName": "feather-esp32s2-tft",
+ "qtpy-esp32s2": {
+ "boardName": "qtpy-esp32s2",
"mcuName": "esp32s2",
"referenceVoltage": 2.6,
- "displayName": "Adafruit ESP32-S2 TFT Feather",
+ "displayName": "Adafruit QT Py ESP32-S2",
"vendor": "Adafruit",
- "productURL": "https://www.adafruit.com/product/5300",
- "documentationURL": "https://learn.adafruit.com/adafruit-esp32-s2-tft-feather",
- "installMethod": "uf2",
- "installBoardName": "feather-esp32s2-tft",
+ "productURL": "https://www.adafruit.com/product/5325",
+ "documentationURL": "https://learn.adafruit.com/adafruit-qt-py-esp32-s2",
+ "installMethod": "web-native-usb",
+ "installBoardName": "qtpy-esp32s2",
"rtc": null,
"sdCardCS": null,
"pins": [
{
- "number": 0,
- "name": "D0",
- "displayName": "D0 (Boot Push Button)",
- "hasPWM": false,
- "hasServo": false,
- "direction": "INPUT"
- },
- {
- "number": 1,
- "name": "D1",
- "displayName": "D1 (UART TX)",
+ "number": 18,
+ "name": "D18",
+ "displayName": "A0",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 2,
- "name": "D2",
- "displayName": "D2 (UART RX)",
+ "number": 17,
+ "name": "D17",
+ "displayName": "A1",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 3,
- "name": "D3",
- "displayName": "D3",
+ "number": 9,
+ "name": "D9",
+ "displayName": "A2",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 4,
- "name": "D4",
- "displayName": "D4",
+ "number": 8,
+ "name": "D8",
+ "displayName": "A3",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 5,
- "name": "D5",
- "displayName": "D5",
+ "number": 7,
+ "name": "D7",
+ "displayName": "SDA",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3070,227 +3180,159 @@ window.jsonBoardObject = {
{
"number": 6,
"name": "D6",
- "displayName": "D6",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 9,
- "name": "D9",
- "displayName": "D9",
+ "displayName": "SCL",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 10,
- "name": "D10",
- "displayName": "D10",
+ "number": 5,
+ "name": "D5",
+ "displayName": "D5 (UART TX)",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 11,
- "name": "D11",
- "displayName": "D11",
+ "number": 35,
+ "name": "D35",
+ "displayName": "MOSI",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 12,
- "name": "D12",
- "displayName": "D12",
+ "number": 37,
+ "name": "D37",
+ "displayName": "MISO",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 13,
- "name": "D13",
- "displayName": "D13 (LED)",
+ "number": 36,
+ "name": "D36",
+ "displayName": "SCK",
"hasPWM": true,
- "hasServo": false,
+ "hasServo": true,
"direction": ""
},
{
- "number": 33,
- "name": "D33",
- "displayName": "D33 (NeoPixel)",
- "hasPWM": false,
- "hasServo": false,
+ "number": 16,
+ "name": "D16",
+ "displayName": "D16 (UART RX)",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
- "number": 38,
- "name": "D38",
- "displayName": "D38 (UART RX)",
+ "number": 0,
+ "name": "D0",
+ "displayName": "Boot Pushbutton",
"hasPWM": false,
"hasServo": false,
- "direction": ""
+ "direction": "INPUT"
},
{
"number": 39,
"name": "D39",
- "displayName": "D39 (UART TX)",
+ "displayName": "D39 (NeoPixel)",
"hasPWM": false,
"hasServo": false,
"direction": ""
- },
+ }
+ ],
+ "analogPins": [
{
"number": 18,
"name": "A18",
"displayName": "A0",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
+ "direction": ""
},
{
"number": 17,
"name": "A17",
"displayName": "A1",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
+ "direction": ""
},
{
- "number": 16,
- "name": "A16",
+ "number": 9,
+ "name": "A9",
"displayName": "A2",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
- },
- {
- "number": 15,
- "name": "A15",
- "displayName": "A3",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
- },
- {
- "number": 14,
- "name": "A14",
- "displayName": "A4",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
+ "direction": ""
},
{
"number": 8,
"name": "A8",
- "displayName": "A5",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
- }
- ],
- "analogPins": [
- {
- "number": 18,
- "name": "A18",
- "displayName": "A0",
- "direction": ""
- },
- {
- "number": 17,
- "name": "A17",
- "displayName": "A1",
+ "displayName": "A3",
"direction": ""
},
{
- "number": 16,
- "name": "A16",
- "displayName": "A2",
+ "number": 7,
+ "name": "A7",
+ "displayName": "SDA",
"direction": ""
},
{
- "number": 15,
- "name": "A15",
- "displayName": "A3",
+ "number": 6,
+ "name": "A6",
+ "displayName": "SCL",
"direction": ""
},
{
- "number": 14,
- "name": "A14",
- "displayName": "A4",
+ "number": 5,
+ "name": "A5",
+ "displayName": "A5 (UART TX)",
"direction": ""
},
{
- "number": 8,
- "name": "A8",
- "displayName": "A5",
+ "number": 16,
+ "name": "A16",
+ "displayName": "A16 (UART RX)",
"direction": ""
}
],
"defaultI2C": {
"i2cPortId": 0,
- "SCL": 41,
- "SDA": 42
+ "SCL": 40,
+ "SDA": 41
},
- "image": "boards/feather-esp32s2-tft/image.svg",
- "totalAnalogPins": 6,
+ "image": "boards/qtpy-esp32s2/image.svg",
+ "totalAnalogPins": 8,
"i2cPorts": [
{
"i2cPortId": 0,
- "SDA": 42,
- "SCL": 41
+ "SDA": 41,
+ "SCL": 40
}
],
- "totalGPIOPins": 21
+ "totalGPIOPins": 13
},
- "feather-esp32s3-reverse-tft": {
- "boardName": "feather-esp32s3-reverse-tft",
+ "qtpy-esp32s3": {
+ "boardName": "qtpy-esp32s3",
"mcuName": "esp32s3",
"referenceVoltage": 2.6,
- "displayName": "ESP32-S3 Reverse TFT Feather",
+ "displayName": "Adafruit QT Py ESP32-S3 (NO PSRAM)",
"vendor": "Adafruit",
- "productURL": "https://www.adafruit.com/product/5691",
- "documentationURL": "https://learn.adafruit.com/esp32-s3-reverse-tft-feather",
+ "productURL": "https://www.adafruit.com/product/5426",
+ "documentationURL": "https://learn.adafruit.com/adafruit-qt-py-esp32-s3",
"installMethod": "uf2",
- "installBoardName": "feather-esp32s3-reverse-tft",
+ "installBoardName": "qtpy-esp32s3",
"rtc": null,
"sdCardCS": null,
"pins": [
{
- "number": 0,
- "name": "D0",
- "displayName": "D0 (Boot Push Button)",
- "hasPWM": false,
- "hasServo": false,
- "direction": "INPUT"
- },
- {
- "number": 1,
- "name": "D1",
- "displayName": "D1 Push Button",
- "hasPWM": false,
- "hasServo": false,
- "direction": ""
- },
- {
- "number": 2,
- "name": "D2",
- "displayName": "D2 Push Button",
- "hasPWM": false,
- "hasServo": false,
- "direction": ""
- },
- {
- "number": 5,
- "name": "D5",
- "displayName": "D5",
+ "number": 18,
+ "name": "D18",
+ "displayName": "A0",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 6,
- "name": "D6",
- "displayName": "D6",
+ "number": 17,
+ "name": "D17",
+ "displayName": "A1",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3298,114 +3340,90 @@ window.jsonBoardObject = {
{
"number": 9,
"name": "D9",
- "displayName": "D9",
+ "displayName": "A2",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 10,
- "name": "D10",
- "displayName": "D10",
+ "number": 8,
+ "name": "D8",
+ "displayName": "A3",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 11,
- "name": "D11",
- "displayName": "D11",
+ "number": 7,
+ "name": "D7",
+ "displayName": "SDA",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 12,
- "name": "D12",
- "displayName": "D12",
+ "number": 6,
+ "name": "D6",
+ "displayName": "SCL",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 13,
- "name": "D13",
- "displayName": "D13 (LED)",
+ "number": 5,
+ "name": "D5",
+ "displayName": "D5 (UART TX)",
"hasPWM": true,
- "hasServo": false,
- "direction": ""
- },
- {
- "number": 33,
- "name": "D33",
- "displayName": "D33 (NeoPixel)",
- "hasPWM": false,
- "hasServo": false,
- "direction": ""
- },
- {
- "number": 38,
- "name": "D38",
- "displayName": "D38 (UART RX)",
- "hasPWM": false,
- "hasServo": false,
+ "hasServo": true,
"direction": ""
},
{
- "number": 39,
- "name": "D39",
- "displayName": "D39 (UART TX)",
- "hasPWM": false,
- "hasServo": false,
+ "number": 35,
+ "name": "D35",
+ "displayName": "MOSI",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
- "number": 18,
- "name": "A18",
- "displayName": "A0",
- "direction": "",
+ "number": 37,
+ "name": "D37",
+ "displayName": "MISO",
"hasPWM": true,
- "hasServo": true
+ "hasServo": true,
+ "direction": ""
},
{
- "number": 17,
- "name": "A17",
- "displayName": "A1",
- "direction": "",
+ "number": 36,
+ "name": "D36",
+ "displayName": "SCK",
"hasPWM": true,
- "hasServo": true
+ "hasServo": true,
+ "direction": ""
},
{
"number": 16,
- "name": "A16",
- "displayName": "A2",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
- },
- {
- "number": 15,
- "name": "A15",
- "displayName": "A3",
- "direction": "",
+ "name": "D16",
+ "displayName": "D16 (UART RX)",
"hasPWM": true,
- "hasServo": true
+ "hasServo": true,
+ "direction": ""
},
{
- "number": 14,
- "name": "A14",
- "displayName": "A4",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
+ "number": 0,
+ "name": "D0",
+ "displayName": "Boot Pushbutton",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": "INPUT"
},
{
- "number": 8,
- "name": "A8",
- "displayName": "A5",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
+ "number": 39,
+ "name": "D39",
+ "displayName": "D39 (NeoPixel)",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
}
],
"analogPins": [
@@ -3422,111 +3440,99 @@ window.jsonBoardObject = {
"direction": ""
},
{
- "number": 16,
- "name": "A16",
+ "number": 9,
+ "name": "A9",
"displayName": "A2",
"direction": ""
},
{
- "number": 15,
- "name": "A15",
+ "number": 8,
+ "name": "A8",
"displayName": "A3",
"direction": ""
},
{
- "number": 14,
- "name": "A14",
- "displayName": "A4",
+ "number": 7,
+ "name": "A7",
+ "displayName": "SDA",
"direction": ""
},
{
- "number": 8,
- "name": "A8",
- "displayName": "A5",
+ "number": 6,
+ "name": "A6",
+ "displayName": "SCL",
+ "direction": ""
+ },
+ {
+ "number": 5,
+ "name": "A5",
+ "displayName": "A5 (UART TX)",
+ "direction": ""
+ },
+ {
+ "number": 16,
+ "name": "A16",
+ "displayName": "A16 (UART RX)",
"direction": ""
}
],
"defaultI2C": {
"i2cPortId": 0,
- "SCL": 4,
- "SDA": 3
+ "SCL": 40,
+ "SDA": 41
},
- "image": "boards/feather-esp32s3-reverse-tft/image.svg",
- "totalAnalogPins": 6,
+ "image": "boards/qtpy-esp32s3/image.svg",
+ "totalAnalogPins": 8,
"i2cPorts": [
{
"i2cPortId": 0,
- "SDA": 3,
- "SCL": 4
+ "SDA": 41,
+ "SCL": 40
}
],
- "totalGPIOPins": 19
+ "totalGPIOPins": 13
},
- "feather-esp32s3-4mbflash-2mbpsram": {
- "boardName": "feather-esp32s3-4mbflash-2mbpsram",
+ "qtpy-esp32s3-n4r2": {
+ "boardName": "qtpy-esp32s3-n4r2",
"mcuName": "esp32s3",
"referenceVoltage": 2.6,
- "displayName": "Adafruit ESP32-S3 Feather with 4MB Flash 2MB PSRAM",
+ "displayName": "Adafruit QT Py S3 (2MB PSRAM)",
"vendor": "Adafruit",
- "productURL": "https://www.adafruit.com/product/5477",
- "documentationURL": "https://learn.adafruit.com/adafruit-esp32-s3-feather",
- "installMethod": "uf2",
- "installBoardName": "feather-esp32s3-4mbflash-2mbpsram",
+ "productURL": "https://www.adafruit.com/product/5700",
+ "documentationURL": "https://learn.adafruit.com/adafruit-qt-py-esp32-s3",
+ "installMethod": "web-native-usb",
+ "installBoardName": "qtpy-esp32s3-n4r2",
"rtc": null,
"sdCardCS": null,
"pins": [
{
- "number": 0,
- "name": "D0",
- "displayName": "D0 (Boot Push Button)",
- "hasPWM": false,
- "hasServo": false,
- "direction": "INPUT"
- },
- {
- "number": 1,
- "name": "D1",
- "displayName": "D1",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 2,
- "name": "D2",
- "displayName": "D2",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 3,
- "name": "D3",
- "displayName": "D3",
+ "number": 18,
+ "name": "D18",
+ "displayName": "A0",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 4,
- "name": "D4",
- "displayName": "D4",
+ "number": 17,
+ "name": "D17",
+ "displayName": "A1",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 5,
- "name": "D5",
- "displayName": "D5",
+ "number": 9,
+ "name": "D9",
+ "displayName": "A2",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 6,
- "name": "D6",
- "displayName": "D6",
+ "number": 8,
+ "name": "D8",
+ "displayName": "A3",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3534,122 +3540,74 @@ window.jsonBoardObject = {
{
"number": 7,
"name": "D7",
- "displayName": "D7",
+ "displayName": "SDA",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 8,
- "name": "D8",
- "displayName": "D8",
+ "number": 6,
+ "name": "D6",
+ "displayName": "SCL",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 9,
- "name": "D9",
- "displayName": "D9",
+ "number": 5,
+ "name": "D5",
+ "displayName": "D5 (UART TX)",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 10,
- "name": "D10",
- "displayName": "D10",
+ "number": 35,
+ "name": "D35",
+ "displayName": "MOSI",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 11,
- "name": "D11",
- "displayName": "D11",
+ "number": 37,
+ "name": "D37",
+ "displayName": "MISO",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 12,
- "name": "D12",
- "displayName": "D12",
+ "number": 36,
+ "name": "D36",
+ "displayName": "SCK",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 13,
- "name": "D13",
- "displayName": "D13 (LED)",
- "hasPWM": true,
- "hasServo": false,
- "direction": ""
- },
- {
- "number": 14,
- "name": "D14",
- "displayName": "D14",
+ "number": 16,
+ "name": "D16",
+ "displayName": "D16 (UART RX)",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 33,
- "name": "D33",
- "displayName": "D33 (NeoPixel)",
- "hasPWM": false,
- "hasServo": false,
- "direction": ""
- },
- {
- "number": 38,
- "name": "D38",
- "displayName": "D38 (UART RX)",
+ "number": 0,
+ "name": "D0",
+ "displayName": "Boot Pushbutton",
"hasPWM": false,
"hasServo": false,
- "direction": ""
+ "direction": "INPUT"
},
{
"number": 39,
"name": "D39",
- "displayName": "D39 (UART TX)",
+ "displayName": "D39 (NeoPixel)",
"hasPWM": false,
"hasServo": false,
"direction": ""
- },
- {
- "number": 18,
- "name": "A18",
- "displayName": "A0",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
- },
- {
- "number": 17,
- "name": "A17",
- "displayName": "A1",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
- },
- {
- "number": 16,
- "name": "A16",
- "displayName": "A2",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
- },
- {
- "number": 15,
- "name": "A15",
- "displayName": "A3",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
}
],
"analogPins": [
@@ -3666,63 +3624,75 @@ window.jsonBoardObject = {
"direction": ""
},
{
- "number": 16,
- "name": "A16",
+ "number": 9,
+ "name": "A9",
"displayName": "A2",
"direction": ""
},
{
- "number": 15,
- "name": "A15",
+ "number": 8,
+ "name": "A8",
"displayName": "A3",
"direction": ""
},
{
- "number": 14,
- "name": "A14",
- "displayName": "A4",
+ "number": 7,
+ "name": "A7",
+ "displayName": "SDA",
+ "direction": ""
+ },
+ {
+ "number": 6,
+ "name": "A6",
+ "displayName": "SCL",
+ "direction": ""
+ },
+ {
+ "number": 5,
+ "name": "A5",
+ "displayName": "A5 (UART TX)",
"direction": ""
},
{
- "number": 8,
- "name": "A8",
- "displayName": "A5",
+ "number": 16,
+ "name": "A16",
+ "displayName": "A16 (UART RX)",
"direction": ""
}
],
"defaultI2C": {
"i2cPortId": 0,
- "SCL": 4,
- "SDA": 3
+ "SCL": 40,
+ "SDA": 41
},
- "image": "boards/feather-esp32s3-4mbflash-2mbpsram/image.svg",
- "totalAnalogPins": 6,
+ "image": "boards/qtpy-esp32s3-n4r2/image.svg",
+ "totalAnalogPins": 8,
"i2cPorts": [
{
"i2cPortId": 0,
- "SDA": 3,
- "SCL": 4
+ "SDA": 41,
+ "SCL": 40
}
],
- "totalGPIOPins": 22
+ "totalGPIOPins": 13
},
- "metro-rp2350": {
- "boardName": "metro-rp2350",
+ "rpi-pico-2w": {
+ "boardName": "rpi-pico-2w",
"mcuName": "rp2350",
"referenceVoltage": 3.3,
- "displayName": "Adafruit Metro RP2350",
- "vendor": "Adafruit",
- "productURL": "https://www.adafruit.com/product/6003",
- "documentationURL": "https://learn.adafruit.com/adafruit-metro-rp2350",
+ "displayName": "Raspberry Pi Pico 2W",
+ "vendor": "Raspberry Pi",
+ "productURL": "https://www.adafruit.com/product/6087",
+ "documentationURL": "https://learn.adafruit.com/quick-start-the-pico-w-with-wippersnapper/overview",
"installMethod": "uf2",
- "installBoardName": "metro_rp2350_tinyusb",
+ "installBoardName": "picow_rp2350_tinyusb",
"rtc": null,
- "sdCardCS": 34,
+ "sdCardCS": null,
"pins": [
{
"number": 0,
"name": "D0",
- "displayName": "D0 (GP0, UART TX)",
+ "displayName": "GP0 (UART TX)",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3730,7 +3700,7 @@ window.jsonBoardObject = {
{
"number": 1,
"name": "D1",
- "displayName": "D1 (GP1, UART RX)",
+ "displayName": "GP1 (UART RX)",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3738,7 +3708,7 @@ window.jsonBoardObject = {
{
"number": 2,
"name": "D2",
- "displayName": "D2 (GP2)",
+ "displayName": "GP2",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3746,7 +3716,7 @@ window.jsonBoardObject = {
{
"number": 3,
"name": "D3",
- "displayName": "D3 (GP3)",
+ "displayName": "GP3",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3754,7 +3724,7 @@ window.jsonBoardObject = {
{
"number": 4,
"name": "D4",
- "displayName": "D4 (GP4)",
+ "displayName": "GP4",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3762,7 +3732,7 @@ window.jsonBoardObject = {
{
"number": 5,
"name": "D5",
- "displayName": "D5 (GP5)",
+ "displayName": "GP5",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3770,7 +3740,7 @@ window.jsonBoardObject = {
{
"number": 6,
"name": "D6",
- "displayName": "D6 (GP6)",
+ "displayName": "GP6",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3778,7 +3748,7 @@ window.jsonBoardObject = {
{
"number": 7,
"name": "D7",
- "displayName": "D7 (GP7)",
+ "displayName": "GP7",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3786,7 +3756,7 @@ window.jsonBoardObject = {
{
"number": 8,
"name": "D8",
- "displayName": "D8 (GP8)",
+ "displayName": "GP8",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3794,7 +3764,7 @@ window.jsonBoardObject = {
{
"number": 9,
"name": "D9",
- "displayName": "D9 (GP9)",
+ "displayName": "GP9",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3802,7 +3772,7 @@ window.jsonBoardObject = {
{
"number": 10,
"name": "D10",
- "displayName": "D10 (GP10)",
+ "displayName": "GP10",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3810,7 +3780,7 @@ window.jsonBoardObject = {
{
"number": 11,
"name": "D11",
- "displayName": "D11 (GP11)",
+ "displayName": "GP11",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3818,7 +3788,7 @@ window.jsonBoardObject = {
{
"number": 12,
"name": "D12",
- "displayName": "D12 (GP12)",
+ "displayName": "GP12",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3826,7 +3796,7 @@ window.jsonBoardObject = {
{
"number": 13,
"name": "D13",
- "displayName": "D13 (GP13)",
+ "displayName": "GP13",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3834,7 +3804,7 @@ window.jsonBoardObject = {
{
"number": 14,
"name": "D14",
- "displayName": "D14 (GP14)",
+ "displayName": "GP14",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3842,7 +3812,7 @@ window.jsonBoardObject = {
{
"number": 15,
"name": "D15",
- "displayName": "D15 (GP15)",
+ "displayName": "GP15",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3850,7 +3820,7 @@ window.jsonBoardObject = {
{
"number": 16,
"name": "D16",
- "displayName": "D16 (GP16)",
+ "displayName": "GP16",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3858,7 +3828,7 @@ window.jsonBoardObject = {
{
"number": 17,
"name": "D17",
- "displayName": "D17 (GP17)",
+ "displayName": "GP17",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3866,7 +3836,7 @@ window.jsonBoardObject = {
{
"number": 18,
"name": "D18",
- "displayName": "D18 (GP18)",
+ "displayName": "GP18",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3874,7 +3844,7 @@ window.jsonBoardObject = {
{
"number": 19,
"name": "D19",
- "displayName": "D19 (GP19)",
+ "displayName": "GP19",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3882,7 +3852,7 @@ window.jsonBoardObject = {
{
"number": 20,
"name": "D20",
- "displayName": "D20 (GP20, SDA)",
+ "displayName": "GP20",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3890,7 +3860,7 @@ window.jsonBoardObject = {
{
"number": 21,
"name": "D21",
- "displayName": "D21 (GP21, SCL)",
+ "displayName": "GP21",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3898,7 +3868,7 @@ window.jsonBoardObject = {
{
"number": 22,
"name": "D22",
- "displayName": "D22 (GP22, SPI0 SCK)",
+ "displayName": "GP22",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3906,7 +3876,7 @@ window.jsonBoardObject = {
{
"number": 23,
"name": "D23",
- "displayName": "D23 (GP23, RED LED)",
+ "displayName": "GP23",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3914,7 +3884,7 @@ window.jsonBoardObject = {
{
"number": 24,
"name": "D24",
- "displayName": "D24 (GP24, BOOT)",
+ "displayName": "GP24",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3922,322 +3892,104 @@ window.jsonBoardObject = {
{
"number": 25,
"name": "D25",
- "displayName": "D25 (GP25, NeoPixel)",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 28,
- "name": "D28",
- "displayName": "D28 (GP28, SPI MISO)",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 30,
- "name": "D30",
- "displayName": "D30 (GP30, SPI SCK)",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 31,
- "name": "D31",
- "displayName": "D31 (GP31, SPI MOSI)",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 34,
- "name": "D34",
- "displayName": "D34 (GP34, SD Card CS)",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 41,
- "name": "A41",
- "displayName": "A0 (GP41)",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
- },
- {
- "number": 42,
- "name": "A42",
- "displayName": "A1 (GP42)",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
- },
- {
- "number": 43,
- "name": "A43",
- "displayName": "A2 (GP43)",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
- },
- {
- "number": 44,
- "name": "A44",
- "displayName": "A3 (GP44)",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
- },
- {
- "number": 45,
- "name": "A45",
- "displayName": "A4 (GP45)",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
- },
- {
- "number": 46,
- "name": "A46",
- "displayName": "A5 (GP46)",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
- }
- ],
- "analogPins": [
- {
- "number": 41,
- "name": "A41",
- "displayName": "A0 (GP41)",
- "direction": ""
- },
- {
- "number": 42,
- "name": "A42",
- "displayName": "A1 (GP42)",
- "direction": ""
- },
- {
- "number": 43,
- "name": "A43",
- "displayName": "A2 (GP43)",
- "direction": ""
- },
- {
- "number": 44,
- "name": "A44",
- "displayName": "A3 (GP44)",
- "direction": ""
- },
- {
- "number": 45,
- "name": "A45",
- "displayName": "A4 (GP45)",
- "direction": ""
- },
- {
- "number": 46,
- "name": "A46",
- "displayName": "A5 (GP46)",
- "direction": ""
- }
- ],
- "defaultI2C": {
- "i2cPortId": 0,
- "SCL": 21,
- "SDA": 20
- },
- "image": "https://cdn-shop.adafruit.com/640x480/6003-06.jpg",
- "totalAnalogPins": 6,
- "i2cPorts": [
- {
- "i2cPortId": 0,
- "SDA": 20,
- "SCL": 21
- }
- ],
- "totalGPIOPins": 36
- },
- "magtag": {
- "boardName": "magtag",
- "mcuName": "esp32s2",
- "referenceVoltage": 2.6,
- "displayName": "Adafruit MagTag \"2.9\"",
- "vendor": "Adafruit",
- "productURL": "https://www.adafruit.com/product/4800",
- "documentationURL": "https://learn.adafruit.com/adafruit-magtag",
- "installMethod": "uf2",
- "installBoardName": "magtag",
- "rtc": null,
- "sdCardCS": null,
- "pins": [
- {
- "number": 1,
- "name": "D1",
- "displayName": "D1 (NeoPixel)",
- "hasPWM": false,
- "hasServo": false,
- "direction": ""
- },
- {
- "number": 15,
- "name": "D15",
- "displayName": "Button A",
- "hasPWM": false,
- "hasServo": false,
- "direction": ""
- },
- {
- "number": 14,
- "name": "D14",
- "displayName": "Button B",
- "hasPWM": false,
- "hasServo": false,
- "direction": ""
- },
- {
- "number": 12,
- "name": "D12",
- "displayName": "Button C",
- "hasPWM": false,
- "hasServo": false,
- "direction": ""
- },
- {
- "number": 11,
- "name": "D11",
- "displayName": "Button D",
- "hasPWM": false,
- "hasServo": false,
- "direction": ""
- },
- {
- "number": 10,
- "name": "D10",
- "displayName": "D10",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 18,
- "name": "D18",
- "displayName": "D18 (A1)",
+ "displayName": "GP25",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 13,
- "name": "D13",
- "displayName": "Built-in LED",
+ "number": 26,
+ "name": "D26",
+ "displayName": "GP26",
"hasPWM": true,
- "hasServo": false,
- "direction": ""
- },
- {
- "number": 43,
- "name": "D43",
- "displayName": "D43 (UART TX)",
- "hasPWM": false,
- "hasServo": false,
- "direction": ""
- },
- {
- "number": 44,
- "name": "D44",
- "displayName": "D44 (UART RX)",
- "hasPWM": false,
- "hasServo": false,
+ "hasServo": true,
"direction": ""
},
{
- "number": 17,
- "name": "A17",
- "displayName": "Piezo Speaker (A0)",
- "direction": "",
+ "number": 27,
+ "name": "D27",
+ "displayName": "GP27",
"hasPWM": true,
- "hasServo": true
+ "hasServo": true,
+ "direction": ""
},
{
- "number": 3,
- "name": "A3",
- "displayName": "Light Sensor (A3)",
- "direction": "",
+ "number": 28,
+ "name": "D28",
+ "displayName": "GP28",
"hasPWM": true,
- "hasServo": true
+ "hasServo": true,
+ "direction": ""
},
{
- "number": 4,
- "name": "A4",
- "displayName": "Voltage Monitor (A4)",
- "direction": "",
+ "number": 29,
+ "name": "D29",
+ "displayName": "GP29",
"hasPWM": true,
- "hasServo": true
+ "hasServo": true,
+ "direction": ""
+ },
+ {
+ "number": 64,
+ "name": "D64",
+ "displayName": "LED (BUILT-IN)",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
}
],
"analogPins": [
{
- "number": 17,
- "name": "A17",
- "displayName": "Piezo Speaker (A0)",
- "direction": ""
- },
- {
- "number": 10,
- "name": "A10",
- "displayName": "D10",
+ "number": 26,
+ "name": "A26",
+ "displayName": "A0 (GP0)",
"direction": ""
},
{
- "number": 18,
- "name": "A18",
- "displayName": "A1 (D18)",
+ "number": 27,
+ "name": "A27",
+ "displayName": "A1 (GP1)",
"direction": ""
},
{
- "number": 3,
- "name": "A3",
- "displayName": "Light Sensor (A3)",
+ "number": 28,
+ "name": "A28",
+ "displayName": "A2 (GP2)",
"direction": ""
},
{
- "number": 4,
- "name": "A4",
- "displayName": "Voltage Monitor (A4)",
+ "number": 29,
+ "name": "A29",
+ "displayName": "A3 (GP3)",
"direction": ""
}
],
"defaultI2C": {
"i2cPortId": 0,
- "SCL": 34,
- "SDA": 33
+ "SCL": 5,
+ "SDA": 4
},
- "image": "boards/magtag/image.svg",
- "totalAnalogPins": 5,
+ "image": "boards/rpi-pico-2w/image.jpg",
+ "totalAnalogPins": 4,
"i2cPorts": [
{
"i2cPortId": 0,
- "SDA": 33,
- "SCL": 34
+ "SDA": 4,
+ "SCL": 5
}
],
- "totalGPIOPins": 13
+ "totalGPIOPins": 31
},
- "rpi-pico-2w": {
- "boardName": "rpi-pico-2w",
- "mcuName": "rp2350",
+ "rpi-pico-w": {
+ "boardName": "rpi-pico-w",
+ "mcuName": "rp2040",
"referenceVoltage": 3.3,
- "displayName": "Raspberry Pi Pico 2W",
+ "displayName": "Raspberry Pi Pico W",
"vendor": "Raspberry Pi",
- "productURL": "https://www.adafruit.com/product/6087",
- "documentationURL": "https://learn.adafruit.com/quick-start-the-pico-w-with-wippersnapper/overview",
+ "productURL": "https://www.adafruit.com/product/5526",
+ "documentationURL": "https://learn.adafruit.com/quick-start-the-pico-w-with-wippersnapper/",
"installMethod": "uf2",
- "installBoardName": "picow_rp2350_tinyusb",
+ "installBoardName": "picow_rp2040_tinyusb",
"rtc": null,
"sdCardCS": null,
"pins": [
@@ -4521,7 +4273,7 @@ window.jsonBoardObject = {
"SCL": 5,
"SDA": 4
},
- "image": "boards/rpi-pico-2w/image.jpg",
+ "image": "boards/rpi-pico-w/image.png",
"totalAnalogPins": 4,
"i2cPorts": [
{
@@ -4532,31 +4284,23 @@ window.jsonBoardObject = {
],
"totalGPIOPins": 31
},
- "feather-esp32s3-tft": {
- "boardName": "feather-esp32s3-tft",
+ "xiao-esp32s3": {
+ "boardName": "xiao-esp32s3",
"mcuName": "esp32s3",
"referenceVoltage": 2.6,
- "displayName": "Adafruit ESP32-S3 TFT Feather",
- "vendor": "Adafruit",
- "productURL": "https://www.adafruit.com/product/5483",
- "documentationURL": "https://learn.adafruit.com/adafruit-esp32-s3-tft-feather",
- "installMethod": "uf2",
- "installBoardName": "feather-esp32s3-tft",
+ "displayName": "Xiao ESP32-S3 (or Sense/Plus)",
+ "vendor": "Seeed Studio",
+ "productURL": "https://www.digikey.com/short/fbbqfjz5",
+ "documentationURL": "https://wiki.seeedstudio.com/xiao_esp32s3_getting_started/",
+ "installMethod": "web-native-usb",
+ "installBoardName": "xiao-esp32s3",
"rtc": null,
"sdCardCS": null,
"pins": [
- {
- "number": 0,
- "name": "D0",
- "displayName": "D0 (Boot Btn)",
- "hasPWM": false,
- "hasServo": false,
- "direction": "INPUT"
- },
{
"number": 1,
"name": "D1",
- "displayName": "D1 (UART TX)",
+ "displayName": "D0/A0 (GPIO1)",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -4564,7 +4308,7 @@ window.jsonBoardObject = {
{
"number": 2,
"name": "D2",
- "displayName": "D2 (UART RX)",
+ "displayName": "D1/A1 (GPIO2)",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -4572,7 +4316,7 @@ window.jsonBoardObject = {
{
"number": 3,
"name": "D3",
- "displayName": "D3",
+ "displayName": "D2/A2 (GPIO3)",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -4580,7 +4324,7 @@ window.jsonBoardObject = {
{
"number": 4,
"name": "D4",
- "displayName": "D4",
+ "displayName": "D3/A3 (GPIO4)",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -4588,7 +4332,7 @@ window.jsonBoardObject = {
{
"number": 5,
"name": "D5",
- "displayName": "D5",
+ "displayName": "D4/A4 (SDA - GPIO5)",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -4596,55 +4340,55 @@ window.jsonBoardObject = {
{
"number": 6,
"name": "D6",
- "displayName": "D6",
+ "displayName": "D5/A5 (SCL - GPIO6)",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 7,
- "name": "D7",
- "displayName": "D7",
+ "number": 43,
+ "name": "D43",
+ "displayName": "D6 (UART TX - GPIO43)",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 8,
- "name": "D8",
- "displayName": "D8",
+ "number": 44,
+ "name": "D44",
+ "displayName": "D7 (UART RX - GPIO44)",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 9,
- "name": "D9",
- "displayName": "D9",
+ "number": 7,
+ "name": "D7",
+ "displayName": "D8/A8 (SCK - GPIO7)",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 10,
- "name": "D10",
- "displayName": "D10",
+ "number": 8,
+ "name": "D8",
+ "displayName": "D9/A9 (MISO - GPIO8)",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 11,
- "name": "D11",
- "displayName": "D11",
+ "number": 9,
+ "name": "D9",
+ "displayName": "D10/A10 (MOSI - GPIO9)",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 12,
- "name": "D12",
- "displayName": "D12",
+ "number": 42,
+ "name": "D42",
+ "displayName": "D11/A11 (Cam Brd - GPIO42)",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -4652,113 +4396,111 @@ window.jsonBoardObject = {
{
"number": 13,
"name": "D13",
- "displayName": "D13 (LED)",
+ "displayName": "D12/A12 (Cam Brd - GPIO13)",
"hasPWM": true,
- "hasServo": false,
+ "hasServo": true,
"direction": ""
},
{
- "number": 14,
- "name": "D14",
- "displayName": "D14",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
+ "number": 0,
+ "name": "D0",
+ "displayName": "Boot Pushbutton",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": "INPUT"
},
{
- "number": 33,
- "name": "D33",
- "displayName": "D33 (NeoPixel)",
+ "number": 21,
+ "name": "D21",
+ "displayName": "GPIO21 SD CS",
"hasPWM": false,
"hasServo": false,
"direction": ""
+ }
+ ],
+ "analogPins": [
+ {
+ "number": 1,
+ "name": "A1",
+ "displayName": "A0/D0 (GPIO1)",
+ "direction": ""
},
{
- "number": 18,
- "name": "A18",
- "displayName": "A0",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
+ "number": 2,
+ "name": "A2",
+ "displayName": "A1/D1 (GPIO2)",
+ "direction": ""
},
{
- "number": 17,
- "name": "A17",
- "displayName": "A1",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
+ "number": 3,
+ "name": "A3",
+ "displayName": "A2/D2 (GPIO3)",
+ "direction": ""
},
{
- "number": 16,
- "name": "A16",
- "displayName": "A2",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
+ "number": 4,
+ "name": "A4",
+ "displayName": "A3/D3 (GPIO4)",
+ "direction": ""
},
{
- "number": 15,
- "name": "A15",
- "displayName": "A3",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
- }
- ],
- "analogPins": [
+ "number": 5,
+ "name": "A5",
+ "displayName": "A4/D4 (SDA - GPIO5)",
+ "direction": ""
+ },
{
- "number": 18,
- "name": "A18",
- "displayName": "A0",
+ "number": 6,
+ "name": "A6",
+ "displayName": "A5/D5 (SCL - GPIO6)",
"direction": ""
},
{
- "number": 17,
- "name": "A17",
- "displayName": "A1",
+ "number": 7,
+ "name": "A7",
+ "displayName": "A8/D8 (SCK - GPIO7)",
"direction": ""
},
{
- "number": 16,
- "name": "A16",
- "displayName": "A2",
+ "number": 8,
+ "name": "A8",
+ "displayName": "A9/D9 (MISO - GPIO8)",
"direction": ""
},
{
- "number": 15,
- "name": "A15",
- "displayName": "A3",
+ "number": 9,
+ "name": "A9",
+ "displayName": "A10/D10 (MOSI - GPIO9)",
"direction": ""
},
{
- "number": 14,
- "name": "A14",
- "displayName": "A4",
+ "number": 42,
+ "name": "A42",
+ "displayName": "A11/D11 (Cam Brd - GPIO42)",
"direction": ""
},
{
- "number": 8,
- "name": "A8",
- "displayName": "A5",
+ "number": 13,
+ "name": "A13",
+ "displayName": "D12/A12 (Cam Brd - GPIO13)",
"direction": ""
}
],
"defaultI2C": {
"i2cPortId": 0,
- "SCL": 41,
- "SDA": 42
+ "SCL": 6,
+ "SDA": 5
},
- "image": "boards/feather-esp32s3-tft/image.svg",
- "totalAnalogPins": 6,
+ "image": "boards/xiao-esp32s3/image.png",
+ "totalAnalogPins": 11,
"i2cPorts": [
{
"i2cPortId": 0,
- "SDA": 42,
- "SCL": 41
+ "SDA": 5,
+ "SCL": 6
}
],
- "totalGPIOPins": 20
+ "totalGPIOPins": 15
},
"generic-esp32-s2": {
"boardName": "Generic ESP32-S2",
diff --git a/wippersnapper_boards.json b/wippersnapper_boards.json
index 92bc3b8..1b856e7 100644
--- a/wippersnapper_boards.json
+++ b/wippersnapper_boards.json
@@ -1,30 +1,30 @@
{
"boards": {
- "metro-rp2040": {
- "boardName": "metro-rp2040",
- "mcuName": "rp2040",
+ "esp32s3-devkitc-1-n8": {
+ "boardName": "esp32s3-devkitc-1-n8",
+ "mcuName": "esp32s3",
"referenceVoltage": 3.3,
- "displayName": "Adafruit Metro RP2040",
- "vendor": "Adafruit",
- "productURL": "https://www.adafruit.com/product/5786",
- "documentationURL": "https://learn.adafruit.com/adafruit-metro-rp2040",
- "installMethod": "uf2",
- "installBoardName": "metro-rp2040",
+ "displayName": "ESP32-S3-DevKitC-1-N8 (8MB Flash, No PSRAM)",
+ "vendor": "Espressif",
+ "productURL": "https://www.adafruit.com/product/5312",
+ "documentationURL": "https://learn.adafruit.com/adafruit-metro-esp32-s3/wippersnapper-setup",
+ "installMethod": "web-native-usb",
+ "installBoardName": "esp32s3-devkitc-1-n8",
"rtc": null,
- "sdCardCS": 23,
+ "sdCardCS": null,
"pins": [
{
"number": 0,
"name": "D0",
- "displayName": "D0 (GP0, UART TX)",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
+ "displayName": "0 (Boot)",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": "INPUT"
},
{
"number": 1,
"name": "D1",
- "displayName": "D1 (GP1, UART RX)",
+ "displayName": "1",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -32,7 +32,7 @@
{
"number": 2,
"name": "D2",
- "displayName": "D2 (GP2)",
+ "displayName": "2",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -40,7 +40,7 @@
{
"number": 3,
"name": "D3",
- "displayName": "D3 (GP3)",
+ "displayName": "3",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -48,7 +48,7 @@
{
"number": 4,
"name": "D4",
- "displayName": "D4 (GP4)",
+ "displayName": "4",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -56,7 +56,7 @@
{
"number": 5,
"name": "D5",
- "displayName": "D5 (GP5)",
+ "displayName": "5",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -64,7 +64,7 @@
{
"number": 6,
"name": "D6",
- "displayName": "D6 (GP6)",
+ "displayName": "6",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -72,7 +72,7 @@
{
"number": 7,
"name": "D7",
- "displayName": "D7 (GP7, BOOT)",
+ "displayName": "7",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -80,7 +80,7 @@
{
"number": 8,
"name": "D8",
- "displayName": "D8 (GP8)",
+ "displayName": "8",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -88,7 +88,7 @@
{
"number": 9,
"name": "D9",
- "displayName": "D9 (GP9)",
+ "displayName": "9",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -96,7 +96,7 @@
{
"number": 10,
"name": "D10",
- "displayName": "D10 (GP10)",
+ "displayName": "10",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -104,7 +104,7 @@
{
"number": 11,
"name": "D11",
- "displayName": "D11 (GP11)",
+ "displayName": "11",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -112,7 +112,7 @@
{
"number": 12,
"name": "D12",
- "displayName": "D12 (GP12)",
+ "displayName": "12",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -120,351 +120,351 @@
{
"number": 13,
"name": "D13",
- "displayName": "D13 (GP13, LED)",
+ "displayName": "13",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 20,
- "name": "D20",
- "displayName": "D20 (GP20, SDA)",
+ "number": 14,
+ "name": "D14",
+ "displayName": "14",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 21,
- "name": "D21",
- "displayName": "D21 (GP21, SCL)",
+ "number": 15,
+ "name": "D15",
+ "displayName": "15",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 24,
- "name": "D24",
- "displayName": "D24 (GP24)",
+ "number": 16,
+ "name": "D16",
+ "displayName": "16",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 25,
- "name": "D25",
- "displayName": "D25 (GP25, NeoPixel)",
+ "number": 17,
+ "name": "D17",
+ "displayName": "17",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 28,
- "name": "D28",
- "displayName": "D28 (GP28, SPI MISO)",
+ "number": 18,
+ "name": "D18",
+ "displayName": "18",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 30,
- "name": "D30",
- "displayName": "D30 (GP30, SPI SCK)",
+ "number": 19,
+ "name": "D19",
+ "displayName": "19",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 31,
- "name": "D31",
- "displayName": "D31 (GP31, SPI MOSI)",
+ "number": 20,
+ "name": "D20",
+ "displayName": "20",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 23,
- "name": "D23",
- "displayName": "D23 (GP23, SD Card CS)",
+ "number": 21,
+ "name": "D21",
+ "displayName": "21",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 26,
- "name": "A26",
- "displayName": "A0 (GP26)",
- "direction": "",
+ "number": 35,
+ "name": "D35",
+ "displayName": "35",
"hasPWM": true,
- "hasServo": true
+ "hasServo": true,
+ "direction": ""
},
{
- "number": 27,
- "name": "A27",
- "displayName": "A1 (GP27)",
- "direction": "",
+ "number": 36,
+ "name": "D36",
+ "displayName": "36",
"hasPWM": true,
- "hasServo": true
+ "hasServo": true,
+ "direction": ""
},
{
- "number": 29,
- "name": "A29",
- "displayName": "A3 (GP29)",
- "direction": "",
+ "number": 37,
+ "name": "D37",
+ "displayName": "37",
"hasPWM": true,
- "hasServo": true
- }
- ],
- "analogPins": [
- {
- "number": 26,
- "name": "A26",
- "displayName": "A0 (GP26)",
+ "hasServo": true,
"direction": ""
},
{
- "number": 27,
- "name": "A27",
- "displayName": "A1 (GP27)",
+ "number": 38,
+ "name": "D38",
+ "displayName": "38",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
- "number": 28,
- "name": "A28",
- "displayName": "A2 (GP28)",
+ "number": 39,
+ "name": "D39",
+ "displayName": "39",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
- "number": 29,
- "name": "A29",
- "displayName": "A3 (GP29)",
- "direction": ""
- }
- ],
- "defaultI2C": {
- "i2cPortId": 0,
- "SCL": 21,
- "SDA": 20
- },
- "image": "https://cdn-shop.adafruit.com/640x480/5786-00.jpg",
- "totalAnalogPins": 4,
- "i2cPorts": [
- {
- "i2cPortId": 0,
- "SDA": 20,
- "SCL": 21
- }
- ],
- "totalGPIOPins": 25
- },
- "qtpy-esp32s3-n4r2": {
- "boardName": "qtpy-esp32s3-n4r2",
- "mcuName": "esp32s3",
- "referenceVoltage": 2.6,
- "displayName": "Adafruit QT Py S3 (2MB PSRAM)",
- "vendor": "Adafruit",
- "productURL": "https://www.adafruit.com/product/5700",
- "documentationURL": "https://learn.adafruit.com/adafruit-qt-py-esp32-s3",
- "installMethod": "uf2",
- "installBoardName": "qtpy-esp32s3-n4r2",
- "rtc": null,
- "sdCardCS": null,
- "pins": [
- {
- "number": 18,
- "name": "D18",
- "displayName": "A0",
+ "number": 40,
+ "name": "D40",
+ "displayName": "40",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 17,
- "name": "D17",
- "displayName": "A1",
+ "number": 41,
+ "name": "D41",
+ "displayName": "41",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 9,
- "name": "D9",
- "displayName": "A2",
+ "number": 42,
+ "name": "D42",
+ "displayName": "42",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 8,
- "name": "D8",
- "displayName": "A3",
+ "number": 43,
+ "name": "D43",
+ "displayName": "43 (TX)",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 7,
- "name": "D7",
- "displayName": "SDA",
+ "number": 44,
+ "name": "D44",
+ "displayName": "44 (RX)",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 6,
- "name": "D6",
- "displayName": "SCL",
+ "number": 45,
+ "name": "D45",
+ "displayName": "45",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 5,
- "name": "D5",
- "displayName": "D5 (UART TX)",
+ "number": 46,
+ "name": "D46",
+ "displayName": "46",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 35,
- "name": "D35",
- "displayName": "MOSI",
+ "number": 47,
+ "name": "D47",
+ "displayName": "47",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 37,
- "name": "D37",
- "displayName": "MISO",
+ "number": 48,
+ "name": "D48",
+ "displayName": "48 (NeoPixel)",
"hasPWM": true,
"hasServo": true,
"direction": ""
+ }
+ ],
+ "analogPins": [
+ {
+ "number": 1,
+ "name": "A1",
+ "displayName": "1 (ADC1_CH0)",
+ "direction": ""
},
{
- "number": 36,
- "name": "D36",
- "displayName": "SCK",
- "hasPWM": true,
- "hasServo": true,
+ "number": 2,
+ "name": "A2",
+ "displayName": "2 (ADC1_CH1)",
"direction": ""
},
{
- "number": 16,
- "name": "D16",
- "displayName": "D16 (UART RX)",
- "hasPWM": true,
- "hasServo": true,
+ "number": 3,
+ "name": "A3",
+ "displayName": "3 (ADC1_CH2)",
"direction": ""
},
{
- "number": 0,
- "name": "D0",
- "displayName": "Boot Pushbutton",
- "hasPWM": false,
- "hasServo": false,
- "direction": "INPUT"
+ "number": 4,
+ "name": "A4",
+ "displayName": "4 (ADC1_CH3)",
+ "direction": ""
},
{
- "number": 39,
- "name": "D39",
- "displayName": "D39 (NeoPixel)",
- "hasPWM": false,
- "hasServo": false,
+ "number": 5,
+ "name": "A5",
+ "displayName": "5 (ADC1_CH4)",
"direction": ""
- }
- ],
- "analogPins": [
+ },
{
- "number": 18,
- "name": "A18",
- "displayName": "A0",
+ "number": 6,
+ "name": "A6",
+ "displayName": "6 (ADC1_CH5)",
"direction": ""
},
{
- "number": 17,
- "name": "A17",
- "displayName": "A1",
+ "number": 7,
+ "name": "A7",
+ "displayName": "7 (ADC1_CH6)",
+ "direction": ""
+ },
+ {
+ "number": 8,
+ "name": "A8",
+ "displayName": "8 (ADC1_CH7)",
"direction": ""
},
{
"number": 9,
"name": "A9",
- "displayName": "A2",
+ "displayName": "9 (ADC1_CH8)",
"direction": ""
},
{
- "number": 8,
- "name": "A8",
- "displayName": "A3",
+ "number": 10,
+ "name": "A10",
+ "displayName": "10 (ADC1_CH9)",
"direction": ""
},
{
- "number": 7,
- "name": "A7",
- "displayName": "SDA",
+ "number": 11,
+ "name": "A11",
+ "displayName": "11 (ADC2_CH0)",
"direction": ""
},
{
- "number": 6,
- "name": "A6",
- "displayName": "SCL",
+ "number": 12,
+ "name": "A12",
+ "displayName": "12 (ADC2_CH1)",
"direction": ""
},
{
- "number": 5,
- "name": "A5",
- "displayName": "A5 (UART TX)",
+ "number": 13,
+ "name": "A13",
+ "displayName": "13 (ADC2_CH2)",
+ "direction": ""
+ },
+ {
+ "number": 14,
+ "name": "A14",
+ "displayName": "14 (ADC2_CH3)",
+ "direction": ""
+ },
+ {
+ "number": 15,
+ "name": "A15",
+ "displayName": "15 (ADC2_CH4)",
"direction": ""
},
{
"number": 16,
"name": "A16",
- "displayName": "A16 (UART RX)",
+ "displayName": "16 (ADC2_CH5)",
"direction": ""
- }
- ],
- "defaultI2C": {
- "i2cPortId": 0,
- "SCL": 40,
- "SDA": 41
- },
- "image": "boards/qtpy-esp32s3-n4r2/image.svg",
- "totalAnalogPins": 8,
+ },
+ {
+ "number": 17,
+ "name": "A17",
+ "displayName": "17 (ADC2_CH6)",
+ "direction": ""
+ },
+ {
+ "number": 18,
+ "name": "A18",
+ "displayName": "18 (ADC2_CH7)",
+ "direction": ""
+ },
+ {
+ "number": 19,
+ "name": "A19",
+ "displayName": "19 (ADC2_CH8)",
+ "direction": ""
+ },
+ {
+ "number": 20,
+ "name": "A20",
+ "displayName": "20 (ADC2_CH9)",
+ "direction": ""
+ }
+ ],
+ "defaultI2C": {
+ "i2cPortId": 0,
+ "SCL": 9,
+ "SDA": 8
+ },
+ "image": "boards/esp32s3-devkitc-1-n8/image.jpg",
+ "totalAnalogPins": 20,
"i2cPorts": [
{
"i2cPortId": 0,
- "SDA": 41,
- "SCL": 40
+ "SDA": 8,
+ "SCL": 9
}
],
- "totalGPIOPins": 13
+ "totalGPIOPins": 36
},
- "rpi-pico-w": {
- "boardName": "rpi-pico-w",
- "mcuName": "rp2040",
- "referenceVoltage": 3.3,
- "displayName": "Raspberry Pi Pico W",
- "vendor": "Raspberry Pi",
- "productURL": "https://www.adafruit.com/product/5526",
- "documentationURL": "https://learn.adafruit.com/quick-start-the-pico-w-with-wippersnapper/",
- "installMethod": "uf2",
- "installBoardName": "picow_rp2040_tinyusb",
+ "feather-esp32s2": {
+ "boardName": "feather-esp32s2",
+ "mcuName": "esp32s2",
+ "referenceVoltage": 2.6,
+ "displayName": "Adafruit ESP32-S2 Feather",
+ "vendor": "Adafruit",
+ "productURL": "https://www.adafruit.com/product/5000",
+ "documentationURL": "https://learn.adafruit.com/adafruit-esp32-s2-feather",
+ "installMethod": "web-native-usb",
+ "installBoardName": "feather-esp32s2",
"rtc": null,
"sdCardCS": null,
"pins": [
{
"number": 0,
"name": "D0",
- "displayName": "GP0 (UART TX)",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
+ "displayName": "D0 (Boot Push Button)",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": "INPUT"
},
{
"number": 1,
"name": "D1",
- "displayName": "GP1 (UART RX)",
+ "displayName": "D1",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -472,7 +472,7 @@
{
"number": 2,
"name": "D2",
- "displayName": "GP2",
+ "displayName": "D2",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -480,7 +480,7 @@
{
"number": 3,
"name": "D3",
- "displayName": "GP3",
+ "displayName": "D3",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -488,7 +488,7 @@
{
"number": 4,
"name": "D4",
- "displayName": "GP4",
+ "displayName": "D4",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -496,7 +496,7 @@
{
"number": 5,
"name": "D5",
- "displayName": "GP5",
+ "displayName": "D5",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -504,7 +504,7 @@
{
"number": 6,
"name": "D6",
- "displayName": "GP6",
+ "displayName": "D6",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -512,23 +512,15 @@
{
"number": 7,
"name": "D7",
- "displayName": "GP7",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 8,
- "name": "D8",
- "displayName": "GP8",
- "hasPWM": true,
- "hasServo": true,
+ "displayName": "D7 (I2C Power)",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
"number": 9,
"name": "D9",
- "displayName": "GP9",
+ "displayName": "D9",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -536,7 +528,7 @@
{
"number": 10,
"name": "D10",
- "displayName": "GP10",
+ "displayName": "D10",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -544,7 +536,7 @@
{
"number": 11,
"name": "D11",
- "displayName": "GP11",
+ "displayName": "D11",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -552,7 +544,7 @@
{
"number": 12,
"name": "D12",
- "displayName": "GP12",
+ "displayName": "D12",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -560,391 +552,383 @@
{
"number": 13,
"name": "D13",
- "displayName": "GP13",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 14,
- "name": "D14",
- "displayName": "GP14",
+ "displayName": "D13 (LED)",
"hasPWM": true,
- "hasServo": true,
+ "hasServo": false,
"direction": ""
},
{
- "number": 15,
- "name": "D15",
- "displayName": "GP15",
- "hasPWM": true,
- "hasServo": true,
+ "number": 33,
+ "name": "D33",
+ "displayName": "D33 (NeoPixel)",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
- "number": 16,
- "name": "D16",
- "displayName": "GP16",
- "hasPWM": true,
- "hasServo": true,
+ "number": 38,
+ "name": "D38",
+ "displayName": "D38 (UART RX)",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
- "number": 17,
- "name": "D17",
- "displayName": "GP17",
- "hasPWM": true,
- "hasServo": true,
+ "number": 39,
+ "name": "D39",
+ "displayName": "D39 (UART TX)",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
"number": 18,
- "name": "D18",
- "displayName": "GP18",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 19,
- "name": "D19",
- "displayName": "GP19",
+ "name": "A18",
+ "displayName": "A0",
+ "direction": "",
"hasPWM": true,
- "hasServo": true,
- "direction": ""
+ "hasServo": true
},
{
- "number": 20,
- "name": "D20",
- "displayName": "GP20",
+ "number": 17,
+ "name": "A17",
+ "displayName": "A1",
+ "direction": "",
"hasPWM": true,
- "hasServo": true,
- "direction": ""
+ "hasServo": true
},
{
- "number": 21,
- "name": "D21",
- "displayName": "GP21",
+ "number": 16,
+ "name": "A16",
+ "displayName": "A2",
+ "direction": "",
"hasPWM": true,
- "hasServo": true,
- "direction": ""
+ "hasServo": true
},
{
- "number": 22,
- "name": "D22",
- "displayName": "GP22",
+ "number": 15,
+ "name": "A15",
+ "displayName": "A3",
+ "direction": "",
"hasPWM": true,
- "hasServo": true,
- "direction": ""
+ "hasServo": true
},
{
- "number": 23,
- "name": "D23",
- "displayName": "GP23",
+ "number": 14,
+ "name": "A14",
+ "displayName": "A4",
+ "direction": "",
"hasPWM": true,
- "hasServo": true,
- "direction": ""
+ "hasServo": true
},
{
- "number": 24,
- "name": "D24",
- "displayName": "GP24",
+ "number": 8,
+ "name": "A8",
+ "displayName": "A5",
+ "direction": "",
"hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
+ "hasServo": true
+ }
+ ],
+ "analogPins": [
{
- "number": 25,
- "name": "D25",
- "displayName": "GP25",
- "hasPWM": true,
- "hasServo": true,
+ "number": 18,
+ "name": "A18",
+ "displayName": "A0",
"direction": ""
},
{
- "number": 26,
- "name": "D26",
- "displayName": "GP26",
- "hasPWM": true,
- "hasServo": true,
+ "number": 17,
+ "name": "A17",
+ "displayName": "A1",
"direction": ""
},
{
- "number": 27,
- "name": "D27",
- "displayName": "GP27",
- "hasPWM": true,
- "hasServo": true,
+ "number": 16,
+ "name": "A16",
+ "displayName": "A2",
"direction": ""
},
{
- "number": 28,
- "name": "D28",
- "displayName": "GP28",
- "hasPWM": true,
- "hasServo": true,
+ "number": 15,
+ "name": "A15",
+ "displayName": "A3",
"direction": ""
},
{
- "number": 29,
- "name": "D29",
- "displayName": "GP29",
- "hasPWM": true,
- "hasServo": true,
+ "number": 14,
+ "name": "A14",
+ "displayName": "A4",
"direction": ""
},
{
- "number": 64,
- "name": "D64",
- "displayName": "LED (BUILT-IN)",
- "hasPWM": false,
- "hasServo": false,
- "direction": ""
- }
- ],
- "analogPins": [
- {
- "number": 26,
- "name": "A26",
- "displayName": "A0 (GP0)",
- "direction": ""
- },
- {
- "number": 27,
- "name": "A27",
- "displayName": "A1 (GP1)",
- "direction": ""
- },
- {
- "number": 28,
- "name": "A28",
- "displayName": "A2 (GP2)",
- "direction": ""
- },
- {
- "number": 29,
- "name": "A29",
- "displayName": "A3 (GP3)",
+ "number": 8,
+ "name": "A8",
+ "displayName": "A5",
"direction": ""
}
],
"defaultI2C": {
"i2cPortId": 0,
- "SCL": 5,
- "SDA": 4
+ "SCL": 4,
+ "SDA": 3
},
- "image": "boards/rpi-pico-w/image.png",
- "totalAnalogPins": 4,
+ "image": "boards/feather-esp32s2/image.png",
+ "totalAnalogPins": 6,
"i2cPorts": [
{
"i2cPortId": 0,
- "SDA": 4,
- "SCL": 5
+ "SDA": 3,
+ "SCL": 4
}
],
- "totalGPIOPins": 31
+ "totalGPIOPins": 22
},
- "qtpy-esp32s3": {
- "boardName": "qtpy-esp32s3",
- "mcuName": "esp32s3",
+ "feather-esp32s2-reverse-tft": {
+ "boardName": "feather-esp32s2-reverse-tft",
+ "mcuName": "esp32s2",
"referenceVoltage": 2.6,
- "displayName": "Adafruit QT Py ESP32-S3 (NO PSRAM)",
+ "displayName": "ESP32-S2 Reverse TFT Feather",
"vendor": "Adafruit",
- "productURL": "https://www.adafruit.com/product/5426",
- "documentationURL": "https://learn.adafruit.com/adafruit-qt-py-esp32-s3",
- "installMethod": "uf2",
- "installBoardName": "qtpy-esp32s3",
+ "productURL": "https://www.adafruit.com/product/5345",
+ "documentationURL": "https://learn.adafruit.com/esp32-s2-reverse-tft-feather",
+ "installMethod": "web-native-usb",
+ "installBoardName": "feather-esp32s2-reverse-tft",
"rtc": null,
"sdCardCS": null,
"pins": [
{
- "number": 18,
- "name": "D18",
- "displayName": "A0",
- "hasPWM": true,
- "hasServo": true,
+ "number": 0,
+ "name": "D0",
+ "displayName": "D0 (Boot Push Button)",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": "INPUT"
+ },
+ {
+ "number": 1,
+ "name": "D1",
+ "displayName": "D1 Push Button",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
- "number": 17,
- "name": "D17",
- "displayName": "A1",
- "hasPWM": true,
- "hasServo": true,
+ "number": 2,
+ "name": "D2",
+ "displayName": "D2 Push Button",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
- "number": 9,
- "name": "D9",
- "displayName": "A2",
+ "number": 5,
+ "name": "D5",
+ "displayName": "D5",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 8,
- "name": "D8",
- "displayName": "A3",
+ "number": 6,
+ "name": "D6",
+ "displayName": "D6",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 7,
- "name": "D7",
- "displayName": "SDA",
+ "number": 9,
+ "name": "D9",
+ "displayName": "D9",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 6,
- "name": "D6",
- "displayName": "SCL",
+ "number": 10,
+ "name": "D10",
+ "displayName": "D10",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 5,
- "name": "D5",
- "displayName": "D5 (UART TX)",
+ "number": 11,
+ "name": "D11",
+ "displayName": "D11",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 35,
- "name": "D35",
- "displayName": "MOSI",
+ "number": 12,
+ "name": "D12",
+ "displayName": "D12",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 37,
- "name": "D37",
- "displayName": "MISO",
+ "number": 13,
+ "name": "D13",
+ "displayName": "D13 (LED)",
"hasPWM": true,
- "hasServo": true,
+ "hasServo": false,
"direction": ""
},
{
- "number": 36,
- "name": "D36",
- "displayName": "SCK",
- "hasPWM": true,
- "hasServo": true,
+ "number": 33,
+ "name": "D33",
+ "displayName": "D33 (NeoPixel)",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
- "number": 16,
- "name": "D16",
- "displayName": "D16 (UART RX)",
- "hasPWM": true,
- "hasServo": true,
+ "number": 21,
+ "name": "D21",
+ "displayName": "D21 (NeoPixel Power Pin)",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
- "number": 0,
- "name": "D0",
- "displayName": "Boot Pushbutton",
+ "number": 38,
+ "name": "D38",
+ "displayName": "D38 (UART RX)",
"hasPWM": false,
"hasServo": false,
- "direction": "INPUT"
+ "direction": ""
},
{
"number": 39,
"name": "D39",
- "displayName": "D39 (NeoPixel)",
+ "displayName": "D39 (UART TX)",
"hasPWM": false,
"hasServo": false,
"direction": ""
- }
- ],
- "analogPins": [
+ },
{
"number": 18,
"name": "A18",
"displayName": "A0",
- "direction": ""
+ "direction": "",
+ "hasPWM": true,
+ "hasServo": true
},
{
"number": 17,
"name": "A17",
"displayName": "A1",
- "direction": ""
+ "direction": "",
+ "hasPWM": true,
+ "hasServo": true
},
{
- "number": 9,
- "name": "A9",
+ "number": 16,
+ "name": "A16",
"displayName": "A2",
- "direction": ""
+ "direction": "",
+ "hasPWM": true,
+ "hasServo": true
+ },
+ {
+ "number": 15,
+ "name": "A15",
+ "displayName": "A3",
+ "direction": "",
+ "hasPWM": true,
+ "hasServo": true
+ },
+ {
+ "number": 14,
+ "name": "A14",
+ "displayName": "A4",
+ "direction": "",
+ "hasPWM": true,
+ "hasServo": true
},
{
"number": 8,
"name": "A8",
- "displayName": "A3",
+ "displayName": "A5",
+ "direction": "",
+ "hasPWM": true,
+ "hasServo": true
+ }
+ ],
+ "analogPins": [
+ {
+ "number": 18,
+ "name": "A18",
+ "displayName": "A0",
"direction": ""
},
{
- "number": 7,
- "name": "A7",
- "displayName": "SDA",
+ "number": 17,
+ "name": "A17",
+ "displayName": "A1",
"direction": ""
},
{
- "number": 6,
- "name": "A6",
- "displayName": "SCL",
+ "number": 16,
+ "name": "A16",
+ "displayName": "A2",
"direction": ""
},
{
- "number": 5,
- "name": "A5",
- "displayName": "A5 (UART TX)",
+ "number": 15,
+ "name": "A15",
+ "displayName": "A3",
"direction": ""
},
{
- "number": 16,
- "name": "A16",
- "displayName": "A16 (UART RX)",
+ "number": 14,
+ "name": "A14",
+ "displayName": "A4",
+ "direction": ""
+ },
+ {
+ "number": 8,
+ "name": "A8",
+ "displayName": "A5",
"direction": ""
}
],
"defaultI2C": {
"i2cPortId": 0,
- "SCL": 40,
- "SDA": 41
+ "SCL": 4,
+ "SDA": 3
},
- "image": "boards/qtpy-esp32s3/image.svg",
- "totalAnalogPins": 8,
+ "image": "boards/feather-esp32s2-reverse-tft/image.svg",
+ "totalAnalogPins": 6,
"i2cPorts": [
{
"i2cPortId": 0,
- "SDA": 41,
- "SCL": 40
+ "SDA": 3,
+ "SCL": 4
}
],
- "totalGPIOPins": 13
+ "totalGPIOPins": 20
},
- "feather-rp2040-adalogger": {
- "boardName": "feather-rp2040-adalogger",
- "mcuName": "rp2040",
- "referenceVoltage": 3.3,
- "displayName": "Adafruit Feather RP2040 Adalogger",
+ "feather-esp32s2-tft": {
+ "boardName": "feather-esp32s2-tft",
+ "mcuName": "esp32s2",
+ "referenceVoltage": 2.6,
+ "displayName": "Adafruit ESP32-S2 TFT Feather",
"vendor": "Adafruit",
- "productURL": "https://www.adafruit.com/product/5980",
- "documentationURL": "https://learn.adafruit.com/adafruit-feather-rp2040-adalogger",
- "installMethod": "uf2",
- "installBoardName": "feather_rp2040_adalogger_tinyusb",
- "rtc": null,
- "sdCardCS": 23,
- "pins": [
+ "productURL": "https://www.adafruit.com/product/5300",
+ "documentationURL": "https://learn.adafruit.com/adafruit-esp32-s2-tft-feather",
+ "installMethod": "web-native-usb",
+ "installBoardName": "feather-esp32s2-tft",
+ "rtc": null,
+ "sdCardCS": null,
+ "pins": [
{
- "number": 7,
- "name": "D7",
- "displayName": "GP7 (Boot Push Button)",
+ "number": 0,
+ "name": "D0",
+ "displayName": "D0 (Boot Push Button)",
"hasPWM": false,
"hasServo": false,
"direction": "INPUT"
@@ -952,7 +936,7 @@
{
"number": 1,
"name": "D1",
- "displayName": "GP1",
+ "displayName": "D1 (UART TX)",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -960,7 +944,7 @@
{
"number": 2,
"name": "D2",
- "displayName": "GP2",
+ "displayName": "D2 (UART RX)",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -968,7 +952,7 @@
{
"number": 3,
"name": "D3",
- "displayName": "GP3",
+ "displayName": "D3",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -976,7 +960,7 @@
{
"number": 4,
"name": "D4",
- "displayName": "GP4",
+ "displayName": "D4",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -984,7 +968,7 @@
{
"number": 5,
"name": "D5",
- "displayName": "GP5",
+ "displayName": "D5",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -992,23 +976,7 @@
{
"number": 6,
"name": "D6",
- "displayName": "GP6",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 7,
- "name": "D7",
- "displayName": "GP7",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 8,
- "name": "D8",
- "displayName": "GP8",
+ "displayName": "D6",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -1016,7 +984,7 @@
{
"number": 9,
"name": "D9",
- "displayName": "GP9",
+ "displayName": "D9",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -1024,7 +992,7 @@
{
"number": 10,
"name": "D10",
- "displayName": "GP10",
+ "displayName": "D10",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -1032,7 +1000,7 @@
{
"number": 11,
"name": "D11",
- "displayName": "GP11",
+ "displayName": "D11",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -1040,7 +1008,7 @@
{
"number": 12,
"name": "D12",
- "displayName": "GP12",
+ "displayName": "D12",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -1048,189 +1016,137 @@
{
"number": 13,
"name": "D13",
- "displayName": "GP13",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 14,
- "name": "D14",
- "displayName": "GP14",
+ "displayName": "D13 (LED)",
"hasPWM": true,
- "hasServo": true,
+ "hasServo": false,
"direction": ""
},
{
- "number": 15,
- "name": "D15",
- "displayName": "GP15",
- "hasPWM": true,
- "hasServo": true,
+ "number": 33,
+ "name": "D33",
+ "displayName": "D33 (NeoPixel)",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
- "number": 16,
- "name": "D16",
- "displayName": "GP16",
- "hasPWM": true,
- "hasServo": true,
+ "number": 38,
+ "name": "D38",
+ "displayName": "D38 (UART RX)",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
- "number": 17,
- "name": "D17",
- "displayName": "GP17",
- "hasPWM": true,
- "hasServo": true,
+ "number": 39,
+ "name": "D39",
+ "displayName": "D39 (UART TX)",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
"number": 18,
- "name": "D18",
- "displayName": "GP18",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 19,
- "name": "D19",
- "displayName": "GP19",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 20,
- "name": "D20",
- "displayName": "GP20",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 21,
- "name": "D21",
- "displayName": "GP21",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 22,
- "name": "D22",
- "displayName": "GP22",
+ "name": "A18",
+ "displayName": "A0",
+ "direction": "",
"hasPWM": true,
- "hasServo": true,
- "direction": ""
+ "hasServo": true
},
{
- "number": 23,
- "name": "D23",
- "displayName": "GP23",
+ "number": 17,
+ "name": "A17",
+ "displayName": "A1",
+ "direction": "",
"hasPWM": true,
- "hasServo": true,
- "direction": ""
+ "hasServo": true
},
{
- "number": 24,
- "name": "D24",
- "displayName": "GP24",
+ "number": 16,
+ "name": "A16",
+ "displayName": "A2",
+ "direction": "",
"hasPWM": true,
- "hasServo": true,
- "direction": ""
+ "hasServo": true
},
{
- "number": 25,
- "name": "D25",
- "displayName": "GP25",
+ "number": 15,
+ "name": "A15",
+ "displayName": "A3",
+ "direction": "",
"hasPWM": true,
- "hasServo": true,
- "direction": ""
+ "hasServo": true
},
{
- "number": 26,
- "name": "D26",
- "displayName": "GP26",
+ "number": 14,
+ "name": "A14",
+ "displayName": "A4",
+ "direction": "",
"hasPWM": true,
- "hasServo": true,
- "direction": ""
+ "hasServo": true
},
{
- "number": 27,
- "name": "D27",
- "displayName": "GP27",
+ "number": 8,
+ "name": "A8",
+ "displayName": "A5",
+ "direction": "",
"hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
+ "hasServo": true
+ }
+ ],
+ "analogPins": [
{
- "number": 28,
- "name": "D28",
- "displayName": "GP28",
- "hasPWM": true,
- "hasServo": true,
+ "number": 18,
+ "name": "A18",
+ "displayName": "A0",
"direction": ""
},
{
- "number": 29,
- "name": "D29",
- "displayName": "GP29",
- "hasPWM": true,
- "hasServo": true,
+ "number": 17,
+ "name": "A17",
+ "displayName": "A1",
"direction": ""
},
{
- "number": 64,
- "name": "D64",
- "displayName": "LED (BUILT-IN)",
- "hasPWM": false,
- "hasServo": false,
- "direction": ""
- }
- ],
- "analogPins": [
- {
- "number": 26,
- "name": "A26",
- "displayName": "A0 (GP26)",
+ "number": 16,
+ "name": "A16",
+ "displayName": "A2",
"direction": ""
},
{
- "number": 27,
- "name": "A27",
- "displayName": "A1 (GP27)",
+ "number": 15,
+ "name": "A15",
+ "displayName": "A3",
"direction": ""
},
{
- "number": 28,
- "name": "A28",
- "displayName": "A2 (GP28)",
+ "number": 14,
+ "name": "A14",
+ "displayName": "A4",
"direction": ""
},
{
- "number": 29,
- "name": "A29",
- "displayName": "A3 (GP29)",
+ "number": 8,
+ "name": "A8",
+ "displayName": "A5",
"direction": ""
}
],
"defaultI2C": {
"i2cPortId": 0,
- "SCL": 5,
- "SDA": 4
+ "SCL": 41,
+ "SDA": 42
},
- "image": "https://cdn-shop.adafruit.com/640x480/5980-00.jpg",
- "totalAnalogPins": 4,
+ "image": "boards/feather-esp32s2-tft/image.svg",
+ "totalAnalogPins": 6,
"i2cPorts": [
{
"i2cPortId": 0,
- "SDA": 4,
- "SCL": 5
+ "SDA": 42,
+ "SCL": 41
}
],
- "totalGPIOPins": 31
+ "totalGPIOPins": 21
},
"feather-esp32s3": {
"boardName": "feather-esp32s3",
@@ -1476,18 +1392,18 @@
],
"totalGPIOPins": 22
},
- "feather-esp32s2": {
- "boardName": "feather-esp32s2",
- "mcuName": "esp32s2",
+ "feather-esp32s3-4mbflash-2mbpsram": {
+ "boardName": "feather-esp32s3-4mbflash-2mbpsram",
+ "mcuName": "esp32s3",
"referenceVoltage": 2.6,
- "displayName": "Adafruit ESP32-S2 Feather",
+ "displayName": "Adafruit ESP32-S3 Feather with 4MB Flash 2MB PSRAM",
"vendor": "Adafruit",
- "productURL": "https://www.adafruit.com/product/5000",
- "documentationURL": "https://learn.adafruit.com/adafruit-esp32-s2-feather",
- "installMethod": "uf2",
- "installBoardName": "feather-esp32s2",
- "rtc": null,
- "sdCardCS": null,
+ "productURL": "https://www.adafruit.com/product/5477",
+ "documentationURL": "https://learn.adafruit.com/adafruit-esp32-s3-feather",
+ "installMethod": "web-native-usb",
+ "installBoardName": "feather-esp32s3-4mbflash-2mbpsram",
+ "rtc": null,
+ "sdCardCS": null,
"pins": [
{
"number": 0,
@@ -1548,9 +1464,17 @@
{
"number": 7,
"name": "D7",
- "displayName": "D7 (I2C Power)",
- "hasPWM": false,
- "hasServo": false,
+ "displayName": "D7",
+ "hasPWM": true,
+ "hasServo": true,
+ "direction": ""
+ },
+ {
+ "number": 8,
+ "name": "D8",
+ "displayName": "D8",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
@@ -1593,6 +1517,14 @@
"hasServo": false,
"direction": ""
},
+ {
+ "number": 14,
+ "name": "D14",
+ "displayName": "D14",
+ "hasPWM": true,
+ "hasServo": true,
+ "direction": ""
+ },
{
"number": 33,
"name": "D33",
@@ -1648,22 +1580,6 @@
"direction": "",
"hasPWM": true,
"hasServo": true
- },
- {
- "number": 14,
- "name": "A14",
- "displayName": "A4",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
- },
- {
- "number": 8,
- "name": "A8",
- "displayName": "A5",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
}
],
"analogPins": [
@@ -1709,7 +1625,7 @@
"SCL": 4,
"SDA": 3
},
- "image": "boards/feather-esp32s2/image.png",
+ "image": "boards/feather-esp32s3-4mbflash-2mbpsram/image.svg",
"totalAnalogPins": 6,
"i2cPorts": [
{
@@ -1720,16 +1636,16 @@
],
"totalGPIOPins": 22
},
- "feather-esp32s2-reverse-tft": {
- "boardName": "feather-esp32s2-reverse-tft",
- "mcuName": "esp32s2",
+ "feather-esp32s3-reverse-tft": {
+ "boardName": "feather-esp32s3-reverse-tft",
+ "mcuName": "esp32s3",
"referenceVoltage": 2.6,
- "displayName": "ESP32-S2 Reverse TFT Feather",
+ "displayName": "ESP32-S3 Reverse TFT Feather",
"vendor": "Adafruit",
- "productURL": "https://www.adafruit.com/product/5345",
- "documentationURL": "https://learn.adafruit.com/esp32-s2-reverse-tft-feather",
- "installMethod": "uf2",
- "installBoardName": "feather-esp32s2-reverse-tft",
+ "productURL": "https://www.adafruit.com/product/5691",
+ "documentationURL": "https://learn.adafruit.com/esp32-s3-reverse-tft-feather",
+ "installMethod": "web-native-usb",
+ "installBoardName": "feather-esp32s3-reverse-tft",
"rtc": null,
"sdCardCS": null,
"pins": [
@@ -1821,14 +1737,6 @@
"hasServo": false,
"direction": ""
},
- {
- "number": 21,
- "name": "D21",
- "displayName": "D21 (NeoPixel Power Pin)",
- "hasPWM": false,
- "hasServo": false,
- "direction": ""
- },
{
"number": 38,
"name": "D38",
@@ -1937,7 +1845,7 @@
"SCL": 4,
"SDA": 3
},
- "image": "boards/feather-esp32s2-reverse-tft/image.svg",
+ "image": "boards/feather-esp32s3-reverse-tft/image.svg",
"totalAnalogPins": 6,
"i2cPorts": [
{
@@ -1946,25 +1854,25 @@
"SCL": 4
}
],
- "totalGPIOPins": 20
+ "totalGPIOPins": 19
},
- "metroesp32s2": {
- "boardName": "metroesp32s2",
- "mcuName": "esp32s2",
+ "feather-esp32s3-tft": {
+ "boardName": "feather-esp32s3-tft",
+ "mcuName": "esp32s3",
"referenceVoltage": 2.6,
- "displayName": "Adafruit Metro ESP32-S2",
+ "displayName": "Adafruit ESP32-S3 TFT Feather",
"vendor": "Adafruit",
- "productURL": "https://www.adafruit.com/product/4775",
- "documentationURL": "https://learn.adafruit.com/adafruit-metro-esp32-s2",
- "installMethod": "uf2",
- "installBoardName": "metroesp32s2",
+ "productURL": "https://www.adafruit.com/product/5483",
+ "documentationURL": "https://learn.adafruit.com/adafruit-esp32-s3-tft-feather",
+ "installMethod": "web-native-usb",
+ "installBoardName": "feather-esp32s3-tft",
"rtc": null,
"sdCardCS": null,
"pins": [
{
"number": 0,
"name": "D0",
- "displayName": "D0 (Boot0 Push Button)",
+ "displayName": "D0 (Boot Btn)",
"hasPWM": false,
"hasServo": false,
"direction": "INPUT"
@@ -1972,7 +1880,7 @@
{
"number": 1,
"name": "D1",
- "displayName": "D1",
+ "displayName": "D1 (UART TX)",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -1980,7 +1888,7 @@
{
"number": 2,
"name": "D2",
- "displayName": "D2",
+ "displayName": "D2 (UART RX)",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -2004,7 +1912,7 @@
{
"number": 5,
"name": "D5",
- "displayName": "D5 (UART TX)",
+ "displayName": "D5",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -2012,7 +1920,7 @@
{
"number": 6,
"name": "D6",
- "displayName": "D6 (UART RX)",
+ "displayName": "D6",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -2068,9 +1976,9 @@
{
"number": 13,
"name": "D13",
- "displayName": "D13",
+ "displayName": "D13 (LED)",
"hasPWM": true,
- "hasServo": true,
+ "hasServo": false,
"direction": ""
},
{
@@ -2082,147 +1990,471 @@
"direction": ""
},
{
- "number": 15,
- "name": "D15",
- "displayName": "D15",
- "hasPWM": true,
- "hasServo": true,
+ "number": 33,
+ "name": "D33",
+ "displayName": "D33 (NeoPixel)",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
- "number": 16,
- "name": "D16",
- "displayName": "D16",
+ "number": 18,
+ "name": "A18",
+ "displayName": "A0",
+ "direction": "",
"hasPWM": true,
- "hasServo": true,
- "direction": ""
+ "hasServo": true
},
{
- "number": 21,
- "name": "D21",
- "displayName": "D21",
+ "number": 17,
+ "name": "A17",
+ "displayName": "A1",
+ "direction": "",
"hasPWM": true,
- "hasServo": true,
- "direction": ""
+ "hasServo": true
},
{
- "number": 42,
- "name": "D42",
- "displayName": "Built-in LED",
+ "number": 16,
+ "name": "A16",
+ "displayName": "A2",
+ "direction": "",
"hasPWM": true,
- "hasServo": false,
- "direction": ""
+ "hasServo": true
},
{
- "number": 45,
- "name": "D45",
- "displayName": "D45 (NeoPixel)",
- "hasPWM": false,
- "hasServo": false,
- "direction": ""
+ "number": 15,
+ "name": "A15",
+ "displayName": "A3",
+ "direction": "",
+ "hasPWM": true,
+ "hasServo": true
}
],
"analogPins": [
{
- "number": 0,
- "name": "A0",
+ "number": 18,
+ "name": "A18",
"displayName": "A0",
"direction": ""
},
{
- "number": 1,
- "name": "A1",
+ "number": 17,
+ "name": "A17",
"displayName": "A1",
"direction": ""
},
{
- "number": 2,
- "name": "A2",
+ "number": 16,
+ "name": "A16",
"displayName": "A2",
"direction": ""
},
{
- "number": 3,
- "name": "A3",
+ "number": 15,
+ "name": "A15",
"displayName": "A3",
"direction": ""
},
{
- "number": 4,
- "name": "A4",
+ "number": 14,
+ "name": "A14",
"displayName": "A4",
"direction": ""
},
{
- "number": 5,
- "name": "A5",
- "displayName": "A5 (IO5)",
+ "number": 8,
+ "name": "A8",
+ "displayName": "A5",
"direction": ""
- },
+ }
+ ],
+ "defaultI2C": {
+ "i2cPortId": 0,
+ "SCL": 41,
+ "SDA": 42
+ },
+ "image": "boards/feather-esp32s3-tft/image.svg",
+ "totalAnalogPins": 6,
+ "i2cPorts": [
{
- "number": 6,
- "name": "A6",
- "displayName": "A6 (IO6)",
+ "i2cPortId": 0,
+ "SDA": 42,
+ "SCL": 41
+ }
+ ],
+ "totalGPIOPins": 20
+ },
+ "funhouse": {
+ "boardName": "funhouse",
+ "mcuName": "esp32s2",
+ "referenceVoltage": 2.6,
+ "displayName": "Adafruit Funhouse ESP32-S2",
+ "vendor": "Adafruit",
+ "productURL": "https://www.adafruit.com/product/4985",
+ "documentationURL": "https://learn.adafruit.com/adafruit-funhouse",
+ "installMethod": "web-native-usb",
+ "installBoardName": "funhouse_noota",
+ "rtc": null,
+ "sdCardCS": null,
+ "pins": [
+ {
+ "number": 5,
+ "name": "D5",
+ "displayName": "Button Up",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
- "number": 7,
- "name": "A7",
- "displayName": "A7 (IO7)",
+ "number": 3,
+ "name": "D3",
+ "displayName": "Button Down",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
- "number": 8,
- "name": "A8",
- "displayName": "A8 (IO8)",
+ "number": 4,
+ "name": "D4",
+ "displayName": "Button Select",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
- "number": 9,
- "name": "A9",
- "displayName": "A9 (IO9)",
+ "number": 17,
+ "name": "D17",
+ "displayName": "D17 (A0)",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
- "number": 10,
- "name": "A10",
- "displayName": "A10 (IO10)",
+ "number": 2,
+ "name": "D2",
+ "displayName": "D2 (A1)",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
- "number": 11,
- "name": "A11",
- "displayName": "A11 (IO11)",
+ "number": 1,
+ "name": "D1",
+ "displayName": "D1 (A2)",
+ "hasPWM": true,
+ "hasServo": true,
+ "direction": ""
+ },
+ {
+ "number": 6,
+ "name": "D6",
+ "displayName": "D6",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 7,
+ "name": "D7",
+ "displayName": "D7",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 8,
+ "name": "D8",
+ "displayName": "D8",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 9,
+ "name": "D9",
+ "displayName": "D9",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 10,
+ "name": "D10",
+ "displayName": "D10",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 11,
+ "name": "D11",
+ "displayName": "D11",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
"number": 12,
- "name": "A12",
- "displayName": "A12 (IO12)",
+ "name": "D12",
+ "displayName": "D12",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
"number": 13,
- "name": "A13",
- "displayName": "A13 (IO13)",
+ "name": "D13",
+ "displayName": "D13",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
"number": 14,
- "name": "A14",
- "displayName": "A14 (IO14)",
+ "name": "D14",
+ "displayName": "D14 (DotStar Data)",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
"number": 15,
- "name": "A15",
- "displayName": "A15 (IO15)",
+ "name": "D15",
+ "displayName": "D15 (DotStar Clock)",
+ "hasPWM": false,
+ "hasServo": false,
"direction": ""
},
{
"number": 16,
- "name": "A16",
- "displayName": "A16 (IO16)",
+ "name": "D16",
+ "displayName": "PIR Sensor",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 42,
+ "name": "D42",
+ "displayName": "Speaker/Piezo",
+ "hasPWM": true,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 44,
+ "name": "D44",
+ "displayName": "D44 (UART RX)",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 43,
+ "name": "D43",
+ "displayName": "D43 (UART TX)",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 18,
+ "name": "A18",
+ "displayName": "Light Sensor",
+ "direction": "",
+ "hasPWM": true,
+ "hasServo": true
+ }
+ ],
+ "analogPins": [
+ {
+ "number": 17,
+ "name": "A17",
+ "displayName": "A0",
+ "direction": ""
+ },
+ {
+ "number": 2,
+ "name": "A2",
+ "displayName": "A1",
+ "direction": ""
+ },
+ {
+ "number": 1,
+ "name": "A1",
+ "displayName": "A2",
+ "direction": ""
+ },
+ {
+ "number": 18,
+ "name": "A18",
+ "displayName": "Light Sensor",
+ "direction": ""
+ }
+ ],
+ "defaultI2C": {
+ "i2cPortId": 0,
+ "SCL": 33,
+ "SDA": 34
+ },
+ "image": "boards/funhouse/image.svg",
+ "totalAnalogPins": 4,
+ "i2cPorts": [
+ {
+ "i2cPortId": 0,
+ "SDA": 34,
+ "SCL": 33
+ }
+ ],
+ "totalGPIOPins": 21
+ },
+ "magtag": {
+ "boardName": "magtag",
+ "mcuName": "esp32s2",
+ "referenceVoltage": 2.6,
+ "displayName": "Adafruit MagTag \"2.9\"",
+ "vendor": "Adafruit",
+ "productURL": "https://www.adafruit.com/product/4800",
+ "documentationURL": "https://learn.adafruit.com/adafruit-magtag",
+ "installMethod": "web-native-usb",
+ "installBoardName": "magtag",
+ "rtc": null,
+ "sdCardCS": null,
+ "pins": [
+ {
+ "number": 1,
+ "name": "D1",
+ "displayName": "D1 (NeoPixel)",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 15,
+ "name": "D15",
+ "displayName": "Button A",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 14,
+ "name": "D14",
+ "displayName": "Button B",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 12,
+ "name": "D12",
+ "displayName": "Button C",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 11,
+ "name": "D11",
+ "displayName": "Button D",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 10,
+ "name": "D10",
+ "displayName": "D10",
+ "hasPWM": true,
+ "hasServo": true,
+ "direction": ""
+ },
+ {
+ "number": 18,
+ "name": "D18",
+ "displayName": "D18 (A1)",
+ "hasPWM": true,
+ "hasServo": true,
+ "direction": ""
+ },
+ {
+ "number": 13,
+ "name": "D13",
+ "displayName": "Built-in LED",
+ "hasPWM": true,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 43,
+ "name": "D43",
+ "displayName": "D43 (UART TX)",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 44,
+ "name": "D44",
+ "displayName": "D44 (UART RX)",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
+ },
+ {
+ "number": 17,
+ "name": "A17",
+ "displayName": "Piezo Speaker (A0)",
+ "direction": "",
+ "hasPWM": true,
+ "hasServo": true
+ },
+ {
+ "number": 3,
+ "name": "A3",
+ "displayName": "Light Sensor (A3)",
+ "direction": "",
+ "hasPWM": true,
+ "hasServo": true
+ },
+ {
+ "number": 4,
+ "name": "A4",
+ "displayName": "Voltage Monitor (A4)",
+ "direction": "",
+ "hasPWM": true,
+ "hasServo": true
+ }
+ ],
+ "analogPins": [
+ {
+ "number": 17,
+ "name": "A17",
+ "displayName": "Piezo Speaker (A0)",
+ "direction": ""
+ },
+ {
+ "number": 10,
+ "name": "A10",
+ "displayName": "D10",
+ "direction": ""
+ },
+ {
+ "number": 18,
+ "name": "A18",
+ "displayName": "A1 (D18)",
+ "direction": ""
+ },
+ {
+ "number": 3,
+ "name": "A3",
+ "displayName": "Light Sensor (A3)",
+ "direction": ""
+ },
+ {
+ "number": 4,
+ "name": "A4",
+ "displayName": "Voltage Monitor (A4)",
"direction": ""
}
],
@@ -2231,8 +2463,8 @@
"SCL": 34,
"SDA": 33
},
- "image": "boards/metroesp32s2/image.svg",
- "totalAnalogPins": 17,
+ "image": "boards/magtag/image.svg",
+ "totalAnalogPins": 5,
"i2cPorts": [
{
"i2cPortId": 0,
@@ -2240,41 +2472,33 @@
"SCL": 34
}
],
- "totalGPIOPins": 20
+ "totalGPIOPins": 13
},
- "metroesp32s3": {
- "boardName": "metroesp32s3",
- "mcuName": "esp32s3",
+ "metroesp32s2": {
+ "boardName": "metroesp32s2",
+ "mcuName": "esp32s2",
"referenceVoltage": 2.6,
- "displayName": "Adafruit Metro ESP32-S3",
+ "displayName": "Adafruit Metro ESP32-S2",
"vendor": "Adafruit",
- "productURL": "https://www.adafruit.com/product/5500",
- "documentationURL": "https://learn.adafruit.com/adafruit-metro-esp32-s3",
- "installMethod": "uf2",
- "installBoardName": "metro_esp32s3",
+ "productURL": "https://www.adafruit.com/product/4775",
+ "documentationURL": "https://learn.adafruit.com/adafruit-metro-esp32-s2",
+ "installMethod": "web-native-usb",
+ "installBoardName": "metroesp32s2",
"rtc": null,
- "sdCardCS": 45,
+ "sdCardCS": null,
"pins": [
{
"number": 0,
"name": "D0",
- "displayName": "Built-in Button (Boot0)",
+ "displayName": "D0 (Boot0 Push Button)",
"hasPWM": false,
"hasServo": false,
"direction": "INPUT"
},
{
- "number": 40,
- "name": "D40",
- "displayName": "D1 (UART TX)",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 41,
- "name": "D41",
- "displayName": "D1 (UART RX)",
+ "number": 1,
+ "name": "D1",
+ "displayName": "D1",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -2306,7 +2530,7 @@
{
"number": 5,
"name": "D5",
- "displayName": "D5",
+ "displayName": "D5 (UART TX)",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -2314,7 +2538,7 @@
{
"number": 6,
"name": "D6",
- "displayName": "D6",
+ "displayName": "D6 (UART RX)",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -2370,23 +2594,7 @@
{
"number": 13,
"name": "D13",
- "displayName": "D13 (Built-in LED)",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 47,
- "name": "D47",
- "displayName": "D47 (SDA)",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 48,
- "name": "D48",
- "displayName": "D48 (SCL)",
+ "displayName": "D13",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -2394,7 +2602,7 @@
{
"number": 14,
"name": "D14",
- "displayName": "A0 (GPIO14)",
+ "displayName": "D14",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -2402,7 +2610,7 @@
{
"number": 15,
"name": "D15",
- "displayName": "A1 (GPIO15)",
+ "displayName": "D15",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -2410,31 +2618,7 @@
{
"number": 16,
"name": "D16",
- "displayName": "A2 (GPIO16)",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 17,
- "name": "D17",
- "displayName": "A3 (GPIO17)",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 18,
- "name": "D18",
- "displayName": "A4 (GPIO18)",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 1,
- "name": "D1",
- "displayName": "A5 (GPIO1)",
+ "displayName": "D16",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -2442,7 +2626,7 @@
{
"number": 21,
"name": "D21",
- "displayName": "D21 (MISO)",
+ "displayName": "D21",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -2450,23 +2634,15 @@
{
"number": 42,
"name": "D42",
- "displayName": "D42 (MOSI)",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 39,
- "name": "D39",
- "displayName": "D39 (SCK)",
+ "displayName": "Built-in LED",
"hasPWM": true,
- "hasServo": true,
+ "hasServo": false,
"direction": ""
},
{
- "number": 46,
- "name": "D46",
- "displayName": "D46 (NeoPixel)",
+ "number": 45,
+ "name": "D45",
+ "displayName": "D45 (NeoPixel)",
"hasPWM": false,
"hasServo": false,
"direction": ""
@@ -2474,187 +2650,181 @@
],
"analogPins": [
{
- "number": 14,
- "name": "A14",
- "displayName": "A0 (GPIO14)",
- "direction": ""
- },
- {
- "number": 15,
- "name": "A15",
- "displayName": "A1 (GPIO15)",
- "direction": ""
- },
- {
- "number": 16,
- "name": "A16",
- "displayName": "A2 (GPIO16)",
- "direction": ""
- },
- {
- "number": 17,
- "name": "A17",
- "displayName": "A3 (GPIO17)",
- "direction": ""
- },
- {
- "number": 18,
- "name": "A18",
- "displayName": "A4 (GPIO18)",
+ "number": 0,
+ "name": "A0",
+ "displayName": "A0",
"direction": ""
},
{
"number": 1,
"name": "A1",
- "displayName": "A5 (GPIO1)",
+ "displayName": "A1",
"direction": ""
},
{
"number": 2,
"name": "A2",
- "displayName": "D2 (GPIO2)",
+ "displayName": "A2",
"direction": ""
},
{
"number": 3,
"name": "A3",
- "displayName": "D3 (GPIO3)",
+ "displayName": "A3",
"direction": ""
},
{
"number": 4,
"name": "A4",
- "displayName": "D4 (GPIO4)",
+ "displayName": "A4",
"direction": ""
},
{
"number": 5,
"name": "A5",
- "displayName": "D5 (GPIO5)",
+ "displayName": "A5 (IO5)",
"direction": ""
},
{
"number": 6,
"name": "A6",
- "displayName": "D6 (GPIO6)",
+ "displayName": "A6 (IO6)",
"direction": ""
},
{
"number": 7,
"name": "A7",
- "displayName": "D7 (GPIO7)",
+ "displayName": "A7 (IO7)",
"direction": ""
},
{
"number": 8,
"name": "A8",
- "displayName": "D8 (GPIO8)",
+ "displayName": "A8 (IO8)",
"direction": ""
},
{
"number": 9,
"name": "A9",
- "displayName": "D9 (GPIO9)",
+ "displayName": "A9 (IO9)",
"direction": ""
},
{
"number": 10,
"name": "A10",
- "displayName": "D10 (GPIO10)",
+ "displayName": "A10 (IO10)",
"direction": ""
},
{
"number": 11,
"name": "A11",
- "displayName": "D11 (GPIO11)",
+ "displayName": "A11 (IO11)",
"direction": ""
},
{
"number": 12,
"name": "A12",
- "displayName": "D12 (GPIO12)",
+ "displayName": "A12 (IO12)",
"direction": ""
},
{
"number": 13,
"name": "A13",
- "displayName": "D13 (GPIO13)",
+ "displayName": "A13 (IO13)",
+ "direction": ""
+ },
+ {
+ "number": 14,
+ "name": "A14",
+ "displayName": "A14 (IO14)",
+ "direction": ""
+ },
+ {
+ "number": 15,
+ "name": "A15",
+ "displayName": "A15 (IO15)",
+ "direction": ""
+ },
+ {
+ "number": 16,
+ "name": "A16",
+ "displayName": "A16 (IO16)",
"direction": ""
}
],
"defaultI2C": {
"i2cPortId": 0,
- "SCL": 48,
- "SDA": 47
+ "SCL": 34,
+ "SDA": 33
},
- "image": "boards/metroesp32s3/image.png",
- "totalAnalogPins": 18,
+ "image": "boards/metroesp32s2/image.svg",
+ "totalAnalogPins": 17,
"i2cPorts": [
{
"i2cPortId": 0,
- "SDA": 47,
- "SCL": 48
+ "SDA": 33,
+ "SCL": 34
}
],
- "totalGPIOPins": 27
+ "totalGPIOPins": 20
},
- "qtpy-esp32s2": {
- "boardName": "qtpy-esp32s2",
- "mcuName": "esp32s2",
+ "metroesp32s3": {
+ "boardName": "metroesp32s3",
+ "mcuName": "esp32s3",
"referenceVoltage": 2.6,
- "displayName": "Adafruit QT Py ESP32-S2",
+ "displayName": "Adafruit Metro ESP32-S3",
"vendor": "Adafruit",
- "productURL": "https://www.adafruit.com/product/5325",
- "documentationURL": "https://learn.adafruit.com/adafruit-qt-py-esp32-s2",
+ "productURL": "https://www.adafruit.com/product/5500",
+ "documentationURL": "https://learn.adafruit.com/adafruit-metro-esp32-s3",
"installMethod": "uf2",
- "installBoardName": "qtpy-esp32s2",
+ "installBoardName": "metro_esp32s3",
"rtc": null,
- "sdCardCS": null,
+ "sdCardCS": 45,
"pins": [
{
- "number": 18,
- "name": "D18",
- "displayName": "A0",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
+ "number": 0,
+ "name": "D0",
+ "displayName": "Built-in Button (Boot0)",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": "INPUT"
},
{
- "number": 17,
- "name": "D17",
- "displayName": "A1",
+ "number": 40,
+ "name": "D40",
+ "displayName": "D1 (UART TX)",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 9,
- "name": "D9",
- "displayName": "A2",
+ "number": 41,
+ "name": "D41",
+ "displayName": "D1 (UART RX)",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 8,
- "name": "D8",
- "displayName": "A3",
+ "number": 2,
+ "name": "D2",
+ "displayName": "D2",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 7,
- "name": "D7",
- "displayName": "SDA",
+ "number": 3,
+ "name": "D3",
+ "displayName": "D3",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 6,
- "name": "D6",
- "displayName": "SCL",
+ "number": 4,
+ "name": "D4",
+ "displayName": "D4",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -2662,407 +2832,347 @@
{
"number": 5,
"name": "D5",
- "displayName": "D5 (UART TX)",
+ "displayName": "D5",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 35,
- "name": "D35",
- "displayName": "MOSI",
+ "number": 6,
+ "name": "D6",
+ "displayName": "D6",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 37,
- "name": "D37",
- "displayName": "MISO",
+ "number": 7,
+ "name": "D7",
+ "displayName": "D7",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 36,
- "name": "D36",
- "displayName": "SCK",
+ "number": 8,
+ "name": "D8",
+ "displayName": "D8",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 16,
- "name": "D16",
- "displayName": "D16 (UART RX)",
+ "number": 9,
+ "name": "D9",
+ "displayName": "D9",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 0,
- "name": "D0",
- "displayName": "Boot Pushbutton",
- "hasPWM": false,
- "hasServo": false,
- "direction": "INPUT"
- },
- {
- "number": 39,
- "name": "D39",
- "displayName": "D39 (NeoPixel)",
- "hasPWM": false,
- "hasServo": false,
+ "number": 10,
+ "name": "D10",
+ "displayName": "D10",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
- }
- ],
- "analogPins": [
+ },
{
- "number": 18,
- "name": "A18",
- "displayName": "A0",
+ "number": 11,
+ "name": "D11",
+ "displayName": "D11",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
- "number": 17,
- "name": "A17",
- "displayName": "A1",
+ "number": 12,
+ "name": "D12",
+ "displayName": "D12",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
- "number": 9,
- "name": "A9",
- "displayName": "A2",
+ "number": 13,
+ "name": "D13",
+ "displayName": "D13 (Built-in LED)",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
- "number": 8,
- "name": "A8",
- "displayName": "A3",
+ "number": 47,
+ "name": "D47",
+ "displayName": "D47 (SDA)",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
- "number": 7,
- "name": "A7",
- "displayName": "SDA",
+ "number": 48,
+ "name": "D48",
+ "displayName": "D48 (SCL)",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
- "number": 6,
- "name": "A6",
- "displayName": "SCL",
+ "number": 14,
+ "name": "D14",
+ "displayName": "A0 (GPIO14)",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
- "number": 5,
- "name": "A5",
- "displayName": "A5 (UART TX)",
+ "number": 15,
+ "name": "D15",
+ "displayName": "A1 (GPIO15)",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
"number": 16,
- "name": "A16",
- "displayName": "A16 (UART RX)",
- "direction": ""
- }
- ],
- "defaultI2C": {
- "i2cPortId": 0,
- "SCL": 40,
- "SDA": 41
- },
- "image": "boards/qtpy-esp32s2/image.svg",
- "totalAnalogPins": 8,
- "i2cPorts": [
- {
- "i2cPortId": 0,
- "SDA": 41,
- "SCL": 40
- }
- ],
- "totalGPIOPins": 13
- },
- "funhouse": {
- "boardName": "funhouse",
- "mcuName": "esp32s2",
- "referenceVoltage": 2.6,
- "displayName": "Adafruit Funhouse ESP32-S2",
- "vendor": "Adafruit",
- "productURL": "https://www.adafruit.com/product/4985",
- "documentationURL": "https://learn.adafruit.com/adafruit-funhouse",
- "installMethod": "web-native-usb",
- "installBoardName": "funhouse_noota",
- "rtc": null,
- "sdCardCS": null,
- "pins": [
- {
- "number": 5,
- "name": "D5",
- "displayName": "Button Up",
- "hasPWM": false,
- "hasServo": false,
+ "name": "D16",
+ "displayName": "A2 (GPIO16)",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
- "number": 3,
- "name": "D3",
- "displayName": "Button Down",
- "hasPWM": false,
- "hasServo": false,
+ "number": 17,
+ "name": "D17",
+ "displayName": "A3 (GPIO17)",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
- "number": 4,
- "name": "D4",
- "displayName": "Button Select",
- "hasPWM": false,
- "hasServo": false,
+ "number": 18,
+ "name": "D18",
+ "displayName": "A4 (GPIO18)",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
- "number": 17,
- "name": "D17",
- "displayName": "D17 (A0)",
+ "number": 1,
+ "name": "D1",
+ "displayName": "A5 (GPIO1)",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 2,
- "name": "D2",
- "displayName": "D2 (A1)",
+ "number": 21,
+ "name": "D21",
+ "displayName": "D21 (MISO)",
+ "hasPWM": true,
+ "hasServo": true,
+ "direction": ""
+ },
+ {
+ "number": 42,
+ "name": "D42",
+ "displayName": "D42 (MOSI)",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 1,
- "name": "D1",
- "displayName": "D1 (A2)",
+ "number": 39,
+ "name": "D39",
+ "displayName": "D39 (SCK)",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 6,
- "name": "D6",
- "displayName": "D6",
+ "number": 46,
+ "name": "D46",
+ "displayName": "D46 (NeoPixel)",
"hasPWM": false,
"hasServo": false,
"direction": ""
- },
+ }
+ ],
+ "analogPins": [
{
- "number": 7,
- "name": "D7",
- "displayName": "D7",
- "hasPWM": false,
- "hasServo": false,
+ "number": 14,
+ "name": "A14",
+ "displayName": "A0 (GPIO14)",
"direction": ""
},
{
- "number": 8,
- "name": "D8",
- "displayName": "D8",
- "hasPWM": false,
- "hasServo": false,
+ "number": 15,
+ "name": "A15",
+ "displayName": "A1 (GPIO15)",
"direction": ""
},
{
- "number": 9,
- "name": "D9",
- "displayName": "D9",
- "hasPWM": false,
- "hasServo": false,
+ "number": 16,
+ "name": "A16",
+ "displayName": "A2 (GPIO16)",
"direction": ""
},
{
- "number": 10,
- "name": "D10",
- "displayName": "D10",
- "hasPWM": false,
- "hasServo": false,
+ "number": 17,
+ "name": "A17",
+ "displayName": "A3 (GPIO17)",
"direction": ""
},
{
- "number": 11,
- "name": "D11",
- "displayName": "D11",
- "hasPWM": false,
- "hasServo": false,
+ "number": 18,
+ "name": "A18",
+ "displayName": "A4 (GPIO18)",
"direction": ""
},
{
- "number": 12,
- "name": "D12",
- "displayName": "D12",
- "hasPWM": false,
- "hasServo": false,
+ "number": 1,
+ "name": "A1",
+ "displayName": "A5 (GPIO1)",
"direction": ""
},
{
- "number": 13,
- "name": "D13",
- "displayName": "D13",
- "hasPWM": false,
- "hasServo": false,
+ "number": 2,
+ "name": "A2",
+ "displayName": "D2 (GPIO2)",
"direction": ""
},
{
- "number": 14,
- "name": "D14",
- "displayName": "D14 (DotStar Data)",
- "hasPWM": false,
- "hasServo": false,
+ "number": 3,
+ "name": "A3",
+ "displayName": "D3 (GPIO3)",
"direction": ""
},
{
- "number": 15,
- "name": "D15",
- "displayName": "D15 (DotStar Clock)",
- "hasPWM": false,
- "hasServo": false,
+ "number": 4,
+ "name": "A4",
+ "displayName": "D4 (GPIO4)",
"direction": ""
},
{
- "number": 16,
- "name": "D16",
- "displayName": "PIR Sensor",
- "hasPWM": false,
- "hasServo": false,
+ "number": 5,
+ "name": "A5",
+ "displayName": "D5 (GPIO5)",
"direction": ""
},
{
- "number": 42,
- "name": "D42",
- "displayName": "Speaker/Piezo",
- "hasPWM": true,
- "hasServo": false,
+ "number": 6,
+ "name": "A6",
+ "displayName": "D6 (GPIO6)",
"direction": ""
},
{
- "number": 44,
- "name": "D44",
- "displayName": "D44 (UART RX)",
- "hasPWM": false,
- "hasServo": false,
+ "number": 7,
+ "name": "A7",
+ "displayName": "D7 (GPIO7)",
"direction": ""
},
{
- "number": 43,
- "name": "D43",
- "displayName": "D43 (UART TX)",
- "hasPWM": false,
- "hasServo": false,
+ "number": 8,
+ "name": "A8",
+ "displayName": "D8 (GPIO8)",
"direction": ""
},
{
- "number": 18,
- "name": "A18",
- "displayName": "Light Sensor",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
- }
- ],
- "analogPins": [
+ "number": 9,
+ "name": "A9",
+ "displayName": "D9 (GPIO9)",
+ "direction": ""
+ },
{
- "number": 17,
- "name": "A17",
- "displayName": "A0",
+ "number": 10,
+ "name": "A10",
+ "displayName": "D10 (GPIO10)",
"direction": ""
},
{
- "number": 2,
- "name": "A2",
- "displayName": "A1",
+ "number": 11,
+ "name": "A11",
+ "displayName": "D11 (GPIO11)",
"direction": ""
},
{
- "number": 1,
- "name": "A1",
- "displayName": "A2",
+ "number": 12,
+ "name": "A12",
+ "displayName": "D12 (GPIO12)",
"direction": ""
},
{
- "number": 18,
- "name": "A18",
- "displayName": "Light Sensor",
+ "number": 13,
+ "name": "A13",
+ "displayName": "D13 (GPIO13)",
"direction": ""
}
],
"defaultI2C": {
"i2cPortId": 0,
- "SCL": 33,
- "SDA": 34
+ "SCL": 48,
+ "SDA": 47
},
- "image": "boards/funhouse/image.svg",
- "totalAnalogPins": 4,
+ "image": "boards/metroesp32s3/image.png",
+ "totalAnalogPins": 18,
"i2cPorts": [
{
"i2cPortId": 0,
- "SDA": 34,
- "SCL": 33
+ "SDA": 47,
+ "SCL": 48
}
],
- "totalGPIOPins": 21
+ "totalGPIOPins": 27
},
- "feather-esp32s2-tft": {
- "boardName": "feather-esp32s2-tft",
+ "qtpy-esp32s2": {
+ "boardName": "qtpy-esp32s2",
"mcuName": "esp32s2",
"referenceVoltage": 2.6,
- "displayName": "Adafruit ESP32-S2 TFT Feather",
+ "displayName": "Adafruit QT Py ESP32-S2",
"vendor": "Adafruit",
- "productURL": "https://www.adafruit.com/product/5300",
- "documentationURL": "https://learn.adafruit.com/adafruit-esp32-s2-tft-feather",
- "installMethod": "uf2",
- "installBoardName": "feather-esp32s2-tft",
+ "productURL": "https://www.adafruit.com/product/5325",
+ "documentationURL": "https://learn.adafruit.com/adafruit-qt-py-esp32-s2",
+ "installMethod": "web-native-usb",
+ "installBoardName": "qtpy-esp32s2",
"rtc": null,
"sdCardCS": null,
"pins": [
{
- "number": 0,
- "name": "D0",
- "displayName": "D0 (Boot Push Button)",
- "hasPWM": false,
- "hasServo": false,
- "direction": "INPUT"
- },
- {
- "number": 1,
- "name": "D1",
- "displayName": "D1 (UART TX)",
+ "number": 18,
+ "name": "D18",
+ "displayName": "A0",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 2,
- "name": "D2",
- "displayName": "D2 (UART RX)",
+ "number": 17,
+ "name": "D17",
+ "displayName": "A1",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 3,
- "name": "D3",
- "displayName": "D3",
+ "number": 9,
+ "name": "D9",
+ "displayName": "A2",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 4,
- "name": "D4",
- "displayName": "D4",
+ "number": 8,
+ "name": "D8",
+ "displayName": "A3",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 5,
- "name": "D5",
- "displayName": "D5",
+ "number": 7,
+ "name": "D7",
+ "displayName": "SDA",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3070,227 +3180,159 @@
{
"number": 6,
"name": "D6",
- "displayName": "D6",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 9,
- "name": "D9",
- "displayName": "D9",
+ "displayName": "SCL",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 10,
- "name": "D10",
- "displayName": "D10",
+ "number": 5,
+ "name": "D5",
+ "displayName": "D5 (UART TX)",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 11,
- "name": "D11",
- "displayName": "D11",
+ "number": 35,
+ "name": "D35",
+ "displayName": "MOSI",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 12,
- "name": "D12",
- "displayName": "D12",
+ "number": 37,
+ "name": "D37",
+ "displayName": "MISO",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 13,
- "name": "D13",
- "displayName": "D13 (LED)",
+ "number": 36,
+ "name": "D36",
+ "displayName": "SCK",
"hasPWM": true,
- "hasServo": false,
+ "hasServo": true,
"direction": ""
},
{
- "number": 33,
- "name": "D33",
- "displayName": "D33 (NeoPixel)",
- "hasPWM": false,
- "hasServo": false,
+ "number": 16,
+ "name": "D16",
+ "displayName": "D16 (UART RX)",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
- "number": 38,
- "name": "D38",
- "displayName": "D38 (UART RX)",
+ "number": 0,
+ "name": "D0",
+ "displayName": "Boot Pushbutton",
"hasPWM": false,
"hasServo": false,
- "direction": ""
+ "direction": "INPUT"
},
{
"number": 39,
"name": "D39",
- "displayName": "D39 (UART TX)",
+ "displayName": "D39 (NeoPixel)",
"hasPWM": false,
"hasServo": false,
"direction": ""
- },
+ }
+ ],
+ "analogPins": [
{
"number": 18,
"name": "A18",
"displayName": "A0",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
+ "direction": ""
},
{
"number": 17,
"name": "A17",
"displayName": "A1",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
+ "direction": ""
},
{
- "number": 16,
- "name": "A16",
+ "number": 9,
+ "name": "A9",
"displayName": "A2",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
- },
- {
- "number": 15,
- "name": "A15",
- "displayName": "A3",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
- },
- {
- "number": 14,
- "name": "A14",
- "displayName": "A4",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
+ "direction": ""
},
{
"number": 8,
"name": "A8",
- "displayName": "A5",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
- }
- ],
- "analogPins": [
- {
- "number": 18,
- "name": "A18",
- "displayName": "A0",
- "direction": ""
- },
- {
- "number": 17,
- "name": "A17",
- "displayName": "A1",
+ "displayName": "A3",
"direction": ""
},
{
- "number": 16,
- "name": "A16",
- "displayName": "A2",
+ "number": 7,
+ "name": "A7",
+ "displayName": "SDA",
"direction": ""
},
{
- "number": 15,
- "name": "A15",
- "displayName": "A3",
+ "number": 6,
+ "name": "A6",
+ "displayName": "SCL",
"direction": ""
},
{
- "number": 14,
- "name": "A14",
- "displayName": "A4",
+ "number": 5,
+ "name": "A5",
+ "displayName": "A5 (UART TX)",
"direction": ""
},
{
- "number": 8,
- "name": "A8",
- "displayName": "A5",
+ "number": 16,
+ "name": "A16",
+ "displayName": "A16 (UART RX)",
"direction": ""
}
],
"defaultI2C": {
"i2cPortId": 0,
- "SCL": 41,
- "SDA": 42
+ "SCL": 40,
+ "SDA": 41
},
- "image": "boards/feather-esp32s2-tft/image.svg",
- "totalAnalogPins": 6,
+ "image": "boards/qtpy-esp32s2/image.svg",
+ "totalAnalogPins": 8,
"i2cPorts": [
{
"i2cPortId": 0,
- "SDA": 42,
- "SCL": 41
+ "SDA": 41,
+ "SCL": 40
}
],
- "totalGPIOPins": 21
+ "totalGPIOPins": 13
},
- "feather-esp32s3-reverse-tft": {
- "boardName": "feather-esp32s3-reverse-tft",
+ "qtpy-esp32s3": {
+ "boardName": "qtpy-esp32s3",
"mcuName": "esp32s3",
"referenceVoltage": 2.6,
- "displayName": "ESP32-S3 Reverse TFT Feather",
+ "displayName": "Adafruit QT Py ESP32-S3 (NO PSRAM)",
"vendor": "Adafruit",
- "productURL": "https://www.adafruit.com/product/5691",
- "documentationURL": "https://learn.adafruit.com/esp32-s3-reverse-tft-feather",
+ "productURL": "https://www.adafruit.com/product/5426",
+ "documentationURL": "https://learn.adafruit.com/adafruit-qt-py-esp32-s3",
"installMethod": "uf2",
- "installBoardName": "feather-esp32s3-reverse-tft",
+ "installBoardName": "qtpy-esp32s3",
"rtc": null,
"sdCardCS": null,
"pins": [
{
- "number": 0,
- "name": "D0",
- "displayName": "D0 (Boot Push Button)",
- "hasPWM": false,
- "hasServo": false,
- "direction": "INPUT"
- },
- {
- "number": 1,
- "name": "D1",
- "displayName": "D1 Push Button",
- "hasPWM": false,
- "hasServo": false,
- "direction": ""
- },
- {
- "number": 2,
- "name": "D2",
- "displayName": "D2 Push Button",
- "hasPWM": false,
- "hasServo": false,
- "direction": ""
- },
- {
- "number": 5,
- "name": "D5",
- "displayName": "D5",
+ "number": 18,
+ "name": "D18",
+ "displayName": "A0",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 6,
- "name": "D6",
- "displayName": "D6",
+ "number": 17,
+ "name": "D17",
+ "displayName": "A1",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3298,114 +3340,90 @@
{
"number": 9,
"name": "D9",
- "displayName": "D9",
+ "displayName": "A2",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 10,
- "name": "D10",
- "displayName": "D10",
+ "number": 8,
+ "name": "D8",
+ "displayName": "A3",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 11,
- "name": "D11",
- "displayName": "D11",
+ "number": 7,
+ "name": "D7",
+ "displayName": "SDA",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 12,
- "name": "D12",
- "displayName": "D12",
+ "number": 6,
+ "name": "D6",
+ "displayName": "SCL",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 13,
- "name": "D13",
- "displayName": "D13 (LED)",
+ "number": 5,
+ "name": "D5",
+ "displayName": "D5 (UART TX)",
"hasPWM": true,
- "hasServo": false,
- "direction": ""
- },
- {
- "number": 33,
- "name": "D33",
- "displayName": "D33 (NeoPixel)",
- "hasPWM": false,
- "hasServo": false,
- "direction": ""
- },
- {
- "number": 38,
- "name": "D38",
- "displayName": "D38 (UART RX)",
- "hasPWM": false,
- "hasServo": false,
+ "hasServo": true,
"direction": ""
},
{
- "number": 39,
- "name": "D39",
- "displayName": "D39 (UART TX)",
- "hasPWM": false,
- "hasServo": false,
+ "number": 35,
+ "name": "D35",
+ "displayName": "MOSI",
+ "hasPWM": true,
+ "hasServo": true,
"direction": ""
},
{
- "number": 18,
- "name": "A18",
- "displayName": "A0",
- "direction": "",
+ "number": 37,
+ "name": "D37",
+ "displayName": "MISO",
"hasPWM": true,
- "hasServo": true
+ "hasServo": true,
+ "direction": ""
},
{
- "number": 17,
- "name": "A17",
- "displayName": "A1",
- "direction": "",
+ "number": 36,
+ "name": "D36",
+ "displayName": "SCK",
"hasPWM": true,
- "hasServo": true
+ "hasServo": true,
+ "direction": ""
},
{
"number": 16,
- "name": "A16",
- "displayName": "A2",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
- },
- {
- "number": 15,
- "name": "A15",
- "displayName": "A3",
- "direction": "",
+ "name": "D16",
+ "displayName": "D16 (UART RX)",
"hasPWM": true,
- "hasServo": true
+ "hasServo": true,
+ "direction": ""
},
{
- "number": 14,
- "name": "A14",
- "displayName": "A4",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
+ "number": 0,
+ "name": "D0",
+ "displayName": "Boot Pushbutton",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": "INPUT"
},
{
- "number": 8,
- "name": "A8",
- "displayName": "A5",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
+ "number": 39,
+ "name": "D39",
+ "displayName": "D39 (NeoPixel)",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
}
],
"analogPins": [
@@ -3422,111 +3440,99 @@
"direction": ""
},
{
- "number": 16,
- "name": "A16",
+ "number": 9,
+ "name": "A9",
"displayName": "A2",
"direction": ""
},
{
- "number": 15,
- "name": "A15",
+ "number": 8,
+ "name": "A8",
"displayName": "A3",
"direction": ""
},
{
- "number": 14,
- "name": "A14",
- "displayName": "A4",
+ "number": 7,
+ "name": "A7",
+ "displayName": "SDA",
"direction": ""
},
{
- "number": 8,
- "name": "A8",
- "displayName": "A5",
+ "number": 6,
+ "name": "A6",
+ "displayName": "SCL",
+ "direction": ""
+ },
+ {
+ "number": 5,
+ "name": "A5",
+ "displayName": "A5 (UART TX)",
+ "direction": ""
+ },
+ {
+ "number": 16,
+ "name": "A16",
+ "displayName": "A16 (UART RX)",
"direction": ""
}
],
"defaultI2C": {
"i2cPortId": 0,
- "SCL": 4,
- "SDA": 3
+ "SCL": 40,
+ "SDA": 41
},
- "image": "boards/feather-esp32s3-reverse-tft/image.svg",
- "totalAnalogPins": 6,
+ "image": "boards/qtpy-esp32s3/image.svg",
+ "totalAnalogPins": 8,
"i2cPorts": [
{
"i2cPortId": 0,
- "SDA": 3,
- "SCL": 4
+ "SDA": 41,
+ "SCL": 40
}
],
- "totalGPIOPins": 19
+ "totalGPIOPins": 13
},
- "feather-esp32s3-4mbflash-2mbpsram": {
- "boardName": "feather-esp32s3-4mbflash-2mbpsram",
+ "qtpy-esp32s3-n4r2": {
+ "boardName": "qtpy-esp32s3-n4r2",
"mcuName": "esp32s3",
"referenceVoltage": 2.6,
- "displayName": "Adafruit ESP32-S3 Feather with 4MB Flash 2MB PSRAM",
+ "displayName": "Adafruit QT Py S3 (2MB PSRAM)",
"vendor": "Adafruit",
- "productURL": "https://www.adafruit.com/product/5477",
- "documentationURL": "https://learn.adafruit.com/adafruit-esp32-s3-feather",
- "installMethod": "uf2",
- "installBoardName": "feather-esp32s3-4mbflash-2mbpsram",
+ "productURL": "https://www.adafruit.com/product/5700",
+ "documentationURL": "https://learn.adafruit.com/adafruit-qt-py-esp32-s3",
+ "installMethod": "web-native-usb",
+ "installBoardName": "qtpy-esp32s3-n4r2",
"rtc": null,
"sdCardCS": null,
"pins": [
{
- "number": 0,
- "name": "D0",
- "displayName": "D0 (Boot Push Button)",
- "hasPWM": false,
- "hasServo": false,
- "direction": "INPUT"
- },
- {
- "number": 1,
- "name": "D1",
- "displayName": "D1",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 2,
- "name": "D2",
- "displayName": "D2",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 3,
- "name": "D3",
- "displayName": "D3",
+ "number": 18,
+ "name": "D18",
+ "displayName": "A0",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 4,
- "name": "D4",
- "displayName": "D4",
+ "number": 17,
+ "name": "D17",
+ "displayName": "A1",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 5,
- "name": "D5",
- "displayName": "D5",
+ "number": 9,
+ "name": "D9",
+ "displayName": "A2",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 6,
- "name": "D6",
- "displayName": "D6",
+ "number": 8,
+ "name": "D8",
+ "displayName": "A3",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3534,122 +3540,74 @@
{
"number": 7,
"name": "D7",
- "displayName": "D7",
+ "displayName": "SDA",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 8,
- "name": "D8",
- "displayName": "D8",
+ "number": 6,
+ "name": "D6",
+ "displayName": "SCL",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 9,
- "name": "D9",
- "displayName": "D9",
+ "number": 5,
+ "name": "D5",
+ "displayName": "D5 (UART TX)",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 10,
- "name": "D10",
- "displayName": "D10",
+ "number": 35,
+ "name": "D35",
+ "displayName": "MOSI",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 11,
- "name": "D11",
- "displayName": "D11",
+ "number": 37,
+ "name": "D37",
+ "displayName": "MISO",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 12,
- "name": "D12",
- "displayName": "D12",
+ "number": 36,
+ "name": "D36",
+ "displayName": "SCK",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 13,
- "name": "D13",
- "displayName": "D13 (LED)",
- "hasPWM": true,
- "hasServo": false,
- "direction": ""
- },
- {
- "number": 14,
- "name": "D14",
- "displayName": "D14",
+ "number": 16,
+ "name": "D16",
+ "displayName": "D16 (UART RX)",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 33,
- "name": "D33",
- "displayName": "D33 (NeoPixel)",
- "hasPWM": false,
- "hasServo": false,
- "direction": ""
- },
- {
- "number": 38,
- "name": "D38",
- "displayName": "D38 (UART RX)",
+ "number": 0,
+ "name": "D0",
+ "displayName": "Boot Pushbutton",
"hasPWM": false,
"hasServo": false,
- "direction": ""
+ "direction": "INPUT"
},
{
"number": 39,
"name": "D39",
- "displayName": "D39 (UART TX)",
+ "displayName": "D39 (NeoPixel)",
"hasPWM": false,
"hasServo": false,
"direction": ""
- },
- {
- "number": 18,
- "name": "A18",
- "displayName": "A0",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
- },
- {
- "number": 17,
- "name": "A17",
- "displayName": "A1",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
- },
- {
- "number": 16,
- "name": "A16",
- "displayName": "A2",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
- },
- {
- "number": 15,
- "name": "A15",
- "displayName": "A3",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
}
],
"analogPins": [
@@ -3666,63 +3624,75 @@
"direction": ""
},
{
- "number": 16,
- "name": "A16",
+ "number": 9,
+ "name": "A9",
"displayName": "A2",
"direction": ""
},
{
- "number": 15,
- "name": "A15",
+ "number": 8,
+ "name": "A8",
"displayName": "A3",
"direction": ""
},
{
- "number": 14,
- "name": "A14",
- "displayName": "A4",
+ "number": 7,
+ "name": "A7",
+ "displayName": "SDA",
+ "direction": ""
+ },
+ {
+ "number": 6,
+ "name": "A6",
+ "displayName": "SCL",
+ "direction": ""
+ },
+ {
+ "number": 5,
+ "name": "A5",
+ "displayName": "A5 (UART TX)",
"direction": ""
},
{
- "number": 8,
- "name": "A8",
- "displayName": "A5",
+ "number": 16,
+ "name": "A16",
+ "displayName": "A16 (UART RX)",
"direction": ""
}
],
"defaultI2C": {
"i2cPortId": 0,
- "SCL": 4,
- "SDA": 3
+ "SCL": 40,
+ "SDA": 41
},
- "image": "boards/feather-esp32s3-4mbflash-2mbpsram/image.svg",
- "totalAnalogPins": 6,
+ "image": "boards/qtpy-esp32s3-n4r2/image.svg",
+ "totalAnalogPins": 8,
"i2cPorts": [
{
"i2cPortId": 0,
- "SDA": 3,
- "SCL": 4
+ "SDA": 41,
+ "SCL": 40
}
],
- "totalGPIOPins": 22
+ "totalGPIOPins": 13
},
- "metro-rp2350": {
- "boardName": "metro-rp2350",
+ "rpi-pico-2w": {
+ "boardName": "rpi-pico-2w",
"mcuName": "rp2350",
"referenceVoltage": 3.3,
- "displayName": "Adafruit Metro RP2350",
- "vendor": "Adafruit",
- "productURL": "https://www.adafruit.com/product/6003",
- "documentationURL": "https://learn.adafruit.com/adafruit-metro-rp2350",
+ "displayName": "Raspberry Pi Pico 2W",
+ "vendor": "Raspberry Pi",
+ "productURL": "https://www.adafruit.com/product/6087",
+ "documentationURL": "https://learn.adafruit.com/quick-start-the-pico-w-with-wippersnapper/overview",
"installMethod": "uf2",
- "installBoardName": "metro_rp2350_tinyusb",
+ "installBoardName": "picow_rp2350_tinyusb",
"rtc": null,
- "sdCardCS": 34,
+ "sdCardCS": null,
"pins": [
{
"number": 0,
"name": "D0",
- "displayName": "D0 (GP0, UART TX)",
+ "displayName": "GP0 (UART TX)",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3730,7 +3700,7 @@
{
"number": 1,
"name": "D1",
- "displayName": "D1 (GP1, UART RX)",
+ "displayName": "GP1 (UART RX)",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3738,7 +3708,7 @@
{
"number": 2,
"name": "D2",
- "displayName": "D2 (GP2)",
+ "displayName": "GP2",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3746,7 +3716,7 @@
{
"number": 3,
"name": "D3",
- "displayName": "D3 (GP3)",
+ "displayName": "GP3",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3754,7 +3724,7 @@
{
"number": 4,
"name": "D4",
- "displayName": "D4 (GP4)",
+ "displayName": "GP4",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3762,7 +3732,7 @@
{
"number": 5,
"name": "D5",
- "displayName": "D5 (GP5)",
+ "displayName": "GP5",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3770,7 +3740,7 @@
{
"number": 6,
"name": "D6",
- "displayName": "D6 (GP6)",
+ "displayName": "GP6",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3778,7 +3748,7 @@
{
"number": 7,
"name": "D7",
- "displayName": "D7 (GP7)",
+ "displayName": "GP7",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3786,7 +3756,7 @@
{
"number": 8,
"name": "D8",
- "displayName": "D8 (GP8)",
+ "displayName": "GP8",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3794,7 +3764,7 @@
{
"number": 9,
"name": "D9",
- "displayName": "D9 (GP9)",
+ "displayName": "GP9",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3802,7 +3772,7 @@
{
"number": 10,
"name": "D10",
- "displayName": "D10 (GP10)",
+ "displayName": "GP10",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3810,7 +3780,7 @@
{
"number": 11,
"name": "D11",
- "displayName": "D11 (GP11)",
+ "displayName": "GP11",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3818,7 +3788,7 @@
{
"number": 12,
"name": "D12",
- "displayName": "D12 (GP12)",
+ "displayName": "GP12",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3826,7 +3796,7 @@
{
"number": 13,
"name": "D13",
- "displayName": "D13 (GP13)",
+ "displayName": "GP13",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3834,7 +3804,7 @@
{
"number": 14,
"name": "D14",
- "displayName": "D14 (GP14)",
+ "displayName": "GP14",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3842,7 +3812,7 @@
{
"number": 15,
"name": "D15",
- "displayName": "D15 (GP15)",
+ "displayName": "GP15",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3850,7 +3820,7 @@
{
"number": 16,
"name": "D16",
- "displayName": "D16 (GP16)",
+ "displayName": "GP16",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3858,7 +3828,7 @@
{
"number": 17,
"name": "D17",
- "displayName": "D17 (GP17)",
+ "displayName": "GP17",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3866,7 +3836,7 @@
{
"number": 18,
"name": "D18",
- "displayName": "D18 (GP18)",
+ "displayName": "GP18",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3874,7 +3844,7 @@
{
"number": 19,
"name": "D19",
- "displayName": "D19 (GP19)",
+ "displayName": "GP19",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3882,7 +3852,7 @@
{
"number": 20,
"name": "D20",
- "displayName": "D20 (GP20, SDA)",
+ "displayName": "GP20",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3890,7 +3860,7 @@
{
"number": 21,
"name": "D21",
- "displayName": "D21 (GP21, SCL)",
+ "displayName": "GP21",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3898,7 +3868,7 @@
{
"number": 22,
"name": "D22",
- "displayName": "D22 (GP22, SPI0 SCK)",
+ "displayName": "GP22",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3906,7 +3876,7 @@
{
"number": 23,
"name": "D23",
- "displayName": "D23 (GP23, RED LED)",
+ "displayName": "GP23",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3914,7 +3884,7 @@
{
"number": 24,
"name": "D24",
- "displayName": "D24 (GP24, BOOT)",
+ "displayName": "GP24",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -3922,322 +3892,104 @@
{
"number": 25,
"name": "D25",
- "displayName": "D25 (GP25, NeoPixel)",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 28,
- "name": "D28",
- "displayName": "D28 (GP28, SPI MISO)",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 30,
- "name": "D30",
- "displayName": "D30 (GP30, SPI SCK)",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 31,
- "name": "D31",
- "displayName": "D31 (GP31, SPI MOSI)",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 34,
- "name": "D34",
- "displayName": "D34 (GP34, SD Card CS)",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 41,
- "name": "A41",
- "displayName": "A0 (GP41)",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
- },
- {
- "number": 42,
- "name": "A42",
- "displayName": "A1 (GP42)",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
- },
- {
- "number": 43,
- "name": "A43",
- "displayName": "A2 (GP43)",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
- },
- {
- "number": 44,
- "name": "A44",
- "displayName": "A3 (GP44)",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
- },
- {
- "number": 45,
- "name": "A45",
- "displayName": "A4 (GP45)",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
- },
- {
- "number": 46,
- "name": "A46",
- "displayName": "A5 (GP46)",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
- }
- ],
- "analogPins": [
- {
- "number": 41,
- "name": "A41",
- "displayName": "A0 (GP41)",
- "direction": ""
- },
- {
- "number": 42,
- "name": "A42",
- "displayName": "A1 (GP42)",
- "direction": ""
- },
- {
- "number": 43,
- "name": "A43",
- "displayName": "A2 (GP43)",
- "direction": ""
- },
- {
- "number": 44,
- "name": "A44",
- "displayName": "A3 (GP44)",
- "direction": ""
- },
- {
- "number": 45,
- "name": "A45",
- "displayName": "A4 (GP45)",
- "direction": ""
- },
- {
- "number": 46,
- "name": "A46",
- "displayName": "A5 (GP46)",
- "direction": ""
- }
- ],
- "defaultI2C": {
- "i2cPortId": 0,
- "SCL": 21,
- "SDA": 20
- },
- "image": "https://cdn-shop.adafruit.com/640x480/6003-06.jpg",
- "totalAnalogPins": 6,
- "i2cPorts": [
- {
- "i2cPortId": 0,
- "SDA": 20,
- "SCL": 21
- }
- ],
- "totalGPIOPins": 36
- },
- "magtag": {
- "boardName": "magtag",
- "mcuName": "esp32s2",
- "referenceVoltage": 2.6,
- "displayName": "Adafruit MagTag \"2.9\"",
- "vendor": "Adafruit",
- "productURL": "https://www.adafruit.com/product/4800",
- "documentationURL": "https://learn.adafruit.com/adafruit-magtag",
- "installMethod": "uf2",
- "installBoardName": "magtag",
- "rtc": null,
- "sdCardCS": null,
- "pins": [
- {
- "number": 1,
- "name": "D1",
- "displayName": "D1 (NeoPixel)",
- "hasPWM": false,
- "hasServo": false,
- "direction": ""
- },
- {
- "number": 15,
- "name": "D15",
- "displayName": "Button A",
- "hasPWM": false,
- "hasServo": false,
- "direction": ""
- },
- {
- "number": 14,
- "name": "D14",
- "displayName": "Button B",
- "hasPWM": false,
- "hasServo": false,
- "direction": ""
- },
- {
- "number": 12,
- "name": "D12",
- "displayName": "Button C",
- "hasPWM": false,
- "hasServo": false,
- "direction": ""
- },
- {
- "number": 11,
- "name": "D11",
- "displayName": "Button D",
- "hasPWM": false,
- "hasServo": false,
- "direction": ""
- },
- {
- "number": 10,
- "name": "D10",
- "displayName": "D10",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
- },
- {
- "number": 18,
- "name": "D18",
- "displayName": "D18 (A1)",
+ "displayName": "GP25",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 13,
- "name": "D13",
- "displayName": "Built-in LED",
+ "number": 26,
+ "name": "D26",
+ "displayName": "GP26",
"hasPWM": true,
- "hasServo": false,
- "direction": ""
- },
- {
- "number": 43,
- "name": "D43",
- "displayName": "D43 (UART TX)",
- "hasPWM": false,
- "hasServo": false,
- "direction": ""
- },
- {
- "number": 44,
- "name": "D44",
- "displayName": "D44 (UART RX)",
- "hasPWM": false,
- "hasServo": false,
+ "hasServo": true,
"direction": ""
},
{
- "number": 17,
- "name": "A17",
- "displayName": "Piezo Speaker (A0)",
- "direction": "",
+ "number": 27,
+ "name": "D27",
+ "displayName": "GP27",
"hasPWM": true,
- "hasServo": true
+ "hasServo": true,
+ "direction": ""
},
{
- "number": 3,
- "name": "A3",
- "displayName": "Light Sensor (A3)",
- "direction": "",
+ "number": 28,
+ "name": "D28",
+ "displayName": "GP28",
"hasPWM": true,
- "hasServo": true
+ "hasServo": true,
+ "direction": ""
},
{
- "number": 4,
- "name": "A4",
- "displayName": "Voltage Monitor (A4)",
- "direction": "",
+ "number": 29,
+ "name": "D29",
+ "displayName": "GP29",
"hasPWM": true,
- "hasServo": true
+ "hasServo": true,
+ "direction": ""
+ },
+ {
+ "number": 64,
+ "name": "D64",
+ "displayName": "LED (BUILT-IN)",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": ""
}
],
"analogPins": [
{
- "number": 17,
- "name": "A17",
- "displayName": "Piezo Speaker (A0)",
- "direction": ""
- },
- {
- "number": 10,
- "name": "A10",
- "displayName": "D10",
+ "number": 26,
+ "name": "A26",
+ "displayName": "A0 (GP0)",
"direction": ""
},
{
- "number": 18,
- "name": "A18",
- "displayName": "A1 (D18)",
+ "number": 27,
+ "name": "A27",
+ "displayName": "A1 (GP1)",
"direction": ""
},
{
- "number": 3,
- "name": "A3",
- "displayName": "Light Sensor (A3)",
+ "number": 28,
+ "name": "A28",
+ "displayName": "A2 (GP2)",
"direction": ""
},
{
- "number": 4,
- "name": "A4",
- "displayName": "Voltage Monitor (A4)",
+ "number": 29,
+ "name": "A29",
+ "displayName": "A3 (GP3)",
"direction": ""
}
],
"defaultI2C": {
"i2cPortId": 0,
- "SCL": 34,
- "SDA": 33
+ "SCL": 5,
+ "SDA": 4
},
- "image": "boards/magtag/image.svg",
- "totalAnalogPins": 5,
+ "image": "boards/rpi-pico-2w/image.jpg",
+ "totalAnalogPins": 4,
"i2cPorts": [
{
"i2cPortId": 0,
- "SDA": 33,
- "SCL": 34
+ "SDA": 4,
+ "SCL": 5
}
],
- "totalGPIOPins": 13
+ "totalGPIOPins": 31
},
- "rpi-pico-2w": {
- "boardName": "rpi-pico-2w",
- "mcuName": "rp2350",
+ "rpi-pico-w": {
+ "boardName": "rpi-pico-w",
+ "mcuName": "rp2040",
"referenceVoltage": 3.3,
- "displayName": "Raspberry Pi Pico 2W",
+ "displayName": "Raspberry Pi Pico W",
"vendor": "Raspberry Pi",
- "productURL": "https://www.adafruit.com/product/6087",
- "documentationURL": "https://learn.adafruit.com/quick-start-the-pico-w-with-wippersnapper/overview",
+ "productURL": "https://www.adafruit.com/product/5526",
+ "documentationURL": "https://learn.adafruit.com/quick-start-the-pico-w-with-wippersnapper/",
"installMethod": "uf2",
- "installBoardName": "picow_rp2350_tinyusb",
+ "installBoardName": "picow_rp2040_tinyusb",
"rtc": null,
"sdCardCS": null,
"pins": [
@@ -4521,7 +4273,7 @@
"SCL": 5,
"SDA": 4
},
- "image": "boards/rpi-pico-2w/image.jpg",
+ "image": "boards/rpi-pico-w/image.png",
"totalAnalogPins": 4,
"i2cPorts": [
{
@@ -4532,31 +4284,23 @@
],
"totalGPIOPins": 31
},
- "feather-esp32s3-tft": {
- "boardName": "feather-esp32s3-tft",
+ "xiao-esp32s3": {
+ "boardName": "xiao-esp32s3",
"mcuName": "esp32s3",
"referenceVoltage": 2.6,
- "displayName": "Adafruit ESP32-S3 TFT Feather",
- "vendor": "Adafruit",
- "productURL": "https://www.adafruit.com/product/5483",
- "documentationURL": "https://learn.adafruit.com/adafruit-esp32-s3-tft-feather",
- "installMethod": "uf2",
- "installBoardName": "feather-esp32s3-tft",
+ "displayName": "Xiao ESP32-S3 (or Sense/Plus)",
+ "vendor": "Seeed Studio",
+ "productURL": "https://www.digikey.com/short/fbbqfjz5",
+ "documentationURL": "https://wiki.seeedstudio.com/xiao_esp32s3_getting_started/",
+ "installMethod": "web-native-usb",
+ "installBoardName": "xiao-esp32s3",
"rtc": null,
"sdCardCS": null,
"pins": [
- {
- "number": 0,
- "name": "D0",
- "displayName": "D0 (Boot Btn)",
- "hasPWM": false,
- "hasServo": false,
- "direction": "INPUT"
- },
{
"number": 1,
"name": "D1",
- "displayName": "D1 (UART TX)",
+ "displayName": "D0/A0 (GPIO1)",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -4564,7 +4308,7 @@
{
"number": 2,
"name": "D2",
- "displayName": "D2 (UART RX)",
+ "displayName": "D1/A1 (GPIO2)",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -4572,7 +4316,7 @@
{
"number": 3,
"name": "D3",
- "displayName": "D3",
+ "displayName": "D2/A2 (GPIO3)",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -4580,7 +4324,7 @@
{
"number": 4,
"name": "D4",
- "displayName": "D4",
+ "displayName": "D3/A3 (GPIO4)",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -4588,7 +4332,7 @@
{
"number": 5,
"name": "D5",
- "displayName": "D5",
+ "displayName": "D4/A4 (SDA - GPIO5)",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -4596,55 +4340,55 @@
{
"number": 6,
"name": "D6",
- "displayName": "D6",
+ "displayName": "D5/A5 (SCL - GPIO6)",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 7,
- "name": "D7",
- "displayName": "D7",
+ "number": 43,
+ "name": "D43",
+ "displayName": "D6 (UART TX - GPIO43)",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 8,
- "name": "D8",
- "displayName": "D8",
+ "number": 44,
+ "name": "D44",
+ "displayName": "D7 (UART RX - GPIO44)",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 9,
- "name": "D9",
- "displayName": "D9",
+ "number": 7,
+ "name": "D7",
+ "displayName": "D8/A8 (SCK - GPIO7)",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 10,
- "name": "D10",
- "displayName": "D10",
+ "number": 8,
+ "name": "D8",
+ "displayName": "D9/A9 (MISO - GPIO8)",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 11,
- "name": "D11",
- "displayName": "D11",
+ "number": 9,
+ "name": "D9",
+ "displayName": "D10/A10 (MOSI - GPIO9)",
"hasPWM": true,
"hasServo": true,
"direction": ""
},
{
- "number": 12,
- "name": "D12",
- "displayName": "D12",
+ "number": 42,
+ "name": "D42",
+ "displayName": "D11/A11 (Cam Brd - GPIO42)",
"hasPWM": true,
"hasServo": true,
"direction": ""
@@ -4652,113 +4396,111 @@
{
"number": 13,
"name": "D13",
- "displayName": "D13 (LED)",
+ "displayName": "D12/A12 (Cam Brd - GPIO13)",
"hasPWM": true,
- "hasServo": false,
+ "hasServo": true,
"direction": ""
},
{
- "number": 14,
- "name": "D14",
- "displayName": "D14",
- "hasPWM": true,
- "hasServo": true,
- "direction": ""
+ "number": 0,
+ "name": "D0",
+ "displayName": "Boot Pushbutton",
+ "hasPWM": false,
+ "hasServo": false,
+ "direction": "INPUT"
},
{
- "number": 33,
- "name": "D33",
- "displayName": "D33 (NeoPixel)",
+ "number": 21,
+ "name": "D21",
+ "displayName": "GPIO21 SD CS",
"hasPWM": false,
"hasServo": false,
"direction": ""
+ }
+ ],
+ "analogPins": [
+ {
+ "number": 1,
+ "name": "A1",
+ "displayName": "A0/D0 (GPIO1)",
+ "direction": ""
},
{
- "number": 18,
- "name": "A18",
- "displayName": "A0",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
+ "number": 2,
+ "name": "A2",
+ "displayName": "A1/D1 (GPIO2)",
+ "direction": ""
},
{
- "number": 17,
- "name": "A17",
- "displayName": "A1",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
+ "number": 3,
+ "name": "A3",
+ "displayName": "A2/D2 (GPIO3)",
+ "direction": ""
},
{
- "number": 16,
- "name": "A16",
- "displayName": "A2",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
+ "number": 4,
+ "name": "A4",
+ "displayName": "A3/D3 (GPIO4)",
+ "direction": ""
},
{
- "number": 15,
- "name": "A15",
- "displayName": "A3",
- "direction": "",
- "hasPWM": true,
- "hasServo": true
- }
- ],
- "analogPins": [
+ "number": 5,
+ "name": "A5",
+ "displayName": "A4/D4 (SDA - GPIO5)",
+ "direction": ""
+ },
{
- "number": 18,
- "name": "A18",
- "displayName": "A0",
+ "number": 6,
+ "name": "A6",
+ "displayName": "A5/D5 (SCL - GPIO6)",
"direction": ""
},
{
- "number": 17,
- "name": "A17",
- "displayName": "A1",
+ "number": 7,
+ "name": "A7",
+ "displayName": "A8/D8 (SCK - GPIO7)",
"direction": ""
},
{
- "number": 16,
- "name": "A16",
- "displayName": "A2",
+ "number": 8,
+ "name": "A8",
+ "displayName": "A9/D9 (MISO - GPIO8)",
"direction": ""
},
{
- "number": 15,
- "name": "A15",
- "displayName": "A3",
+ "number": 9,
+ "name": "A9",
+ "displayName": "A10/D10 (MOSI - GPIO9)",
"direction": ""
},
{
- "number": 14,
- "name": "A14",
- "displayName": "A4",
+ "number": 42,
+ "name": "A42",
+ "displayName": "A11/D11 (Cam Brd - GPIO42)",
"direction": ""
},
{
- "number": 8,
- "name": "A8",
- "displayName": "A5",
+ "number": 13,
+ "name": "A13",
+ "displayName": "D12/A12 (Cam Brd - GPIO13)",
"direction": ""
}
],
"defaultI2C": {
"i2cPortId": 0,
- "SCL": 41,
- "SDA": 42
+ "SCL": 6,
+ "SDA": 5
},
- "image": "boards/feather-esp32s3-tft/image.svg",
- "totalAnalogPins": 6,
+ "image": "boards/xiao-esp32s3/image.png",
+ "totalAnalogPins": 11,
"i2cPorts": [
{
"i2cPortId": 0,
- "SDA": 42,
- "SCL": 41
+ "SDA": 5,
+ "SCL": 6
}
],
- "totalGPIOPins": 20
+ "totalGPIOPins": 15
},
"generic-esp32-s2": {
"boardName": "Generic ESP32-S2",
diff --git a/wippersnapper_components.js b/wippersnapper_components.js
index 6b22926..5067795 100644
--- a/wippersnapper_components.js
+++ b/wippersnapper_components.js
@@ -1,561 +1,462 @@
window.jsonComponentsObject = {
"components": {
- "pixel": [
+ "ds18x20": [
{
- "id": "dotstar",
- "displayName": "DotStar",
- "name": "dotstar",
+ "id": "ds18b20",
+ "displayName": "DS18B20",
+ "name": "ds18b20",
"description": "",
- "category": "pixel",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/2343-03.jpg",
- "productUrl": "https://www.adafruit.com/product/2343",
- "documentationUrl": "https://learn.adafruit.com/adafruit-dotstar-leds"
+ "category": "ds18x20",
+ "dataTypes": [
+ "ambient-temp",
+ "ambient-temp-fahrenheit"
+ ],
+ "image": "https://cdn-shop.adafruit.com/640x480/374-01.jpg",
+ "productUrl": "https://www.adafruit.com/product/374",
+ "documentationUrl": "https://learn.adafruit.com/using-ds18b20-temperature-sensor-with-wippersnapper"
},
{
- "id": "neopixel",
- "displayName": "NeoPixel",
- "name": "neopixel",
+ "id": "ds18b20_hi_temp_waterproof",
+ "displayName": "High Temp + Waterproof DS18B20",
+ "name": "ds18b20_hi_temp_waterproof",
"description": "",
- "category": "pixel",
- "dataTypes": [],
- "image": "components/pixel/neopixel/image.jpg",
- "productUrl": "http://www.adafruit.com/category/168",
- "documentationUrl": "https://learn.adafruit.com/adafruit-neopixel-uberguide"
+ "category": "ds18x20",
+ "dataTypes": [
+ "ambient-temp",
+ "ambient-temp-fahrenheit"
+ ],
+ "image": "https://cdn-shop.adafruit.com/640x480/642-00.jpg",
+ "productUrl": "https://www.adafruit.com/product/642",
+ "documentationUrl": "https://learn.adafruit.com/using-ds18b20-temperature-sensor-with-wippersnapper"
},
{
- "id": "neorgb",
- "displayName": "NeoRGB Stemma",
- "name": "neorgb",
- "description": "Speak NeoPixel to your RGB strips! Treat PWM-able common-anode LEDs as a NeoPixel [16V/3A/channel]",
- "category": "pixel",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/5888-10.jpg",
- "productUrl": "https://www.adafruit.com/product/5888",
- "documentationUrl": "https://learn.adafruit.com/adafruit-neorgb-stemma"
+ "id": "ds18b20_waterproof",
+ "displayName": "Waterproof DS18B20",
+ "name": "ds18b20_waterproof",
+ "description": "",
+ "category": "ds18x20",
+ "dataTypes": [
+ "ambient-temp",
+ "ambient-temp-fahrenheit"
+ ],
+ "image": "https://cdn-shop.adafruit.com/640x480/381-01.jpg",
+ "productUrl": "https://www.adafruit.com/product/381",
+ "documentationUrl": "https://learn.adafruit.com/using-ds18b20-temperature-sensor-with-wippersnapper"
}
],
- "pwm": [
- {
- "id": "pwm_output",
- "displayName": "PWM Output",
- "name": "pwm_output",
- "description": "A Pulse-Width-Modulated component with fixed frequency. Duty cycle can be set from 0-255",
- "category": "pwm",
- "dataTypes": [],
- "image": "components/pwm/pwm_output/image.png",
- "productUrl": "https://www.adafruit.com/product/301",
- "documentationUrl": "https://learn.adafruit.com/improve-brushed-dc-motor-performance/pwm-and-brushed-dc-motors"
- },
+ "i2c": [
{
- "id": "piezo_buzzer",
- "displayName": "Piezo Buzzer",
- "name": "piezo_buzzer",
+ "id": "adt7410",
+ "displayName": "ADT7410",
+ "name": "adt7410",
"description": "",
- "category": "pwm",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/160-01.jpg",
- "productUrl": "https://www.adafruit.com/product/160",
- "documentationUrl": "https://learn.adafruit.com/using-piezo-buzzers-with-wippersnapper"
+ "category": "i2c",
+ "dataTypes": [
+ "ambient-temp",
+ "ambient-temp-fahrenheit"
+ ],
+ "image": "https://cdn-shop.adafruit.com/640x480/4089-05.jpg",
+ "productUrl": "https://www.adafruit.com/product/4089",
+ "documentationUrl": "https://learn.adafruit.com/adt7410-breakout",
+ "address": "0x48",
+ "addresses": [
+ "0x48",
+ "0x49",
+ "0x4A",
+ "0x4B"
+ ]
},
{
- "id": "rgb_led",
- "displayName": "RGB LED",
- "name": "rgb_led",
- "description": "",
- "category": "pwm",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/302-00.jpg",
- "productUrl": "https://www.adafruit.com/product/302",
- "documentationUrl": "https://learn.adafruit.com/adafruit-arduino-lesson-3-rgb-leds/overview"
+ "id": "aht20",
+ "displayName": "AHT20",
+ "name": "aht20",
+ "description": "Inexpensive temperature and humidity sensor for I2C-capable boards.",
+ "category": "i2c",
+ "dataTypes": [
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "relative-humidity"
+ ],
+ "image": "https://cdn-shop.adafruit.com/640x480/4566-04.jpg",
+ "productUrl": "https://www.adafruit.com/product/4566",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-aht20",
+ "address": "0x38",
+ "addresses": [
+ "0x38"
+ ]
},
{
- "id": "dimmable_led",
- "displayName": "Dimmable LED",
- "name": "dimmable_led",
- "description": "",
- "category": "pwm",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/301-00.jpg",
- "productUrl": "https://www.adafruit.com/product/301",
- "documentationUrl": "https://learn.adafruit.com/all-about-leds"
- }
- ],
- "pin": [
- {
- "id": "etape_liquid_level_sensor",
- "displayName": "Liquid Level Sensor",
- "name": "etape_liquid_level_sensor",
+ "id": "aht21",
+ "displayName": "AHT21",
+ "name": "aht21",
"description": "",
- "category": "pin",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/product-videos/640x480/2656-03.jpg",
- "productUrl": "https://www.adafruit.com/product/2656",
- "documentationUrl": "https://cdn-shop.adafruit.com/product-files/2656/Standard_eTape_Datasheet.pdf",
- "componentAPI": "analogio"
+ "category": "i2c",
+ "dataTypes": [
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "relative-humidity"
+ ],
+ "image": "components/i2c/aht21/image.jpg",
+ "documentationUrl": "http://www.aosong.com/en/products-60.html",
+ "address": "0x38",
+ "addresses": [
+ "0x38"
+ ]
},
{
- "id": "analog_pin",
- "displayName": "Analog Pin",
- "name": "analog_pin",
+ "id": "am2301b",
+ "displayName": "AM2301B",
+ "name": "am2301b",
"description": "",
- "category": "pin",
- "dataTypes": [],
- "image": "components/pin/analog_pin/image.png",
- "componentAPI": "analogio"
+ "category": "i2c",
+ "dataTypes": [
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "relative-humidity"
+ ],
+ "image": "https://cdn-shop.adafruit.com/640x480/5181-05.jpg",
+ "productUrl": "https://www.adafruit.com/product/5181",
+ "documentationUrl": "https://cdn-shop.adafruit.com/product-files/5181/5181_AM2301B.pdf",
+ "address": "0x38",
+ "addresses": [
+ "0x38"
+ ]
},
{
- "id": "push_button",
- "displayName": "Push Button",
- "name": "push_button",
+ "id": "am2315c",
+ "displayName": "AM2315C",
+ "name": "am2315c",
"description": "",
- "category": "pin",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/367-01.jpg",
- "productUrl": "https://www.adafruit.com/product/367",
- "documentationUrl": "https://learn.adafruit.com/adafruit-arduino-lesson-6-digital-inputs?view=all",
- "componentAPI": "digitalio"
- },
- {
- "id": "simple_soil_sensor",
- "displayName": "Simple Soil Sensor",
- "name": "simple_soil_sensor",
- "description": "Resistive style soil moisture sensor, measuring the conductivity between the two prongs (Analog signal)",
- "category": "pin",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/6362-00.jpg",
- "productUrl": "https://www.adafruit.com/product/6362",
- "componentAPI": "analogio"
+ "category": "i2c",
+ "dataTypes": [
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "relative-humidity"
+ ],
+ "image": "https://cdn-shop.adafruit.com/640x480/5182-05.jpg",
+ "productUrl": "https://www.adafruit.com/product/5182",
+ "documentationUrl": "https://cdn-shop.adafruit.com/product-files/5182/5182_AM2315C.pdf",
+ "address": "0x38",
+ "addresses": [
+ "0x38"
+ ]
},
{
- "id": "water_sensor",
- "displayName": "Water Sensor",
- "name": "water_sensor",
+ "id": "bh1750",
+ "displayName": "BH1750",
+ "name": "bh1750",
"description": "",
- "category": "pin",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/product-videos/640x480/4965-03.jpg",
- "productUrl": "https://www.adafruit.com/product/4965",
- "documentationUrl": "https://cdn-shop.adafruit.com/product-files/4965/Datasheet.pdf",
- "componentAPI": "digitalio"
+ "category": "i2c",
+ "dataTypes": [
+ "light"
+ ],
+ "image": "https://cdn-shop.adafruit.com/640x480/4681-06.jpg",
+ "productUrl": "https://www.adafruit.com/product/4681",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-bh1750-ambient-light-sensor",
+ "address": "0x23",
+ "addresses": [
+ "0x23",
+ "0x5C"
+ ]
},
{
- "id": "flat_vibration_switch",
- "displayName": "Flat Vibration Switch",
- "name": "flat_vibration_switch",
+ "id": "bme280",
+ "displayName": "BME280",
+ "name": "bme280",
"description": "",
- "category": "pin",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/4081-00.jpg",
- "productUrl": "https://www.adafruit.com/product/4081",
- "componentAPI": "digitalio"
- },
- {
- "id": "potentiometer",
- "displayName": "Potentiometer",
- "name": "potentiometer",
- "description": "",
- "category": "pin",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/356-03.jpg",
- "productUrl": "https://www.adafruit.com/product/356",
- "documentationUrl": "https://learn.adafruit.com/make-it-change-potentiometers",
- "componentAPI": "analogio"
- },
- {
- "id": "reed_switch",
- "displayName": "Reed Switch",
- "name": "reed_switch",
- "description": "A Magnetic Contact Switch (Door/Window Sensor), with Normally Open (NO) or Closed (NC) contacts",
- "category": "pin",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/375-01.jpg",
- "productUrl": "https://www.adafruit.com/product/375",
- "documentationUrl": "https://learn.adafruit.com/no-code-iot-door-alarm-with-wippersnapper",
- "componentAPI": "digitalio"
- },
- {
- "id": "toggle_switch",
- "displayName": "Toggle Switch",
- "name": "toggle_switch",
- "description": "",
- "category": "pin",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/3221-01.jpg",
- "productUrl": "https://www.adafruit.com/product/3221",
- "documentationUrl": "https://learn.adafruit.com/make-it-switch",
- "componentAPI": "digitalio"
- },
- {
- "id": "beam_break_sensor",
- "displayName": "Beam Sensor",
- "name": "beam_break_sensor",
- "description": "Break beam sensor for detecting interruption of an invisible infrared light beam between emitter and receiver",
- "category": "pin",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/2168-04.jpg",
- "productUrl": "https://www.adafruit.com/product/2168",
- "documentationUrl": "https://learn.adafruit.com/ir-breakbeam-sensors",
- "componentAPI": "digitalio"
- },
- {
- "id": "light_sensor",
- "displayName": "Light Sensor",
- "name": "light_sensor",
- "description": "",
- "category": "pin",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/161-00.jpg",
- "productUrl": "https://www.adafruit.com/product/161",
- "documentationUrl": "https://learn.adafruit.com/photocells",
- "componentAPI": "analogio"
- },
- {
- "id": "pir_sensor",
- "displayName": "PIR Sensor",
- "name": "pir_sensor",
- "description": "Passive Infra-Red (PIR) motion sensor for detecting presence and movement through infrared thermal changes",
- "category": "pin",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/189-00.jpg",
- "productUrl": "https://www.adafruit.com/product/189",
- "documentationUrl": "https://learn.adafruit.com/pir-passive-infrared-proximity-motion-sensor/overview",
- "componentAPI": "digitalio"
+ "category": "i2c",
+ "dataTypes": [
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "relative-humidity",
+ "pressure",
+ "altitude"
+ ],
+ "image": "https://cdn-shop.adafruit.com/640x480/2652-04.jpg",
+ "productUrl": "https://www.adafruit.com/product/2652",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-bme280-humidity-barometric-pressure-temperature-sensor-breakout",
+ "address": "0x77",
+ "addresses": [
+ "0x77",
+ "0x76"
+ ]
},
{
- "id": "hall_effect_sensor",
- "displayName": "Hall Effect Sensor",
- "name": "hall_effect_sensor",
+ "id": "bme680",
+ "displayName": "BME680",
+ "name": "bme680",
"description": "",
- "category": "pin",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/158-00.jpg",
- "productUrl": "https://www.adafruit.com/product/158",
- "documentationUrl": "https://www.melexis.com/en/product/us5881/unipolar-hall-effect-switch-low-sensitivity",
- "componentAPI": "digitalio"
+ "category": "i2c",
+ "dataTypes": [
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "relative-humidity",
+ "pressure",
+ "altitude",
+ "gas-resistance"
+ ],
+ "image": "https://cdn-shop.adafruit.com/640x480/3660-08.jpg",
+ "productUrl": "https://www.adafruit.com/product/3660",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-bme680-humidity-temperature-barometic-pressure-voc-gas",
+ "address": "0x77",
+ "addresses": [
+ "0x77",
+ "0x76"
+ ]
},
{
- "id": "tctr1000",
- "displayName": "TCTR1000 Stemma Breakout",
- "name": "tctr1000",
- "description": "Optical reflective sensor with digital output, 1-30mm range, and adjustable LED emitter brightness",
- "category": "pin",
- "dataTypes": [],
- "image": "components/pin/tctr1000/image.jpg",
- "productUrl": "https://www.adafruit.com/product/5913",
- "documentationUrl": "https://learn.adafruit.com/adafruit-stemma-reflective-photo-interrupt-sensor",
- "componentAPI": "digitalio"
- }
- ],
- "ds18x20": [
- {
- "id": "ds18b20_waterproof",
- "displayName": "Waterproof DS18B20",
- "name": "ds18b20_waterproof",
+ "id": "bme688",
+ "displayName": "BME688",
+ "name": "bme688",
"description": "",
- "category": "ds18x20",
+ "category": "i2c",
"dataTypes": [
"ambient-temp",
- "ambient-temp-fahrenheit"
+ "ambient-temp-fahrenheit",
+ "relative-humidity",
+ "pressure",
+ "altitude",
+ "gas-resistance"
],
- "image": "https://cdn-shop.adafruit.com/640x480/381-01.jpg",
- "productUrl": "https://www.adafruit.com/product/381",
- "documentationUrl": "https://learn.adafruit.com/using-ds18b20-temperature-sensor-with-wippersnapper"
+ "image": "https://cdn-shop.adafruit.com/640x480/5046-05.jpg",
+ "productUrl": "https://www.adafruit.com/product/5046",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-bme680-humidity-temperature-barometic-pressure-voc-gas",
+ "address": "0x77",
+ "addresses": [
+ "0x77",
+ "0x76"
+ ]
},
{
- "id": "ds18b20",
- "displayName": "DS18B20",
- "name": "ds18b20",
+ "id": "bmp280",
+ "displayName": "BMP280",
+ "name": "bmp280",
"description": "",
- "category": "ds18x20",
+ "category": "i2c",
"dataTypes": [
"ambient-temp",
- "ambient-temp-fahrenheit"
+ "ambient-temp-fahrenheit",
+ "pressure",
+ "altitude"
],
- "image": "https://cdn-shop.adafruit.com/640x480/374-01.jpg",
- "productUrl": "https://www.adafruit.com/product/374",
- "documentationUrl": "https://learn.adafruit.com/using-ds18b20-temperature-sensor-with-wippersnapper"
+ "image": "https://cdn-shop.adafruit.com/640x480/2651-08.jpg",
+ "productUrl": "https://www.adafruit.com/product/2651",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-bmp280-barometric-pressure-plus-temperature-sensor-breakout",
+ "address": "0x77",
+ "addresses": [
+ "0x77",
+ "0x76"
+ ]
},
{
- "id": "ds18b20_hi_temp_waterproof",
- "displayName": "High Temp + Waterproof DS18B20",
- "name": "ds18b20_hi_temp_waterproof",
+ "id": "bmp388",
+ "displayName": "BMP388",
+ "name": "bmp388",
"description": "",
- "category": "ds18x20",
+ "category": "i2c",
"dataTypes": [
"ambient-temp",
- "ambient-temp-fahrenheit"
+ "ambient-temp-fahrenheit",
+ "pressure",
+ "altitude"
],
- "image": "https://cdn-shop.adafruit.com/640x480/642-00.jpg",
- "productUrl": "https://www.adafruit.com/product/642",
- "documentationUrl": "https://learn.adafruit.com/using-ds18b20-temperature-sensor-with-wippersnapper"
- }
- ],
- "i2c": [
+ "image": "https://cdn-shop.adafruit.com/640x480/3966-10.jpg",
+ "productUrl": "https://www.adafruit.com/product/3966",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-bmp388-bmp390-bmp3xx",
+ "address": "0x77",
+ "addresses": [
+ "0x77",
+ "0x76"
+ ]
+ },
{
- "id": "max17048",
- "displayName": "MAX17048/MAX17049",
- "name": "max17048",
+ "id": "bmp390",
+ "displayName": "BMP390",
+ "name": "bmp390",
"description": "",
"category": "i2c",
"dataTypes": [
- {
- "displayName": "Battery Cell Voltage",
- "sensorType": "voltage"
- },
- {
- "displayName": "Battery Cell Percent",
- "sensorType": "unitless-percent"
- }
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "pressure",
+ "altitude"
],
- "image": "https://cdn-shop.adafruit.com/640x480/5580-06.jpg",
- "productUrl": "https://www.adafruit.com/product/5580",
- "documentationUrl": "https://learn.adafruit.com/adafruit-max17048-lipoly-liion-fuel-gauge-and-battery-monitor",
- "address": "0x36",
+ "image": "https://cdn-shop.adafruit.com/640x480/4816-05.jpg",
+ "productUrl": "https://www.adafruit.com/product/4816",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-bmp388-bmp390-bmp3xx",
+ "address": "0x77",
"addresses": [
- "0x36"
+ "0x77",
+ "0x76"
]
},
{
- "id": "vl53l4cx",
- "displayName": "VL53L4CX",
- "name": "vl53l4cx",
- "description": "Time of Flight (ToF) distance sensor with about ~1 to 6000mm range + 'multi object detection'",
+ "id": "d6t1a",
+ "displayName": "D6T-1A Thermal Sensor",
+ "name": "d6t1a",
+ "description": "Non-contact MEMS thermal infrared sensor for precise temperature detection (D6T-1A-01/D6T-1A-02)",
"category": "i2c",
"dataTypes": [
{
- "displayName": "ToF Sensor - Object 1",
- "sensorType": "proximity"
+ "displayName": "Ambient Temperature (°C)",
+ "sensorType": "ambient-temp"
},
{
- "displayName": "ToF Sensor - Object 2",
- "sensorType": "raw"
+ "displayName": "Ambient Temperature (°F)",
+ "sensorType": "ambient-temp-fahrenheit"
+ },
+ {
+ "displayName": "Measured Object Temp (°C)",
+ "sensorType": "object-temp"
+ },
+ {
+ "displayName": "Measured Object Temp (°F)",
+ "sensorType": "object-temp-fahrenheit"
}
],
- "image": "https://cdn-shop.adafruit.com/640x480/5425-02.jpg",
- "productUrl": "https://www.adafruit.com/product/5425",
- "documentationUrl": "https://learn.adafruit.com/adafruit-vl53l4cx-time-of-flight-distance-sensor",
- "address": "0x29",
- "addresses": [
- "0x29"
- ]
- },
- {
- "id": "vl53l4cd",
- "displayName": "VL53L4CD",
- "name": "vl53l4cd",
- "description": "Time of Flight (ToF) distance sensor with about ~1 to 1300mm range",
- "category": "i2c",
- "dataTypes": [
- {
- "displayName": "ToF Sensor",
- "sensorType": "proximity"
- }
- ],
- "image": "components/i2c/vl53l4cd/image.jpg",
- "productUrl": "https://www.adafruit.com/product/5396",
- "documentationUrl": "https://learn.adafruit.com/adafruit-vl53l4cd-time-of-flight-distance-sensor",
- "address": "0x29",
+ "image": "components/i2c/d6t1a/image.jpg",
+ "productUrl": "https://www.digikey.com/en/products/detail/omron-electronics-inc-emc-div/D6T-1A-02/8602566",
+ "documentationUrl": "https://omronfs.omron.com/en_US/ecb/products/pdf/en_D6T_users_manual.pdf",
+ "address": "0x0A",
"addresses": [
- "0x29"
+ "0x0A"
]
},
{
- "id": "sen5x",
- "displayName": "SEN5x",
- "name": "sen5x",
+ "id": "dht20",
+ "displayName": "DHT20",
+ "name": "dht20",
"description": "",
"category": "i2c",
"dataTypes": [
"ambient-temp",
"ambient-temp-fahrenheit",
- "relative-humidity",
- "pm10-std",
- "pm25-std",
- "pm100-std",
- "voc-index",
- "nox-index"
- ],
- "image": "components/i2c/sen5x/image.png",
- "productUrl": "https://www.digikey.com/en/products/filter/gas-sensors/530?s=N4IgjCBcoLQCxVAYygMwIYBsDOBTANCAPZQDa4ADFRQgLoC%2BjQA",
- "documentationUrl": "https://sensirion.com/media/documents/6791EFA0/62A1F68F/Sensirion_Datasheet_Environmental_Node_SEN5x.pdf",
- "address": "0x69",
- "addresses": [
- "0x69"
- ]
- },
- {
- "id": "d6t1a",
- "displayName": "D6T-1A Thermal Sensor",
- "name": "d6t1a",
- "description": "Non-contact MEMS thermal infrared sensor for precise temperature detection (D6T-1A-01/D6T-1A-02)",
- "category": "i2c",
- "dataTypes": [
- {
- "displayName": "Ambient Temperature (\u00b0C)",
- "sensorType": "ambient-temp"
- },
- {
- "displayName": "Ambient Temperature (\u00b0F)",
- "sensorType": "ambient-temp-fahrenheit"
- },
- {
- "displayName": "Measured Object Temp (\u00b0C)",
- "sensorType": "object-temp"
- },
- {
- "displayName": "Measured Object Temp (\u00b0F)",
- "sensorType": "object-temp-fahrenheit"
- }
+ "relative-humidity"
],
- "image": "components/i2c/d6t1a/image.jpg",
- "productUrl": "https://www.digikey.com/en/products/detail/omron-electronics-inc-emc-div/D6T-1A-02/8602566",
- "documentationUrl": "https://omronfs.omron.com/en_US/ecb/products/pdf/en_D6T_users_manual.pdf",
- "address": "0x0A",
+ "image": "https://cdn-shop.adafruit.com/640x480/5183-04.jpg",
+ "productUrl": "https://www.adafruit.com/product/5183",
+ "documentationUrl": "https://cdn-shop.adafruit.com/product-files/5183/5193_DHT20.pdf",
+ "address": "0x38",
"addresses": [
- "0x0A"
+ "0x38"
]
},
{
- "id": "ina260",
- "displayName": "INA260",
- "name": "ina260",
+ "id": "dps310",
+ "displayName": "DPS310",
+ "name": "dps310",
"description": "",
"category": "i2c",
"dataTypes": [
- "voltage",
- "current"
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "pressure"
],
- "image": "https://cdn-shop.adafruit.com/640x480/4226-12.jpg",
- "productUrl": "https://www.adafruit.com/product/4226",
- "documentationUrl": "https://learn.adafruit.com/adafruit-ina260-current-voltage-power-sensor-breakout",
- "address": "0x40",
+ "image": "https://cdn-shop.adafruit.com/640x480/4494-05.jpg",
+ "productUrl": "https://www.adafruit.com/product/4494",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-dps310-precision-barometric-pressure-sensor",
+ "address": "0x77",
"addresses": [
- "0x40",
- "0x41",
- "0x44",
- "0x45"
+ "0x77",
+ "0x76"
]
},
{
- "id": "vl6180x",
- "displayName": "VL6180X",
- "name": "vl6180x",
- "description": "Time of Flight (ToF) distance sensor with about ~5 to 200mm range",
+ "id": "ds2484",
+ "displayName": "DS2484",
+ "name": "ds2484",
+ "description": "Adafruit DS2484 I2C to 1-Wire Bus Adapter Breakout - Converts a single DS18b20 temperature sensor to I2C",
"category": "i2c",
"dataTypes": [
- {
- "displayName": "ToF Sensor",
- "sensorType": "proximity"
- },
- "light"
+ "ambient-temp",
+ "ambient-temp-fahrenheit"
],
- "image": "components/i2c/vl6180x/image.jpg",
- "productUrl": "https://www.adafruit.com/product/3316",
- "documentationUrl": "https://learn.adafruit.com/adafruit-vl6180x-time-of-flight-micro-lidar-distance-sensor-breakout",
- "address": "0x29",
+ "image": "https://cdn-shop.adafruit.com/640x480/5976-00.jpg",
+ "productUrl": "https://www.adafruit.com/product/5976",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-dps310-precision-barometric-pressure-sensor",
+ "address": "0x18",
"addresses": [
- "0x29"
+ "0x18"
]
},
{
- "id": "sgp40",
- "displayName": "SGP40",
- "name": "sgp40",
+ "id": "ens160",
+ "displayName": "ENS160",
+ "name": "ens160",
"description": "",
"category": "i2c",
"dataTypes": [
- "voc-index",
+ "tvoc",
+ "eco2",
{
- "displayName": "Raw (For Reference Only)",
+ "displayName": "AQI",
"sensorType": "raw"
}
],
- "image": "https://cdn-shop.adafruit.com/640x480/4829-06.jpg",
- "productUrl": "https://www.adafruit.com/product/4829",
- "documentationUrl": "https://learn.adafruit.com/adafruit-sgp40",
- "address": "0x59",
+ "image": "components/i2c/ens160/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/5606",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-ens160-mox-gas-sensor",
+ "address": "0x52",
"addresses": [
- "0x59"
+ "0x52",
+ "0x53"
]
},
{
- "id": "lps33hw",
- "displayName": "LPS33HW",
- "name": "lps33hw",
+ "id": "gps_pa1010d",
+ "displayName": "Mini GPS PA1010D",
+ "name": "gps_pa1010d",
"description": "",
"category": "i2c",
- "dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "pressure"
- ],
- "image": "components/i2c/lps33hw/image.jpg",
- "productUrl": "https://www.adafruit.com/product/4414",
- "documentationUrl": "https://learn.adafruit.com/lps35hw-water-resistant-pressure-sensor",
- "address": "0x5D",
+ "dataTypes": [],
+ "image": "components/i2c/gps_pa1010d/image.png",
+ "productUrl": "https://www.adafruit.com/product/4415",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-mini-gps-pa1010d-module",
+ "address": "0x10",
"addresses": [
- "0x5D",
- "0x5C"
- ]
+ "0x10"
+ ],
+ "isGps": true
},
{
- "id": "mcp9601",
- "displayName": "MCP9601",
- "name": "mcp9601",
- "description": "Thermocouple / ambient temperature sensor. *Note* Needs hotplugging after i2c scans + selecting component!",
+ "id": "hdc302x",
+ "displayName": "HDC302x",
+ "name": "hdc302x",
+ "description": "Precision temperature (±0.1°C typical) and humidity sensors (±0.5% typ). HDC3020 / HDC3021 / HDC3022",
"category": "i2c",
"dataTypes": [
- {
- "displayName": "Ambient Temperature (\u00b0C)",
- "sensorType": "ambient-temp"
- },
- {
- "displayName": "Ambient Temperature (\u00b0F)",
- "sensorType": "ambient-temp-fahrenheit"
- },
- {
- "displayName": "Type K Thermocouple (\u00b0C)",
- "sensorType": "raw"
- }
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "relative-humidity"
],
- "image": "https://cdn-shop.adafruit.com/product-videos/640x480/5165-05.jpg",
- "productUrl": "https://www.adafruit.com/product/5165",
- "documentationUrl": "https://learn.adafruit.com/adafruit-mcp9601",
- "address": "0x67",
+ "image": "https://cdn-shop.adafruit.com/640x480/5989-07.jpg",
+ "productUrl": "https://www.adafruit.com/product/5989",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-hdc3021-precision-temperature-humidity-sensor/overview",
+ "address": "0x44",
"addresses": [
- "0x67",
- "0x66",
- "0x65",
- "0x64",
- "0x63",
- "0x62",
- "0x61",
- "0x60"
+ "0x44",
+ "0x45",
+ "0x46",
+ "0x47"
]
},
{
- "id": "ltr390",
- "displayName": "LTR-390",
- "name": "ltr390",
+ "id": "hts221",
+ "displayName": "HTS221",
+ "name": "hts221",
"description": "",
"category": "i2c",
"dataTypes": [
- {
- "displayName": "Ambient Light",
- "sensorType": "light"
- },
- {
- "displayName": "UV Count",
- "sensorType": "raw"
- }
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "relative-humidity"
],
- "image": "components/i2c/ltr390/image.jpg",
- "productUrl": "https://www.adafruit.com/product/4831",
- "documentationUrl": "https://learn.adafruit.com/adafruit-ltr390-uv-sensor",
- "address": "0x53",
+ "image": "https://cdn-shop.adafruit.com/640x480/4535-04.jpg",
+ "productUrl": "https://www.adafruit.com/product/4535",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-hts221-temperature-humidity-sensor/overview",
+ "address": "0x5F",
"addresses": [
- "0x53"
+ "0x5F"
]
},
{
@@ -578,66 +479,23 @@ window.jsonComponentsObject = {
]
},
{
- "id": "bmp388",
- "displayName": "BMP388",
- "name": "bmp388",
+ "id": "htu31d",
+ "displayName": "HTU31D",
+ "name": "htu31d",
"description": "",
"category": "i2c",
"dataTypes": [
"ambient-temp",
"ambient-temp-fahrenheit",
- "pressure",
- "altitude"
+ "relative-humidity"
],
- "image": "https://cdn-shop.adafruit.com/640x480/3966-10.jpg",
- "productUrl": "https://www.adafruit.com/product/3966",
- "documentationUrl": "https://learn.adafruit.com/adafruit-bmp388-bmp390-bmp3xx",
- "address": "0x77",
+ "image": "https://cdn-shop.adafruit.com/640x480/2857-03.jpg",
+ "productUrl": "https://www.adafruit.com/product/2857",
+ "documentationUrl": "https://www.adafruit.com/product/4832",
+ "address": "0x40",
"addresses": [
- "0x77",
- "0x76"
- ]
- },
- {
- "id": "scd40",
- "displayName": "SCD40/SCD41",
- "name": "scd40",
- "description": "",
- "category": "i2c",
- "dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "relative-humidity",
- "co2"
- ],
- "image": "https://cdn-shop.adafruit.com/640x480/5187-08.jpg",
- "productUrl": "https://www.adafruit.com/product/5187",
- "documentationUrl": "https://learn.adafruit.com/adafruit-scd-40-and-scd-41",
- "address": "0x62",
- "addresses": [
- "0x62"
- ]
- },
- {
- "id": "bme280",
- "displayName": "BME280",
- "name": "bme280",
- "description": "",
- "category": "i2c",
- "dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "relative-humidity",
- "pressure",
- "altitude"
- ],
- "image": "https://cdn-shop.adafruit.com/640x480/2652-04.jpg",
- "productUrl": "https://www.adafruit.com/product/2652",
- "documentationUrl": "https://learn.adafruit.com/adafruit-bme280-humidity-barometric-pressure-temperature-sensor-breakout",
- "address": "0x77",
- "addresses": [
- "0x77",
- "0x76"
+ "0x40",
+ "0x41"
]
},
{
@@ -662,710 +520,752 @@ window.jsonComponentsObject = {
]
},
{
- "id": "pmsa003i",
- "displayName": "PMSA003I",
- "name": "pmsa003i",
- "description": "",
+ "id": "ina237",
+ "displayName": "INA237",
+ "name": "ina237",
+ "description": "85V, 16-bit, good-precision power monitor (up to 10A, 0.3% gain error)",
"category": "i2c",
"dataTypes": [
- "pm10-std",
- "pm25-std",
- "pm100-std"
+ "voltage",
+ "current"
],
- "image": "https://cdn-shop.adafruit.com/640x480/4632-10.jpg",
- "productUrl": "https://www.adafruit.com/product/4632",
- "documentationUrl": "https://learn.adafruit.com/pmsa003i",
- "address": "0x12",
+ "image": "https://cdn-shop.adafruit.com/640x480/6340-02.jpg",
+ "productUrl": "https://www.adafruit.com/product/6340",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-ina237-dc-current-voltage-power-monitor",
+ "address": "0x40",
"addresses": [
- "0x12"
+ "0x40",
+ "0x41",
+ "0x44",
+ "0x45"
]
},
{
- "id": "bmp280",
- "displayName": "BMP280",
- "name": "bmp280",
- "description": "",
+ "id": "ina238",
+ "displayName": "INA238",
+ "name": "ina238",
+ "description": "85V, 16-bit, high-precision power monitor (up to 10A, 0.1% gain error)",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "pressure",
- "altitude"
+ "voltage",
+ "current"
],
- "image": "https://cdn-shop.adafruit.com/640x480/2651-08.jpg",
- "productUrl": "https://www.adafruit.com/product/2651",
- "documentationUrl": "https://learn.adafruit.com/adafruit-bmp280-barometric-pressure-plus-temperature-sensor-breakout",
- "address": "0x77",
+ "image": "https://cdn-shop.adafruit.com/640x480/6349-00.jpg",
+ "productUrl": "https://www.adafruit.com/product/6349",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-ina238-dc-current-voltage-power-monitor",
+ "address": "0x40",
"addresses": [
- "0x77",
- "0x76"
+ "0x40",
+ "0x41",
+ "0x44",
+ "0x45"
]
},
{
- "id": "sgp30",
- "displayName": "SGP30",
- "name": "sgp30",
+ "id": "ina260",
+ "displayName": "INA260",
+ "name": "ina260",
"description": "",
"category": "i2c",
"dataTypes": [
- "eco2",
- "tvoc"
+ "voltage",
+ "current"
],
- "image": "https://cdn-shop.adafruit.com/640x480/3709-07.jpg",
- "productUrl": "https://www.adafruit.com/product/3709",
- "documentationUrl": "https://learn.adafruit.com/adafruit-sgp30-gas-tvoc-eco2-mox-sensor",
- "address": "0x58",
+ "image": "https://cdn-shop.adafruit.com/640x480/4226-12.jpg",
+ "productUrl": "https://www.adafruit.com/product/4226",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-ina260-current-voltage-power-sensor-breakout",
+ "address": "0x40",
"addresses": [
- "0x58"
+ "0x40",
+ "0x41",
+ "0x44",
+ "0x45"
]
},
{
- "id": "sen50",
- "displayName": "SEN50",
- "name": "sen50",
+ "id": "lc709203f",
+ "displayName": "LC709203F",
+ "name": "lc709203f",
"description": "",
"category": "i2c",
"dataTypes": [
- "pm10-std",
- "pm25-std",
- "pm100-std"
+ {
+ "displayName": "Battery Cell Voltage",
+ "sensorType": "voltage"
+ },
+ {
+ "displayName": "Battery Cell Percent",
+ "sensorType": "unitless-percent"
+ }
],
- "image": "components/i2c/sen50/image.png",
- "productUrl": "https://www.digikey.com/en/products/filter/gas-sensors/530?s=N4IgjCBcoLQCxVAYygMwIYBsDOBTANCAPZQDa4ADFRQgLoC%2BjQA",
- "documentationUrl": "https://sensirion.com/media/documents/6791EFA0/62A1F68F/Sensirion_Datasheet_Environmental_Node_SEN5x.pdf",
- "address": "0x69",
+ "image": "https://cdn-shop.adafruit.com/640x480/4712-07.jpg",
+ "productUrl": "https://www.adafruit.com/product/4712",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-lc709203f-lipo-lipoly-battery-monitor",
+ "address": "0x0B",
"addresses": [
- "0x69"
+ "0x0B"
]
},
{
- "id": "scd30",
- "displayName": "SCD30",
- "name": "scd30",
+ "id": "lps22hb",
+ "displayName": "LPS22HB",
+ "name": "lps22hb",
"description": "",
"category": "i2c",
"dataTypes": [
"ambient-temp",
"ambient-temp-fahrenheit",
- "relative-humidity",
- "co2"
+ "pressure"
],
- "image": "https://cdn-shop.adafruit.com/product-videos/640x480/4867-05.jpg",
- "productUrl": "https://www.adafruit.com/product/4867",
- "documentationUrl": "https://learn.adafruit.com/adafruit-scd30",
- "address": "0x61",
+ "image": "https://cdn-shop.adafruit.com/640x480/4633-09.jpg",
+ "productUrl": "https://www.adafruit.com/product/4633",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-lps25-pressure-sensor",
+ "address": "0x5D",
"addresses": [
- "0x61"
+ "0x5D",
+ "0x5C"
]
},
{
- "id": "vl53l0x",
- "displayName": "VL53L0X",
- "name": "vl53l0x",
- "description": "Time of Flight (ToF) distance sensor with about ~50 to 1200mm range",
+ "id": "lps25hb",
+ "displayName": "LPS25HB",
+ "name": "lps25hb",
+ "description": "",
"category": "i2c",
"dataTypes": [
- {
- "displayName": "ToF Sensor",
- "sensorType": "proximity"
- }
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "pressure"
],
- "image": "components/i2c/vl53l0x/image.jpg",
- "productUrl": "https://www.adafruit.com/product/3317",
- "documentationUrl": "https://learn.adafruit.com/adafruit-vl53l0x-micro-lidar-distance-sensor-breakout",
- "address": "0x29",
+ "image": "components/i2c/lps25hb/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/4530",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-lps25-pressure-sensor",
+ "address": "0x5D",
"addresses": [
- "0x29"
+ "0x5D",
+ "0x5C"
]
},
{
- "id": "si7021",
- "displayName": "Si7021",
- "name": "si7021",
- "description": "",
+ "id": "lps28dfw",
+ "displayName": "LPS28DFW",
+ "name": "lps28dfw",
+ "description": "From 260 to 4060 hPa, this is our largest range pressure sensor (24bit).",
"category": "i2c",
"dataTypes": [
"ambient-temp",
"ambient-temp-fahrenheit",
- "relative-humidity"
+ "pressure"
],
- "image": "https://cdn-shop.adafruit.com/640x480/3251-08.jpg",
- "productUrl": "https://www.adafruit.com/product/3251",
- "documentationUrl": "https://learn.adafruit.com/adafruit-si7021-temperature-plus-humidity-sensor/overview",
- "address": "0x40",
+ "image": "components/i2c/lps28dfw/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/6067",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-lps28-pressure-sensor",
+ "address": "0x5C",
"addresses": [
- "0x40"
+ "0x5C",
+ "0x5D"
]
},
{
- "id": "aht20",
- "displayName": "AHT20",
- "name": "aht20",
- "description": "Inexpensive temperature and humidity sensor for I2C-capable boards.",
+ "id": "lps33hw",
+ "displayName": "LPS33HW",
+ "name": "lps33hw",
+ "description": "",
"category": "i2c",
"dataTypes": [
"ambient-temp",
"ambient-temp-fahrenheit",
- "relative-humidity"
+ "pressure"
],
- "image": "https://cdn-shop.adafruit.com/640x480/4566-04.jpg",
- "productUrl": "https://www.adafruit.com/product/4566",
- "documentationUrl": "https://learn.adafruit.com/adafruit-aht20",
- "address": "0x38",
+ "image": "components/i2c/lps33hw/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/4414",
+ "documentationUrl": "https://learn.adafruit.com/lps35hw-water-resistant-pressure-sensor",
+ "address": "0x5D",
"addresses": [
- "0x38"
+ "0x5D",
+ "0x5C"
]
},
{
- "id": "tmp117",
- "displayName": "TMP117",
- "name": "tmp117",
+ "id": "lps35hw",
+ "displayName": "LPS35HW",
+ "name": "lps35hw",
"description": "",
"category": "i2c",
"dataTypes": [
"ambient-temp",
- "ambient-temp-fahrenheit"
+ "ambient-temp-fahrenheit",
+ "pressure"
],
- "image": "components/i2c/tmp117/image.jpg",
- "productUrl": "https://www.adafruit.com/product/4821",
- "documentationUrl": "https://learn.adafruit.com/adafruit-tmp117-high-accuracy-i2c-temperature-monitor",
- "address": "0x48",
+ "image": "https://cdn-shop.adafruit.com/640x480/4258-10.jpg",
+ "productUrl": "https://www.adafruit.com/product/4258",
+ "documentationUrl": "https://learn.adafruit.com/lps35hw-water-resistant-pressure-sensor",
+ "address": "0x5D",
"addresses": [
- "0x48",
- "0x49",
- "0x4A",
- "0x4B"
+ "0x5D",
+ "0x5C"
]
},
{
- "id": "ds2484",
- "displayName": "DS2484",
- "name": "ds2484",
- "description": "Adafruit DS2484 I2C to 1-Wire Bus Adapter Breakout - Converts a single DS18b20 temperature sensor to I2C",
+ "id": "ltr303",
+ "displayName": "LTR-303",
+ "name": "ltr303",
+ "description": "",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit"
+ {
+ "displayName": "Ambient Light",
+ "sensorType": "light"
+ },
+ {
+ "displayName": "Infrared",
+ "sensorType": "raw"
+ }
],
- "image": "https://cdn-shop.adafruit.com/640x480/5976-00.jpg",
- "productUrl": "https://www.adafruit.com/product/5976",
- "documentationUrl": "https://learn.adafruit.com/adafruit-dps310-precision-barometric-pressure-sensor",
- "address": "0x18",
+ "image": "components/i2c/ltr303/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/5610",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-ltr-329-ltr-303",
+ "address": "0x29",
"addresses": [
- "0x18"
+ "0x29"
]
},
{
- "id": "pct2075",
- "displayName": "PCT2075",
- "name": "pct2075",
+ "id": "ltr329",
+ "displayName": "LTR-329",
+ "name": "ltr329",
"description": "",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit"
+ {
+ "displayName": "Ambient Light",
+ "sensorType": "light"
+ },
+ {
+ "displayName": "Infrared",
+ "sensorType": "raw"
+ }
],
- "image": "components/i2c/pct2075/image.jpg",
- "productUrl": "https://www.adafruit.com/product/4369",
- "documentationUrl": "https://learn.adafruit.com/adafruit-pct2075-temperature-sensor",
- "address": "0x37",
+ "image": "components/i2c/ltr329/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/5591",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-ltr-329-ltr-303",
+ "address": "0x29",
"addresses": [
- "0x37",
- "0x36",
- "0x35",
- "0x2F",
- "0x2E",
- "0x2D",
- "0x2C",
- "0x2B",
- "0x2A",
- "0x29",
- "0x28",
- "0x77",
- "0x76",
- "0x75",
- "0x74",
- "0x73",
- "0x72",
- "0x71",
- "0x70",
- "0x4F",
- "0x4E",
- "0x4D",
- "0x4C",
- "0x4B",
- "0x4A",
- "0x49",
- "0x48"
+ "0x29"
]
},
{
- "id": "bmp390",
- "displayName": "BMP390",
- "name": "bmp390",
+ "id": "ltr390",
+ "displayName": "LTR-390",
+ "name": "ltr390",
"description": "",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "pressure",
- "altitude"
+ {
+ "displayName": "Ambient Light",
+ "sensorType": "light"
+ },
+ {
+ "displayName": "UV Count",
+ "sensorType": "raw"
+ }
],
- "image": "https://cdn-shop.adafruit.com/640x480/4816-05.jpg",
- "productUrl": "https://www.adafruit.com/product/4816",
- "documentationUrl": "https://learn.adafruit.com/adafruit-bmp388-bmp390-bmp3xx",
- "address": "0x77",
+ "image": "components/i2c/ltr390/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/4831",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-ltr390-uv-sensor",
+ "address": "0x53",
"addresses": [
- "0x77",
- "0x76"
+ "0x53"
]
},
{
- "id": "adt7410",
- "displayName": "ADT7410",
- "name": "adt7410",
+ "id": "max17048",
+ "displayName": "MAX17048/MAX17049",
+ "name": "max17048",
"description": "",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit"
+ {
+ "displayName": "Battery Cell Voltage",
+ "sensorType": "voltage"
+ },
+ {
+ "displayName": "Battery Cell Percent",
+ "sensorType": "unitless-percent"
+ }
],
- "image": "https://cdn-shop.adafruit.com/640x480/4089-05.jpg",
- "productUrl": "https://www.adafruit.com/product/4089",
- "documentationUrl": "https://learn.adafruit.com/adt7410-breakout",
- "address": "0x48",
+ "image": "https://cdn-shop.adafruit.com/640x480/5580-06.jpg",
+ "productUrl": "https://www.adafruit.com/product/5580",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-max17048-lipoly-liion-fuel-gauge-and-battery-monitor",
+ "address": "0x36",
"addresses": [
- "0x48",
- "0x49",
- "0x4A",
- "0x4B"
+ "0x36"
]
},
{
- "id": "aht21",
- "displayName": "AHT21",
- "name": "aht21",
- "description": "",
+ "id": "mcp3421",
+ "displayName": "MCP3421",
+ "name": "mcp3421",
+ "description": "18-bit ADC. Great for Strain Gauges, Thermocouples and Pressure sensors, between 0 and 2.048 volts",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "relative-humidity"
+ {
+ "displayName": "ADC Reading",
+ "sensorType": "raw"
+ }
],
- "image": "components/i2c/aht21/image.jpg",
- "documentationUrl": "http://www.aosong.com/en/products-60.html",
- "address": "0x38",
+ "image": "components/i2c/mcp3421/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/5870",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-mcp3421-18-bit-adc",
+ "address": "0x68",
"addresses": [
- "0x38"
+ "0x68"
]
},
{
- "id": "rotary_encoder",
- "displayName": "STEMMA QT Rotary Encoder",
- "name": "rotary_encoder",
- "description": "",
+ "id": "mcp9601",
+ "displayName": "MCP9601",
+ "name": "mcp9601",
+ "description": "Thermocouple / ambient temperature sensor. *Note* Needs hotplugging after i2c scans + selecting component!",
"category": "i2c",
"dataTypes": [
{
- "displayName": "Rotary Encoder Value",
+ "displayName": "Ambient Temperature (°C)",
+ "sensorType": "ambient-temp"
+ },
+ {
+ "displayName": "Ambient Temperature (°F)",
+ "sensorType": "ambient-temp-fahrenheit"
+ },
+ {
+ "displayName": "Type K Thermocouple (°C)",
"sensorType": "raw"
}
],
- "image": "components/i2c/rotary_encoder/image.jpeg",
- "productUrl": "https://www.adafruit.com/product/4991",
- "documentationUrl": "https://learn.adafruit.com/adafruit-i2c-qt-rotary-encoder",
- "address": "0x36",
+ "image": "https://cdn-shop.adafruit.com/product-videos/640x480/5165-05.jpg",
+ "productUrl": "https://www.adafruit.com/product/5165",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-mcp9601",
+ "address": "0x67",
"addresses": [
- "0x36",
- "0x37",
- "0x38",
- "0x39",
- "0x3A",
- "0x3B",
- "0x3C",
- "0x3D"
+ "0x67",
+ "0x66",
+ "0x65",
+ "0x64",
+ "0x63",
+ "0x62",
+ "0x61",
+ "0x60"
]
},
{
- "id": "vcnl4040",
- "displayName": "VCNL4040",
- "name": "vcnl4040",
- "description": "Proximity sensor works from 0 to 200mm (about 7.5 inches) & light sensor with range of 0.0125 to 6,553.5 lux",
+ "id": "mcp9808",
+ "displayName": "MCP9808",
+ "name": "mcp9808",
+ "description": "",
"category": "i2c",
"dataTypes": [
- "light",
- "proximity"
+ "ambient-temp",
+ "ambient-temp-fahrenheit"
],
- "image": "https://cdn-shop.adafruit.com/640x480/4161-06.jpg",
- "productUrl": "https://www.adafruit.com/product/4161",
- "documentationUrl": "https://learn.adafruit.com/adafruit-vcnl4040-proximity-sensor",
- "address": "0x60",
+ "image": "https://cdn-shop.adafruit.com/640x480/1782-03.jpg",
+ "productUrl": "https://www.adafruit.com/product/1782",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-mcp9808-precision-i2c-temperature-sensor-guide/overview",
+ "address": "0x18",
"addresses": [
- "0x60"
+ "0x18",
+ "0x19",
+ "0x1A",
+ "0x1B",
+ "0x1C",
+ "0x1D",
+ "0x1E",
+ "0x1F"
]
},
{
- "id": "stemma_soil",
- "displayName": "STEMMA Soil Sensor",
- "name": "stemma_soil",
+ "id": "mpl115a2",
+ "displayName": "MPL115A2",
+ "name": "mpl115a2",
"description": "",
"category": "i2c",
"dataTypes": [
"ambient-temp",
"ambient-temp-fahrenheit",
- {
- "displayName": "Capacitive Sensor",
- "sensorType": "raw"
- }
+ "pressure"
],
- "image": "https://cdn-shop.adafruit.com/640x480/4026-01.jpg",
- "productUrl": "https://www.adafruit.com/product/4026",
- "documentationUrl": "https://learn.adafruit.com/adafruit-stemma-soil-sensor-i2c-capacitive-moisture-sensor",
- "address": "0x36",
+ "image": "https://cdn-shop.adafruit.com/640x480/992-06.jpg",
+ "productUrl": "https://www.adafruit.com/product/992",
+ "documentationUrl": "https://cdn-shop.adafruit.com/datasheets/MPL115A2.pdf",
+ "address": "0x60",
"addresses": [
- "0x36",
- "0x37",
- "0x38",
- "0x39"
+ "0x60"
]
},
{
- "id": "sht20",
- "displayName": "SHT20",
- "name": "sht20",
+ "id": "mprls",
+ "displayName": "MPRLS",
+ "name": "mprls",
"description": "",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "relative-humidity"
+ "pressure"
],
- "image": "components/i2c/sht20/image.jpg",
- "productUrl": "https://www.digikey.com/en/products/detail/dfrobot/SEN0227/7897986",
- "documentationUrl": "https://sensirion.com/media/documents/CCDE1377/635000A2/Sensirion_Datasheet_Humidity_Sensor_SHT20.pdf",
- "address": "0x40",
+ "image": "https://cdn-shop.adafruit.com/640x480/3965-04.jpg",
+ "productUrl": "https://www.adafruit.com/product/3965",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-mprls-ported-pressure-sensor-breakout",
+ "address": "0x18",
"addresses": [
- "0x40"
+ "0x18"
]
},
{
- "id": "tsl2591",
- "displayName": "TSL2591",
- "name": "tsl2591",
+ "id": "ms8607",
+ "displayName": "MS8607",
+ "name": "ms8607",
"description": "",
"category": "i2c",
"dataTypes": [
- "light"
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "relative-humidity",
+ "pressure"
],
- "image": "https://cdn-shop.adafruit.com/640x480/1980-08.jpg",
- "productUrl": "https://www.adafruit.com/product/1980",
- "documentationUrl": "https://learn.adafruit.com/adafruit-tsl2591",
- "address": "0x29",
+ "image": "https://cdn-shop.adafruit.com/640x480/4716-01.jpg",
+ "productUrl": "https://www.adafruit.com/product/4716",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-te-ms8607-pht-sensor",
+ "address": "0x40",
"addresses": [
- "0x29",
- "0x39",
- "0x49"
+ "0x40",
+ "0x76"
]
},
{
- "id": "mcp9808",
- "displayName": "MCP9808",
- "name": "mcp9808",
- "description": "",
+ "id": "nau7802",
+ "displayName": "NAU7802",
+ "name": "nau7802",
+ "description": "24-bit ADC with 128x gain, used with a load cell for weight/force sensing",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit"
+ {
+ "displayName": "Weight Sensor",
+ "sensorType": "raw"
+ }
],
- "image": "https://cdn-shop.adafruit.com/640x480/1782-03.jpg",
- "productUrl": "https://www.adafruit.com/product/1782",
- "documentationUrl": "https://learn.adafruit.com/adafruit-mcp9808-precision-i2c-temperature-sensor-guide/overview",
- "address": "0x18",
+ "image": "components/i2c/nau7802/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/4538",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-nau7802-24-bit-adc-stemma-qt-qwiic/overview",
+ "address": "0x2A",
"addresses": [
- "0x18",
- "0x19",
- "0x1A",
- "0x1B",
- "0x1C",
- "0x1D",
- "0x1E",
- "0x1F"
+ "0x2A"
]
},
{
- "id": "sht3x",
- "displayName": "SHT3X",
- "name": "sht3x",
+ "id": "pct2075",
+ "displayName": "PCT2075",
+ "name": "pct2075",
"description": "",
"category": "i2c",
"dataTypes": [
"ambient-temp",
- "ambient-temp-fahrenheit",
- "relative-humidity"
+ "ambient-temp-fahrenheit"
],
- "image": "https://cdn-shop.adafruit.com/640x480/2857-03.jpg",
- "productUrl": "https://www.adafruit.com/product/2857",
- "documentationUrl": "https://learn.adafruit.com/adafruit-sht31-d-temperature-and-humidity-sensor-breakout/overview",
- "address": "0x44",
+ "image": "components/i2c/pct2075/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/4369",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-pct2075-temperature-sensor",
+ "address": "0x37",
"addresses": [
- "0x44",
- "0x45"
+ "0x37",
+ "0x36",
+ "0x35",
+ "0x2F",
+ "0x2E",
+ "0x2D",
+ "0x2C",
+ "0x2B",
+ "0x2A",
+ "0x29",
+ "0x28",
+ "0x77",
+ "0x76",
+ "0x75",
+ "0x74",
+ "0x73",
+ "0x72",
+ "0x71",
+ "0x70",
+ "0x4F",
+ "0x4E",
+ "0x4D",
+ "0x4C",
+ "0x4B",
+ "0x4A",
+ "0x49",
+ "0x48"
]
},
{
- "id": "mprls",
- "displayName": "MPRLS",
- "name": "mprls",
+ "id": "pmsa003i",
+ "displayName": "PMSA003I",
+ "name": "pmsa003i",
"description": "",
"category": "i2c",
"dataTypes": [
- "pressure"
+ "pm10-std",
+ "pm25-std",
+ "pm100-std"
],
- "image": "https://cdn-shop.adafruit.com/640x480/3965-04.jpg",
- "productUrl": "https://www.adafruit.com/product/3965",
- "documentationUrl": "https://learn.adafruit.com/adafruit-mprls-ported-pressure-sensor-breakout",
- "address": "0x18",
+ "image": "https://cdn-shop.adafruit.com/640x480/4632-10.jpg",
+ "productUrl": "https://www.adafruit.com/product/4632",
+ "documentationUrl": "https://learn.adafruit.com/pmsa003i",
+ "address": "0x12",
"addresses": [
- "0x18"
+ "0x12"
]
},
{
- "id": "vcnl4020",
- "displayName": "VCNL4020",
- "name": "vcnl4020",
- "description": "Proximity sensor works from 0 to 200mm (about 7.5 inches) & light sensor with range of 0.26 to 16,000 lux.",
+ "id": "rotary_encoder",
+ "displayName": "STEMMA QT Rotary Encoder",
+ "name": "rotary_encoder",
+ "description": "",
"category": "i2c",
"dataTypes": [
- "light",
- "proximity"
+ {
+ "displayName": "Rotary Encoder Value",
+ "sensorType": "raw"
+ }
],
- "image": "components/i2c/vcnl4020/image.jpg",
- "productUrl": "https://www.adafruit.com/product/5810",
- "documentationUrl": "https://learn.adafruit.com/adafruit-vcnl4020-proximity-and-light-sensor",
- "address": "0x13",
+ "image": "components/i2c/rotary_encoder/image.jpeg",
+ "productUrl": "https://www.adafruit.com/product/4991",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-i2c-qt-rotary-encoder",
+ "address": "0x36",
"addresses": [
- "0x13"
+ "0x36",
+ "0x37",
+ "0x38",
+ "0x39",
+ "0x3A",
+ "0x3B",
+ "0x3C",
+ "0x3D"
]
},
{
- "id": "veml7700",
- "displayName": "VEML7700",
- "name": "veml7700",
+ "id": "scd30",
+ "displayName": "SCD30",
+ "name": "scd30",
"description": "",
"category": "i2c",
"dataTypes": [
- "light"
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "relative-humidity",
+ "co2"
],
- "image": "https://cdn-shop.adafruit.com/640x480/4162-10.jpg",
- "productUrl": "https://www.adafruit.com/product/4162",
- "documentationUrl": "https://learn.adafruit.com/adafruit-veml7700",
- "address": "0x10",
+ "image": "https://cdn-shop.adafruit.com/product-videos/640x480/4867-05.jpg",
+ "productUrl": "https://www.adafruit.com/product/4867",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-scd30",
+ "address": "0x61",
"addresses": [
- "0x10"
+ "0x61"
]
},
{
- "id": "ltr329",
- "displayName": "LTR-329",
- "name": "ltr329",
+ "id": "scd40",
+ "displayName": "SCD40/SCD41",
+ "name": "scd40",
"description": "",
"category": "i2c",
"dataTypes": [
- {
- "displayName": "Ambient Light",
- "sensorType": "light"
- },
- {
- "displayName": "Infrared",
- "sensorType": "raw"
- }
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "relative-humidity",
+ "co2"
],
- "image": "components/i2c/ltr329/image.jpg",
- "productUrl": "https://www.adafruit.com/product/5591",
- "documentationUrl": "https://learn.adafruit.com/adafruit-ltr-329-ltr-303",
- "address": "0x29",
+ "image": "https://cdn-shop.adafruit.com/640x480/5187-08.jpg",
+ "productUrl": "https://www.adafruit.com/product/5187",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-scd-40-and-scd-41",
+ "address": "0x62",
"addresses": [
- "0x29"
+ "0x62"
]
},
{
- "id": "sht30_mesh",
- "displayName": "Weatherproof SHT30",
- "name": "sht30_mesh",
+ "id": "sen50",
+ "displayName": "SEN50",
+ "name": "sen50",
"description": "",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "relative-humidity"
+ "pm10-std",
+ "pm25-std",
+ "pm100-std"
],
- "image": "https://cdn-shop.adafruit.com/640x480/4099-09.jpg",
- "productUrl": "https://www.adafruit.com/product/4099",
- "documentationUrl": "https://learn.adafruit.com/adafruit-sht31-d-temperature-and-humidity-sensor-breakout",
- "address": "0x44",
+ "image": "components/i2c/sen50/image.png",
+ "productUrl": "https://www.digikey.com/en/products/filter/gas-sensors/530?s=N4IgjCBcoLQCxVAYygMwIYBsDOBTANCAPZQDa4ADFRQgLoC%2BjQA",
+ "documentationUrl": "https://sensirion.com/media/documents/6791EFA0/62A1F68F/Sensirion_Datasheet_Environmental_Node_SEN5x.pdf",
+ "address": "0x69",
"addresses": [
- "0x44"
+ "0x69"
]
},
{
- "id": "bme680",
- "displayName": "BME680",
- "name": "bme680",
+ "id": "sen54",
+ "displayName": "SEN54",
+ "name": "sen54",
"description": "",
"category": "i2c",
"dataTypes": [
"ambient-temp",
"ambient-temp-fahrenheit",
"relative-humidity",
- "pressure",
- "altitude",
- "gas-resistance"
- ],
- "image": "https://cdn-shop.adafruit.com/640x480/3660-08.jpg",
- "productUrl": "https://www.adafruit.com/product/3660",
- "documentationUrl": "https://learn.adafruit.com/adafruit-bme680-humidity-temperature-barometic-pressure-voc-gas",
- "address": "0x77",
+ "pm10-std",
+ "pm25-std",
+ "pm100-std",
+ "voc-index"
+ ],
+ "image": "components/i2c/sen54/image.png",
+ "productUrl": "https://www.digikey.com/en/products/filter/gas-sensors/530?s=N4IgjCBcoLQCxVAYygMwIYBsDOBTANCAPZQDa4ADFRQgLoC%2BjQA",
+ "documentationUrl": "https://sensirion.com/media/documents/6791EFA0/62A1F68F/Sensirion_Datasheet_Environmental_Node_SEN5x.pdf",
+ "address": "0x69",
"addresses": [
- "0x77",
- "0x76"
+ "0x69"
]
},
{
- "id": "lps28dfw",
- "displayName": "LPS28DFW",
- "name": "lps28dfw",
- "description": "From 260 to 4060 hPa, this is our largest range pressure sensor (24bit).",
+ "id": "sen55",
+ "displayName": "SEN55",
+ "name": "sen55",
+ "description": "",
"category": "i2c",
"dataTypes": [
"ambient-temp",
"ambient-temp-fahrenheit",
- "pressure"
+ "relative-humidity",
+ "pm10-std",
+ "pm25-std",
+ "pm100-std",
+ "voc-index",
+ "nox-index"
],
- "image": "components/i2c/lps28dfw/image.jpg",
- "productUrl": "https://www.adafruit.com/product/6067",
- "documentationUrl": "https://learn.adafruit.com/adafruit-lps28-pressure-sensor",
- "address": "0x5C",
+ "image": "components/i2c/sen55/image.png",
+ "productUrl": "https://www.digikey.com/en/products/filter/gas-sensors/530?s=N4IgjCBcoLQCxVAYygMwIYBsDOBTANCAPZQDa4ADFRQgLoC%2BjQA",
+ "documentationUrl": "https://sensirion.com/media/documents/6791EFA0/62A1F68F/Sensirion_Datasheet_Environmental_Node_SEN5x.pdf",
+ "address": "0x69",
"addresses": [
- "0x5C",
- "0x5D"
+ "0x69"
]
},
{
- "id": "ina238",
- "displayName": "INA238",
- "name": "ina238",
- "description": "85V, 16-bit, high-precision power monitor (up to 10A, 0.1% gain error)",
+ "id": "sen5x",
+ "displayName": "SEN5x",
+ "name": "sen5x",
+ "description": "",
"category": "i2c",
"dataTypes": [
- "voltage",
- "current"
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "relative-humidity",
+ "pm10-std",
+ "pm25-std",
+ "pm100-std",
+ "voc-index",
+ "nox-index"
],
- "image": "https://cdn-shop.adafruit.com/640x480/6349-00.jpg",
- "productUrl": "https://www.adafruit.com/product/6349",
- "documentationUrl": "https://learn.adafruit.com/adafruit-ina238-dc-current-voltage-power-monitor",
- "address": "0x40",
+ "image": "components/i2c/sen5x/image.png",
+ "productUrl": "https://www.digikey.com/en/products/filter/gas-sensors/530?s=N4IgjCBcoLQCxVAYygMwIYBsDOBTANCAPZQDa4ADFRQgLoC%2BjQA",
+ "documentationUrl": "https://sensirion.com/media/documents/6791EFA0/62A1F68F/Sensirion_Datasheet_Environmental_Node_SEN5x.pdf",
+ "address": "0x69",
"addresses": [
- "0x40",
- "0x41",
- "0x44",
- "0x45"
+ "0x69"
]
},
{
- "id": "hdc302x",
- "displayName": "HDC302x",
- "name": "hdc302x",
- "description": "Precision temperature (\u00b10.1\u00b0C typical) and humidity sensors (\u00b10.5% typ). HDC3020 / HDC3021 / HDC3022",
+ "id": "sen66",
+ "displayName": "SEN66",
+ "name": "sen66",
+ "description": "",
"category": "i2c",
"dataTypes": [
"ambient-temp",
"ambient-temp-fahrenheit",
- "relative-humidity"
+ "relative-humidity",
+ "pm10-std",
+ "pm25-std",
+ "pm100-std",
+ "voc-index",
+ "nox-index",
+ "co2"
],
- "image": "https://cdn-shop.adafruit.com/640x480/5989-07.jpg",
- "productUrl": "https://www.adafruit.com/product/5989",
- "documentationUrl": "https://learn.adafruit.com/adafruit-hdc3021-precision-temperature-humidity-sensor/overview",
- "address": "0x44",
+ "image": "https://cdn-shop.adafruit.com/640x480/6331-06.jpg",
+ "productUrl": "https://www.adafruit.com/product/6331",
+ "documentationUrl": "https://sensirion.com/media/documents/FAFC548D/6731FFFA/Sensirion_Datasheet_SEN6x.pdf",
+ "address": "0x6B",
"addresses": [
- "0x44",
- "0x45",
- "0x46",
- "0x47"
+ "0x6B"
]
},
{
- "id": "lps22hb",
- "displayName": "LPS22HB",
- "name": "lps22hb",
+ "id": "sgp30",
+ "displayName": "SGP30",
+ "name": "sgp30",
"description": "",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "pressure"
+ "eco2",
+ "tvoc"
],
- "image": "https://cdn-shop.adafruit.com/640x480/4633-09.jpg",
- "productUrl": "https://www.adafruit.com/product/4633",
- "documentationUrl": "https://learn.adafruit.com/adafruit-lps25-pressure-sensor",
- "address": "0x5D",
+ "image": "https://cdn-shop.adafruit.com/640x480/3709-07.jpg",
+ "productUrl": "https://www.adafruit.com/product/3709",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-sgp30-gas-tvoc-eco2-mox-sensor",
+ "address": "0x58",
"addresses": [
- "0x5D",
- "0x5C"
+ "0x58"
]
},
{
- "id": "lc709203f",
- "displayName": "LC709203F",
- "name": "lc709203f",
+ "id": "sgp40",
+ "displayName": "SGP40",
+ "name": "sgp40",
"description": "",
"category": "i2c",
"dataTypes": [
+ "voc-index",
{
- "displayName": "Battery Cell Voltage",
- "sensorType": "voltage"
- },
- {
- "displayName": "Battery Cell Percent",
- "sensorType": "unitless-percent"
+ "displayName": "Raw (For Reference Only)",
+ "sensorType": "raw"
}
],
- "image": "https://cdn-shop.adafruit.com/640x480/4712-07.jpg",
- "productUrl": "https://www.adafruit.com/product/4712",
- "documentationUrl": "https://learn.adafruit.com/adafruit-lc709203f-lipo-lipoly-battery-monitor",
- "address": "0x0B",
+ "image": "https://cdn-shop.adafruit.com/640x480/4829-06.jpg",
+ "productUrl": "https://www.adafruit.com/product/4829",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-sgp40",
+ "address": "0x59",
"addresses": [
- "0x0B"
+ "0x59"
]
},
{
- "id": "sen66",
- "displayName": "SEN66",
- "name": "sen66",
+ "id": "sht20",
+ "displayName": "SHT20",
+ "name": "sht20",
"description": "",
"category": "i2c",
"dataTypes": [
"ambient-temp",
"ambient-temp-fahrenheit",
- "relative-humidity",
- "pm10-std",
- "pm25-std",
- "pm100-std",
- "voc-index",
- "nox-index",
- "co2"
+ "relative-humidity"
],
- "image": "https://cdn-shop.adafruit.com/640x480/6331-06.jpg",
- "productUrl": "https://www.adafruit.com/product/6331",
- "documentationUrl": "https://sensirion.com/media/documents/FAFC548D/6731FFFA/Sensirion_Datasheet_SEN6x.pdf",
- "address": "0x6B",
+ "image": "components/i2c/sht20/image.jpg",
+ "productUrl": "https://www.digikey.com/en/products/detail/dfrobot/SEN0227/7897986",
+ "documentationUrl": "https://sensirion.com/media/documents/CCDE1377/635000A2/Sensirion_Datasheet_Humidity_Sensor_SHT20.pdf",
+ "address": "0x40",
"addresses": [
- "0x6B"
+ "0x40"
]
},
{
- "id": "sht40",
- "displayName": "SHT40",
- "name": "sht40",
+ "id": "sht30_mesh",
+ "displayName": "Weatherproof SHT30",
+ "name": "sht30_mesh",
"description": "",
"category": "i2c",
"dataTypes": [
@@ -1373,36 +1273,37 @@ window.jsonComponentsObject = {
"ambient-temp-fahrenheit",
"relative-humidity"
],
- "image": "https://cdn-shop.adafruit.com/640x480/4885-05.jpg",
- "productUrl": "https://www.adafruit.com/product/4885",
- "documentationUrl": "https://learn.adafruit.com/adafruit-sht40-temperature-humidity-sensor",
+ "image": "https://cdn-shop.adafruit.com/640x480/4099-09.jpg",
+ "productUrl": "https://www.adafruit.com/product/4099",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-sht31-d-temperature-and-humidity-sensor-breakout",
"address": "0x44",
"addresses": [
"0x44"
]
},
{
- "id": "tc74a0",
- "displayName": "TC74A0",
- "name": "tc74a0",
+ "id": "sht30_shell",
+ "displayName": "Enclosed SHT30",
+ "name": "sht30_shell",
"description": "",
"category": "i2c",
"dataTypes": [
"ambient-temp",
- "ambient-temp-fahrenheit"
+ "ambient-temp-fahrenheit",
+ "relative-humidity"
],
- "image": "https://cdn-shop.adafruit.com/640x480/4375-03.jpg",
- "productUrl": "https://www.adafruit.com/product/4375",
- "documentationUrl": "https://learn.adafruit.com/adafruit-pct2075-temperature-sensor",
- "address": "0x48",
+ "image": "https://cdn-shop.adafruit.com/640x480/5064-00.jpg",
+ "productUrl": "https://www.adafruit.com/product/5064",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-sht31-d-temperature-and-humidity-sensor-breakout",
+ "address": "0x44",
"addresses": [
- "0x48"
+ "0x44"
]
},
{
- "id": "htu31d",
- "displayName": "HTU31D",
- "name": "htu31d",
+ "id": "sht3x",
+ "displayName": "SHT3X",
+ "name": "sht3x",
"description": "",
"category": "i2c",
"dataTypes": [
@@ -1412,17 +1313,17 @@ window.jsonComponentsObject = {
],
"image": "https://cdn-shop.adafruit.com/640x480/2857-03.jpg",
"productUrl": "https://www.adafruit.com/product/2857",
- "documentationUrl": "https://www.adafruit.com/product/4832",
- "address": "0x40",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-sht31-d-temperature-and-humidity-sensor-breakout/overview",
+ "address": "0x44",
"addresses": [
- "0x40",
- "0x41"
+ "0x44",
+ "0x45"
]
},
{
- "id": "am2301b",
- "displayName": "AM2301B",
- "name": "am2301b",
+ "id": "sht40",
+ "displayName": "SHT40",
+ "name": "sht40",
"description": "",
"category": "i2c",
"dataTypes": [
@@ -1430,78 +1331,31 @@ window.jsonComponentsObject = {
"ambient-temp-fahrenheit",
"relative-humidity"
],
- "image": "https://cdn-shop.adafruit.com/640x480/5181-05.jpg",
- "productUrl": "https://www.adafruit.com/product/5181",
- "documentationUrl": "https://cdn-shop.adafruit.com/product-files/5181/5181_AM2301B.pdf",
- "address": "0x38",
+ "image": "https://cdn-shop.adafruit.com/640x480/4885-05.jpg",
+ "productUrl": "https://www.adafruit.com/product/4885",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-sht40-temperature-humidity-sensor",
+ "address": "0x44",
"addresses": [
- "0x38"
+ "0x44"
]
},
{
- "id": "sen54",
- "displayName": "SEN54",
- "name": "sen54",
+ "id": "sht41",
+ "displayName": "SHT41",
+ "name": "sht41",
"description": "",
"category": "i2c",
"dataTypes": [
"ambient-temp",
"ambient-temp-fahrenheit",
- "relative-humidity",
- "pm10-std",
- "pm25-std",
- "pm100-std",
- "voc-index"
+ "relative-humidity"
],
- "image": "components/i2c/sen54/image.png",
- "productUrl": "https://www.digikey.com/en/products/filter/gas-sensors/530?s=N4IgjCBcoLQCxVAYygMwIYBsDOBTANCAPZQDa4ADFRQgLoC%2BjQA",
- "documentationUrl": "https://sensirion.com/media/documents/6791EFA0/62A1F68F/Sensirion_Datasheet_Environmental_Node_SEN5x.pdf",
- "address": "0x69",
+ "image": "https://cdn-shop.adafruit.com/640x480/5776-05.jpg",
+ "productUrl": "https://www.adafruit.com/product/5776",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-sht40-temperature-humidity-sensor",
+ "address": "0x44",
"addresses": [
- "0x69"
- ]
- },
- {
- "id": "lps25hb",
- "displayName": "LPS25HB",
- "name": "lps25hb",
- "description": "",
- "category": "i2c",
- "dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "pressure"
- ],
- "image": "components/i2c/lps25hb/image.jpg",
- "productUrl": "https://www.adafruit.com/product/4530",
- "documentationUrl": "https://learn.adafruit.com/adafruit-lps25-pressure-sensor",
- "address": "0x5D",
- "addresses": [
- "0x5D",
- "0x5C"
- ]
- },
- {
- "id": "ens160",
- "displayName": "ENS160",
- "name": "ens160",
- "description": "",
- "category": "i2c",
- "dataTypes": [
- "tvoc",
- "eco2",
- {
- "displayName": "AQI",
- "sensorType": "raw"
- }
- ],
- "image": "components/i2c/ens160/image.jpg",
- "productUrl": "https://www.adafruit.com/product/5606",
- "documentationUrl": "https://learn.adafruit.com/adafruit-ens160-mox-gas-sensor",
- "address": "0x52",
- "addresses": [
- "0x52",
- "0x53"
+ "0x44"
]
},
{
@@ -1524,576 +1378,820 @@ window.jsonComponentsObject = {
]
},
{
- "id": "ina237",
- "displayName": "INA237",
- "name": "ina237",
- "description": "85V, 16-bit, good-precision power monitor (up to 10A, 0.3% gain error)",
+ "id": "shtc3",
+ "displayName": "SHTC3",
+ "name": "shtc3",
+ "description": "",
"category": "i2c",
"dataTypes": [
- "voltage",
- "current"
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "relative-humidity"
],
- "image": "https://cdn-shop.adafruit.com/640x480/6340-02.jpg",
- "productUrl": "https://www.adafruit.com/product/6340",
- "documentationUrl": "https://learn.adafruit.com/adafruit-ina237-dc-current-voltage-power-monitor",
- "address": "0x40",
+ "image": "https://cdn-shop.adafruit.com/640x480/4636-05.jpg",
+ "productUrl": "https://www.adafruit.com/product/4636",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-sensirion-shtc3-temperature-humidity-sensor",
+ "address": "0x70",
"addresses": [
- "0x40",
- "0x41",
- "0x44",
- "0x45"
+ "0x70"
]
},
{
- "id": "vl53l1x",
- "displayName": "VL53L1X",
- "name": "vl53l1x",
- "description": "Time of Flight (ToF) distance sensor with about ~30 to 4000mm range",
+ "id": "si7021",
+ "displayName": "Si7021",
+ "name": "si7021",
+ "description": "",
"category": "i2c",
"dataTypes": [
- {
- "displayName": "ToF Sensor",
- "sensorType": "proximity"
- }
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "relative-humidity"
],
- "image": "components/i2c/vl53l1x/image.jpg",
- "productUrl": "https://www.adafruit.com/product/3967",
- "documentationUrl": "https://learn.adafruit.com/adafruit-vl53l1x",
- "address": "0x29",
+ "image": "https://cdn-shop.adafruit.com/640x480/3251-08.jpg",
+ "productUrl": "https://www.adafruit.com/product/3251",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-si7021-temperature-plus-humidity-sensor/overview",
+ "address": "0x40",
"addresses": [
- "0x29"
+ "0x40"
]
},
{
- "id": "dht20",
- "displayName": "DHT20",
- "name": "dht20",
+ "id": "stemma_soil",
+ "displayName": "STEMMA Soil Sensor",
+ "name": "stemma_soil",
"description": "",
"category": "i2c",
"dataTypes": [
"ambient-temp",
"ambient-temp-fahrenheit",
- "relative-humidity"
+ {
+ "displayName": "Capacitive Sensor",
+ "sensorType": "raw"
+ }
],
- "image": "https://cdn-shop.adafruit.com/640x480/5183-04.jpg",
- "productUrl": "https://www.adafruit.com/product/5183",
- "documentationUrl": "https://cdn-shop.adafruit.com/product-files/5183/5193_DHT20.pdf",
- "address": "0x38",
+ "image": "https://cdn-shop.adafruit.com/640x480/4026-01.jpg",
+ "productUrl": "https://www.adafruit.com/product/4026",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-stemma-soil-sensor-i2c-capacitive-moisture-sensor",
+ "address": "0x36",
"addresses": [
- "0x38"
+ "0x36",
+ "0x37",
+ "0x38",
+ "0x39"
]
},
{
- "id": "ms8607",
- "displayName": "MS8607",
- "name": "ms8607",
+ "id": "tc74a0",
+ "displayName": "TC74A0",
+ "name": "tc74a0",
"description": "",
"category": "i2c",
"dataTypes": [
"ambient-temp",
- "ambient-temp-fahrenheit",
- "relative-humidity",
- "pressure"
+ "ambient-temp-fahrenheit"
],
- "image": "https://cdn-shop.adafruit.com/640x480/4716-01.jpg",
- "productUrl": "https://www.adafruit.com/product/4716",
- "documentationUrl": "https://learn.adafruit.com/adafruit-te-ms8607-pht-sensor",
- "address": "0x40",
+ "image": "https://cdn-shop.adafruit.com/640x480/4375-03.jpg",
+ "productUrl": "https://www.adafruit.com/product/4375",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-pct2075-temperature-sensor",
+ "address": "0x48",
"addresses": [
- "0x40",
- "0x76"
+ "0x48"
]
},
{
- "id": "nau7802",
- "displayName": "NAU7802",
- "name": "nau7802",
- "description": "24-bit ADC with 128x gain, used with a load cell for weight/force sensing",
+ "id": "tmp117",
+ "displayName": "TMP117",
+ "name": "tmp117",
+ "description": "",
"category": "i2c",
"dataTypes": [
- {
- "displayName": "Weight Sensor",
- "sensorType": "raw"
- }
+ "ambient-temp",
+ "ambient-temp-fahrenheit"
],
- "image": "components/i2c/nau7802/image.jpg",
- "productUrl": "https://www.adafruit.com/product/4538",
- "documentationUrl": "https://learn.adafruit.com/adafruit-nau7802-24-bit-adc-stemma-qt-qwiic/overview",
- "address": "0x2A",
+ "image": "components/i2c/tmp117/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/4821",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-tmp117-high-accuracy-i2c-temperature-monitor",
+ "address": "0x48",
"addresses": [
- "0x2A"
+ "0x48",
+ "0x49",
+ "0x4A",
+ "0x4B"
]
},
{
- "id": "hts221",
- "displayName": "HTS221",
- "name": "hts221",
+ "id": "tsl2591",
+ "displayName": "TSL2591",
+ "name": "tsl2591",
"description": "",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "relative-humidity"
+ "light"
],
- "image": "https://cdn-shop.adafruit.com/640x480/4535-04.jpg",
- "productUrl": "https://www.adafruit.com/product/4535",
- "documentationUrl": "https://learn.adafruit.com/adafruit-hts221-temperature-humidity-sensor/overview",
- "address": "0x5F",
+ "image": "https://cdn-shop.adafruit.com/640x480/1980-08.jpg",
+ "productUrl": "https://www.adafruit.com/product/1980",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-tsl2591",
+ "address": "0x29",
"addresses": [
- "0x5F"
+ "0x29",
+ "0x39",
+ "0x49"
]
},
{
- "id": "bh1750",
- "displayName": "BH1750",
- "name": "bh1750",
- "description": "",
+ "id": "vcnl4020",
+ "displayName": "VCNL4020",
+ "name": "vcnl4020",
+ "description": "Proximity sensor works from 0 to 200mm (about 7.5 inches) & light sensor with range of 0.26 to 16,000 lux.",
"category": "i2c",
"dataTypes": [
- "light"
+ "light",
+ "proximity"
],
- "image": "https://cdn-shop.adafruit.com/640x480/4681-06.jpg",
- "productUrl": "https://www.adafruit.com/product/4681",
- "documentationUrl": "https://learn.adafruit.com/adafruit-bh1750-ambient-light-sensor",
- "address": "0x23",
+ "image": "components/i2c/vcnl4020/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/5810",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-vcnl4020-proximity-and-light-sensor",
+ "address": "0x13",
"addresses": [
- "0x23",
- "0x5C"
+ "0x13"
]
},
{
- "id": "mpl115a2",
- "displayName": "MPL115A2",
- "name": "mpl115a2",
- "description": "",
+ "id": "vcnl4040",
+ "displayName": "VCNL4040",
+ "name": "vcnl4040",
+ "description": "Proximity sensor works from 0 to 200mm (about 7.5 inches) & light sensor with range of 0.0125 to 6,553.5 lux",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "pressure"
+ "light",
+ "proximity"
],
- "image": "https://cdn-shop.adafruit.com/640x480/992-06.jpg",
- "productUrl": "https://www.adafruit.com/product/992",
- "documentationUrl": "https://cdn-shop.adafruit.com/datasheets/MPL115A2.pdf",
+ "image": "https://cdn-shop.adafruit.com/640x480/4161-06.jpg",
+ "productUrl": "https://www.adafruit.com/product/4161",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-vcnl4040-proximity-sensor",
"address": "0x60",
"addresses": [
"0x60"
]
},
{
- "id": "ltr303",
- "displayName": "LTR-303",
- "name": "ltr303",
- "description": "",
+ "id": "vcnl4200",
+ "displayName": "VCNL4200",
+ "name": "vcnl4200",
+ "description": "Proximity sensor works from 0 to 1.5m (about 59 inches) & light sensor with range of 0.003 to 1570 lux",
"category": "i2c",
"dataTypes": [
- {
- "displayName": "Ambient Light",
- "sensorType": "light"
- },
- {
- "displayName": "Infrared",
- "sensorType": "raw"
- }
+ "light",
+ "proximity"
],
- "image": "components/i2c/ltr303/image.jpg",
- "productUrl": "https://www.adafruit.com/product/5610",
- "documentationUrl": "https://learn.adafruit.com/adafruit-ltr-329-ltr-303",
- "address": "0x29",
+ "image": "https://cdn-shop.adafruit.com/640x480/6064-00.jpg",
+ "productUrl": "https://www.adafruit.com/product/6064",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-vcnl4200-long-distance-ir-proximity-and-light-sensor",
+ "address": "0x51",
"addresses": [
- "0x29"
+ "0x51"
]
},
{
- "id": "sen55",
- "displayName": "SEN55",
- "name": "sen55",
+ "id": "veml7700",
+ "displayName": "VEML7700",
+ "name": "veml7700",
"description": "",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "relative-humidity",
- "pm10-std",
- "pm25-std",
- "pm100-std",
- "voc-index",
- "nox-index"
+ "light"
],
- "image": "components/i2c/sen55/image.png",
- "productUrl": "https://www.digikey.com/en/products/filter/gas-sensors/530?s=N4IgjCBcoLQCxVAYygMwIYBsDOBTANCAPZQDa4ADFRQgLoC%2BjQA",
- "documentationUrl": "https://sensirion.com/media/documents/6791EFA0/62A1F68F/Sensirion_Datasheet_Environmental_Node_SEN5x.pdf",
- "address": "0x69",
+ "image": "https://cdn-shop.adafruit.com/640x480/4162-10.jpg",
+ "productUrl": "https://www.adafruit.com/product/4162",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-veml7700",
+ "address": "0x10",
"addresses": [
- "0x69"
+ "0x10"
]
},
{
- "id": "am2315c",
- "displayName": "AM2315C",
- "name": "am2315c",
- "description": "",
+ "id": "vl53l0x",
+ "displayName": "VL53L0X",
+ "name": "vl53l0x",
+ "description": "Time of Flight (ToF) distance sensor with about ~50 to 1200mm range",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "relative-humidity"
+ {
+ "displayName": "ToF Sensor",
+ "sensorType": "proximity"
+ }
],
- "image": "https://cdn-shop.adafruit.com/640x480/5182-05.jpg",
- "productUrl": "https://www.adafruit.com/product/5182",
- "documentationUrl": "https://cdn-shop.adafruit.com/product-files/5182/5182_AM2315C.pdf",
- "address": "0x38",
+ "image": "components/i2c/vl53l0x/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/3317",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-vl53l0x-micro-lidar-distance-sensor-breakout",
+ "address": "0x29",
"addresses": [
- "0x38"
+ "0x29"
]
},
{
- "id": "bme688",
- "displayName": "BME688",
- "name": "bme688",
- "description": "",
+ "id": "vl53l1x",
+ "displayName": "VL53L1X",
+ "name": "vl53l1x",
+ "description": "Time of Flight (ToF) distance sensor with about ~30 to 4000mm range",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "relative-humidity",
- "pressure",
- "altitude",
- "gas-resistance"
+ {
+ "displayName": "ToF Sensor",
+ "sensorType": "proximity"
+ }
],
- "image": "https://cdn-shop.adafruit.com/640x480/5046-05.jpg",
- "productUrl": "https://www.adafruit.com/product/5046",
- "documentationUrl": "https://learn.adafruit.com/adafruit-bme680-humidity-temperature-barometic-pressure-voc-gas",
- "address": "0x77",
+ "image": "components/i2c/vl53l1x/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/3967",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-vl53l1x",
+ "address": "0x29",
"addresses": [
- "0x77",
- "0x76"
+ "0x29"
]
},
{
- "id": "dps310",
- "displayName": "DPS310",
- "name": "dps310",
- "description": "",
+ "id": "vl53l4cd",
+ "displayName": "VL53L4CD",
+ "name": "vl53l4cd",
+ "description": "Time of Flight (ToF) distance sensor with about ~1 to 1300mm range",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "pressure"
+ {
+ "displayName": "ToF Sensor",
+ "sensorType": "proximity"
+ }
],
- "image": "https://cdn-shop.adafruit.com/640x480/4494-05.jpg",
- "productUrl": "https://www.adafruit.com/product/4494",
- "documentationUrl": "https://learn.adafruit.com/adafruit-dps310-precision-barometric-pressure-sensor",
- "address": "0x77",
+ "image": "components/i2c/vl53l4cd/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/5396",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-vl53l4cd-time-of-flight-distance-sensor",
+ "address": "0x29",
"addresses": [
- "0x77",
- "0x76"
+ "0x29"
]
},
{
- "id": "sht41",
- "displayName": "SHT41",
- "name": "sht41",
- "description": "",
+ "id": "vl53l4cx",
+ "displayName": "VL53L4CX",
+ "name": "vl53l4cx",
+ "description": "Time of Flight (ToF) distance sensor with about ~1 to 6000mm range + 'multi object detection'",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "relative-humidity"
+ {
+ "displayName": "ToF Sensor - Object 1",
+ "sensorType": "proximity"
+ },
+ {
+ "displayName": "ToF Sensor - Object 2",
+ "sensorType": "raw"
+ }
],
- "image": "https://cdn-shop.adafruit.com/640x480/5776-05.jpg",
- "productUrl": "https://www.adafruit.com/product/5776",
- "documentationUrl": "https://learn.adafruit.com/adafruit-sht40-temperature-humidity-sensor",
- "address": "0x44",
+ "image": "https://cdn-shop.adafruit.com/640x480/5425-02.jpg",
+ "productUrl": "https://www.adafruit.com/product/5425",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-vl53l4cx-time-of-flight-distance-sensor",
+ "address": "0x29",
"addresses": [
- "0x44"
+ "0x29"
]
},
{
- "id": "lps35hw",
- "displayName": "LPS35HW",
- "name": "lps35hw",
- "description": "",
+ "id": "vl6180x",
+ "displayName": "VL6180X",
+ "name": "vl6180x",
+ "description": "Time of Flight (ToF) distance sensor with about ~5 to 200mm range",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "pressure"
+ {
+ "displayName": "ToF Sensor",
+ "sensorType": "proximity"
+ },
+ "light"
],
- "image": "https://cdn-shop.adafruit.com/640x480/4258-10.jpg",
- "productUrl": "https://www.adafruit.com/product/4258",
- "documentationUrl": "https://learn.adafruit.com/lps35hw-water-resistant-pressure-sensor",
- "address": "0x5D",
+ "image": "components/i2c/vl6180x/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/3316",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-vl6180x-time-of-flight-micro-lidar-distance-sensor-breakout",
+ "address": "0x29",
"addresses": [
- "0x5D",
- "0x5C"
+ "0x29"
]
+ }
+ ],
+ "i2c_output": [
+ {
+ "id": "7seg",
+ "displayName": "7-Segment LED Matrix",
+ "name": "7seg",
+ "description": "7-Segment LED Matrix with I2C Backpack",
+ "category": "i2c_output",
+ "dataTypes": [],
+ "image": "components/i2c_output/7seg/image.png",
+ "productUrl": "https://www.adafruit.com/product/878",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-led-backpack/0-dot-56-seven-segment-backpack"
},
{
- "id": "mcp3421",
- "displayName": "MCP3421",
- "name": "mcp3421",
- "description": "18-bit ADC. Great for Strain Gauges, Thermocouples and Pressure sensors, between 0 and 2.048 volts",
- "category": "i2c",
- "dataTypes": [
- {
- "displayName": "ADC Reading",
- "sensorType": "raw"
- }
- ],
- "image": "components/i2c/mcp3421/image.jpg",
- "productUrl": "https://www.adafruit.com/product/5870",
- "documentationUrl": "https://learn.adafruit.com/adafruit-mcp3421-18-bit-adc",
- "address": "0x68",
- "addresses": [
- "0x68"
- ]
+ "id": "chardisplay16x2",
+ "displayName": "16x2 Character Display",
+ "name": "chardisplay16x2",
+ "description": "Standard 16x2 HD44780 character display with I2C backpack",
+ "category": "i2c_output",
+ "dataTypes": [],
+ "image": "components/i2c_output/chardisplay16x2/image.png",
+ "productUrl": "https://www.adafruit.com/product/1447",
+ "documentationUrl": "https://learn.adafruit.com/i2c-spi-lcd-backpack"
},
{
- "id": "sht30_shell",
- "displayName": "Enclosed SHT30",
- "name": "sht30_shell",
- "description": "",
- "category": "i2c",
- "dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "relative-humidity"
- ],
- "image": "https://cdn-shop.adafruit.com/640x480/5064-00.jpg",
- "productUrl": "https://www.adafruit.com/product/5064",
- "documentationUrl": "https://learn.adafruit.com/adafruit-sht31-d-temperature-and-humidity-sensor-breakout",
- "address": "0x44",
- "addresses": [
- "0x44"
- ]
+ "id": "chardisplay20x4",
+ "displayName": "20x4 Character Display",
+ "name": "chardisplay20x4",
+ "description": "Standard 20x4 HD44780 character display with I2C backpack",
+ "category": "i2c_output",
+ "dataTypes": [],
+ "image": "components/i2c_output/chardisplay20x4/image.png",
+ "productUrl": "https://www.adafruit.com/product/198",
+ "documentationUrl": "https://learn.adafruit.com/i2c-spi-lcd-backpack"
},
{
- "id": "vcnl4200",
- "displayName": "VCNL4200",
- "name": "vcnl4200",
- "description": "Proximity sensor works from 0 to 1.5m (about 59 inches) & light sensor with range of 0.003 to 1570 lux",
- "category": "i2c",
- "dataTypes": [
- "light",
- "proximity"
- ],
- "image": "https://cdn-shop.adafruit.com/640x480/6064-00.jpg",
- "productUrl": "https://www.adafruit.com/product/6064",
- "documentationUrl": "https://learn.adafruit.com/adafruit-vcnl4200-long-distance-ir-proximity-and-light-sensor",
- "address": "0x51",
- "addresses": [
- "0x51"
- ]
+ "id": "fthrwingoled128x32",
+ "displayName": "128x32 OLED'wing (Small)",
+ "name": "fthrwingoled128x32",
+ "description": "Monochrome 128x32 OLED featherwing display with the default font size (SSD1306)",
+ "category": "i2c_output",
+ "dataTypes": [],
+ "image": "https://cdn-shop.adafruit.com/640x480/2900-10.jpg",
+ "productUrl": "https://www.adafruit.com/product/2900",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-oled-featherwing"
},
{
- "id": "shtc3",
- "displayName": "SHTC3",
- "name": "shtc3",
- "description": "",
- "category": "i2c",
- "dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "relative-humidity"
- ],
- "image": "https://cdn-shop.adafruit.com/640x480/4636-05.jpg",
- "productUrl": "https://www.adafruit.com/product/4636",
- "documentationUrl": "https://learn.adafruit.com/adafruit-sensirion-shtc3-temperature-humidity-sensor",
- "address": "0x70",
- "addresses": [
- "0x70"
- ]
+ "id": "fthrwingoled128x32lg",
+ "displayName": "128x32 OLED'wing (Large)",
+ "name": "fthrwingoled128x32lg",
+ "description": "Monochrome 128x32 OLED featherwing display with a larger font size (SSD1306)",
+ "category": "i2c_output",
+ "dataTypes": [],
+ "image": "https://cdn-shop.adafruit.com/640x480/2900-10.jpg",
+ "productUrl": "https://www.adafruit.com/product/2900",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-oled-featherwing"
+ },
+ {
+ "id": "fthrwingoled128x64",
+ "displayName": "128x64 OLED'wing (Small)",
+ "name": "fthrwingoled128x64",
+ "description": "Monochrome 128x64 OLED featherwing display with the default font size (SH1107)",
+ "category": "i2c_output",
+ "dataTypes": [],
+ "image": "https://cdn-shop.adafruit.com/product-videos/640x480/4650-08.jpg",
+ "productUrl": "https://www.adafruit.com/product/4650",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-128x64-oled-featherwing"
+ },
+ {
+ "id": "fthrwingoled128x64lg",
+ "displayName": "128x64 OLED'wing (Large)",
+ "name": "fthrwingoled128x64lg",
+ "description": "Monochrome 128x64 OLED featherwing display with the default font size (SH1107)",
+ "category": "i2c_output",
+ "dataTypes": [],
+ "image": "https://cdn-shop.adafruit.com/product-videos/640x480/4650-08.jpg",
+ "productUrl": "https://www.adafruit.com/product/4650",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-128x64-oled-featherwing"
+ },
+ {
+ "id": "oled128x32default",
+ "displayName": "128x32 OLED (Default)",
+ "name": "oled128x32default",
+ "description": "Monochrome 128x32 OLED graphic display with the default font size. (SSD1306)",
+ "category": "i2c_output",
+ "dataTypes": [],
+ "image": "components/i2c_output/oled128x32default/image.png",
+ "productUrl": "https://www.adafruit.com/product/4440",
+ "documentationUrl": "https://learn.adafruit.com/monochrome-oled-breakouts"
+ },
+ {
+ "id": "oled128x32large",
+ "displayName": "128x32 OLED (Large Font)",
+ "name": "oled128x32large",
+ "description": "Monochrome 128x32 I2C OLED Display with a larger font size (SSD1306).",
+ "category": "i2c_output",
+ "dataTypes": [],
+ "image": "components/i2c_output/oled128x32large/image.png",
+ "productUrl": "https://www.adafruit.com/product/4440",
+ "documentationUrl": "https://learn.adafruit.com/monochrome-oled-breakouts"
+ },
+ {
+ "id": "oled128x64default",
+ "displayName": "128x64 OLED (Default)",
+ "name": "oled128x64default",
+ "description": "Monochrome 128x64 I2C OLED Display with the default font size (SSD1306)",
+ "category": "i2c_output",
+ "dataTypes": [],
+ "image": "components/i2c_output/oled128x64default/image.png",
+ "productUrl": "https://www.adafruit.com/product/938",
+ "documentationUrl": "https://learn.adafruit.com/monochrome-oled-breakouts"
+ },
+ {
+ "id": "oled128x64large",
+ "displayName": "128x64 OLED (Large Font)",
+ "name": "oled128x64large",
+ "description": "Monochrome 128x64 I2C OLED Display with a larger font size (SSD1306)",
+ "category": "i2c_output",
+ "dataTypes": [],
+ "image": "components/i2c_output/oled128x64large/image.png",
+ "productUrl": "https://www.adafruit.com/product/938",
+ "documentationUrl": "https://learn.adafruit.com/monochrome-oled-breakouts"
+ },
+ {
+ "id": "oled64x32default",
+ "displayName": "64x32 OLED (Small Font)",
+ "name": "oled64x32default",
+ "description": "Monochrome 64x32 I2C OLED Display with the default font size. (SSD1306)",
+ "category": "i2c_output",
+ "dataTypes": [],
+ "image": "components/i2c_output/oled64x32default/image.jpg",
+ "productUrl": "https://www.digikey.com/en/products/detail/midas-displays/MDOB064032AV-WI/18088023",
+ "documentationUrl": "https://mm.digikey.com/Volume0/opasdata/d220001/medias/docus/4808/MDOB064032AV-WI.pdf"
+ },
+ {
+ "id": "oled64x32large",
+ "displayName": "64x32 OLED (Large Font)",
+ "name": "oled64x32large",
+ "description": "Monochrome 64x32 I2C OLED Display with a larger font size. (SSD1306)",
+ "category": "i2c_output",
+ "dataTypes": [],
+ "image": "components/i2c_output/oled64x32large/image.jpg",
+ "productUrl": "https://www.digikey.com/en/products/detail/midas-displays/MDOB064032AV-WI/18088023",
+ "documentationUrl": "https://mm.digikey.com/Volume0/opasdata/d220001/medias/docus/4808/MDOB064032AV-WI.pdf"
+ },
+ {
+ "id": "quadalphanum",
+ "displayName": "Quad Alphanum. Display",
+ "name": "quadalphanum",
+ "description": "Quad Alphanumeric Display 0.54\" Digits w/ I2C Backpack - STEMMA QT / Qwiic",
+ "category": "i2c_output",
+ "dataTypes": [],
+ "image": "components/i2c_output/quadalphanum/image.png",
+ "productUrl": "https://www.adafruit.com/product/1911",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-led-backpack/0-54-alphanumeric"
}
],
- "servo": [
+ "pin": [
+ {
+ "id": "analog_pin",
+ "displayName": "Analog Pin",
+ "name": "analog_pin",
+ "description": "",
+ "category": "pin",
+ "dataTypes": [],
+ "image": "components/pin/analog_pin/image.png",
+ "componentAPI": "analogio"
+ },
+ {
+ "id": "beam_break_sensor",
+ "displayName": "Beam Sensor",
+ "name": "beam_break_sensor",
+ "description": "Break beam sensor for detecting interruption of an invisible infrared light beam between emitter and receiver",
+ "category": "pin",
+ "dataTypes": [],
+ "image": "https://cdn-shop.adafruit.com/640x480/2168-04.jpg",
+ "productUrl": "https://www.adafruit.com/product/2168",
+ "documentationUrl": "https://learn.adafruit.com/ir-breakbeam-sensors",
+ "componentAPI": "digitalio"
+ },
+ {
+ "id": "etape_liquid_level_sensor",
+ "displayName": "Liquid Level Sensor",
+ "name": "etape_liquid_level_sensor",
+ "description": "",
+ "category": "pin",
+ "dataTypes": [],
+ "image": "https://cdn-shop.adafruit.com/product-videos/640x480/2656-03.jpg",
+ "productUrl": "https://www.adafruit.com/product/2656",
+ "documentationUrl": "https://cdn-shop.adafruit.com/product-files/2656/Standard_eTape_Datasheet.pdf",
+ "componentAPI": "analogio"
+ },
+ {
+ "id": "flat_vibration_switch",
+ "displayName": "Flat Vibration Switch",
+ "name": "flat_vibration_switch",
+ "description": "",
+ "category": "pin",
+ "dataTypes": [],
+ "image": "https://cdn-shop.adafruit.com/640x480/4081-00.jpg",
+ "productUrl": "https://www.adafruit.com/product/4081",
+ "componentAPI": "digitalio"
+ },
+ {
+ "id": "hall_effect_sensor",
+ "displayName": "Hall Effect Sensor",
+ "name": "hall_effect_sensor",
+ "description": "",
+ "category": "pin",
+ "dataTypes": [],
+ "image": "https://cdn-shop.adafruit.com/640x480/158-00.jpg",
+ "productUrl": "https://www.adafruit.com/product/158",
+ "documentationUrl": "https://www.melexis.com/en/product/us5881/unipolar-hall-effect-switch-low-sensitivity",
+ "componentAPI": "digitalio"
+ },
+ {
+ "id": "light_sensor",
+ "displayName": "Light Sensor",
+ "name": "light_sensor",
+ "description": "",
+ "category": "pin",
+ "dataTypes": [],
+ "image": "https://cdn-shop.adafruit.com/640x480/161-00.jpg",
+ "productUrl": "https://www.adafruit.com/product/161",
+ "documentationUrl": "https://learn.adafruit.com/photocells",
+ "componentAPI": "analogio"
+ },
+ {
+ "id": "pir_sensor",
+ "displayName": "PIR Sensor",
+ "name": "pir_sensor",
+ "description": "Passive Infra-Red (PIR) motion sensor for detecting presence and movement through infrared thermal changes",
+ "category": "pin",
+ "dataTypes": [],
+ "image": "https://cdn-shop.adafruit.com/640x480/189-00.jpg",
+ "productUrl": "https://www.adafruit.com/product/189",
+ "documentationUrl": "https://learn.adafruit.com/pir-passive-infrared-proximity-motion-sensor/overview",
+ "componentAPI": "digitalio"
+ },
{
- "id": "servo",
- "displayName": "Generic Servo",
- "name": "servo",
+ "id": "potentiometer",
+ "displayName": "Potentiometer",
+ "name": "potentiometer",
"description": "",
- "category": "servo",
+ "category": "pin",
"dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/169-06.jpg",
- "productUrl": "https://www.adafruit.com/product/169",
- "documentationUrl": "https://learn.adafruit.com/using-servos-with-circuitpython"
- }
- ],
- "i2c_output": [
+ "image": "https://cdn-shop.adafruit.com/640x480/356-03.jpg",
+ "productUrl": "https://www.adafruit.com/product/356",
+ "documentationUrl": "https://learn.adafruit.com/make-it-change-potentiometers",
+ "componentAPI": "analogio"
+ },
{
- "id": "oled128x64large",
- "displayName": "128x64 OLED (Large Font)",
- "name": "oled128x64large",
- "description": "Monochrome 128x64 I2C OLED Display with a larger font size (SSD1306)",
- "category": "i2c_output",
+ "id": "push_button",
+ "displayName": "Push Button",
+ "name": "push_button",
+ "description": "",
+ "category": "pin",
"dataTypes": [],
- "image": "components/i2c_output/oled128x64large/image.png",
- "productUrl": "https://www.adafruit.com/product/938",
- "documentationUrl": "https://learn.adafruit.com/monochrome-oled-breakouts"
+ "image": "https://cdn-shop.adafruit.com/640x480/367-01.jpg",
+ "productUrl": "https://www.adafruit.com/product/367",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-arduino-lesson-6-digital-inputs?view=all",
+ "componentAPI": "digitalio"
},
{
- "id": "fthrwingoled128x32lg",
- "displayName": "128x32 OLED'wing (Large)",
- "name": "fthrwingoled128x32lg",
- "description": "Monochrome 128x32 OLED featherwing display with a larger font size (SSD1306)",
- "category": "i2c_output",
+ "id": "reed_switch",
+ "displayName": "Reed Switch",
+ "name": "reed_switch",
+ "description": "A Magnetic Contact Switch (Door/Window Sensor), with Normally Open (NO) or Closed (NC) contacts",
+ "category": "pin",
"dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/2900-10.jpg",
- "productUrl": "https://www.adafruit.com/product/2900",
- "documentationUrl": "https://learn.adafruit.com/adafruit-oled-featherwing"
+ "image": "https://cdn-shop.adafruit.com/640x480/375-01.jpg",
+ "productUrl": "https://www.adafruit.com/product/375",
+ "documentationUrl": "https://learn.adafruit.com/no-code-iot-door-alarm-with-wippersnapper",
+ "componentAPI": "digitalio"
},
{
- "id": "oled64x32large",
- "displayName": "64x32 OLED (Large Font)",
- "name": "oled64x32large",
- "description": "Monochrome 64x32 I2C OLED Display with a larger font size. (SSD1306)",
- "category": "i2c_output",
+ "id": "simple_soil_sensor",
+ "displayName": "Simple Soil Sensor",
+ "name": "simple_soil_sensor",
+ "description": "Resistive style soil moisture sensor, measuring the conductivity between the two prongs (Analog signal)",
+ "category": "pin",
"dataTypes": [],
- "image": "components/i2c_output/oled64x32large/image.jpg",
- "productUrl": "https://www.digikey.com/en/products/detail/midas-displays/MDOB064032AV-WI/18088023",
- "documentationUrl": "https://mm.digikey.com/Volume0/opasdata/d220001/medias/docus/4808/MDOB064032AV-WI.pdf"
+ "image": "https://cdn-shop.adafruit.com/640x480/6362-00.jpg",
+ "productUrl": "https://www.adafruit.com/product/6362",
+ "componentAPI": "analogio"
},
{
- "id": "7seg",
- "displayName": "7-Segment LED Matrix",
- "name": "7seg",
- "description": "7-Segment LED Matrix with I2C Backpack",
- "category": "i2c_output",
+ "id": "tctr1000",
+ "displayName": "TCTR1000 Stemma Breakout",
+ "name": "tctr1000",
+ "description": "Optical reflective sensor with digital output, 1-30mm range, and adjustable LED emitter brightness",
+ "category": "pin",
"dataTypes": [],
- "image": "components/i2c_output/7seg/image.png",
- "productUrl": "https://www.adafruit.com/product/878",
- "documentationUrl": "https://learn.adafruit.com/adafruit-led-backpack/0-dot-56-seven-segment-backpack"
+ "image": "components/pin/tctr1000/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/5913",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-stemma-reflective-photo-interrupt-sensor",
+ "componentAPI": "digitalio"
},
{
- "id": "oled64x32default",
- "displayName": "64x32 OLED (Small Font)",
- "name": "oled64x32default",
- "description": "Monochrome 64x32 I2C OLED Display with the default font size. (SSD1306)",
- "category": "i2c_output",
+ "id": "toggle_switch",
+ "displayName": "Toggle Switch",
+ "name": "toggle_switch",
+ "description": "",
+ "category": "pin",
"dataTypes": [],
- "image": "components/i2c_output/oled64x32default/image.jpg",
- "productUrl": "https://www.digikey.com/en/products/detail/midas-displays/MDOB064032AV-WI/18088023",
- "documentationUrl": "https://mm.digikey.com/Volume0/opasdata/d220001/medias/docus/4808/MDOB064032AV-WI.pdf"
+ "image": "https://cdn-shop.adafruit.com/640x480/3221-01.jpg",
+ "productUrl": "https://www.adafruit.com/product/3221",
+ "documentationUrl": "https://learn.adafruit.com/make-it-switch",
+ "componentAPI": "digitalio"
},
{
- "id": "fthrwingoled128x32",
- "displayName": "128x32 OLED'wing (Small)",
- "name": "fthrwingoled128x32",
- "description": "Monochrome 128x32 OLED featherwing display with the default font size (SSD1306)",
- "category": "i2c_output",
+ "id": "water_sensor",
+ "displayName": "Water Sensor",
+ "name": "water_sensor",
+ "description": "",
+ "category": "pin",
"dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/2900-10.jpg",
- "productUrl": "https://www.adafruit.com/product/2900",
- "documentationUrl": "https://learn.adafruit.com/adafruit-oled-featherwing"
+ "image": "https://cdn-shop.adafruit.com/product-videos/640x480/4965-03.jpg",
+ "productUrl": "https://www.adafruit.com/product/4965",
+ "documentationUrl": "https://cdn-shop.adafruit.com/product-files/4965/Datasheet.pdf",
+ "componentAPI": "digitalio"
+ }
+ ],
+ "pixel": [
+ {
+ "id": "dotstar",
+ "displayName": "DotStar",
+ "name": "dotstar",
+ "description": "",
+ "category": "pixel",
+ "dataTypes": [],
+ "image": "https://cdn-shop.adafruit.com/640x480/2343-03.jpg",
+ "productUrl": "https://www.adafruit.com/product/2343",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-dotstar-leds"
},
{
- "id": "chardisplay20x4",
- "displayName": "20x4 Character Display",
- "name": "chardisplay20x4",
- "description": "Standard 20x4 HD44780 character display with I2C backpack",
- "category": "i2c_output",
+ "id": "neopixel",
+ "displayName": "NeoPixel",
+ "name": "neopixel",
+ "description": "",
+ "category": "pixel",
"dataTypes": [],
- "image": "components/i2c_output/chardisplay20x4/image.png",
- "productUrl": "https://www.adafruit.com/product/198",
- "documentationUrl": "https://learn.adafruit.com/i2c-spi-lcd-backpack"
+ "image": "components/pixel/neopixel/image.jpg",
+ "productUrl": "http://www.adafruit.com/category/168",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-neopixel-uberguide"
},
{
- "id": "quadalphanum",
- "displayName": "Quad Alphanum. Display",
- "name": "quadalphanum",
- "description": "Quad Alphanumeric Display 0.54\" Digits w/ I2C Backpack - STEMMA QT / Qwiic",
- "category": "i2c_output",
+ "id": "neorgb",
+ "displayName": "NeoRGB Stemma",
+ "name": "neorgb",
+ "description": "Speak NeoPixel to your RGB strips! Treat PWM-able common-anode LEDs as a NeoPixel [16V/3A/channel]",
+ "category": "pixel",
"dataTypes": [],
- "image": "components/i2c_output/quadalphanum/image.png",
- "productUrl": "https://www.adafruit.com/product/1911",
- "documentationUrl": "https://learn.adafruit.com/adafruit-led-backpack/0-54-alphanumeric"
+ "image": "https://cdn-shop.adafruit.com/640x480/5888-10.jpg",
+ "productUrl": "https://www.adafruit.com/product/5888",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-neorgb-stemma"
+ }
+ ],
+ "pwm": [
+ {
+ "id": "dimmable_led",
+ "displayName": "Dimmable LED",
+ "name": "dimmable_led",
+ "description": "",
+ "category": "pwm",
+ "dataTypes": [],
+ "image": "https://cdn-shop.adafruit.com/640x480/301-00.jpg",
+ "productUrl": "https://www.adafruit.com/product/301",
+ "documentationUrl": "https://learn.adafruit.com/all-about-leds"
},
{
- "id": "fthrwingoled128x64",
- "displayName": "128x64 OLED'wing (Small)",
- "name": "fthrwingoled128x64",
- "description": "Monochrome 128x64 OLED featherwing display with the default font size (SH1107)",
- "category": "i2c_output",
+ "id": "piezo_buzzer",
+ "displayName": "Piezo Buzzer",
+ "name": "piezo_buzzer",
+ "description": "",
+ "category": "pwm",
"dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/product-videos/640x480/4650-08.jpg",
- "productUrl": "https://www.adafruit.com/product/4650",
- "documentationUrl": "https://learn.adafruit.com/adafruit-128x64-oled-featherwing"
+ "image": "https://cdn-shop.adafruit.com/640x480/160-01.jpg",
+ "productUrl": "https://www.adafruit.com/product/160",
+ "documentationUrl": "https://learn.adafruit.com/using-piezo-buzzers-with-wippersnapper"
},
{
- "id": "oled128x32default",
- "displayName": "128x32 OLED (Default)",
- "name": "oled128x32default",
- "description": "Monochrome 128x32 OLED graphic display with the default font size. (SSD1306)",
- "category": "i2c_output",
+ "id": "pwm_output",
+ "displayName": "PWM Output",
+ "name": "pwm_output",
+ "description": "A Pulse-Width-Modulated component with fixed frequency. Duty cycle can be set from 0-255",
+ "category": "pwm",
"dataTypes": [],
- "image": "components/i2c_output/oled128x32default/image.png",
- "productUrl": "https://www.adafruit.com/product/4440",
- "documentationUrl": "https://learn.adafruit.com/monochrome-oled-breakouts"
+ "image": "components/pwm/pwm_output/image.png",
+ "productUrl": "https://www.adafruit.com/product/301",
+ "documentationUrl": "https://learn.adafruit.com/improve-brushed-dc-motor-performance/pwm-and-brushed-dc-motors"
},
{
- "id": "chardisplay16x2",
- "displayName": "16x2 Character Display",
- "name": "chardisplay16x2",
- "description": "Standard 16x2 HD44780 character display with I2C backpack",
- "category": "i2c_output",
+ "id": "rgb_led",
+ "displayName": "RGB LED",
+ "name": "rgb_led",
+ "description": "",
+ "category": "pwm",
"dataTypes": [],
- "image": "components/i2c_output/chardisplay16x2/image.png",
- "productUrl": "https://www.adafruit.com/product/1447",
- "documentationUrl": "https://learn.adafruit.com/i2c-spi-lcd-backpack"
+ "image": "https://cdn-shop.adafruit.com/640x480/302-00.jpg",
+ "productUrl": "https://www.adafruit.com/product/302",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-arduino-lesson-3-rgb-leds/overview"
+ }
+ ],
+ "servo": [
+ {
+ "id": "servo",
+ "displayName": "Generic Servo",
+ "name": "servo",
+ "description": "",
+ "category": "servo",
+ "dataTypes": [],
+ "image": "https://cdn-shop.adafruit.com/640x480/169-06.jpg",
+ "productUrl": "https://www.adafruit.com/product/169",
+ "documentationUrl": "https://learn.adafruit.com/using-servos-with-circuitpython"
+ }
+ ],
+ "uart": [
+ {
+ "id": "pm1006",
+ "displayName": "VINDRIKTNING (PM1006)",
+ "name": "pm1006",
+ "description": "",
+ "category": "uart",
+ "dataTypes": [
+ "pm25-env"
+ ],
+ "image": "components/uart/pm1006/image.png",
+ "productUrl": "https://www.ikea.com/us/en/p/vindriktning-air-quality-sensor-60515911/",
+ "documentationUrl": "https://learn.adafruit.com/ikea-vindriktning-hack-with-qt-py-esp32-s3-and-adafruit-io",
+ "deviceType": "pm25aqi",
+ "deviceId": "pm1006",
+ "pm25aqi": {
+ "period": 30000,
+ "is_pm1006": true
+ }
},
{
- "id": "oled128x64default",
- "displayName": "128x64 OLED (Default)",
- "name": "oled128x64default",
- "description": "Monochrome 128x64 I2C OLED Display with the default font size (SSD1306)",
- "category": "i2c_output",
- "dataTypes": [],
- "image": "components/i2c_output/oled128x64default/image.png",
- "productUrl": "https://www.adafruit.com/product/938",
- "documentationUrl": "https://learn.adafruit.com/monochrome-oled-breakouts"
+ "id": "pms5003",
+ "displayName": "pms5003",
+ "name": "pms5003",
+ "description": "",
+ "category": "uart",
+ "dataTypes": [
+ "pm10-std",
+ "pm25-std",
+ "pm100-std",
+ "pm10-env",
+ "pm25-env",
+ "pm100-env"
+ ],
+ "image": "components/uart/pms5003/image.png",
+ "productUrl": "https://www.adafruit.com/product/3686",
+ "documentationUrl": "https://learn.adafruit.com/pm25-air-quality-sensor",
+ "deviceType": "pm25aqi",
+ "deviceId": "pms5003",
+ "pm25aqi": {
+ "period": 30000
+ }
},
{
- "id": "fthrwingoled128x64lg",
- "displayName": "128x64 OLED'wing (Large)",
- "name": "fthrwingoled128x64lg",
- "description": "Monochrome 128x64 OLED featherwing display with the default font size (SH1107)",
- "category": "i2c_output",
+ "id": "ultimate_gps",
+ "displayName": "Adafruit Ultimate GPS Breakout",
+ "name": "ultimate_gps",
+ "description": "High-performance GPS module with 10Hz updates and external antenna support",
+ "category": "uart",
"dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/product-videos/640x480/4650-08.jpg",
- "productUrl": "https://www.adafruit.com/product/4650",
- "documentationUrl": "https://learn.adafruit.com/adafruit-128x64-oled-featherwing"
+ "image": "components/uart/ultimate_gps/image.png",
+ "productUrl": "https://www.adafruit.com/product/5440",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-ultimate-gps/",
+ "deviceType": "gps",
+ "deviceId": "adaultimategps",
+ "gps": {
+ "period": 1000,
+ "commands_pmtks": [
+ "PMTK314,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "PMTK220,1000"
+ ]
+ }
},
{
- "id": "oled128x32large",
- "displayName": "128x32 OLED (Large Font)",
- "name": "oled128x32large",
- "description": "Monochrome 128x32 I2C OLED Display with a larger font size (SSD1306).",
- "category": "i2c_output",
- "dataTypes": [],
- "image": "components/i2c_output/oled128x32large/image.png",
- "productUrl": "https://www.adafruit.com/product/4440",
- "documentationUrl": "https://learn.adafruit.com/monochrome-oled-breakouts"
+ "id": "us100",
+ "displayName": "US-100 Distance Sensor",
+ "name": "us100",
+ "description": "",
+ "category": "uart",
+ "dataTypes": [
+ "raw",
+ "ambient-temp"
+ ],
+ "image": "components/uart/us100/image.png",
+ "productUrl": "https://www.adafruit.com/product/4019",
+ "documentationUrl": "https://learn.adafruit.com/ultrasonic-sonar-distance-sensors",
+ "deviceType": "generic_input",
+ "deviceId": "us100",
+ "generic_input": {
+ "period": 30
+ }
}
],
- "uart": [],
- "pixel_metadata": {
- "title": "Pixel Component Definition",
- "description": "Addressable Pixel WipperSnapper component for use in Adafruit IO",
+ "ds18x20_metadata": {
+ "title": "DS18X20 Component Definition",
+ "description": "A DS18X20 WipperSnapper component for use in Adafruit IO",
"required": [
"displayName",
"vendor",
- "pixelsType",
- "defaultPixelsOrder"
+ "subcomponents",
+ "sensorResolution"
],
"properties": {
"displayName": {
"description": "The human-friendly name of this component.",
"type": "string",
"minLength": 3,
- "maxLength": 24
+ "maxLength": 30
},
"published": {
- "description": "If True, this component is supported by the current firmware version and will be displayed to all users. Otherwise, it is hidden behind a developer toggle so that contributors can still work on it against the production site.",
+ "description": "If true, this component is supported by the current firmware version and will be displayed to all users. If false, it is hidden behind a developer toggle so that contributors can still work on it against the production site.",
"type": "boolean"
},
"description": {
@@ -2118,31 +2216,29 @@ window.jsonComponentsObject = {
"minLength": 3,
"maxLength": 24
},
- "pixelsType": {
- "description": "The type of addressable pixel: NEOPIXEL or DOTSTAR. Corresponds to `PixelsType` in pixels.proto",
- "type": "string",
- "pattern": "^(NEOPIXEL|DOTSTAR)$"
- },
- "defaultPixelsOrder": {
- "description": "The pixel strand's color ordering. Corresponds to `PixelsOrder` in pixels.proto.",
- "type": "string",
- "pattern": "^(GRB|GRBW|RGB|RGBW|BRG)$"
+ "subcomponents": {
+ "description": "The ambient temperature sensor (and its fahrenheit counterpart) standard on DS18X20 Components",
+ "type": "array",
+ "items": {
+ "type": "string",
+ "pattern": "^ambient-temp(-fahrenheit)?$"
+ }
},
- "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
+ "sensorResolution": {
+ "description": "The DS18X20's desired sensor read resolution, in bits.",
+ "type": "number",
+ "minimum": 9,
+ "maximum": 12
}
}
},
- "pwm_metadata": {
- "title": "PWM Component Definition",
- "description": "A PWM WipperSnapper component for use in Adafruit IO",
+ "i2c_metadata": {
+ "title": "I2C Component Definition",
+ "description": "An I2C-based WipperSnapper component for use in Adafruit IO",
"required": [
"displayName",
"vendor",
- "pwmSetting"
+ "i2cAddresses"
],
"properties": {
"displayName": {
@@ -2177,72 +2273,151 @@ window.jsonComponentsObject = {
"minLength": 3,
"maxLength": 24
},
- "pwmSetting": {
- "description": "The component's pulse-width modulation setting. Either fixed frequency (variable duty cycle) or variable frequency (fixed duty cycle)",
- "type": "string",
- "pattern": "^(fixed|variable)Frequency$"
+ "i2cAddresses": {
+ "description": "List of I2C addresses (as hex string, like \"0x38\") this component can appear on.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
},
- "visualization": {
- "description": "Specifies which visual component to use in the WipperSnapper interface and how to configure it",
+ "subcomponents": {
+ "description": "List of sensors on this I2C component.",
+ "type": "array",
+ "items": {
+ "$ref": "#/$defs/subcomponent"
+ }
+ },
+ "isGps": {
+ "description": "If true, this component is a GPS module.",
+ "type": "boolean"
+ },
+ "gps": {
"type": "object",
- "discriminator": {
- "propertyName": "type"
- },
+ "description": "Configuration for GPS devices.",
"required": [
- "type"
+ "period"
],
- "oneOf": [
- {
- "properties": {
- "type": {
- "const": "switch-pwm"
- },
- "offLabel": {
- "type": "string"
- },
- "offIcon": {
- "type": "string"
- },
- "onLabel": {
- "type": "string"
- },
- "onIcon": {
- "type": "string"
- }
- },
- "additionalProperties": false
- },
- {
- "properties": {
- "type": {
- "const": "button"
- },
- "pressedLabel": {
- "type": "string"
- },
- "unpressedLabel": {
- "type": "string"
- }
- },
- "additionalProperties": false
+ "properties": {
+ "commands_pmtks": {
+ "type": "array",
+ "description": "List of PMTK commands (MediaTek) in string format",
+ "items": {
+ "type": "string"
+ }
},
- {
- "properties": {
- "type": {
- "const": "slider-pwm"
- }
- },
- "additionalProperties": false
+ "commands_ubxes": {
+ "type": "array",
+ "description": "List of UBX commands (U-Blox) in bytes format",
+ "items": {
+ "type": "string",
+ "contentEncoding": "base64"
+ }
},
- {
- "properties": {
- "type": {
- "const": "color-picker"
- }
- },
- "additionalProperties": false
+ "period": {
+ "type": "integer",
+ "description": "Desired period to poll the GPS module, in milliseconds",
+ "minimum": 0,
+ "maximum": 65535
}
- ]
+ },
+ "additionalProperties": false
+ }
+ }
+ },
+ "i2c_output_metadata": {
+ "title": "I2C Output Component Definition",
+ "description": "I2C Output component for use in Adafruit IO",
+ "required": [
+ "displayName",
+ "vendor",
+ "outputType",
+ "i2cAddresses"
+ ],
+ "properties": {
+ "displayName": {
+ "description": "The human-friendly name of this component.",
+ "type": "string",
+ "minLength": 3,
+ "maxLength": 24
+ },
+ "published": {
+ "description": "If True, this component is supported by the current firmware version and will be displayed to all users. Otherwise, it is hidden behind a developer toggle so that contributors can still work on it against the production site.",
+ "type": "boolean"
+ },
+ "description": {
+ "description": "A brief description describing this component's capabilities.",
+ "type": "string",
+ "minLength": 3,
+ "maxLength": 255
+ },
+ "productURL": {
+ "description": "Link to this component's homepage.",
+ "type": "string",
+ "format": "uri"
+ },
+ "documentationURL": {
+ "description": "Link to this component's documentation.",
+ "type": "string",
+ "format": "uri"
+ },
+ "vendor": {
+ "description": "Name of the company that makes this component.",
+ "type": "string",
+ "minLength": 3,
+ "maxLength": 24
+ },
+ "i2cAddresses": {
+ "description": "List of supported I2C addresses for this component.",
+ "type": "array",
+ "items": {
+ "type": "string",
+ "pattern": "^0x[0-9A-Fa-f]{2}$"
+ }
+ },
+ "outputType": {
+ "description": "The type of i2c output component. Corresponds to `I2cOutputAdd` in i2c.proto",
+ "type": "string",
+ "pattern": "^(CHARLCD|7SEG|ALPHANUM|OLED)$"
+ },
+ "charLcdColumns": {
+ "description": "The number of columns for a character LCD. Corresponds to `CharLCDConfig` in i2c.proto.",
+ "type": "number",
+ "minimum": 0,
+ "maximum": 128
+ },
+ "charLcdRows": {
+ "description": "The number of rows for a character LCD. Corresponds to `CharLCDConfig` in i2c.proto.",
+ "type": "number",
+ "minimum": 0,
+ "maximum": 16
+ },
+ "ledBackpackAlignment": {
+ "description": "The alignment for the LED backpack. Corresponds to `LedBackpackConfig` in i2c.proto. Defaults to RIGHT.",
+ "type": "string",
+ "pattern": "^(LEFT|RIGHT)$"
+ },
+ "ledBackpackBrightness": {
+ "description": "The brightness of a LED backpack. Corresponds to `CharLCDConfig` in i2c.proto.",
+ "type": "number",
+ "minimum": 0,
+ "maximum": 15
+ },
+ "oledWidth": {
+ "description": "The width of an OLED display, in pixels.",
+ "type": "number",
+ "minimum": 0,
+ "maximum": 128
+ },
+ "oledHeight": {
+ "description": "The height of an OLED display, in pixels.",
+ "type": "number",
+ "minimum": 0,
+ "maximum": 64
+ },
+ "textSize": {
+ "description": "The font magnification size for a OLED display. Corresponds to `SSD1306TextSize` in i2c.proto.",
+ "type": "string",
+ "pattern": "^(SZ_DEFAULT|SZ_LARGE)$"
}
}
},
@@ -2388,24 +2563,24 @@ window.jsonComponentsObject = {
}
}
},
- "ds18x20_metadata": {
- "title": "DS18X20 Component Definition",
- "description": "A DS18X20 WipperSnapper component for use in Adafruit IO",
+ "pixel_metadata": {
+ "title": "Pixel Component Definition",
+ "description": "Addressable Pixel WipperSnapper component for use in Adafruit IO",
"required": [
"displayName",
"vendor",
- "subcomponents",
- "sensorResolution"
+ "pixelsType",
+ "defaultPixelsOrder"
],
"properties": {
"displayName": {
"description": "The human-friendly name of this component.",
"type": "string",
"minLength": 3,
- "maxLength": 30
+ "maxLength": 24
},
"published": {
- "description": "If true, this component is supported by the current firmware version and will be displayed to all users. If false, it is hidden behind a developer toggle so that contributors can still work on it against the production site.",
+ "description": "If True, this component is supported by the current firmware version and will be displayed to all users. Otherwise, it is hidden behind a developer toggle so that contributors can still work on it against the production site.",
"type": "boolean"
},
"description": {
@@ -2430,30 +2605,31 @@ window.jsonComponentsObject = {
"minLength": 3,
"maxLength": 24
},
- "subcomponents": {
- "description": "The ambient temperature sensor (and its fahrenheit counterpart) standard on DS18X20 Components",
- "type": "array",
- "items": {
- "type": "string",
- "pattern": "^ambient-temp(-fahrenheit)?$"
- }
+ "pixelsType": {
+ "description": "The type of addressable pixel: NEOPIXEL or DOTSTAR. Corresponds to `PixelsType` in pixels.proto",
+ "type": "string",
+ "pattern": "^(NEOPIXEL|DOTSTAR)$"
},
- "sensorResolution": {
- "description": "The DS18X20's desired sensor read resolution, in bits.",
- "type": "number",
- "minimum": 9,
- "maximum": 12
+ "defaultPixelsOrder": {
+ "description": "The pixel strand's color ordering. Corresponds to `PixelsOrder` in pixels.proto.",
+ "type": "string",
+ "pattern": "^(GRB|GRBW|RGB|RGBW|BRG)$"
+ },
+ "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
}
}
},
- "i2c_metadata": {
- "title": "I2C Component Definition",
- "description": "An I2C-based WipperSnapper component for use in Adafruit IO",
+ "pwm_metadata": {
+ "title": "PWM Component Definition",
+ "description": "A PWM WipperSnapper component for use in Adafruit IO",
"required": [
"displayName",
"vendor",
- "i2cAddresses",
- "subcomponents"
+ "pwmSetting"
],
"properties": {
"displayName": {
@@ -2488,19 +2664,72 @@ window.jsonComponentsObject = {
"minLength": 3,
"maxLength": 24
},
- "i2cAddresses": {
- "description": "List of I2C addresses (as hex string, like \"0x38\") this component can appear on.",
- "type": "array",
- "items": {
- "type": "string"
- }
+ "pwmSetting": {
+ "description": "The component's pulse-width modulation setting. Either fixed frequency (variable duty cycle) or variable frequency (fixed duty cycle)",
+ "type": "string",
+ "pattern": "^(fixed|variable)Frequency$"
},
- "subcomponents": {
- "description": "List of sensors on this I2C component.",
- "type": "array",
- "items": {
- "$ref": "#/$defs/subcomponent"
- }
+ "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": {
+ "type": {
+ "const": "switch-pwm"
+ },
+ "offLabel": {
+ "type": "string"
+ },
+ "offIcon": {
+ "type": "string"
+ },
+ "onLabel": {
+ "type": "string"
+ },
+ "onIcon": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ {
+ "properties": {
+ "type": {
+ "const": "button"
+ },
+ "pressedLabel": {
+ "type": "string"
+ },
+ "unpressedLabel": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ {
+ "properties": {
+ "type": {
+ "const": "slider-pwm"
+ }
+ },
+ "additionalProperties": false
+ },
+ {
+ "properties": {
+ "type": {
+ "const": "color-picker"
+ }
+ },
+ "additionalProperties": false
+ }
+ ]
}
}
},
@@ -2577,21 +2806,22 @@ window.jsonComponentsObject = {
}
}
},
- "i2c_output_metadata": {
- "title": "I2C Output Component Definition",
- "description": "I2C Output component for use in Adafruit IO",
+ "uart_metadata": {
+ "title": "UART Component Definition",
+ "description": "A UART WipperSnapper component for use in Adafruit IO",
"required": [
"displayName",
"vendor",
- "outputType",
- "i2cAddresses"
+ "deviceId",
+ "baudRate",
+ "deviceType"
],
"properties": {
"displayName": {
"description": "The human-friendly name of this component.",
"type": "string",
"minLength": 3,
- "maxLength": 24
+ "maxLength": 30
},
"published": {
"description": "If True, this component is supported by the current firmware version and will be displayed to all users. Otherwise, it is hidden behind a developer toggle so that contributors can still work on it against the production site.",
@@ -2619,119 +2849,190 @@ window.jsonComponentsObject = {
"minLength": 3,
"maxLength": 24
},
- "i2cAddresses": {
- "description": "List of supported I2C addresses for this component.",
- "type": "array",
- "items": {
- "type": "string",
- "pattern": "^0x[0-9A-Fa-f]{2}$"
- }
+ "pinTx": {
+ "description": "The desired UART TX pin",
+ "type": "string",
+ "minLength": 1,
+ "maxLength": 16
},
- "outputType": {
- "description": "The type of i2c output component. Corresponds to `I2cOutputAdd` in i2c.proto",
+ "pinRx": {
+ "description": "The desired UART RX pin",
"type": "string",
- "pattern": "^(CHARLCD|7SEG|ALPHANUM|OLED)$"
+ "minLength": 1,
+ "maxLength": 16
},
- "charLcdColumns": {
- "description": "The number of columns for a character LCD. Corresponds to `CharLCDConfig` in i2c.proto.",
+ "portNumber": {
+ "description": "The desired UART bus port number",
"type": "number",
"minimum": 0,
- "maximum": 128
+ "maximum": 3
},
- "charLcdRows": {
- "description": "The number of rows for a character LCD. Corresponds to `CharLCDConfig` in i2c.proto.",
+ "baudRate": {
+ "description": "The desired UART bus baud rate, in bps.",
"type": "number",
- "minimum": 0,
- "maximum": 16
+ "minimum": 1200,
+ "maximum": 256000
},
- "ledBackpackAlignment": {
- "description": "The alignment for the LED backpack. Corresponds to `LedBackpackConfig` in i2c.proto. Defaults to RIGHT.",
+ "format": {
+ "description": "The data, parity, and stop bits configuration for the serial port. Defaults to 8N1 (8 data bits, no parity, 1 stop bit).",
"type": "string",
- "pattern": "^(LEFT|RIGHT)$"
- },
- "ledBackpackBrightness": {
- "description": "The brightness of a LED backpack. Corresponds to `CharLCDConfig` in i2c.proto.",
- "type": "number",
- "minimum": 0,
- "maximum": 15
- },
- "oledWidth": {
- "description": "The width of an OLED display, in pixels.",
- "type": "number",
- "minimum": 0,
- "maximum": 128
+ "enum": [
+ "unspecified",
+ "8n1",
+ "5n1",
+ "6n1",
+ "7n1",
+ "5n2",
+ "6n2",
+ "7n2",
+ "8n2",
+ "5e1",
+ "6e1",
+ "7e1",
+ "8e1",
+ "5e2",
+ "6e2",
+ "7e2",
+ "8e2",
+ "5o1",
+ "6o1",
+ "7o1",
+ "8o1",
+ "5o2",
+ "6o2",
+ "7o2",
+ "8o2"
+ ],
+ "default": "8n1"
},
- "oledHeight": {
- "description": "The height of an OLED display, in pixels.",
+ "timeout": {
+ "description": "Maximum milliseconds to wait for serial data. Defaults to 1000 ms.",
"type": "number",
"minimum": 0,
- "maximum": 64
+ "maximum": 65535
},
- "textSize": {
- "description": "The font magnification size for a OLED display. Corresponds to `SSD1306TextSize` in i2c.proto.",
- "type": "string",
- "pattern": "^(SZ_DEFAULT|SZ_LARGE)$"
- }
- }
- },
- "uart_metadata": {
- "title": "UART Component Definition",
- "description": "A UART WipperSnapper component for use in Adafruit IO",
- "required": [
- "displayName",
- "vendor",
- "subcomponents",
- "baudRate"
- ],
- "properties": {
- "displayName": {
- "description": "The human-friendly name of this component.",
- "type": "string",
- "minLength": 3,
- "maxLength": 30
+ "use_sw_serial": {
+ "description": "If True, uses software serial instead of hardware serial. Defaults to False.",
+ "type": "boolean"
},
- "published": {
- "description": "If True, this component is supported by the current firmware version and will be displayed to all users. Otherwise, it is hidden behind a developer toggle so that contributors can still work on it against the production site.",
+ "invert_sw_serial": {
+ "description": "If True, inverts the UART signal on RX and TX pins. Defaults to False.",
"type": "boolean"
},
- "description": {
- "description": "A brief description describing this component's capabilities.",
+ "deviceId": {
+ "description": "The unique identifier string for the UART device.",
"type": "string",
"minLength": 3,
- "maxLength": 255
- },
- "productURL": {
- "description": "Link to this component's homepage.",
- "type": "string",
- "format": "uri"
- },
- "documentationURL": {
- "description": "Link to this component's documentation.",
- "type": "string",
- "format": "uri"
+ "maxLength": 30
},
- "vendor": {
- "description": "Name of the company that makes this component.",
+ "deviceType": {
+ "description": "The data, parity, and stop bits configuration for the serial port. Defaults to 8N1 (8 data bits, no parity, 1 stop bit).",
"type": "string",
- "minLength": 3,
- "maxLength": 24
+ "enum": [
+ "unspecified",
+ "generic_input",
+ "generic_output",
+ "gps",
+ "pm25aqi",
+ "tmc22xx"
+ ],
+ "default": "unspecified"
},
- "subcomponents": {
- "description": "List of sensor subcomponents comprising the primary UART component.",
- "type": "array",
- "items": {
- "$ref": "#/$defs/subcomponent"
- }
+ "pm25aqi": {
+ "type": "object",
+ "description": "Configuration for PM2.5 AQI sensors",
+ "required": [
+ "period",
+ "sensor_types"
+ ],
+ "properties": {
+ "is_pm1006": {
+ "type": "boolean",
+ "description": "True if the device is a PM1006 AQ sensor",
+ "default": false
+ },
+ "period": {
+ "type": "integer",
+ "description": "The period to poll the device, in milliseconds",
+ "minimum": 0,
+ "maximum": 65535
+ },
+ "sensor_types": {
+ "type": "array",
+ "description": "SI Types for each sensor on the I2c device",
+ "items": {
+ "$ref": "#/$defs/subcomponent"
+ }
+ }
+ },
+ "additionalProperties": false
},
- "baudRate": {
- "description": "The desired UART bus baud rate, in bps.",
- "type": "number",
- "minimum": 1200,
- "maximum": 256000
+ "generic_input": {
+ "type": "object",
+ "description": "Configuration for generic UART input devices.",
+ "required": [
+ "period",
+ "sensor_types"
+ ],
+ "properties": {
+ "line_ending": {
+ "description": "The line ending format for incoming data.",
+ "type": "string",
+ "enum": [
+ "unspecified",
+ "lf",
+ "crlf",
+ "timeout_100ms",
+ "timeout_1000ms"
+ ],
+ "default": "unspecified"
+ },
+ "period": {
+ "type": "integer",
+ "description": "The period to poll the device, in milliseconds",
+ "minimum": 0,
+ "maximum": 65535
+ },
+ "sensor_types": {
+ "type": "array",
+ "description": "SI Types for each sensor on the I2c device",
+ "items": {
+ "$ref": "#/$defs/subcomponent"
+ }
+ }
+ },
+ "additionalProperties": false
},
- "inverted": {
- "description": "When True, this component will invert TX/RX signals on the UART bus.",
- "type": "boolean"
+ "gps": {
+ "type": "object",
+ "description": "Configuration for GPS devices.",
+ "required": [
+ "period"
+ ],
+ "properties": {
+ "commands_pmtks": {
+ "type": "array",
+ "description": "List of PMTK commands (MediaTek) in string format",
+ "items": {
+ "type": "string"
+ }
+ },
+ "commands_ubxes": {
+ "type": "array",
+ "description": "List of UBX commands (U-Blox) in bytes format",
+ "items": {
+ "type": "string",
+ "contentEncoding": "base64"
+ }
+ },
+ "period": {
+ "type": "integer",
+ "description": "Desired period to poll the GPS module, in milliseconds",
+ "minimum": 0,
+ "maximum": 65535
+ }
+ },
+ "additionalProperties": false
}
}
}
diff --git a/wippersnapper_components.json b/wippersnapper_components.json
index d2fa73d..4a4614a 100644
--- a/wippersnapper_components.json
+++ b/wippersnapper_components.json
@@ -1,561 +1,462 @@
{
"components": {
- "pixel": [
+ "ds18x20": [
{
- "id": "dotstar",
- "displayName": "DotStar",
- "name": "dotstar",
+ "id": "ds18b20",
+ "displayName": "DS18B20",
+ "name": "ds18b20",
"description": "",
- "category": "pixel",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/2343-03.jpg",
- "productUrl": "https://www.adafruit.com/product/2343",
- "documentationUrl": "https://learn.adafruit.com/adafruit-dotstar-leds"
+ "category": "ds18x20",
+ "dataTypes": [
+ "ambient-temp",
+ "ambient-temp-fahrenheit"
+ ],
+ "image": "https://cdn-shop.adafruit.com/640x480/374-01.jpg",
+ "productUrl": "https://www.adafruit.com/product/374",
+ "documentationUrl": "https://learn.adafruit.com/using-ds18b20-temperature-sensor-with-wippersnapper"
},
{
- "id": "neopixel",
- "displayName": "NeoPixel",
- "name": "neopixel",
+ "id": "ds18b20_hi_temp_waterproof",
+ "displayName": "High Temp + Waterproof DS18B20",
+ "name": "ds18b20_hi_temp_waterproof",
"description": "",
- "category": "pixel",
- "dataTypes": [],
- "image": "components/pixel/neopixel/image.jpg",
- "productUrl": "http://www.adafruit.com/category/168",
- "documentationUrl": "https://learn.adafruit.com/adafruit-neopixel-uberguide"
+ "category": "ds18x20",
+ "dataTypes": [
+ "ambient-temp",
+ "ambient-temp-fahrenheit"
+ ],
+ "image": "https://cdn-shop.adafruit.com/640x480/642-00.jpg",
+ "productUrl": "https://www.adafruit.com/product/642",
+ "documentationUrl": "https://learn.adafruit.com/using-ds18b20-temperature-sensor-with-wippersnapper"
},
{
- "id": "neorgb",
- "displayName": "NeoRGB Stemma",
- "name": "neorgb",
- "description": "Speak NeoPixel to your RGB strips! Treat PWM-able common-anode LEDs as a NeoPixel [16V/3A/channel]",
- "category": "pixel",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/5888-10.jpg",
- "productUrl": "https://www.adafruit.com/product/5888",
- "documentationUrl": "https://learn.adafruit.com/adafruit-neorgb-stemma"
+ "id": "ds18b20_waterproof",
+ "displayName": "Waterproof DS18B20",
+ "name": "ds18b20_waterproof",
+ "description": "",
+ "category": "ds18x20",
+ "dataTypes": [
+ "ambient-temp",
+ "ambient-temp-fahrenheit"
+ ],
+ "image": "https://cdn-shop.adafruit.com/640x480/381-01.jpg",
+ "productUrl": "https://www.adafruit.com/product/381",
+ "documentationUrl": "https://learn.adafruit.com/using-ds18b20-temperature-sensor-with-wippersnapper"
}
],
- "pwm": [
- {
- "id": "pwm_output",
- "displayName": "PWM Output",
- "name": "pwm_output",
- "description": "A Pulse-Width-Modulated component with fixed frequency. Duty cycle can be set from 0-255",
- "category": "pwm",
- "dataTypes": [],
- "image": "components/pwm/pwm_output/image.png",
- "productUrl": "https://www.adafruit.com/product/301",
- "documentationUrl": "https://learn.adafruit.com/improve-brushed-dc-motor-performance/pwm-and-brushed-dc-motors"
- },
+ "i2c": [
{
- "id": "piezo_buzzer",
- "displayName": "Piezo Buzzer",
- "name": "piezo_buzzer",
+ "id": "adt7410",
+ "displayName": "ADT7410",
+ "name": "adt7410",
"description": "",
- "category": "pwm",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/160-01.jpg",
- "productUrl": "https://www.adafruit.com/product/160",
- "documentationUrl": "https://learn.adafruit.com/using-piezo-buzzers-with-wippersnapper"
+ "category": "i2c",
+ "dataTypes": [
+ "ambient-temp",
+ "ambient-temp-fahrenheit"
+ ],
+ "image": "https://cdn-shop.adafruit.com/640x480/4089-05.jpg",
+ "productUrl": "https://www.adafruit.com/product/4089",
+ "documentationUrl": "https://learn.adafruit.com/adt7410-breakout",
+ "address": "0x48",
+ "addresses": [
+ "0x48",
+ "0x49",
+ "0x4A",
+ "0x4B"
+ ]
},
{
- "id": "rgb_led",
- "displayName": "RGB LED",
- "name": "rgb_led",
- "description": "",
- "category": "pwm",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/302-00.jpg",
- "productUrl": "https://www.adafruit.com/product/302",
- "documentationUrl": "https://learn.adafruit.com/adafruit-arduino-lesson-3-rgb-leds/overview"
+ "id": "aht20",
+ "displayName": "AHT20",
+ "name": "aht20",
+ "description": "Inexpensive temperature and humidity sensor for I2C-capable boards.",
+ "category": "i2c",
+ "dataTypes": [
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "relative-humidity"
+ ],
+ "image": "https://cdn-shop.adafruit.com/640x480/4566-04.jpg",
+ "productUrl": "https://www.adafruit.com/product/4566",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-aht20",
+ "address": "0x38",
+ "addresses": [
+ "0x38"
+ ]
},
{
- "id": "dimmable_led",
- "displayName": "Dimmable LED",
- "name": "dimmable_led",
- "description": "",
- "category": "pwm",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/301-00.jpg",
- "productUrl": "https://www.adafruit.com/product/301",
- "documentationUrl": "https://learn.adafruit.com/all-about-leds"
- }
- ],
- "pin": [
- {
- "id": "etape_liquid_level_sensor",
- "displayName": "Liquid Level Sensor",
- "name": "etape_liquid_level_sensor",
+ "id": "aht21",
+ "displayName": "AHT21",
+ "name": "aht21",
"description": "",
- "category": "pin",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/product-videos/640x480/2656-03.jpg",
- "productUrl": "https://www.adafruit.com/product/2656",
- "documentationUrl": "https://cdn-shop.adafruit.com/product-files/2656/Standard_eTape_Datasheet.pdf",
- "componentAPI": "analogio"
+ "category": "i2c",
+ "dataTypes": [
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "relative-humidity"
+ ],
+ "image": "components/i2c/aht21/image.jpg",
+ "documentationUrl": "http://www.aosong.com/en/products-60.html",
+ "address": "0x38",
+ "addresses": [
+ "0x38"
+ ]
},
{
- "id": "analog_pin",
- "displayName": "Analog Pin",
- "name": "analog_pin",
+ "id": "am2301b",
+ "displayName": "AM2301B",
+ "name": "am2301b",
"description": "",
- "category": "pin",
- "dataTypes": [],
- "image": "components/pin/analog_pin/image.png",
- "componentAPI": "analogio"
+ "category": "i2c",
+ "dataTypes": [
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "relative-humidity"
+ ],
+ "image": "https://cdn-shop.adafruit.com/640x480/5181-05.jpg",
+ "productUrl": "https://www.adafruit.com/product/5181",
+ "documentationUrl": "https://cdn-shop.adafruit.com/product-files/5181/5181_AM2301B.pdf",
+ "address": "0x38",
+ "addresses": [
+ "0x38"
+ ]
},
{
- "id": "push_button",
- "displayName": "Push Button",
- "name": "push_button",
+ "id": "am2315c",
+ "displayName": "AM2315C",
+ "name": "am2315c",
"description": "",
- "category": "pin",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/367-01.jpg",
- "productUrl": "https://www.adafruit.com/product/367",
- "documentationUrl": "https://learn.adafruit.com/adafruit-arduino-lesson-6-digital-inputs?view=all",
- "componentAPI": "digitalio"
- },
- {
- "id": "simple_soil_sensor",
- "displayName": "Simple Soil Sensor",
- "name": "simple_soil_sensor",
- "description": "Resistive style soil moisture sensor, measuring the conductivity between the two prongs (Analog signal)",
- "category": "pin",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/6362-00.jpg",
- "productUrl": "https://www.adafruit.com/product/6362",
- "componentAPI": "analogio"
+ "category": "i2c",
+ "dataTypes": [
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "relative-humidity"
+ ],
+ "image": "https://cdn-shop.adafruit.com/640x480/5182-05.jpg",
+ "productUrl": "https://www.adafruit.com/product/5182",
+ "documentationUrl": "https://cdn-shop.adafruit.com/product-files/5182/5182_AM2315C.pdf",
+ "address": "0x38",
+ "addresses": [
+ "0x38"
+ ]
},
{
- "id": "water_sensor",
- "displayName": "Water Sensor",
- "name": "water_sensor",
+ "id": "bh1750",
+ "displayName": "BH1750",
+ "name": "bh1750",
"description": "",
- "category": "pin",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/product-videos/640x480/4965-03.jpg",
- "productUrl": "https://www.adafruit.com/product/4965",
- "documentationUrl": "https://cdn-shop.adafruit.com/product-files/4965/Datasheet.pdf",
- "componentAPI": "digitalio"
+ "category": "i2c",
+ "dataTypes": [
+ "light"
+ ],
+ "image": "https://cdn-shop.adafruit.com/640x480/4681-06.jpg",
+ "productUrl": "https://www.adafruit.com/product/4681",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-bh1750-ambient-light-sensor",
+ "address": "0x23",
+ "addresses": [
+ "0x23",
+ "0x5C"
+ ]
},
{
- "id": "flat_vibration_switch",
- "displayName": "Flat Vibration Switch",
- "name": "flat_vibration_switch",
+ "id": "bme280",
+ "displayName": "BME280",
+ "name": "bme280",
"description": "",
- "category": "pin",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/4081-00.jpg",
- "productUrl": "https://www.adafruit.com/product/4081",
- "componentAPI": "digitalio"
- },
- {
- "id": "potentiometer",
- "displayName": "Potentiometer",
- "name": "potentiometer",
- "description": "",
- "category": "pin",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/356-03.jpg",
- "productUrl": "https://www.adafruit.com/product/356",
- "documentationUrl": "https://learn.adafruit.com/make-it-change-potentiometers",
- "componentAPI": "analogio"
- },
- {
- "id": "reed_switch",
- "displayName": "Reed Switch",
- "name": "reed_switch",
- "description": "A Magnetic Contact Switch (Door/Window Sensor), with Normally Open (NO) or Closed (NC) contacts",
- "category": "pin",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/375-01.jpg",
- "productUrl": "https://www.adafruit.com/product/375",
- "documentationUrl": "https://learn.adafruit.com/no-code-iot-door-alarm-with-wippersnapper",
- "componentAPI": "digitalio"
- },
- {
- "id": "toggle_switch",
- "displayName": "Toggle Switch",
- "name": "toggle_switch",
- "description": "",
- "category": "pin",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/3221-01.jpg",
- "productUrl": "https://www.adafruit.com/product/3221",
- "documentationUrl": "https://learn.adafruit.com/make-it-switch",
- "componentAPI": "digitalio"
- },
- {
- "id": "beam_break_sensor",
- "displayName": "Beam Sensor",
- "name": "beam_break_sensor",
- "description": "Break beam sensor for detecting interruption of an invisible infrared light beam between emitter and receiver",
- "category": "pin",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/2168-04.jpg",
- "productUrl": "https://www.adafruit.com/product/2168",
- "documentationUrl": "https://learn.adafruit.com/ir-breakbeam-sensors",
- "componentAPI": "digitalio"
- },
- {
- "id": "light_sensor",
- "displayName": "Light Sensor",
- "name": "light_sensor",
- "description": "",
- "category": "pin",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/161-00.jpg",
- "productUrl": "https://www.adafruit.com/product/161",
- "documentationUrl": "https://learn.adafruit.com/photocells",
- "componentAPI": "analogio"
- },
- {
- "id": "pir_sensor",
- "displayName": "PIR Sensor",
- "name": "pir_sensor",
- "description": "Passive Infra-Red (PIR) motion sensor for detecting presence and movement through infrared thermal changes",
- "category": "pin",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/189-00.jpg",
- "productUrl": "https://www.adafruit.com/product/189",
- "documentationUrl": "https://learn.adafruit.com/pir-passive-infrared-proximity-motion-sensor/overview",
- "componentAPI": "digitalio"
+ "category": "i2c",
+ "dataTypes": [
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "relative-humidity",
+ "pressure",
+ "altitude"
+ ],
+ "image": "https://cdn-shop.adafruit.com/640x480/2652-04.jpg",
+ "productUrl": "https://www.adafruit.com/product/2652",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-bme280-humidity-barometric-pressure-temperature-sensor-breakout",
+ "address": "0x77",
+ "addresses": [
+ "0x77",
+ "0x76"
+ ]
},
{
- "id": "hall_effect_sensor",
- "displayName": "Hall Effect Sensor",
- "name": "hall_effect_sensor",
+ "id": "bme680",
+ "displayName": "BME680",
+ "name": "bme680",
"description": "",
- "category": "pin",
- "dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/158-00.jpg",
- "productUrl": "https://www.adafruit.com/product/158",
- "documentationUrl": "https://www.melexis.com/en/product/us5881/unipolar-hall-effect-switch-low-sensitivity",
- "componentAPI": "digitalio"
+ "category": "i2c",
+ "dataTypes": [
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "relative-humidity",
+ "pressure",
+ "altitude",
+ "gas-resistance"
+ ],
+ "image": "https://cdn-shop.adafruit.com/640x480/3660-08.jpg",
+ "productUrl": "https://www.adafruit.com/product/3660",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-bme680-humidity-temperature-barometic-pressure-voc-gas",
+ "address": "0x77",
+ "addresses": [
+ "0x77",
+ "0x76"
+ ]
},
{
- "id": "tctr1000",
- "displayName": "TCTR1000 Stemma Breakout",
- "name": "tctr1000",
- "description": "Optical reflective sensor with digital output, 1-30mm range, and adjustable LED emitter brightness",
- "category": "pin",
- "dataTypes": [],
- "image": "components/pin/tctr1000/image.jpg",
- "productUrl": "https://www.adafruit.com/product/5913",
- "documentationUrl": "https://learn.adafruit.com/adafruit-stemma-reflective-photo-interrupt-sensor",
- "componentAPI": "digitalio"
- }
- ],
- "ds18x20": [
- {
- "id": "ds18b20_waterproof",
- "displayName": "Waterproof DS18B20",
- "name": "ds18b20_waterproof",
+ "id": "bme688",
+ "displayName": "BME688",
+ "name": "bme688",
"description": "",
- "category": "ds18x20",
+ "category": "i2c",
"dataTypes": [
"ambient-temp",
- "ambient-temp-fahrenheit"
+ "ambient-temp-fahrenheit",
+ "relative-humidity",
+ "pressure",
+ "altitude",
+ "gas-resistance"
],
- "image": "https://cdn-shop.adafruit.com/640x480/381-01.jpg",
- "productUrl": "https://www.adafruit.com/product/381",
- "documentationUrl": "https://learn.adafruit.com/using-ds18b20-temperature-sensor-with-wippersnapper"
+ "image": "https://cdn-shop.adafruit.com/640x480/5046-05.jpg",
+ "productUrl": "https://www.adafruit.com/product/5046",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-bme680-humidity-temperature-barometic-pressure-voc-gas",
+ "address": "0x77",
+ "addresses": [
+ "0x77",
+ "0x76"
+ ]
},
{
- "id": "ds18b20",
- "displayName": "DS18B20",
- "name": "ds18b20",
+ "id": "bmp280",
+ "displayName": "BMP280",
+ "name": "bmp280",
"description": "",
- "category": "ds18x20",
+ "category": "i2c",
"dataTypes": [
"ambient-temp",
- "ambient-temp-fahrenheit"
+ "ambient-temp-fahrenheit",
+ "pressure",
+ "altitude"
],
- "image": "https://cdn-shop.adafruit.com/640x480/374-01.jpg",
- "productUrl": "https://www.adafruit.com/product/374",
- "documentationUrl": "https://learn.adafruit.com/using-ds18b20-temperature-sensor-with-wippersnapper"
+ "image": "https://cdn-shop.adafruit.com/640x480/2651-08.jpg",
+ "productUrl": "https://www.adafruit.com/product/2651",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-bmp280-barometric-pressure-plus-temperature-sensor-breakout",
+ "address": "0x77",
+ "addresses": [
+ "0x77",
+ "0x76"
+ ]
},
{
- "id": "ds18b20_hi_temp_waterproof",
- "displayName": "High Temp + Waterproof DS18B20",
- "name": "ds18b20_hi_temp_waterproof",
+ "id": "bmp388",
+ "displayName": "BMP388",
+ "name": "bmp388",
"description": "",
- "category": "ds18x20",
+ "category": "i2c",
"dataTypes": [
"ambient-temp",
- "ambient-temp-fahrenheit"
+ "ambient-temp-fahrenheit",
+ "pressure",
+ "altitude"
],
- "image": "https://cdn-shop.adafruit.com/640x480/642-00.jpg",
- "productUrl": "https://www.adafruit.com/product/642",
- "documentationUrl": "https://learn.adafruit.com/using-ds18b20-temperature-sensor-with-wippersnapper"
- }
- ],
- "i2c": [
+ "image": "https://cdn-shop.adafruit.com/640x480/3966-10.jpg",
+ "productUrl": "https://www.adafruit.com/product/3966",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-bmp388-bmp390-bmp3xx",
+ "address": "0x77",
+ "addresses": [
+ "0x77",
+ "0x76"
+ ]
+ },
{
- "id": "max17048",
- "displayName": "MAX17048/MAX17049",
- "name": "max17048",
+ "id": "bmp390",
+ "displayName": "BMP390",
+ "name": "bmp390",
"description": "",
"category": "i2c",
"dataTypes": [
- {
- "displayName": "Battery Cell Voltage",
- "sensorType": "voltage"
- },
- {
- "displayName": "Battery Cell Percent",
- "sensorType": "unitless-percent"
- }
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "pressure",
+ "altitude"
],
- "image": "https://cdn-shop.adafruit.com/640x480/5580-06.jpg",
- "productUrl": "https://www.adafruit.com/product/5580",
- "documentationUrl": "https://learn.adafruit.com/adafruit-max17048-lipoly-liion-fuel-gauge-and-battery-monitor",
- "address": "0x36",
+ "image": "https://cdn-shop.adafruit.com/640x480/4816-05.jpg",
+ "productUrl": "https://www.adafruit.com/product/4816",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-bmp388-bmp390-bmp3xx",
+ "address": "0x77",
"addresses": [
- "0x36"
+ "0x77",
+ "0x76"
]
},
{
- "id": "vl53l4cx",
- "displayName": "VL53L4CX",
- "name": "vl53l4cx",
- "description": "Time of Flight (ToF) distance sensor with about ~1 to 6000mm range + 'multi object detection'",
+ "id": "d6t1a",
+ "displayName": "D6T-1A Thermal Sensor",
+ "name": "d6t1a",
+ "description": "Non-contact MEMS thermal infrared sensor for precise temperature detection (D6T-1A-01/D6T-1A-02)",
"category": "i2c",
"dataTypes": [
{
- "displayName": "ToF Sensor - Object 1",
- "sensorType": "proximity"
+ "displayName": "Ambient Temperature (°C)",
+ "sensorType": "ambient-temp"
},
{
- "displayName": "ToF Sensor - Object 2",
- "sensorType": "raw"
+ "displayName": "Ambient Temperature (°F)",
+ "sensorType": "ambient-temp-fahrenheit"
+ },
+ {
+ "displayName": "Measured Object Temp (°C)",
+ "sensorType": "object-temp"
+ },
+ {
+ "displayName": "Measured Object Temp (°F)",
+ "sensorType": "object-temp-fahrenheit"
}
],
- "image": "https://cdn-shop.adafruit.com/640x480/5425-02.jpg",
- "productUrl": "https://www.adafruit.com/product/5425",
- "documentationUrl": "https://learn.adafruit.com/adafruit-vl53l4cx-time-of-flight-distance-sensor",
- "address": "0x29",
- "addresses": [
- "0x29"
- ]
- },
- {
- "id": "vl53l4cd",
- "displayName": "VL53L4CD",
- "name": "vl53l4cd",
- "description": "Time of Flight (ToF) distance sensor with about ~1 to 1300mm range",
- "category": "i2c",
- "dataTypes": [
- {
- "displayName": "ToF Sensor",
- "sensorType": "proximity"
- }
- ],
- "image": "components/i2c/vl53l4cd/image.jpg",
- "productUrl": "https://www.adafruit.com/product/5396",
- "documentationUrl": "https://learn.adafruit.com/adafruit-vl53l4cd-time-of-flight-distance-sensor",
- "address": "0x29",
+ "image": "components/i2c/d6t1a/image.jpg",
+ "productUrl": "https://www.digikey.com/en/products/detail/omron-electronics-inc-emc-div/D6T-1A-02/8602566",
+ "documentationUrl": "https://omronfs.omron.com/en_US/ecb/products/pdf/en_D6T_users_manual.pdf",
+ "address": "0x0A",
"addresses": [
- "0x29"
+ "0x0A"
]
},
{
- "id": "sen5x",
- "displayName": "SEN5x",
- "name": "sen5x",
+ "id": "dht20",
+ "displayName": "DHT20",
+ "name": "dht20",
"description": "",
"category": "i2c",
"dataTypes": [
"ambient-temp",
"ambient-temp-fahrenheit",
- "relative-humidity",
- "pm10-std",
- "pm25-std",
- "pm100-std",
- "voc-index",
- "nox-index"
- ],
- "image": "components/i2c/sen5x/image.png",
- "productUrl": "https://www.digikey.com/en/products/filter/gas-sensors/530?s=N4IgjCBcoLQCxVAYygMwIYBsDOBTANCAPZQDa4ADFRQgLoC%2BjQA",
- "documentationUrl": "https://sensirion.com/media/documents/6791EFA0/62A1F68F/Sensirion_Datasheet_Environmental_Node_SEN5x.pdf",
- "address": "0x69",
- "addresses": [
- "0x69"
- ]
- },
- {
- "id": "d6t1a",
- "displayName": "D6T-1A Thermal Sensor",
- "name": "d6t1a",
- "description": "Non-contact MEMS thermal infrared sensor for precise temperature detection (D6T-1A-01/D6T-1A-02)",
- "category": "i2c",
- "dataTypes": [
- {
- "displayName": "Ambient Temperature (\u00b0C)",
- "sensorType": "ambient-temp"
- },
- {
- "displayName": "Ambient Temperature (\u00b0F)",
- "sensorType": "ambient-temp-fahrenheit"
- },
- {
- "displayName": "Measured Object Temp (\u00b0C)",
- "sensorType": "object-temp"
- },
- {
- "displayName": "Measured Object Temp (\u00b0F)",
- "sensorType": "object-temp-fahrenheit"
- }
+ "relative-humidity"
],
- "image": "components/i2c/d6t1a/image.jpg",
- "productUrl": "https://www.digikey.com/en/products/detail/omron-electronics-inc-emc-div/D6T-1A-02/8602566",
- "documentationUrl": "https://omronfs.omron.com/en_US/ecb/products/pdf/en_D6T_users_manual.pdf",
- "address": "0x0A",
+ "image": "https://cdn-shop.adafruit.com/640x480/5183-04.jpg",
+ "productUrl": "https://www.adafruit.com/product/5183",
+ "documentationUrl": "https://cdn-shop.adafruit.com/product-files/5183/5193_DHT20.pdf",
+ "address": "0x38",
"addresses": [
- "0x0A"
+ "0x38"
]
},
{
- "id": "ina260",
- "displayName": "INA260",
- "name": "ina260",
+ "id": "dps310",
+ "displayName": "DPS310",
+ "name": "dps310",
"description": "",
"category": "i2c",
"dataTypes": [
- "voltage",
- "current"
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "pressure"
],
- "image": "https://cdn-shop.adafruit.com/640x480/4226-12.jpg",
- "productUrl": "https://www.adafruit.com/product/4226",
- "documentationUrl": "https://learn.adafruit.com/adafruit-ina260-current-voltage-power-sensor-breakout",
- "address": "0x40",
+ "image": "https://cdn-shop.adafruit.com/640x480/4494-05.jpg",
+ "productUrl": "https://www.adafruit.com/product/4494",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-dps310-precision-barometric-pressure-sensor",
+ "address": "0x77",
"addresses": [
- "0x40",
- "0x41",
- "0x44",
- "0x45"
+ "0x77",
+ "0x76"
]
},
{
- "id": "vl6180x",
- "displayName": "VL6180X",
- "name": "vl6180x",
- "description": "Time of Flight (ToF) distance sensor with about ~5 to 200mm range",
+ "id": "ds2484",
+ "displayName": "DS2484",
+ "name": "ds2484",
+ "description": "Adafruit DS2484 I2C to 1-Wire Bus Adapter Breakout - Converts a single DS18b20 temperature sensor to I2C",
"category": "i2c",
"dataTypes": [
- {
- "displayName": "ToF Sensor",
- "sensorType": "proximity"
- },
- "light"
+ "ambient-temp",
+ "ambient-temp-fahrenheit"
],
- "image": "components/i2c/vl6180x/image.jpg",
- "productUrl": "https://www.adafruit.com/product/3316",
- "documentationUrl": "https://learn.adafruit.com/adafruit-vl6180x-time-of-flight-micro-lidar-distance-sensor-breakout",
- "address": "0x29",
+ "image": "https://cdn-shop.adafruit.com/640x480/5976-00.jpg",
+ "productUrl": "https://www.adafruit.com/product/5976",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-dps310-precision-barometric-pressure-sensor",
+ "address": "0x18",
"addresses": [
- "0x29"
+ "0x18"
]
},
{
- "id": "sgp40",
- "displayName": "SGP40",
- "name": "sgp40",
+ "id": "ens160",
+ "displayName": "ENS160",
+ "name": "ens160",
"description": "",
"category": "i2c",
"dataTypes": [
- "voc-index",
+ "tvoc",
+ "eco2",
{
- "displayName": "Raw (For Reference Only)",
+ "displayName": "AQI",
"sensorType": "raw"
}
],
- "image": "https://cdn-shop.adafruit.com/640x480/4829-06.jpg",
- "productUrl": "https://www.adafruit.com/product/4829",
- "documentationUrl": "https://learn.adafruit.com/adafruit-sgp40",
- "address": "0x59",
+ "image": "components/i2c/ens160/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/5606",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-ens160-mox-gas-sensor",
+ "address": "0x52",
"addresses": [
- "0x59"
+ "0x52",
+ "0x53"
]
},
{
- "id": "lps33hw",
- "displayName": "LPS33HW",
- "name": "lps33hw",
+ "id": "gps_pa1010d",
+ "displayName": "Mini GPS PA1010D",
+ "name": "gps_pa1010d",
"description": "",
"category": "i2c",
- "dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "pressure"
- ],
- "image": "components/i2c/lps33hw/image.jpg",
- "productUrl": "https://www.adafruit.com/product/4414",
- "documentationUrl": "https://learn.adafruit.com/lps35hw-water-resistant-pressure-sensor",
- "address": "0x5D",
+ "dataTypes": [],
+ "image": "components/i2c/gps_pa1010d/image.png",
+ "productUrl": "https://www.adafruit.com/product/4415",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-mini-gps-pa1010d-module",
+ "address": "0x10",
"addresses": [
- "0x5D",
- "0x5C"
- ]
+ "0x10"
+ ],
+ "isGps": true
},
{
- "id": "mcp9601",
- "displayName": "MCP9601",
- "name": "mcp9601",
- "description": "Thermocouple / ambient temperature sensor. *Note* Needs hotplugging after i2c scans + selecting component!",
+ "id": "hdc302x",
+ "displayName": "HDC302x",
+ "name": "hdc302x",
+ "description": "Precision temperature (±0.1°C typical) and humidity sensors (±0.5% typ). HDC3020 / HDC3021 / HDC3022",
"category": "i2c",
"dataTypes": [
- {
- "displayName": "Ambient Temperature (\u00b0C)",
- "sensorType": "ambient-temp"
- },
- {
- "displayName": "Ambient Temperature (\u00b0F)",
- "sensorType": "ambient-temp-fahrenheit"
- },
- {
- "displayName": "Type K Thermocouple (\u00b0C)",
- "sensorType": "raw"
- }
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "relative-humidity"
],
- "image": "https://cdn-shop.adafruit.com/product-videos/640x480/5165-05.jpg",
- "productUrl": "https://www.adafruit.com/product/5165",
- "documentationUrl": "https://learn.adafruit.com/adafruit-mcp9601",
- "address": "0x67",
+ "image": "https://cdn-shop.adafruit.com/640x480/5989-07.jpg",
+ "productUrl": "https://www.adafruit.com/product/5989",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-hdc3021-precision-temperature-humidity-sensor/overview",
+ "address": "0x44",
"addresses": [
- "0x67",
- "0x66",
- "0x65",
- "0x64",
- "0x63",
- "0x62",
- "0x61",
- "0x60"
+ "0x44",
+ "0x45",
+ "0x46",
+ "0x47"
]
},
{
- "id": "ltr390",
- "displayName": "LTR-390",
- "name": "ltr390",
+ "id": "hts221",
+ "displayName": "HTS221",
+ "name": "hts221",
"description": "",
"category": "i2c",
"dataTypes": [
- {
- "displayName": "Ambient Light",
- "sensorType": "light"
- },
- {
- "displayName": "UV Count",
- "sensorType": "raw"
- }
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "relative-humidity"
],
- "image": "components/i2c/ltr390/image.jpg",
- "productUrl": "https://www.adafruit.com/product/4831",
- "documentationUrl": "https://learn.adafruit.com/adafruit-ltr390-uv-sensor",
- "address": "0x53",
+ "image": "https://cdn-shop.adafruit.com/640x480/4535-04.jpg",
+ "productUrl": "https://www.adafruit.com/product/4535",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-hts221-temperature-humidity-sensor/overview",
+ "address": "0x5F",
"addresses": [
- "0x53"
+ "0x5F"
]
},
{
@@ -578,66 +479,23 @@
]
},
{
- "id": "bmp388",
- "displayName": "BMP388",
- "name": "bmp388",
+ "id": "htu31d",
+ "displayName": "HTU31D",
+ "name": "htu31d",
"description": "",
"category": "i2c",
"dataTypes": [
"ambient-temp",
"ambient-temp-fahrenheit",
- "pressure",
- "altitude"
+ "relative-humidity"
],
- "image": "https://cdn-shop.adafruit.com/640x480/3966-10.jpg",
- "productUrl": "https://www.adafruit.com/product/3966",
- "documentationUrl": "https://learn.adafruit.com/adafruit-bmp388-bmp390-bmp3xx",
- "address": "0x77",
+ "image": "https://cdn-shop.adafruit.com/640x480/2857-03.jpg",
+ "productUrl": "https://www.adafruit.com/product/2857",
+ "documentationUrl": "https://www.adafruit.com/product/4832",
+ "address": "0x40",
"addresses": [
- "0x77",
- "0x76"
- ]
- },
- {
- "id": "scd40",
- "displayName": "SCD40/SCD41",
- "name": "scd40",
- "description": "",
- "category": "i2c",
- "dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "relative-humidity",
- "co2"
- ],
- "image": "https://cdn-shop.adafruit.com/640x480/5187-08.jpg",
- "productUrl": "https://www.adafruit.com/product/5187",
- "documentationUrl": "https://learn.adafruit.com/adafruit-scd-40-and-scd-41",
- "address": "0x62",
- "addresses": [
- "0x62"
- ]
- },
- {
- "id": "bme280",
- "displayName": "BME280",
- "name": "bme280",
- "description": "",
- "category": "i2c",
- "dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "relative-humidity",
- "pressure",
- "altitude"
- ],
- "image": "https://cdn-shop.adafruit.com/640x480/2652-04.jpg",
- "productUrl": "https://www.adafruit.com/product/2652",
- "documentationUrl": "https://learn.adafruit.com/adafruit-bme280-humidity-barometric-pressure-temperature-sensor-breakout",
- "address": "0x77",
- "addresses": [
- "0x77",
- "0x76"
+ "0x40",
+ "0x41"
]
},
{
@@ -662,710 +520,752 @@
]
},
{
- "id": "pmsa003i",
- "displayName": "PMSA003I",
- "name": "pmsa003i",
- "description": "",
+ "id": "ina237",
+ "displayName": "INA237",
+ "name": "ina237",
+ "description": "85V, 16-bit, good-precision power monitor (up to 10A, 0.3% gain error)",
"category": "i2c",
"dataTypes": [
- "pm10-std",
- "pm25-std",
- "pm100-std"
+ "voltage",
+ "current"
],
- "image": "https://cdn-shop.adafruit.com/640x480/4632-10.jpg",
- "productUrl": "https://www.adafruit.com/product/4632",
- "documentationUrl": "https://learn.adafruit.com/pmsa003i",
- "address": "0x12",
+ "image": "https://cdn-shop.adafruit.com/640x480/6340-02.jpg",
+ "productUrl": "https://www.adafruit.com/product/6340",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-ina237-dc-current-voltage-power-monitor",
+ "address": "0x40",
"addresses": [
- "0x12"
+ "0x40",
+ "0x41",
+ "0x44",
+ "0x45"
]
},
{
- "id": "bmp280",
- "displayName": "BMP280",
- "name": "bmp280",
- "description": "",
+ "id": "ina238",
+ "displayName": "INA238",
+ "name": "ina238",
+ "description": "85V, 16-bit, high-precision power monitor (up to 10A, 0.1% gain error)",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "pressure",
- "altitude"
+ "voltage",
+ "current"
],
- "image": "https://cdn-shop.adafruit.com/640x480/2651-08.jpg",
- "productUrl": "https://www.adafruit.com/product/2651",
- "documentationUrl": "https://learn.adafruit.com/adafruit-bmp280-barometric-pressure-plus-temperature-sensor-breakout",
- "address": "0x77",
+ "image": "https://cdn-shop.adafruit.com/640x480/6349-00.jpg",
+ "productUrl": "https://www.adafruit.com/product/6349",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-ina238-dc-current-voltage-power-monitor",
+ "address": "0x40",
"addresses": [
- "0x77",
- "0x76"
+ "0x40",
+ "0x41",
+ "0x44",
+ "0x45"
]
},
{
- "id": "sgp30",
- "displayName": "SGP30",
- "name": "sgp30",
+ "id": "ina260",
+ "displayName": "INA260",
+ "name": "ina260",
"description": "",
"category": "i2c",
"dataTypes": [
- "eco2",
- "tvoc"
+ "voltage",
+ "current"
],
- "image": "https://cdn-shop.adafruit.com/640x480/3709-07.jpg",
- "productUrl": "https://www.adafruit.com/product/3709",
- "documentationUrl": "https://learn.adafruit.com/adafruit-sgp30-gas-tvoc-eco2-mox-sensor",
- "address": "0x58",
+ "image": "https://cdn-shop.adafruit.com/640x480/4226-12.jpg",
+ "productUrl": "https://www.adafruit.com/product/4226",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-ina260-current-voltage-power-sensor-breakout",
+ "address": "0x40",
"addresses": [
- "0x58"
+ "0x40",
+ "0x41",
+ "0x44",
+ "0x45"
]
},
{
- "id": "sen50",
- "displayName": "SEN50",
- "name": "sen50",
+ "id": "lc709203f",
+ "displayName": "LC709203F",
+ "name": "lc709203f",
"description": "",
"category": "i2c",
"dataTypes": [
- "pm10-std",
- "pm25-std",
- "pm100-std"
+ {
+ "displayName": "Battery Cell Voltage",
+ "sensorType": "voltage"
+ },
+ {
+ "displayName": "Battery Cell Percent",
+ "sensorType": "unitless-percent"
+ }
],
- "image": "components/i2c/sen50/image.png",
- "productUrl": "https://www.digikey.com/en/products/filter/gas-sensors/530?s=N4IgjCBcoLQCxVAYygMwIYBsDOBTANCAPZQDa4ADFRQgLoC%2BjQA",
- "documentationUrl": "https://sensirion.com/media/documents/6791EFA0/62A1F68F/Sensirion_Datasheet_Environmental_Node_SEN5x.pdf",
- "address": "0x69",
+ "image": "https://cdn-shop.adafruit.com/640x480/4712-07.jpg",
+ "productUrl": "https://www.adafruit.com/product/4712",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-lc709203f-lipo-lipoly-battery-monitor",
+ "address": "0x0B",
"addresses": [
- "0x69"
+ "0x0B"
]
},
{
- "id": "scd30",
- "displayName": "SCD30",
- "name": "scd30",
+ "id": "lps22hb",
+ "displayName": "LPS22HB",
+ "name": "lps22hb",
"description": "",
"category": "i2c",
"dataTypes": [
"ambient-temp",
"ambient-temp-fahrenheit",
- "relative-humidity",
- "co2"
+ "pressure"
],
- "image": "https://cdn-shop.adafruit.com/product-videos/640x480/4867-05.jpg",
- "productUrl": "https://www.adafruit.com/product/4867",
- "documentationUrl": "https://learn.adafruit.com/adafruit-scd30",
- "address": "0x61",
+ "image": "https://cdn-shop.adafruit.com/640x480/4633-09.jpg",
+ "productUrl": "https://www.adafruit.com/product/4633",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-lps25-pressure-sensor",
+ "address": "0x5D",
"addresses": [
- "0x61"
+ "0x5D",
+ "0x5C"
]
},
{
- "id": "vl53l0x",
- "displayName": "VL53L0X",
- "name": "vl53l0x",
- "description": "Time of Flight (ToF) distance sensor with about ~50 to 1200mm range",
+ "id": "lps25hb",
+ "displayName": "LPS25HB",
+ "name": "lps25hb",
+ "description": "",
"category": "i2c",
"dataTypes": [
- {
- "displayName": "ToF Sensor",
- "sensorType": "proximity"
- }
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "pressure"
],
- "image": "components/i2c/vl53l0x/image.jpg",
- "productUrl": "https://www.adafruit.com/product/3317",
- "documentationUrl": "https://learn.adafruit.com/adafruit-vl53l0x-micro-lidar-distance-sensor-breakout",
- "address": "0x29",
+ "image": "components/i2c/lps25hb/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/4530",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-lps25-pressure-sensor",
+ "address": "0x5D",
"addresses": [
- "0x29"
+ "0x5D",
+ "0x5C"
]
},
{
- "id": "si7021",
- "displayName": "Si7021",
- "name": "si7021",
- "description": "",
+ "id": "lps28dfw",
+ "displayName": "LPS28DFW",
+ "name": "lps28dfw",
+ "description": "From 260 to 4060 hPa, this is our largest range pressure sensor (24bit).",
"category": "i2c",
"dataTypes": [
"ambient-temp",
"ambient-temp-fahrenheit",
- "relative-humidity"
+ "pressure"
],
- "image": "https://cdn-shop.adafruit.com/640x480/3251-08.jpg",
- "productUrl": "https://www.adafruit.com/product/3251",
- "documentationUrl": "https://learn.adafruit.com/adafruit-si7021-temperature-plus-humidity-sensor/overview",
- "address": "0x40",
+ "image": "components/i2c/lps28dfw/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/6067",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-lps28-pressure-sensor",
+ "address": "0x5C",
"addresses": [
- "0x40"
+ "0x5C",
+ "0x5D"
]
},
{
- "id": "aht20",
- "displayName": "AHT20",
- "name": "aht20",
- "description": "Inexpensive temperature and humidity sensor for I2C-capable boards.",
+ "id": "lps33hw",
+ "displayName": "LPS33HW",
+ "name": "lps33hw",
+ "description": "",
"category": "i2c",
"dataTypes": [
"ambient-temp",
"ambient-temp-fahrenheit",
- "relative-humidity"
+ "pressure"
],
- "image": "https://cdn-shop.adafruit.com/640x480/4566-04.jpg",
- "productUrl": "https://www.adafruit.com/product/4566",
- "documentationUrl": "https://learn.adafruit.com/adafruit-aht20",
- "address": "0x38",
+ "image": "components/i2c/lps33hw/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/4414",
+ "documentationUrl": "https://learn.adafruit.com/lps35hw-water-resistant-pressure-sensor",
+ "address": "0x5D",
"addresses": [
- "0x38"
+ "0x5D",
+ "0x5C"
]
},
{
- "id": "tmp117",
- "displayName": "TMP117",
- "name": "tmp117",
+ "id": "lps35hw",
+ "displayName": "LPS35HW",
+ "name": "lps35hw",
"description": "",
"category": "i2c",
"dataTypes": [
"ambient-temp",
- "ambient-temp-fahrenheit"
+ "ambient-temp-fahrenheit",
+ "pressure"
],
- "image": "components/i2c/tmp117/image.jpg",
- "productUrl": "https://www.adafruit.com/product/4821",
- "documentationUrl": "https://learn.adafruit.com/adafruit-tmp117-high-accuracy-i2c-temperature-monitor",
- "address": "0x48",
+ "image": "https://cdn-shop.adafruit.com/640x480/4258-10.jpg",
+ "productUrl": "https://www.adafruit.com/product/4258",
+ "documentationUrl": "https://learn.adafruit.com/lps35hw-water-resistant-pressure-sensor",
+ "address": "0x5D",
"addresses": [
- "0x48",
- "0x49",
- "0x4A",
- "0x4B"
+ "0x5D",
+ "0x5C"
]
},
{
- "id": "ds2484",
- "displayName": "DS2484",
- "name": "ds2484",
- "description": "Adafruit DS2484 I2C to 1-Wire Bus Adapter Breakout - Converts a single DS18b20 temperature sensor to I2C",
+ "id": "ltr303",
+ "displayName": "LTR-303",
+ "name": "ltr303",
+ "description": "",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit"
+ {
+ "displayName": "Ambient Light",
+ "sensorType": "light"
+ },
+ {
+ "displayName": "Infrared",
+ "sensorType": "raw"
+ }
],
- "image": "https://cdn-shop.adafruit.com/640x480/5976-00.jpg",
- "productUrl": "https://www.adafruit.com/product/5976",
- "documentationUrl": "https://learn.adafruit.com/adafruit-dps310-precision-barometric-pressure-sensor",
- "address": "0x18",
+ "image": "components/i2c/ltr303/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/5610",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-ltr-329-ltr-303",
+ "address": "0x29",
"addresses": [
- "0x18"
+ "0x29"
]
},
{
- "id": "pct2075",
- "displayName": "PCT2075",
- "name": "pct2075",
+ "id": "ltr329",
+ "displayName": "LTR-329",
+ "name": "ltr329",
"description": "",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit"
+ {
+ "displayName": "Ambient Light",
+ "sensorType": "light"
+ },
+ {
+ "displayName": "Infrared",
+ "sensorType": "raw"
+ }
],
- "image": "components/i2c/pct2075/image.jpg",
- "productUrl": "https://www.adafruit.com/product/4369",
- "documentationUrl": "https://learn.adafruit.com/adafruit-pct2075-temperature-sensor",
- "address": "0x37",
+ "image": "components/i2c/ltr329/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/5591",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-ltr-329-ltr-303",
+ "address": "0x29",
"addresses": [
- "0x37",
- "0x36",
- "0x35",
- "0x2F",
- "0x2E",
- "0x2D",
- "0x2C",
- "0x2B",
- "0x2A",
- "0x29",
- "0x28",
- "0x77",
- "0x76",
- "0x75",
- "0x74",
- "0x73",
- "0x72",
- "0x71",
- "0x70",
- "0x4F",
- "0x4E",
- "0x4D",
- "0x4C",
- "0x4B",
- "0x4A",
- "0x49",
- "0x48"
+ "0x29"
]
},
{
- "id": "bmp390",
- "displayName": "BMP390",
- "name": "bmp390",
+ "id": "ltr390",
+ "displayName": "LTR-390",
+ "name": "ltr390",
"description": "",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "pressure",
- "altitude"
+ {
+ "displayName": "Ambient Light",
+ "sensorType": "light"
+ },
+ {
+ "displayName": "UV Count",
+ "sensorType": "raw"
+ }
],
- "image": "https://cdn-shop.adafruit.com/640x480/4816-05.jpg",
- "productUrl": "https://www.adafruit.com/product/4816",
- "documentationUrl": "https://learn.adafruit.com/adafruit-bmp388-bmp390-bmp3xx",
- "address": "0x77",
+ "image": "components/i2c/ltr390/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/4831",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-ltr390-uv-sensor",
+ "address": "0x53",
"addresses": [
- "0x77",
- "0x76"
+ "0x53"
]
},
{
- "id": "adt7410",
- "displayName": "ADT7410",
- "name": "adt7410",
+ "id": "max17048",
+ "displayName": "MAX17048/MAX17049",
+ "name": "max17048",
"description": "",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit"
+ {
+ "displayName": "Battery Cell Voltage",
+ "sensorType": "voltage"
+ },
+ {
+ "displayName": "Battery Cell Percent",
+ "sensorType": "unitless-percent"
+ }
],
- "image": "https://cdn-shop.adafruit.com/640x480/4089-05.jpg",
- "productUrl": "https://www.adafruit.com/product/4089",
- "documentationUrl": "https://learn.adafruit.com/adt7410-breakout",
- "address": "0x48",
+ "image": "https://cdn-shop.adafruit.com/640x480/5580-06.jpg",
+ "productUrl": "https://www.adafruit.com/product/5580",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-max17048-lipoly-liion-fuel-gauge-and-battery-monitor",
+ "address": "0x36",
"addresses": [
- "0x48",
- "0x49",
- "0x4A",
- "0x4B"
+ "0x36"
]
},
{
- "id": "aht21",
- "displayName": "AHT21",
- "name": "aht21",
- "description": "",
+ "id": "mcp3421",
+ "displayName": "MCP3421",
+ "name": "mcp3421",
+ "description": "18-bit ADC. Great for Strain Gauges, Thermocouples and Pressure sensors, between 0 and 2.048 volts",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "relative-humidity"
+ {
+ "displayName": "ADC Reading",
+ "sensorType": "raw"
+ }
],
- "image": "components/i2c/aht21/image.jpg",
- "documentationUrl": "http://www.aosong.com/en/products-60.html",
- "address": "0x38",
+ "image": "components/i2c/mcp3421/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/5870",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-mcp3421-18-bit-adc",
+ "address": "0x68",
"addresses": [
- "0x38"
+ "0x68"
]
},
{
- "id": "rotary_encoder",
- "displayName": "STEMMA QT Rotary Encoder",
- "name": "rotary_encoder",
- "description": "",
+ "id": "mcp9601",
+ "displayName": "MCP9601",
+ "name": "mcp9601",
+ "description": "Thermocouple / ambient temperature sensor. *Note* Needs hotplugging after i2c scans + selecting component!",
"category": "i2c",
"dataTypes": [
{
- "displayName": "Rotary Encoder Value",
+ "displayName": "Ambient Temperature (°C)",
+ "sensorType": "ambient-temp"
+ },
+ {
+ "displayName": "Ambient Temperature (°F)",
+ "sensorType": "ambient-temp-fahrenheit"
+ },
+ {
+ "displayName": "Type K Thermocouple (°C)",
"sensorType": "raw"
}
],
- "image": "components/i2c/rotary_encoder/image.jpeg",
- "productUrl": "https://www.adafruit.com/product/4991",
- "documentationUrl": "https://learn.adafruit.com/adafruit-i2c-qt-rotary-encoder",
- "address": "0x36",
+ "image": "https://cdn-shop.adafruit.com/product-videos/640x480/5165-05.jpg",
+ "productUrl": "https://www.adafruit.com/product/5165",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-mcp9601",
+ "address": "0x67",
"addresses": [
- "0x36",
- "0x37",
- "0x38",
- "0x39",
- "0x3A",
- "0x3B",
- "0x3C",
- "0x3D"
+ "0x67",
+ "0x66",
+ "0x65",
+ "0x64",
+ "0x63",
+ "0x62",
+ "0x61",
+ "0x60"
]
},
{
- "id": "vcnl4040",
- "displayName": "VCNL4040",
- "name": "vcnl4040",
- "description": "Proximity sensor works from 0 to 200mm (about 7.5 inches) & light sensor with range of 0.0125 to 6,553.5 lux",
+ "id": "mcp9808",
+ "displayName": "MCP9808",
+ "name": "mcp9808",
+ "description": "",
"category": "i2c",
"dataTypes": [
- "light",
- "proximity"
+ "ambient-temp",
+ "ambient-temp-fahrenheit"
],
- "image": "https://cdn-shop.adafruit.com/640x480/4161-06.jpg",
- "productUrl": "https://www.adafruit.com/product/4161",
- "documentationUrl": "https://learn.adafruit.com/adafruit-vcnl4040-proximity-sensor",
- "address": "0x60",
+ "image": "https://cdn-shop.adafruit.com/640x480/1782-03.jpg",
+ "productUrl": "https://www.adafruit.com/product/1782",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-mcp9808-precision-i2c-temperature-sensor-guide/overview",
+ "address": "0x18",
"addresses": [
- "0x60"
+ "0x18",
+ "0x19",
+ "0x1A",
+ "0x1B",
+ "0x1C",
+ "0x1D",
+ "0x1E",
+ "0x1F"
]
},
{
- "id": "stemma_soil",
- "displayName": "STEMMA Soil Sensor",
- "name": "stemma_soil",
+ "id": "mpl115a2",
+ "displayName": "MPL115A2",
+ "name": "mpl115a2",
"description": "",
"category": "i2c",
"dataTypes": [
"ambient-temp",
"ambient-temp-fahrenheit",
- {
- "displayName": "Capacitive Sensor",
- "sensorType": "raw"
- }
+ "pressure"
],
- "image": "https://cdn-shop.adafruit.com/640x480/4026-01.jpg",
- "productUrl": "https://www.adafruit.com/product/4026",
- "documentationUrl": "https://learn.adafruit.com/adafruit-stemma-soil-sensor-i2c-capacitive-moisture-sensor",
- "address": "0x36",
+ "image": "https://cdn-shop.adafruit.com/640x480/992-06.jpg",
+ "productUrl": "https://www.adafruit.com/product/992",
+ "documentationUrl": "https://cdn-shop.adafruit.com/datasheets/MPL115A2.pdf",
+ "address": "0x60",
"addresses": [
- "0x36",
- "0x37",
- "0x38",
- "0x39"
+ "0x60"
]
},
{
- "id": "sht20",
- "displayName": "SHT20",
- "name": "sht20",
+ "id": "mprls",
+ "displayName": "MPRLS",
+ "name": "mprls",
"description": "",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "relative-humidity"
+ "pressure"
],
- "image": "components/i2c/sht20/image.jpg",
- "productUrl": "https://www.digikey.com/en/products/detail/dfrobot/SEN0227/7897986",
- "documentationUrl": "https://sensirion.com/media/documents/CCDE1377/635000A2/Sensirion_Datasheet_Humidity_Sensor_SHT20.pdf",
- "address": "0x40",
+ "image": "https://cdn-shop.adafruit.com/640x480/3965-04.jpg",
+ "productUrl": "https://www.adafruit.com/product/3965",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-mprls-ported-pressure-sensor-breakout",
+ "address": "0x18",
"addresses": [
- "0x40"
+ "0x18"
]
},
{
- "id": "tsl2591",
- "displayName": "TSL2591",
- "name": "tsl2591",
+ "id": "ms8607",
+ "displayName": "MS8607",
+ "name": "ms8607",
"description": "",
"category": "i2c",
"dataTypes": [
- "light"
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "relative-humidity",
+ "pressure"
],
- "image": "https://cdn-shop.adafruit.com/640x480/1980-08.jpg",
- "productUrl": "https://www.adafruit.com/product/1980",
- "documentationUrl": "https://learn.adafruit.com/adafruit-tsl2591",
- "address": "0x29",
+ "image": "https://cdn-shop.adafruit.com/640x480/4716-01.jpg",
+ "productUrl": "https://www.adafruit.com/product/4716",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-te-ms8607-pht-sensor",
+ "address": "0x40",
"addresses": [
- "0x29",
- "0x39",
- "0x49"
+ "0x40",
+ "0x76"
]
},
{
- "id": "mcp9808",
- "displayName": "MCP9808",
- "name": "mcp9808",
- "description": "",
+ "id": "nau7802",
+ "displayName": "NAU7802",
+ "name": "nau7802",
+ "description": "24-bit ADC with 128x gain, used with a load cell for weight/force sensing",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit"
+ {
+ "displayName": "Weight Sensor",
+ "sensorType": "raw"
+ }
],
- "image": "https://cdn-shop.adafruit.com/640x480/1782-03.jpg",
- "productUrl": "https://www.adafruit.com/product/1782",
- "documentationUrl": "https://learn.adafruit.com/adafruit-mcp9808-precision-i2c-temperature-sensor-guide/overview",
- "address": "0x18",
+ "image": "components/i2c/nau7802/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/4538",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-nau7802-24-bit-adc-stemma-qt-qwiic/overview",
+ "address": "0x2A",
"addresses": [
- "0x18",
- "0x19",
- "0x1A",
- "0x1B",
- "0x1C",
- "0x1D",
- "0x1E",
- "0x1F"
+ "0x2A"
]
},
{
- "id": "sht3x",
- "displayName": "SHT3X",
- "name": "sht3x",
+ "id": "pct2075",
+ "displayName": "PCT2075",
+ "name": "pct2075",
"description": "",
"category": "i2c",
"dataTypes": [
"ambient-temp",
- "ambient-temp-fahrenheit",
- "relative-humidity"
+ "ambient-temp-fahrenheit"
],
- "image": "https://cdn-shop.adafruit.com/640x480/2857-03.jpg",
- "productUrl": "https://www.adafruit.com/product/2857",
- "documentationUrl": "https://learn.adafruit.com/adafruit-sht31-d-temperature-and-humidity-sensor-breakout/overview",
- "address": "0x44",
+ "image": "components/i2c/pct2075/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/4369",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-pct2075-temperature-sensor",
+ "address": "0x37",
"addresses": [
- "0x44",
- "0x45"
+ "0x37",
+ "0x36",
+ "0x35",
+ "0x2F",
+ "0x2E",
+ "0x2D",
+ "0x2C",
+ "0x2B",
+ "0x2A",
+ "0x29",
+ "0x28",
+ "0x77",
+ "0x76",
+ "0x75",
+ "0x74",
+ "0x73",
+ "0x72",
+ "0x71",
+ "0x70",
+ "0x4F",
+ "0x4E",
+ "0x4D",
+ "0x4C",
+ "0x4B",
+ "0x4A",
+ "0x49",
+ "0x48"
]
},
{
- "id": "mprls",
- "displayName": "MPRLS",
- "name": "mprls",
+ "id": "pmsa003i",
+ "displayName": "PMSA003I",
+ "name": "pmsa003i",
"description": "",
"category": "i2c",
"dataTypes": [
- "pressure"
+ "pm10-std",
+ "pm25-std",
+ "pm100-std"
],
- "image": "https://cdn-shop.adafruit.com/640x480/3965-04.jpg",
- "productUrl": "https://www.adafruit.com/product/3965",
- "documentationUrl": "https://learn.adafruit.com/adafruit-mprls-ported-pressure-sensor-breakout",
- "address": "0x18",
+ "image": "https://cdn-shop.adafruit.com/640x480/4632-10.jpg",
+ "productUrl": "https://www.adafruit.com/product/4632",
+ "documentationUrl": "https://learn.adafruit.com/pmsa003i",
+ "address": "0x12",
"addresses": [
- "0x18"
+ "0x12"
]
},
{
- "id": "vcnl4020",
- "displayName": "VCNL4020",
- "name": "vcnl4020",
- "description": "Proximity sensor works from 0 to 200mm (about 7.5 inches) & light sensor with range of 0.26 to 16,000 lux.",
+ "id": "rotary_encoder",
+ "displayName": "STEMMA QT Rotary Encoder",
+ "name": "rotary_encoder",
+ "description": "",
"category": "i2c",
"dataTypes": [
- "light",
- "proximity"
+ {
+ "displayName": "Rotary Encoder Value",
+ "sensorType": "raw"
+ }
],
- "image": "components/i2c/vcnl4020/image.jpg",
- "productUrl": "https://www.adafruit.com/product/5810",
- "documentationUrl": "https://learn.adafruit.com/adafruit-vcnl4020-proximity-and-light-sensor",
- "address": "0x13",
+ "image": "components/i2c/rotary_encoder/image.jpeg",
+ "productUrl": "https://www.adafruit.com/product/4991",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-i2c-qt-rotary-encoder",
+ "address": "0x36",
"addresses": [
- "0x13"
+ "0x36",
+ "0x37",
+ "0x38",
+ "0x39",
+ "0x3A",
+ "0x3B",
+ "0x3C",
+ "0x3D"
]
},
{
- "id": "veml7700",
- "displayName": "VEML7700",
- "name": "veml7700",
+ "id": "scd30",
+ "displayName": "SCD30",
+ "name": "scd30",
"description": "",
"category": "i2c",
"dataTypes": [
- "light"
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "relative-humidity",
+ "co2"
],
- "image": "https://cdn-shop.adafruit.com/640x480/4162-10.jpg",
- "productUrl": "https://www.adafruit.com/product/4162",
- "documentationUrl": "https://learn.adafruit.com/adafruit-veml7700",
- "address": "0x10",
+ "image": "https://cdn-shop.adafruit.com/product-videos/640x480/4867-05.jpg",
+ "productUrl": "https://www.adafruit.com/product/4867",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-scd30",
+ "address": "0x61",
"addresses": [
- "0x10"
+ "0x61"
]
},
{
- "id": "ltr329",
- "displayName": "LTR-329",
- "name": "ltr329",
+ "id": "scd40",
+ "displayName": "SCD40/SCD41",
+ "name": "scd40",
"description": "",
"category": "i2c",
"dataTypes": [
- {
- "displayName": "Ambient Light",
- "sensorType": "light"
- },
- {
- "displayName": "Infrared",
- "sensorType": "raw"
- }
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "relative-humidity",
+ "co2"
],
- "image": "components/i2c/ltr329/image.jpg",
- "productUrl": "https://www.adafruit.com/product/5591",
- "documentationUrl": "https://learn.adafruit.com/adafruit-ltr-329-ltr-303",
- "address": "0x29",
+ "image": "https://cdn-shop.adafruit.com/640x480/5187-08.jpg",
+ "productUrl": "https://www.adafruit.com/product/5187",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-scd-40-and-scd-41",
+ "address": "0x62",
"addresses": [
- "0x29"
+ "0x62"
]
},
{
- "id": "sht30_mesh",
- "displayName": "Weatherproof SHT30",
- "name": "sht30_mesh",
+ "id": "sen50",
+ "displayName": "SEN50",
+ "name": "sen50",
"description": "",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "relative-humidity"
+ "pm10-std",
+ "pm25-std",
+ "pm100-std"
],
- "image": "https://cdn-shop.adafruit.com/640x480/4099-09.jpg",
- "productUrl": "https://www.adafruit.com/product/4099",
- "documentationUrl": "https://learn.adafruit.com/adafruit-sht31-d-temperature-and-humidity-sensor-breakout",
- "address": "0x44",
+ "image": "components/i2c/sen50/image.png",
+ "productUrl": "https://www.digikey.com/en/products/filter/gas-sensors/530?s=N4IgjCBcoLQCxVAYygMwIYBsDOBTANCAPZQDa4ADFRQgLoC%2BjQA",
+ "documentationUrl": "https://sensirion.com/media/documents/6791EFA0/62A1F68F/Sensirion_Datasheet_Environmental_Node_SEN5x.pdf",
+ "address": "0x69",
"addresses": [
- "0x44"
+ "0x69"
]
},
{
- "id": "bme680",
- "displayName": "BME680",
- "name": "bme680",
+ "id": "sen54",
+ "displayName": "SEN54",
+ "name": "sen54",
"description": "",
"category": "i2c",
"dataTypes": [
"ambient-temp",
"ambient-temp-fahrenheit",
"relative-humidity",
- "pressure",
- "altitude",
- "gas-resistance"
- ],
- "image": "https://cdn-shop.adafruit.com/640x480/3660-08.jpg",
- "productUrl": "https://www.adafruit.com/product/3660",
- "documentationUrl": "https://learn.adafruit.com/adafruit-bme680-humidity-temperature-barometic-pressure-voc-gas",
- "address": "0x77",
+ "pm10-std",
+ "pm25-std",
+ "pm100-std",
+ "voc-index"
+ ],
+ "image": "components/i2c/sen54/image.png",
+ "productUrl": "https://www.digikey.com/en/products/filter/gas-sensors/530?s=N4IgjCBcoLQCxVAYygMwIYBsDOBTANCAPZQDa4ADFRQgLoC%2BjQA",
+ "documentationUrl": "https://sensirion.com/media/documents/6791EFA0/62A1F68F/Sensirion_Datasheet_Environmental_Node_SEN5x.pdf",
+ "address": "0x69",
"addresses": [
- "0x77",
- "0x76"
+ "0x69"
]
},
{
- "id": "lps28dfw",
- "displayName": "LPS28DFW",
- "name": "lps28dfw",
- "description": "From 260 to 4060 hPa, this is our largest range pressure sensor (24bit).",
+ "id": "sen55",
+ "displayName": "SEN55",
+ "name": "sen55",
+ "description": "",
"category": "i2c",
"dataTypes": [
"ambient-temp",
"ambient-temp-fahrenheit",
- "pressure"
+ "relative-humidity",
+ "pm10-std",
+ "pm25-std",
+ "pm100-std",
+ "voc-index",
+ "nox-index"
],
- "image": "components/i2c/lps28dfw/image.jpg",
- "productUrl": "https://www.adafruit.com/product/6067",
- "documentationUrl": "https://learn.adafruit.com/adafruit-lps28-pressure-sensor",
- "address": "0x5C",
+ "image": "components/i2c/sen55/image.png",
+ "productUrl": "https://www.digikey.com/en/products/filter/gas-sensors/530?s=N4IgjCBcoLQCxVAYygMwIYBsDOBTANCAPZQDa4ADFRQgLoC%2BjQA",
+ "documentationUrl": "https://sensirion.com/media/documents/6791EFA0/62A1F68F/Sensirion_Datasheet_Environmental_Node_SEN5x.pdf",
+ "address": "0x69",
"addresses": [
- "0x5C",
- "0x5D"
+ "0x69"
]
},
{
- "id": "ina238",
- "displayName": "INA238",
- "name": "ina238",
- "description": "85V, 16-bit, high-precision power monitor (up to 10A, 0.1% gain error)",
+ "id": "sen5x",
+ "displayName": "SEN5x",
+ "name": "sen5x",
+ "description": "",
"category": "i2c",
"dataTypes": [
- "voltage",
- "current"
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "relative-humidity",
+ "pm10-std",
+ "pm25-std",
+ "pm100-std",
+ "voc-index",
+ "nox-index"
],
- "image": "https://cdn-shop.adafruit.com/640x480/6349-00.jpg",
- "productUrl": "https://www.adafruit.com/product/6349",
- "documentationUrl": "https://learn.adafruit.com/adafruit-ina238-dc-current-voltage-power-monitor",
- "address": "0x40",
+ "image": "components/i2c/sen5x/image.png",
+ "productUrl": "https://www.digikey.com/en/products/filter/gas-sensors/530?s=N4IgjCBcoLQCxVAYygMwIYBsDOBTANCAPZQDa4ADFRQgLoC%2BjQA",
+ "documentationUrl": "https://sensirion.com/media/documents/6791EFA0/62A1F68F/Sensirion_Datasheet_Environmental_Node_SEN5x.pdf",
+ "address": "0x69",
"addresses": [
- "0x40",
- "0x41",
- "0x44",
- "0x45"
+ "0x69"
]
},
{
- "id": "hdc302x",
- "displayName": "HDC302x",
- "name": "hdc302x",
- "description": "Precision temperature (\u00b10.1\u00b0C typical) and humidity sensors (\u00b10.5% typ). HDC3020 / HDC3021 / HDC3022",
+ "id": "sen66",
+ "displayName": "SEN66",
+ "name": "sen66",
+ "description": "",
"category": "i2c",
"dataTypes": [
"ambient-temp",
"ambient-temp-fahrenheit",
- "relative-humidity"
+ "relative-humidity",
+ "pm10-std",
+ "pm25-std",
+ "pm100-std",
+ "voc-index",
+ "nox-index",
+ "co2"
],
- "image": "https://cdn-shop.adafruit.com/640x480/5989-07.jpg",
- "productUrl": "https://www.adafruit.com/product/5989",
- "documentationUrl": "https://learn.adafruit.com/adafruit-hdc3021-precision-temperature-humidity-sensor/overview",
- "address": "0x44",
+ "image": "https://cdn-shop.adafruit.com/640x480/6331-06.jpg",
+ "productUrl": "https://www.adafruit.com/product/6331",
+ "documentationUrl": "https://sensirion.com/media/documents/FAFC548D/6731FFFA/Sensirion_Datasheet_SEN6x.pdf",
+ "address": "0x6B",
"addresses": [
- "0x44",
- "0x45",
- "0x46",
- "0x47"
+ "0x6B"
]
},
{
- "id": "lps22hb",
- "displayName": "LPS22HB",
- "name": "lps22hb",
+ "id": "sgp30",
+ "displayName": "SGP30",
+ "name": "sgp30",
"description": "",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "pressure"
+ "eco2",
+ "tvoc"
],
- "image": "https://cdn-shop.adafruit.com/640x480/4633-09.jpg",
- "productUrl": "https://www.adafruit.com/product/4633",
- "documentationUrl": "https://learn.adafruit.com/adafruit-lps25-pressure-sensor",
- "address": "0x5D",
+ "image": "https://cdn-shop.adafruit.com/640x480/3709-07.jpg",
+ "productUrl": "https://www.adafruit.com/product/3709",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-sgp30-gas-tvoc-eco2-mox-sensor",
+ "address": "0x58",
"addresses": [
- "0x5D",
- "0x5C"
+ "0x58"
]
},
{
- "id": "lc709203f",
- "displayName": "LC709203F",
- "name": "lc709203f",
+ "id": "sgp40",
+ "displayName": "SGP40",
+ "name": "sgp40",
"description": "",
"category": "i2c",
"dataTypes": [
+ "voc-index",
{
- "displayName": "Battery Cell Voltage",
- "sensorType": "voltage"
- },
- {
- "displayName": "Battery Cell Percent",
- "sensorType": "unitless-percent"
+ "displayName": "Raw (For Reference Only)",
+ "sensorType": "raw"
}
],
- "image": "https://cdn-shop.adafruit.com/640x480/4712-07.jpg",
- "productUrl": "https://www.adafruit.com/product/4712",
- "documentationUrl": "https://learn.adafruit.com/adafruit-lc709203f-lipo-lipoly-battery-monitor",
- "address": "0x0B",
+ "image": "https://cdn-shop.adafruit.com/640x480/4829-06.jpg",
+ "productUrl": "https://www.adafruit.com/product/4829",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-sgp40",
+ "address": "0x59",
"addresses": [
- "0x0B"
+ "0x59"
]
},
{
- "id": "sen66",
- "displayName": "SEN66",
- "name": "sen66",
+ "id": "sht20",
+ "displayName": "SHT20",
+ "name": "sht20",
"description": "",
"category": "i2c",
"dataTypes": [
"ambient-temp",
"ambient-temp-fahrenheit",
- "relative-humidity",
- "pm10-std",
- "pm25-std",
- "pm100-std",
- "voc-index",
- "nox-index",
- "co2"
+ "relative-humidity"
],
- "image": "https://cdn-shop.adafruit.com/640x480/6331-06.jpg",
- "productUrl": "https://www.adafruit.com/product/6331",
- "documentationUrl": "https://sensirion.com/media/documents/FAFC548D/6731FFFA/Sensirion_Datasheet_SEN6x.pdf",
- "address": "0x6B",
+ "image": "components/i2c/sht20/image.jpg",
+ "productUrl": "https://www.digikey.com/en/products/detail/dfrobot/SEN0227/7897986",
+ "documentationUrl": "https://sensirion.com/media/documents/CCDE1377/635000A2/Sensirion_Datasheet_Humidity_Sensor_SHT20.pdf",
+ "address": "0x40",
"addresses": [
- "0x6B"
+ "0x40"
]
},
{
- "id": "sht40",
- "displayName": "SHT40",
- "name": "sht40",
+ "id": "sht30_mesh",
+ "displayName": "Weatherproof SHT30",
+ "name": "sht30_mesh",
"description": "",
"category": "i2c",
"dataTypes": [
@@ -1373,36 +1273,37 @@
"ambient-temp-fahrenheit",
"relative-humidity"
],
- "image": "https://cdn-shop.adafruit.com/640x480/4885-05.jpg",
- "productUrl": "https://www.adafruit.com/product/4885",
- "documentationUrl": "https://learn.adafruit.com/adafruit-sht40-temperature-humidity-sensor",
+ "image": "https://cdn-shop.adafruit.com/640x480/4099-09.jpg",
+ "productUrl": "https://www.adafruit.com/product/4099",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-sht31-d-temperature-and-humidity-sensor-breakout",
"address": "0x44",
"addresses": [
"0x44"
]
},
{
- "id": "tc74a0",
- "displayName": "TC74A0",
- "name": "tc74a0",
+ "id": "sht30_shell",
+ "displayName": "Enclosed SHT30",
+ "name": "sht30_shell",
"description": "",
"category": "i2c",
"dataTypes": [
"ambient-temp",
- "ambient-temp-fahrenheit"
+ "ambient-temp-fahrenheit",
+ "relative-humidity"
],
- "image": "https://cdn-shop.adafruit.com/640x480/4375-03.jpg",
- "productUrl": "https://www.adafruit.com/product/4375",
- "documentationUrl": "https://learn.adafruit.com/adafruit-pct2075-temperature-sensor",
- "address": "0x48",
+ "image": "https://cdn-shop.adafruit.com/640x480/5064-00.jpg",
+ "productUrl": "https://www.adafruit.com/product/5064",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-sht31-d-temperature-and-humidity-sensor-breakout",
+ "address": "0x44",
"addresses": [
- "0x48"
+ "0x44"
]
},
{
- "id": "htu31d",
- "displayName": "HTU31D",
- "name": "htu31d",
+ "id": "sht3x",
+ "displayName": "SHT3X",
+ "name": "sht3x",
"description": "",
"category": "i2c",
"dataTypes": [
@@ -1412,17 +1313,17 @@
],
"image": "https://cdn-shop.adafruit.com/640x480/2857-03.jpg",
"productUrl": "https://www.adafruit.com/product/2857",
- "documentationUrl": "https://www.adafruit.com/product/4832",
- "address": "0x40",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-sht31-d-temperature-and-humidity-sensor-breakout/overview",
+ "address": "0x44",
"addresses": [
- "0x40",
- "0x41"
+ "0x44",
+ "0x45"
]
},
{
- "id": "am2301b",
- "displayName": "AM2301B",
- "name": "am2301b",
+ "id": "sht40",
+ "displayName": "SHT40",
+ "name": "sht40",
"description": "",
"category": "i2c",
"dataTypes": [
@@ -1430,78 +1331,31 @@
"ambient-temp-fahrenheit",
"relative-humidity"
],
- "image": "https://cdn-shop.adafruit.com/640x480/5181-05.jpg",
- "productUrl": "https://www.adafruit.com/product/5181",
- "documentationUrl": "https://cdn-shop.adafruit.com/product-files/5181/5181_AM2301B.pdf",
- "address": "0x38",
+ "image": "https://cdn-shop.adafruit.com/640x480/4885-05.jpg",
+ "productUrl": "https://www.adafruit.com/product/4885",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-sht40-temperature-humidity-sensor",
+ "address": "0x44",
"addresses": [
- "0x38"
+ "0x44"
]
},
{
- "id": "sen54",
- "displayName": "SEN54",
- "name": "sen54",
+ "id": "sht41",
+ "displayName": "SHT41",
+ "name": "sht41",
"description": "",
"category": "i2c",
"dataTypes": [
"ambient-temp",
"ambient-temp-fahrenheit",
- "relative-humidity",
- "pm10-std",
- "pm25-std",
- "pm100-std",
- "voc-index"
+ "relative-humidity"
],
- "image": "components/i2c/sen54/image.png",
- "productUrl": "https://www.digikey.com/en/products/filter/gas-sensors/530?s=N4IgjCBcoLQCxVAYygMwIYBsDOBTANCAPZQDa4ADFRQgLoC%2BjQA",
- "documentationUrl": "https://sensirion.com/media/documents/6791EFA0/62A1F68F/Sensirion_Datasheet_Environmental_Node_SEN5x.pdf",
- "address": "0x69",
+ "image": "https://cdn-shop.adafruit.com/640x480/5776-05.jpg",
+ "productUrl": "https://www.adafruit.com/product/5776",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-sht40-temperature-humidity-sensor",
+ "address": "0x44",
"addresses": [
- "0x69"
- ]
- },
- {
- "id": "lps25hb",
- "displayName": "LPS25HB",
- "name": "lps25hb",
- "description": "",
- "category": "i2c",
- "dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "pressure"
- ],
- "image": "components/i2c/lps25hb/image.jpg",
- "productUrl": "https://www.adafruit.com/product/4530",
- "documentationUrl": "https://learn.adafruit.com/adafruit-lps25-pressure-sensor",
- "address": "0x5D",
- "addresses": [
- "0x5D",
- "0x5C"
- ]
- },
- {
- "id": "ens160",
- "displayName": "ENS160",
- "name": "ens160",
- "description": "",
- "category": "i2c",
- "dataTypes": [
- "tvoc",
- "eco2",
- {
- "displayName": "AQI",
- "sensorType": "raw"
- }
- ],
- "image": "components/i2c/ens160/image.jpg",
- "productUrl": "https://www.adafruit.com/product/5606",
- "documentationUrl": "https://learn.adafruit.com/adafruit-ens160-mox-gas-sensor",
- "address": "0x52",
- "addresses": [
- "0x52",
- "0x53"
+ "0x44"
]
},
{
@@ -1524,576 +1378,820 @@
]
},
{
- "id": "ina237",
- "displayName": "INA237",
- "name": "ina237",
- "description": "85V, 16-bit, good-precision power monitor (up to 10A, 0.3% gain error)",
+ "id": "shtc3",
+ "displayName": "SHTC3",
+ "name": "shtc3",
+ "description": "",
"category": "i2c",
"dataTypes": [
- "voltage",
- "current"
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "relative-humidity"
],
- "image": "https://cdn-shop.adafruit.com/640x480/6340-02.jpg",
- "productUrl": "https://www.adafruit.com/product/6340",
- "documentationUrl": "https://learn.adafruit.com/adafruit-ina237-dc-current-voltage-power-monitor",
- "address": "0x40",
+ "image": "https://cdn-shop.adafruit.com/640x480/4636-05.jpg",
+ "productUrl": "https://www.adafruit.com/product/4636",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-sensirion-shtc3-temperature-humidity-sensor",
+ "address": "0x70",
"addresses": [
- "0x40",
- "0x41",
- "0x44",
- "0x45"
+ "0x70"
]
},
{
- "id": "vl53l1x",
- "displayName": "VL53L1X",
- "name": "vl53l1x",
- "description": "Time of Flight (ToF) distance sensor with about ~30 to 4000mm range",
+ "id": "si7021",
+ "displayName": "Si7021",
+ "name": "si7021",
+ "description": "",
"category": "i2c",
"dataTypes": [
- {
- "displayName": "ToF Sensor",
- "sensorType": "proximity"
- }
+ "ambient-temp",
+ "ambient-temp-fahrenheit",
+ "relative-humidity"
],
- "image": "components/i2c/vl53l1x/image.jpg",
- "productUrl": "https://www.adafruit.com/product/3967",
- "documentationUrl": "https://learn.adafruit.com/adafruit-vl53l1x",
- "address": "0x29",
+ "image": "https://cdn-shop.adafruit.com/640x480/3251-08.jpg",
+ "productUrl": "https://www.adafruit.com/product/3251",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-si7021-temperature-plus-humidity-sensor/overview",
+ "address": "0x40",
"addresses": [
- "0x29"
+ "0x40"
]
},
{
- "id": "dht20",
- "displayName": "DHT20",
- "name": "dht20",
+ "id": "stemma_soil",
+ "displayName": "STEMMA Soil Sensor",
+ "name": "stemma_soil",
"description": "",
"category": "i2c",
"dataTypes": [
"ambient-temp",
"ambient-temp-fahrenheit",
- "relative-humidity"
+ {
+ "displayName": "Capacitive Sensor",
+ "sensorType": "raw"
+ }
],
- "image": "https://cdn-shop.adafruit.com/640x480/5183-04.jpg",
- "productUrl": "https://www.adafruit.com/product/5183",
- "documentationUrl": "https://cdn-shop.adafruit.com/product-files/5183/5193_DHT20.pdf",
- "address": "0x38",
+ "image": "https://cdn-shop.adafruit.com/640x480/4026-01.jpg",
+ "productUrl": "https://www.adafruit.com/product/4026",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-stemma-soil-sensor-i2c-capacitive-moisture-sensor",
+ "address": "0x36",
"addresses": [
- "0x38"
+ "0x36",
+ "0x37",
+ "0x38",
+ "0x39"
]
},
{
- "id": "ms8607",
- "displayName": "MS8607",
- "name": "ms8607",
+ "id": "tc74a0",
+ "displayName": "TC74A0",
+ "name": "tc74a0",
"description": "",
"category": "i2c",
"dataTypes": [
"ambient-temp",
- "ambient-temp-fahrenheit",
- "relative-humidity",
- "pressure"
+ "ambient-temp-fahrenheit"
],
- "image": "https://cdn-shop.adafruit.com/640x480/4716-01.jpg",
- "productUrl": "https://www.adafruit.com/product/4716",
- "documentationUrl": "https://learn.adafruit.com/adafruit-te-ms8607-pht-sensor",
- "address": "0x40",
+ "image": "https://cdn-shop.adafruit.com/640x480/4375-03.jpg",
+ "productUrl": "https://www.adafruit.com/product/4375",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-pct2075-temperature-sensor",
+ "address": "0x48",
"addresses": [
- "0x40",
- "0x76"
+ "0x48"
]
},
{
- "id": "nau7802",
- "displayName": "NAU7802",
- "name": "nau7802",
- "description": "24-bit ADC with 128x gain, used with a load cell for weight/force sensing",
+ "id": "tmp117",
+ "displayName": "TMP117",
+ "name": "tmp117",
+ "description": "",
"category": "i2c",
"dataTypes": [
- {
- "displayName": "Weight Sensor",
- "sensorType": "raw"
- }
+ "ambient-temp",
+ "ambient-temp-fahrenheit"
],
- "image": "components/i2c/nau7802/image.jpg",
- "productUrl": "https://www.adafruit.com/product/4538",
- "documentationUrl": "https://learn.adafruit.com/adafruit-nau7802-24-bit-adc-stemma-qt-qwiic/overview",
- "address": "0x2A",
+ "image": "components/i2c/tmp117/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/4821",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-tmp117-high-accuracy-i2c-temperature-monitor",
+ "address": "0x48",
"addresses": [
- "0x2A"
+ "0x48",
+ "0x49",
+ "0x4A",
+ "0x4B"
]
},
{
- "id": "hts221",
- "displayName": "HTS221",
- "name": "hts221",
+ "id": "tsl2591",
+ "displayName": "TSL2591",
+ "name": "tsl2591",
"description": "",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "relative-humidity"
+ "light"
],
- "image": "https://cdn-shop.adafruit.com/640x480/4535-04.jpg",
- "productUrl": "https://www.adafruit.com/product/4535",
- "documentationUrl": "https://learn.adafruit.com/adafruit-hts221-temperature-humidity-sensor/overview",
- "address": "0x5F",
+ "image": "https://cdn-shop.adafruit.com/640x480/1980-08.jpg",
+ "productUrl": "https://www.adafruit.com/product/1980",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-tsl2591",
+ "address": "0x29",
"addresses": [
- "0x5F"
+ "0x29",
+ "0x39",
+ "0x49"
]
},
{
- "id": "bh1750",
- "displayName": "BH1750",
- "name": "bh1750",
- "description": "",
+ "id": "vcnl4020",
+ "displayName": "VCNL4020",
+ "name": "vcnl4020",
+ "description": "Proximity sensor works from 0 to 200mm (about 7.5 inches) & light sensor with range of 0.26 to 16,000 lux.",
"category": "i2c",
"dataTypes": [
- "light"
+ "light",
+ "proximity"
],
- "image": "https://cdn-shop.adafruit.com/640x480/4681-06.jpg",
- "productUrl": "https://www.adafruit.com/product/4681",
- "documentationUrl": "https://learn.adafruit.com/adafruit-bh1750-ambient-light-sensor",
- "address": "0x23",
+ "image": "components/i2c/vcnl4020/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/5810",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-vcnl4020-proximity-and-light-sensor",
+ "address": "0x13",
"addresses": [
- "0x23",
- "0x5C"
+ "0x13"
]
},
{
- "id": "mpl115a2",
- "displayName": "MPL115A2",
- "name": "mpl115a2",
- "description": "",
+ "id": "vcnl4040",
+ "displayName": "VCNL4040",
+ "name": "vcnl4040",
+ "description": "Proximity sensor works from 0 to 200mm (about 7.5 inches) & light sensor with range of 0.0125 to 6,553.5 lux",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "pressure"
+ "light",
+ "proximity"
],
- "image": "https://cdn-shop.adafruit.com/640x480/992-06.jpg",
- "productUrl": "https://www.adafruit.com/product/992",
- "documentationUrl": "https://cdn-shop.adafruit.com/datasheets/MPL115A2.pdf",
+ "image": "https://cdn-shop.adafruit.com/640x480/4161-06.jpg",
+ "productUrl": "https://www.adafruit.com/product/4161",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-vcnl4040-proximity-sensor",
"address": "0x60",
"addresses": [
"0x60"
]
},
{
- "id": "ltr303",
- "displayName": "LTR-303",
- "name": "ltr303",
- "description": "",
+ "id": "vcnl4200",
+ "displayName": "VCNL4200",
+ "name": "vcnl4200",
+ "description": "Proximity sensor works from 0 to 1.5m (about 59 inches) & light sensor with range of 0.003 to 1570 lux",
"category": "i2c",
"dataTypes": [
- {
- "displayName": "Ambient Light",
- "sensorType": "light"
- },
- {
- "displayName": "Infrared",
- "sensorType": "raw"
- }
+ "light",
+ "proximity"
],
- "image": "components/i2c/ltr303/image.jpg",
- "productUrl": "https://www.adafruit.com/product/5610",
- "documentationUrl": "https://learn.adafruit.com/adafruit-ltr-329-ltr-303",
- "address": "0x29",
+ "image": "https://cdn-shop.adafruit.com/640x480/6064-00.jpg",
+ "productUrl": "https://www.adafruit.com/product/6064",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-vcnl4200-long-distance-ir-proximity-and-light-sensor",
+ "address": "0x51",
"addresses": [
- "0x29"
+ "0x51"
]
},
{
- "id": "sen55",
- "displayName": "SEN55",
- "name": "sen55",
+ "id": "veml7700",
+ "displayName": "VEML7700",
+ "name": "veml7700",
"description": "",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "relative-humidity",
- "pm10-std",
- "pm25-std",
- "pm100-std",
- "voc-index",
- "nox-index"
+ "light"
],
- "image": "components/i2c/sen55/image.png",
- "productUrl": "https://www.digikey.com/en/products/filter/gas-sensors/530?s=N4IgjCBcoLQCxVAYygMwIYBsDOBTANCAPZQDa4ADFRQgLoC%2BjQA",
- "documentationUrl": "https://sensirion.com/media/documents/6791EFA0/62A1F68F/Sensirion_Datasheet_Environmental_Node_SEN5x.pdf",
- "address": "0x69",
+ "image": "https://cdn-shop.adafruit.com/640x480/4162-10.jpg",
+ "productUrl": "https://www.adafruit.com/product/4162",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-veml7700",
+ "address": "0x10",
"addresses": [
- "0x69"
+ "0x10"
]
},
{
- "id": "am2315c",
- "displayName": "AM2315C",
- "name": "am2315c",
- "description": "",
+ "id": "vl53l0x",
+ "displayName": "VL53L0X",
+ "name": "vl53l0x",
+ "description": "Time of Flight (ToF) distance sensor with about ~50 to 1200mm range",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "relative-humidity"
+ {
+ "displayName": "ToF Sensor",
+ "sensorType": "proximity"
+ }
],
- "image": "https://cdn-shop.adafruit.com/640x480/5182-05.jpg",
- "productUrl": "https://www.adafruit.com/product/5182",
- "documentationUrl": "https://cdn-shop.adafruit.com/product-files/5182/5182_AM2315C.pdf",
- "address": "0x38",
+ "image": "components/i2c/vl53l0x/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/3317",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-vl53l0x-micro-lidar-distance-sensor-breakout",
+ "address": "0x29",
"addresses": [
- "0x38"
+ "0x29"
]
},
{
- "id": "bme688",
- "displayName": "BME688",
- "name": "bme688",
- "description": "",
+ "id": "vl53l1x",
+ "displayName": "VL53L1X",
+ "name": "vl53l1x",
+ "description": "Time of Flight (ToF) distance sensor with about ~30 to 4000mm range",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "relative-humidity",
- "pressure",
- "altitude",
- "gas-resistance"
+ {
+ "displayName": "ToF Sensor",
+ "sensorType": "proximity"
+ }
],
- "image": "https://cdn-shop.adafruit.com/640x480/5046-05.jpg",
- "productUrl": "https://www.adafruit.com/product/5046",
- "documentationUrl": "https://learn.adafruit.com/adafruit-bme680-humidity-temperature-barometic-pressure-voc-gas",
- "address": "0x77",
+ "image": "components/i2c/vl53l1x/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/3967",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-vl53l1x",
+ "address": "0x29",
"addresses": [
- "0x77",
- "0x76"
+ "0x29"
]
},
{
- "id": "dps310",
- "displayName": "DPS310",
- "name": "dps310",
- "description": "",
+ "id": "vl53l4cd",
+ "displayName": "VL53L4CD",
+ "name": "vl53l4cd",
+ "description": "Time of Flight (ToF) distance sensor with about ~1 to 1300mm range",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "pressure"
+ {
+ "displayName": "ToF Sensor",
+ "sensorType": "proximity"
+ }
],
- "image": "https://cdn-shop.adafruit.com/640x480/4494-05.jpg",
- "productUrl": "https://www.adafruit.com/product/4494",
- "documentationUrl": "https://learn.adafruit.com/adafruit-dps310-precision-barometric-pressure-sensor",
- "address": "0x77",
+ "image": "components/i2c/vl53l4cd/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/5396",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-vl53l4cd-time-of-flight-distance-sensor",
+ "address": "0x29",
"addresses": [
- "0x77",
- "0x76"
+ "0x29"
]
},
{
- "id": "sht41",
- "displayName": "SHT41",
- "name": "sht41",
- "description": "",
+ "id": "vl53l4cx",
+ "displayName": "VL53L4CX",
+ "name": "vl53l4cx",
+ "description": "Time of Flight (ToF) distance sensor with about ~1 to 6000mm range + 'multi object detection'",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "relative-humidity"
+ {
+ "displayName": "ToF Sensor - Object 1",
+ "sensorType": "proximity"
+ },
+ {
+ "displayName": "ToF Sensor - Object 2",
+ "sensorType": "raw"
+ }
],
- "image": "https://cdn-shop.adafruit.com/640x480/5776-05.jpg",
- "productUrl": "https://www.adafruit.com/product/5776",
- "documentationUrl": "https://learn.adafruit.com/adafruit-sht40-temperature-humidity-sensor",
- "address": "0x44",
+ "image": "https://cdn-shop.adafruit.com/640x480/5425-02.jpg",
+ "productUrl": "https://www.adafruit.com/product/5425",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-vl53l4cx-time-of-flight-distance-sensor",
+ "address": "0x29",
"addresses": [
- "0x44"
+ "0x29"
]
},
{
- "id": "lps35hw",
- "displayName": "LPS35HW",
- "name": "lps35hw",
- "description": "",
+ "id": "vl6180x",
+ "displayName": "VL6180X",
+ "name": "vl6180x",
+ "description": "Time of Flight (ToF) distance sensor with about ~5 to 200mm range",
"category": "i2c",
"dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "pressure"
+ {
+ "displayName": "ToF Sensor",
+ "sensorType": "proximity"
+ },
+ "light"
],
- "image": "https://cdn-shop.adafruit.com/640x480/4258-10.jpg",
- "productUrl": "https://www.adafruit.com/product/4258",
- "documentationUrl": "https://learn.adafruit.com/lps35hw-water-resistant-pressure-sensor",
- "address": "0x5D",
+ "image": "components/i2c/vl6180x/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/3316",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-vl6180x-time-of-flight-micro-lidar-distance-sensor-breakout",
+ "address": "0x29",
"addresses": [
- "0x5D",
- "0x5C"
+ "0x29"
]
+ }
+ ],
+ "i2c_output": [
+ {
+ "id": "7seg",
+ "displayName": "7-Segment LED Matrix",
+ "name": "7seg",
+ "description": "7-Segment LED Matrix with I2C Backpack",
+ "category": "i2c_output",
+ "dataTypes": [],
+ "image": "components/i2c_output/7seg/image.png",
+ "productUrl": "https://www.adafruit.com/product/878",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-led-backpack/0-dot-56-seven-segment-backpack"
},
{
- "id": "mcp3421",
- "displayName": "MCP3421",
- "name": "mcp3421",
- "description": "18-bit ADC. Great for Strain Gauges, Thermocouples and Pressure sensors, between 0 and 2.048 volts",
- "category": "i2c",
- "dataTypes": [
- {
- "displayName": "ADC Reading",
- "sensorType": "raw"
- }
- ],
- "image": "components/i2c/mcp3421/image.jpg",
- "productUrl": "https://www.adafruit.com/product/5870",
- "documentationUrl": "https://learn.adafruit.com/adafruit-mcp3421-18-bit-adc",
- "address": "0x68",
- "addresses": [
- "0x68"
- ]
+ "id": "chardisplay16x2",
+ "displayName": "16x2 Character Display",
+ "name": "chardisplay16x2",
+ "description": "Standard 16x2 HD44780 character display with I2C backpack",
+ "category": "i2c_output",
+ "dataTypes": [],
+ "image": "components/i2c_output/chardisplay16x2/image.png",
+ "productUrl": "https://www.adafruit.com/product/1447",
+ "documentationUrl": "https://learn.adafruit.com/i2c-spi-lcd-backpack"
},
{
- "id": "sht30_shell",
- "displayName": "Enclosed SHT30",
- "name": "sht30_shell",
- "description": "",
- "category": "i2c",
- "dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "relative-humidity"
- ],
- "image": "https://cdn-shop.adafruit.com/640x480/5064-00.jpg",
- "productUrl": "https://www.adafruit.com/product/5064",
- "documentationUrl": "https://learn.adafruit.com/adafruit-sht31-d-temperature-and-humidity-sensor-breakout",
- "address": "0x44",
- "addresses": [
- "0x44"
- ]
+ "id": "chardisplay20x4",
+ "displayName": "20x4 Character Display",
+ "name": "chardisplay20x4",
+ "description": "Standard 20x4 HD44780 character display with I2C backpack",
+ "category": "i2c_output",
+ "dataTypes": [],
+ "image": "components/i2c_output/chardisplay20x4/image.png",
+ "productUrl": "https://www.adafruit.com/product/198",
+ "documentationUrl": "https://learn.adafruit.com/i2c-spi-lcd-backpack"
},
{
- "id": "vcnl4200",
- "displayName": "VCNL4200",
- "name": "vcnl4200",
- "description": "Proximity sensor works from 0 to 1.5m (about 59 inches) & light sensor with range of 0.003 to 1570 lux",
- "category": "i2c",
- "dataTypes": [
- "light",
- "proximity"
- ],
- "image": "https://cdn-shop.adafruit.com/640x480/6064-00.jpg",
- "productUrl": "https://www.adafruit.com/product/6064",
- "documentationUrl": "https://learn.adafruit.com/adafruit-vcnl4200-long-distance-ir-proximity-and-light-sensor",
- "address": "0x51",
- "addresses": [
- "0x51"
- ]
+ "id": "fthrwingoled128x32",
+ "displayName": "128x32 OLED'wing (Small)",
+ "name": "fthrwingoled128x32",
+ "description": "Monochrome 128x32 OLED featherwing display with the default font size (SSD1306)",
+ "category": "i2c_output",
+ "dataTypes": [],
+ "image": "https://cdn-shop.adafruit.com/640x480/2900-10.jpg",
+ "productUrl": "https://www.adafruit.com/product/2900",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-oled-featherwing"
},
{
- "id": "shtc3",
- "displayName": "SHTC3",
- "name": "shtc3",
- "description": "",
- "category": "i2c",
- "dataTypes": [
- "ambient-temp",
- "ambient-temp-fahrenheit",
- "relative-humidity"
- ],
- "image": "https://cdn-shop.adafruit.com/640x480/4636-05.jpg",
- "productUrl": "https://www.adafruit.com/product/4636",
- "documentationUrl": "https://learn.adafruit.com/adafruit-sensirion-shtc3-temperature-humidity-sensor",
- "address": "0x70",
- "addresses": [
- "0x70"
- ]
+ "id": "fthrwingoled128x32lg",
+ "displayName": "128x32 OLED'wing (Large)",
+ "name": "fthrwingoled128x32lg",
+ "description": "Monochrome 128x32 OLED featherwing display with a larger font size (SSD1306)",
+ "category": "i2c_output",
+ "dataTypes": [],
+ "image": "https://cdn-shop.adafruit.com/640x480/2900-10.jpg",
+ "productUrl": "https://www.adafruit.com/product/2900",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-oled-featherwing"
+ },
+ {
+ "id": "fthrwingoled128x64",
+ "displayName": "128x64 OLED'wing (Small)",
+ "name": "fthrwingoled128x64",
+ "description": "Monochrome 128x64 OLED featherwing display with the default font size (SH1107)",
+ "category": "i2c_output",
+ "dataTypes": [],
+ "image": "https://cdn-shop.adafruit.com/product-videos/640x480/4650-08.jpg",
+ "productUrl": "https://www.adafruit.com/product/4650",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-128x64-oled-featherwing"
+ },
+ {
+ "id": "fthrwingoled128x64lg",
+ "displayName": "128x64 OLED'wing (Large)",
+ "name": "fthrwingoled128x64lg",
+ "description": "Monochrome 128x64 OLED featherwing display with the default font size (SH1107)",
+ "category": "i2c_output",
+ "dataTypes": [],
+ "image": "https://cdn-shop.adafruit.com/product-videos/640x480/4650-08.jpg",
+ "productUrl": "https://www.adafruit.com/product/4650",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-128x64-oled-featherwing"
+ },
+ {
+ "id": "oled128x32default",
+ "displayName": "128x32 OLED (Default)",
+ "name": "oled128x32default",
+ "description": "Monochrome 128x32 OLED graphic display with the default font size. (SSD1306)",
+ "category": "i2c_output",
+ "dataTypes": [],
+ "image": "components/i2c_output/oled128x32default/image.png",
+ "productUrl": "https://www.adafruit.com/product/4440",
+ "documentationUrl": "https://learn.adafruit.com/monochrome-oled-breakouts"
+ },
+ {
+ "id": "oled128x32large",
+ "displayName": "128x32 OLED (Large Font)",
+ "name": "oled128x32large",
+ "description": "Monochrome 128x32 I2C OLED Display with a larger font size (SSD1306).",
+ "category": "i2c_output",
+ "dataTypes": [],
+ "image": "components/i2c_output/oled128x32large/image.png",
+ "productUrl": "https://www.adafruit.com/product/4440",
+ "documentationUrl": "https://learn.adafruit.com/monochrome-oled-breakouts"
+ },
+ {
+ "id": "oled128x64default",
+ "displayName": "128x64 OLED (Default)",
+ "name": "oled128x64default",
+ "description": "Monochrome 128x64 I2C OLED Display with the default font size (SSD1306)",
+ "category": "i2c_output",
+ "dataTypes": [],
+ "image": "components/i2c_output/oled128x64default/image.png",
+ "productUrl": "https://www.adafruit.com/product/938",
+ "documentationUrl": "https://learn.adafruit.com/monochrome-oled-breakouts"
+ },
+ {
+ "id": "oled128x64large",
+ "displayName": "128x64 OLED (Large Font)",
+ "name": "oled128x64large",
+ "description": "Monochrome 128x64 I2C OLED Display with a larger font size (SSD1306)",
+ "category": "i2c_output",
+ "dataTypes": [],
+ "image": "components/i2c_output/oled128x64large/image.png",
+ "productUrl": "https://www.adafruit.com/product/938",
+ "documentationUrl": "https://learn.adafruit.com/monochrome-oled-breakouts"
+ },
+ {
+ "id": "oled64x32default",
+ "displayName": "64x32 OLED (Small Font)",
+ "name": "oled64x32default",
+ "description": "Monochrome 64x32 I2C OLED Display with the default font size. (SSD1306)",
+ "category": "i2c_output",
+ "dataTypes": [],
+ "image": "components/i2c_output/oled64x32default/image.jpg",
+ "productUrl": "https://www.digikey.com/en/products/detail/midas-displays/MDOB064032AV-WI/18088023",
+ "documentationUrl": "https://mm.digikey.com/Volume0/opasdata/d220001/medias/docus/4808/MDOB064032AV-WI.pdf"
+ },
+ {
+ "id": "oled64x32large",
+ "displayName": "64x32 OLED (Large Font)",
+ "name": "oled64x32large",
+ "description": "Monochrome 64x32 I2C OLED Display with a larger font size. (SSD1306)",
+ "category": "i2c_output",
+ "dataTypes": [],
+ "image": "components/i2c_output/oled64x32large/image.jpg",
+ "productUrl": "https://www.digikey.com/en/products/detail/midas-displays/MDOB064032AV-WI/18088023",
+ "documentationUrl": "https://mm.digikey.com/Volume0/opasdata/d220001/medias/docus/4808/MDOB064032AV-WI.pdf"
+ },
+ {
+ "id": "quadalphanum",
+ "displayName": "Quad Alphanum. Display",
+ "name": "quadalphanum",
+ "description": "Quad Alphanumeric Display 0.54\" Digits w/ I2C Backpack - STEMMA QT / Qwiic",
+ "category": "i2c_output",
+ "dataTypes": [],
+ "image": "components/i2c_output/quadalphanum/image.png",
+ "productUrl": "https://www.adafruit.com/product/1911",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-led-backpack/0-54-alphanumeric"
}
],
- "servo": [
+ "pin": [
+ {
+ "id": "analog_pin",
+ "displayName": "Analog Pin",
+ "name": "analog_pin",
+ "description": "",
+ "category": "pin",
+ "dataTypes": [],
+ "image": "components/pin/analog_pin/image.png",
+ "componentAPI": "analogio"
+ },
+ {
+ "id": "beam_break_sensor",
+ "displayName": "Beam Sensor",
+ "name": "beam_break_sensor",
+ "description": "Break beam sensor for detecting interruption of an invisible infrared light beam between emitter and receiver",
+ "category": "pin",
+ "dataTypes": [],
+ "image": "https://cdn-shop.adafruit.com/640x480/2168-04.jpg",
+ "productUrl": "https://www.adafruit.com/product/2168",
+ "documentationUrl": "https://learn.adafruit.com/ir-breakbeam-sensors",
+ "componentAPI": "digitalio"
+ },
+ {
+ "id": "etape_liquid_level_sensor",
+ "displayName": "Liquid Level Sensor",
+ "name": "etape_liquid_level_sensor",
+ "description": "",
+ "category": "pin",
+ "dataTypes": [],
+ "image": "https://cdn-shop.adafruit.com/product-videos/640x480/2656-03.jpg",
+ "productUrl": "https://www.adafruit.com/product/2656",
+ "documentationUrl": "https://cdn-shop.adafruit.com/product-files/2656/Standard_eTape_Datasheet.pdf",
+ "componentAPI": "analogio"
+ },
+ {
+ "id": "flat_vibration_switch",
+ "displayName": "Flat Vibration Switch",
+ "name": "flat_vibration_switch",
+ "description": "",
+ "category": "pin",
+ "dataTypes": [],
+ "image": "https://cdn-shop.adafruit.com/640x480/4081-00.jpg",
+ "productUrl": "https://www.adafruit.com/product/4081",
+ "componentAPI": "digitalio"
+ },
+ {
+ "id": "hall_effect_sensor",
+ "displayName": "Hall Effect Sensor",
+ "name": "hall_effect_sensor",
+ "description": "",
+ "category": "pin",
+ "dataTypes": [],
+ "image": "https://cdn-shop.adafruit.com/640x480/158-00.jpg",
+ "productUrl": "https://www.adafruit.com/product/158",
+ "documentationUrl": "https://www.melexis.com/en/product/us5881/unipolar-hall-effect-switch-low-sensitivity",
+ "componentAPI": "digitalio"
+ },
+ {
+ "id": "light_sensor",
+ "displayName": "Light Sensor",
+ "name": "light_sensor",
+ "description": "",
+ "category": "pin",
+ "dataTypes": [],
+ "image": "https://cdn-shop.adafruit.com/640x480/161-00.jpg",
+ "productUrl": "https://www.adafruit.com/product/161",
+ "documentationUrl": "https://learn.adafruit.com/photocells",
+ "componentAPI": "analogio"
+ },
+ {
+ "id": "pir_sensor",
+ "displayName": "PIR Sensor",
+ "name": "pir_sensor",
+ "description": "Passive Infra-Red (PIR) motion sensor for detecting presence and movement through infrared thermal changes",
+ "category": "pin",
+ "dataTypes": [],
+ "image": "https://cdn-shop.adafruit.com/640x480/189-00.jpg",
+ "productUrl": "https://www.adafruit.com/product/189",
+ "documentationUrl": "https://learn.adafruit.com/pir-passive-infrared-proximity-motion-sensor/overview",
+ "componentAPI": "digitalio"
+ },
{
- "id": "servo",
- "displayName": "Generic Servo",
- "name": "servo",
+ "id": "potentiometer",
+ "displayName": "Potentiometer",
+ "name": "potentiometer",
"description": "",
- "category": "servo",
+ "category": "pin",
"dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/169-06.jpg",
- "productUrl": "https://www.adafruit.com/product/169",
- "documentationUrl": "https://learn.adafruit.com/using-servos-with-circuitpython"
- }
- ],
- "i2c_output": [
+ "image": "https://cdn-shop.adafruit.com/640x480/356-03.jpg",
+ "productUrl": "https://www.adafruit.com/product/356",
+ "documentationUrl": "https://learn.adafruit.com/make-it-change-potentiometers",
+ "componentAPI": "analogio"
+ },
{
- "id": "oled128x64large",
- "displayName": "128x64 OLED (Large Font)",
- "name": "oled128x64large",
- "description": "Monochrome 128x64 I2C OLED Display with a larger font size (SSD1306)",
- "category": "i2c_output",
+ "id": "push_button",
+ "displayName": "Push Button",
+ "name": "push_button",
+ "description": "",
+ "category": "pin",
"dataTypes": [],
- "image": "components/i2c_output/oled128x64large/image.png",
- "productUrl": "https://www.adafruit.com/product/938",
- "documentationUrl": "https://learn.adafruit.com/monochrome-oled-breakouts"
+ "image": "https://cdn-shop.adafruit.com/640x480/367-01.jpg",
+ "productUrl": "https://www.adafruit.com/product/367",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-arduino-lesson-6-digital-inputs?view=all",
+ "componentAPI": "digitalio"
},
{
- "id": "fthrwingoled128x32lg",
- "displayName": "128x32 OLED'wing (Large)",
- "name": "fthrwingoled128x32lg",
- "description": "Monochrome 128x32 OLED featherwing display with a larger font size (SSD1306)",
- "category": "i2c_output",
+ "id": "reed_switch",
+ "displayName": "Reed Switch",
+ "name": "reed_switch",
+ "description": "A Magnetic Contact Switch (Door/Window Sensor), with Normally Open (NO) or Closed (NC) contacts",
+ "category": "pin",
"dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/2900-10.jpg",
- "productUrl": "https://www.adafruit.com/product/2900",
- "documentationUrl": "https://learn.adafruit.com/adafruit-oled-featherwing"
+ "image": "https://cdn-shop.adafruit.com/640x480/375-01.jpg",
+ "productUrl": "https://www.adafruit.com/product/375",
+ "documentationUrl": "https://learn.adafruit.com/no-code-iot-door-alarm-with-wippersnapper",
+ "componentAPI": "digitalio"
},
{
- "id": "oled64x32large",
- "displayName": "64x32 OLED (Large Font)",
- "name": "oled64x32large",
- "description": "Monochrome 64x32 I2C OLED Display with a larger font size. (SSD1306)",
- "category": "i2c_output",
+ "id": "simple_soil_sensor",
+ "displayName": "Simple Soil Sensor",
+ "name": "simple_soil_sensor",
+ "description": "Resistive style soil moisture sensor, measuring the conductivity between the two prongs (Analog signal)",
+ "category": "pin",
"dataTypes": [],
- "image": "components/i2c_output/oled64x32large/image.jpg",
- "productUrl": "https://www.digikey.com/en/products/detail/midas-displays/MDOB064032AV-WI/18088023",
- "documentationUrl": "https://mm.digikey.com/Volume0/opasdata/d220001/medias/docus/4808/MDOB064032AV-WI.pdf"
+ "image": "https://cdn-shop.adafruit.com/640x480/6362-00.jpg",
+ "productUrl": "https://www.adafruit.com/product/6362",
+ "componentAPI": "analogio"
},
{
- "id": "7seg",
- "displayName": "7-Segment LED Matrix",
- "name": "7seg",
- "description": "7-Segment LED Matrix with I2C Backpack",
- "category": "i2c_output",
+ "id": "tctr1000",
+ "displayName": "TCTR1000 Stemma Breakout",
+ "name": "tctr1000",
+ "description": "Optical reflective sensor with digital output, 1-30mm range, and adjustable LED emitter brightness",
+ "category": "pin",
"dataTypes": [],
- "image": "components/i2c_output/7seg/image.png",
- "productUrl": "https://www.adafruit.com/product/878",
- "documentationUrl": "https://learn.adafruit.com/adafruit-led-backpack/0-dot-56-seven-segment-backpack"
+ "image": "components/pin/tctr1000/image.jpg",
+ "productUrl": "https://www.adafruit.com/product/5913",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-stemma-reflective-photo-interrupt-sensor",
+ "componentAPI": "digitalio"
},
{
- "id": "oled64x32default",
- "displayName": "64x32 OLED (Small Font)",
- "name": "oled64x32default",
- "description": "Monochrome 64x32 I2C OLED Display with the default font size. (SSD1306)",
- "category": "i2c_output",
+ "id": "toggle_switch",
+ "displayName": "Toggle Switch",
+ "name": "toggle_switch",
+ "description": "",
+ "category": "pin",
"dataTypes": [],
- "image": "components/i2c_output/oled64x32default/image.jpg",
- "productUrl": "https://www.digikey.com/en/products/detail/midas-displays/MDOB064032AV-WI/18088023",
- "documentationUrl": "https://mm.digikey.com/Volume0/opasdata/d220001/medias/docus/4808/MDOB064032AV-WI.pdf"
+ "image": "https://cdn-shop.adafruit.com/640x480/3221-01.jpg",
+ "productUrl": "https://www.adafruit.com/product/3221",
+ "documentationUrl": "https://learn.adafruit.com/make-it-switch",
+ "componentAPI": "digitalio"
},
{
- "id": "fthrwingoled128x32",
- "displayName": "128x32 OLED'wing (Small)",
- "name": "fthrwingoled128x32",
- "description": "Monochrome 128x32 OLED featherwing display with the default font size (SSD1306)",
- "category": "i2c_output",
+ "id": "water_sensor",
+ "displayName": "Water Sensor",
+ "name": "water_sensor",
+ "description": "",
+ "category": "pin",
"dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/640x480/2900-10.jpg",
- "productUrl": "https://www.adafruit.com/product/2900",
- "documentationUrl": "https://learn.adafruit.com/adafruit-oled-featherwing"
+ "image": "https://cdn-shop.adafruit.com/product-videos/640x480/4965-03.jpg",
+ "productUrl": "https://www.adafruit.com/product/4965",
+ "documentationUrl": "https://cdn-shop.adafruit.com/product-files/4965/Datasheet.pdf",
+ "componentAPI": "digitalio"
+ }
+ ],
+ "pixel": [
+ {
+ "id": "dotstar",
+ "displayName": "DotStar",
+ "name": "dotstar",
+ "description": "",
+ "category": "pixel",
+ "dataTypes": [],
+ "image": "https://cdn-shop.adafruit.com/640x480/2343-03.jpg",
+ "productUrl": "https://www.adafruit.com/product/2343",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-dotstar-leds"
},
{
- "id": "chardisplay20x4",
- "displayName": "20x4 Character Display",
- "name": "chardisplay20x4",
- "description": "Standard 20x4 HD44780 character display with I2C backpack",
- "category": "i2c_output",
+ "id": "neopixel",
+ "displayName": "NeoPixel",
+ "name": "neopixel",
+ "description": "",
+ "category": "pixel",
"dataTypes": [],
- "image": "components/i2c_output/chardisplay20x4/image.png",
- "productUrl": "https://www.adafruit.com/product/198",
- "documentationUrl": "https://learn.adafruit.com/i2c-spi-lcd-backpack"
+ "image": "components/pixel/neopixel/image.jpg",
+ "productUrl": "http://www.adafruit.com/category/168",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-neopixel-uberguide"
},
{
- "id": "quadalphanum",
- "displayName": "Quad Alphanum. Display",
- "name": "quadalphanum",
- "description": "Quad Alphanumeric Display 0.54\" Digits w/ I2C Backpack - STEMMA QT / Qwiic",
- "category": "i2c_output",
+ "id": "neorgb",
+ "displayName": "NeoRGB Stemma",
+ "name": "neorgb",
+ "description": "Speak NeoPixel to your RGB strips! Treat PWM-able common-anode LEDs as a NeoPixel [16V/3A/channel]",
+ "category": "pixel",
"dataTypes": [],
- "image": "components/i2c_output/quadalphanum/image.png",
- "productUrl": "https://www.adafruit.com/product/1911",
- "documentationUrl": "https://learn.adafruit.com/adafruit-led-backpack/0-54-alphanumeric"
+ "image": "https://cdn-shop.adafruit.com/640x480/5888-10.jpg",
+ "productUrl": "https://www.adafruit.com/product/5888",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-neorgb-stemma"
+ }
+ ],
+ "pwm": [
+ {
+ "id": "dimmable_led",
+ "displayName": "Dimmable LED",
+ "name": "dimmable_led",
+ "description": "",
+ "category": "pwm",
+ "dataTypes": [],
+ "image": "https://cdn-shop.adafruit.com/640x480/301-00.jpg",
+ "productUrl": "https://www.adafruit.com/product/301",
+ "documentationUrl": "https://learn.adafruit.com/all-about-leds"
},
{
- "id": "fthrwingoled128x64",
- "displayName": "128x64 OLED'wing (Small)",
- "name": "fthrwingoled128x64",
- "description": "Monochrome 128x64 OLED featherwing display with the default font size (SH1107)",
- "category": "i2c_output",
+ "id": "piezo_buzzer",
+ "displayName": "Piezo Buzzer",
+ "name": "piezo_buzzer",
+ "description": "",
+ "category": "pwm",
"dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/product-videos/640x480/4650-08.jpg",
- "productUrl": "https://www.adafruit.com/product/4650",
- "documentationUrl": "https://learn.adafruit.com/adafruit-128x64-oled-featherwing"
+ "image": "https://cdn-shop.adafruit.com/640x480/160-01.jpg",
+ "productUrl": "https://www.adafruit.com/product/160",
+ "documentationUrl": "https://learn.adafruit.com/using-piezo-buzzers-with-wippersnapper"
},
{
- "id": "oled128x32default",
- "displayName": "128x32 OLED (Default)",
- "name": "oled128x32default",
- "description": "Monochrome 128x32 OLED graphic display with the default font size. (SSD1306)",
- "category": "i2c_output",
+ "id": "pwm_output",
+ "displayName": "PWM Output",
+ "name": "pwm_output",
+ "description": "A Pulse-Width-Modulated component with fixed frequency. Duty cycle can be set from 0-255",
+ "category": "pwm",
"dataTypes": [],
- "image": "components/i2c_output/oled128x32default/image.png",
- "productUrl": "https://www.adafruit.com/product/4440",
- "documentationUrl": "https://learn.adafruit.com/monochrome-oled-breakouts"
+ "image": "components/pwm/pwm_output/image.png",
+ "productUrl": "https://www.adafruit.com/product/301",
+ "documentationUrl": "https://learn.adafruit.com/improve-brushed-dc-motor-performance/pwm-and-brushed-dc-motors"
},
{
- "id": "chardisplay16x2",
- "displayName": "16x2 Character Display",
- "name": "chardisplay16x2",
- "description": "Standard 16x2 HD44780 character display with I2C backpack",
- "category": "i2c_output",
+ "id": "rgb_led",
+ "displayName": "RGB LED",
+ "name": "rgb_led",
+ "description": "",
+ "category": "pwm",
"dataTypes": [],
- "image": "components/i2c_output/chardisplay16x2/image.png",
- "productUrl": "https://www.adafruit.com/product/1447",
- "documentationUrl": "https://learn.adafruit.com/i2c-spi-lcd-backpack"
+ "image": "https://cdn-shop.adafruit.com/640x480/302-00.jpg",
+ "productUrl": "https://www.adafruit.com/product/302",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-arduino-lesson-3-rgb-leds/overview"
+ }
+ ],
+ "servo": [
+ {
+ "id": "servo",
+ "displayName": "Generic Servo",
+ "name": "servo",
+ "description": "",
+ "category": "servo",
+ "dataTypes": [],
+ "image": "https://cdn-shop.adafruit.com/640x480/169-06.jpg",
+ "productUrl": "https://www.adafruit.com/product/169",
+ "documentationUrl": "https://learn.adafruit.com/using-servos-with-circuitpython"
+ }
+ ],
+ "uart": [
+ {
+ "id": "pm1006",
+ "displayName": "VINDRIKTNING (PM1006)",
+ "name": "pm1006",
+ "description": "",
+ "category": "uart",
+ "dataTypes": [
+ "pm25-env"
+ ],
+ "image": "components/uart/pm1006/image.png",
+ "productUrl": "https://www.ikea.com/us/en/p/vindriktning-air-quality-sensor-60515911/",
+ "documentationUrl": "https://learn.adafruit.com/ikea-vindriktning-hack-with-qt-py-esp32-s3-and-adafruit-io",
+ "deviceType": "pm25aqi",
+ "deviceId": "pm1006",
+ "pm25aqi": {
+ "period": 30000,
+ "is_pm1006": true
+ }
},
{
- "id": "oled128x64default",
- "displayName": "128x64 OLED (Default)",
- "name": "oled128x64default",
- "description": "Monochrome 128x64 I2C OLED Display with the default font size (SSD1306)",
- "category": "i2c_output",
- "dataTypes": [],
- "image": "components/i2c_output/oled128x64default/image.png",
- "productUrl": "https://www.adafruit.com/product/938",
- "documentationUrl": "https://learn.adafruit.com/monochrome-oled-breakouts"
+ "id": "pms5003",
+ "displayName": "pms5003",
+ "name": "pms5003",
+ "description": "",
+ "category": "uart",
+ "dataTypes": [
+ "pm10-std",
+ "pm25-std",
+ "pm100-std",
+ "pm10-env",
+ "pm25-env",
+ "pm100-env"
+ ],
+ "image": "components/uart/pms5003/image.png",
+ "productUrl": "https://www.adafruit.com/product/3686",
+ "documentationUrl": "https://learn.adafruit.com/pm25-air-quality-sensor",
+ "deviceType": "pm25aqi",
+ "deviceId": "pms5003",
+ "pm25aqi": {
+ "period": 30000
+ }
},
{
- "id": "fthrwingoled128x64lg",
- "displayName": "128x64 OLED'wing (Large)",
- "name": "fthrwingoled128x64lg",
- "description": "Monochrome 128x64 OLED featherwing display with the default font size (SH1107)",
- "category": "i2c_output",
+ "id": "ultimate_gps",
+ "displayName": "Adafruit Ultimate GPS Breakout",
+ "name": "ultimate_gps",
+ "description": "High-performance GPS module with 10Hz updates and external antenna support",
+ "category": "uart",
"dataTypes": [],
- "image": "https://cdn-shop.adafruit.com/product-videos/640x480/4650-08.jpg",
- "productUrl": "https://www.adafruit.com/product/4650",
- "documentationUrl": "https://learn.adafruit.com/adafruit-128x64-oled-featherwing"
+ "image": "components/uart/ultimate_gps/image.png",
+ "productUrl": "https://www.adafruit.com/product/5440",
+ "documentationUrl": "https://learn.adafruit.com/adafruit-ultimate-gps/",
+ "deviceType": "gps",
+ "deviceId": "adaultimategps",
+ "gps": {
+ "period": 1000,
+ "commands_pmtks": [
+ "PMTK314,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "PMTK220,1000"
+ ]
+ }
},
{
- "id": "oled128x32large",
- "displayName": "128x32 OLED (Large Font)",
- "name": "oled128x32large",
- "description": "Monochrome 128x32 I2C OLED Display with a larger font size (SSD1306).",
- "category": "i2c_output",
- "dataTypes": [],
- "image": "components/i2c_output/oled128x32large/image.png",
- "productUrl": "https://www.adafruit.com/product/4440",
- "documentationUrl": "https://learn.adafruit.com/monochrome-oled-breakouts"
+ "id": "us100",
+ "displayName": "US-100 Distance Sensor",
+ "name": "us100",
+ "description": "",
+ "category": "uart",
+ "dataTypes": [
+ "raw",
+ "ambient-temp"
+ ],
+ "image": "components/uart/us100/image.png",
+ "productUrl": "https://www.adafruit.com/product/4019",
+ "documentationUrl": "https://learn.adafruit.com/ultrasonic-sonar-distance-sensors",
+ "deviceType": "generic_input",
+ "deviceId": "us100",
+ "generic_input": {
+ "period": 30
+ }
}
],
- "uart": [],
- "pixel_metadata": {
- "title": "Pixel Component Definition",
- "description": "Addressable Pixel WipperSnapper component for use in Adafruit IO",
+ "ds18x20_metadata": {
+ "title": "DS18X20 Component Definition",
+ "description": "A DS18X20 WipperSnapper component for use in Adafruit IO",
"required": [
"displayName",
"vendor",
- "pixelsType",
- "defaultPixelsOrder"
+ "subcomponents",
+ "sensorResolution"
],
"properties": {
"displayName": {
"description": "The human-friendly name of this component.",
"type": "string",
"minLength": 3,
- "maxLength": 24
+ "maxLength": 30
},
"published": {
- "description": "If True, this component is supported by the current firmware version and will be displayed to all users. Otherwise, it is hidden behind a developer toggle so that contributors can still work on it against the production site.",
+ "description": "If true, this component is supported by the current firmware version and will be displayed to all users. If false, it is hidden behind a developer toggle so that contributors can still work on it against the production site.",
"type": "boolean"
},
"description": {
@@ -2118,31 +2216,29 @@
"minLength": 3,
"maxLength": 24
},
- "pixelsType": {
- "description": "The type of addressable pixel: NEOPIXEL or DOTSTAR. Corresponds to `PixelsType` in pixels.proto",
- "type": "string",
- "pattern": "^(NEOPIXEL|DOTSTAR)$"
- },
- "defaultPixelsOrder": {
- "description": "The pixel strand's color ordering. Corresponds to `PixelsOrder` in pixels.proto.",
- "type": "string",
- "pattern": "^(GRB|GRBW|RGB|RGBW|BRG)$"
+ "subcomponents": {
+ "description": "The ambient temperature sensor (and its fahrenheit counterpart) standard on DS18X20 Components",
+ "type": "array",
+ "items": {
+ "type": "string",
+ "pattern": "^ambient-temp(-fahrenheit)?$"
+ }
},
- "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
+ "sensorResolution": {
+ "description": "The DS18X20's desired sensor read resolution, in bits.",
+ "type": "number",
+ "minimum": 9,
+ "maximum": 12
}
}
},
- "pwm_metadata": {
- "title": "PWM Component Definition",
- "description": "A PWM WipperSnapper component for use in Adafruit IO",
+ "i2c_metadata": {
+ "title": "I2C Component Definition",
+ "description": "An I2C-based WipperSnapper component for use in Adafruit IO",
"required": [
"displayName",
"vendor",
- "pwmSetting"
+ "i2cAddresses"
],
"properties": {
"displayName": {
@@ -2177,72 +2273,151 @@
"minLength": 3,
"maxLength": 24
},
- "pwmSetting": {
- "description": "The component's pulse-width modulation setting. Either fixed frequency (variable duty cycle) or variable frequency (fixed duty cycle)",
- "type": "string",
- "pattern": "^(fixed|variable)Frequency$"
+ "i2cAddresses": {
+ "description": "List of I2C addresses (as hex string, like \"0x38\") this component can appear on.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
},
- "visualization": {
- "description": "Specifies which visual component to use in the WipperSnapper interface and how to configure it",
+ "subcomponents": {
+ "description": "List of sensors on this I2C component.",
+ "type": "array",
+ "items": {
+ "$ref": "#/$defs/subcomponent"
+ }
+ },
+ "isGps": {
+ "description": "If true, this component is a GPS module.",
+ "type": "boolean"
+ },
+ "gps": {
"type": "object",
- "discriminator": {
- "propertyName": "type"
- },
+ "description": "Configuration for GPS devices.",
"required": [
- "type"
+ "period"
],
- "oneOf": [
- {
- "properties": {
- "type": {
- "const": "switch-pwm"
- },
- "offLabel": {
- "type": "string"
- },
- "offIcon": {
- "type": "string"
- },
- "onLabel": {
- "type": "string"
- },
- "onIcon": {
- "type": "string"
- }
- },
- "additionalProperties": false
- },
- {
- "properties": {
- "type": {
- "const": "button"
- },
- "pressedLabel": {
- "type": "string"
- },
- "unpressedLabel": {
- "type": "string"
- }
- },
- "additionalProperties": false
+ "properties": {
+ "commands_pmtks": {
+ "type": "array",
+ "description": "List of PMTK commands (MediaTek) in string format",
+ "items": {
+ "type": "string"
+ }
},
- {
- "properties": {
- "type": {
- "const": "slider-pwm"
- }
- },
- "additionalProperties": false
+ "commands_ubxes": {
+ "type": "array",
+ "description": "List of UBX commands (U-Blox) in bytes format",
+ "items": {
+ "type": "string",
+ "contentEncoding": "base64"
+ }
},
- {
- "properties": {
- "type": {
- "const": "color-picker"
- }
- },
- "additionalProperties": false
+ "period": {
+ "type": "integer",
+ "description": "Desired period to poll the GPS module, in milliseconds",
+ "minimum": 0,
+ "maximum": 65535
}
- ]
+ },
+ "additionalProperties": false
+ }
+ }
+ },
+ "i2c_output_metadata": {
+ "title": "I2C Output Component Definition",
+ "description": "I2C Output component for use in Adafruit IO",
+ "required": [
+ "displayName",
+ "vendor",
+ "outputType",
+ "i2cAddresses"
+ ],
+ "properties": {
+ "displayName": {
+ "description": "The human-friendly name of this component.",
+ "type": "string",
+ "minLength": 3,
+ "maxLength": 24
+ },
+ "published": {
+ "description": "If True, this component is supported by the current firmware version and will be displayed to all users. Otherwise, it is hidden behind a developer toggle so that contributors can still work on it against the production site.",
+ "type": "boolean"
+ },
+ "description": {
+ "description": "A brief description describing this component's capabilities.",
+ "type": "string",
+ "minLength": 3,
+ "maxLength": 255
+ },
+ "productURL": {
+ "description": "Link to this component's homepage.",
+ "type": "string",
+ "format": "uri"
+ },
+ "documentationURL": {
+ "description": "Link to this component's documentation.",
+ "type": "string",
+ "format": "uri"
+ },
+ "vendor": {
+ "description": "Name of the company that makes this component.",
+ "type": "string",
+ "minLength": 3,
+ "maxLength": 24
+ },
+ "i2cAddresses": {
+ "description": "List of supported I2C addresses for this component.",
+ "type": "array",
+ "items": {
+ "type": "string",
+ "pattern": "^0x[0-9A-Fa-f]{2}$"
+ }
+ },
+ "outputType": {
+ "description": "The type of i2c output component. Corresponds to `I2cOutputAdd` in i2c.proto",
+ "type": "string",
+ "pattern": "^(CHARLCD|7SEG|ALPHANUM|OLED)$"
+ },
+ "charLcdColumns": {
+ "description": "The number of columns for a character LCD. Corresponds to `CharLCDConfig` in i2c.proto.",
+ "type": "number",
+ "minimum": 0,
+ "maximum": 128
+ },
+ "charLcdRows": {
+ "description": "The number of rows for a character LCD. Corresponds to `CharLCDConfig` in i2c.proto.",
+ "type": "number",
+ "minimum": 0,
+ "maximum": 16
+ },
+ "ledBackpackAlignment": {
+ "description": "The alignment for the LED backpack. Corresponds to `LedBackpackConfig` in i2c.proto. Defaults to RIGHT.",
+ "type": "string",
+ "pattern": "^(LEFT|RIGHT)$"
+ },
+ "ledBackpackBrightness": {
+ "description": "The brightness of a LED backpack. Corresponds to `CharLCDConfig` in i2c.proto.",
+ "type": "number",
+ "minimum": 0,
+ "maximum": 15
+ },
+ "oledWidth": {
+ "description": "The width of an OLED display, in pixels.",
+ "type": "number",
+ "minimum": 0,
+ "maximum": 128
+ },
+ "oledHeight": {
+ "description": "The height of an OLED display, in pixels.",
+ "type": "number",
+ "minimum": 0,
+ "maximum": 64
+ },
+ "textSize": {
+ "description": "The font magnification size for a OLED display. Corresponds to `SSD1306TextSize` in i2c.proto.",
+ "type": "string",
+ "pattern": "^(SZ_DEFAULT|SZ_LARGE)$"
}
}
},
@@ -2388,24 +2563,24 @@
}
}
},
- "ds18x20_metadata": {
- "title": "DS18X20 Component Definition",
- "description": "A DS18X20 WipperSnapper component for use in Adafruit IO",
+ "pixel_metadata": {
+ "title": "Pixel Component Definition",
+ "description": "Addressable Pixel WipperSnapper component for use in Adafruit IO",
"required": [
"displayName",
"vendor",
- "subcomponents",
- "sensorResolution"
+ "pixelsType",
+ "defaultPixelsOrder"
],
"properties": {
"displayName": {
"description": "The human-friendly name of this component.",
"type": "string",
"minLength": 3,
- "maxLength": 30
+ "maxLength": 24
},
"published": {
- "description": "If true, this component is supported by the current firmware version and will be displayed to all users. If false, it is hidden behind a developer toggle so that contributors can still work on it against the production site.",
+ "description": "If True, this component is supported by the current firmware version and will be displayed to all users. Otherwise, it is hidden behind a developer toggle so that contributors can still work on it against the production site.",
"type": "boolean"
},
"description": {
@@ -2430,30 +2605,31 @@
"minLength": 3,
"maxLength": 24
},
- "subcomponents": {
- "description": "The ambient temperature sensor (and its fahrenheit counterpart) standard on DS18X20 Components",
- "type": "array",
- "items": {
- "type": "string",
- "pattern": "^ambient-temp(-fahrenheit)?$"
- }
+ "pixelsType": {
+ "description": "The type of addressable pixel: NEOPIXEL or DOTSTAR. Corresponds to `PixelsType` in pixels.proto",
+ "type": "string",
+ "pattern": "^(NEOPIXEL|DOTSTAR)$"
},
- "sensorResolution": {
- "description": "The DS18X20's desired sensor read resolution, in bits.",
- "type": "number",
- "minimum": 9,
- "maximum": 12
+ "defaultPixelsOrder": {
+ "description": "The pixel strand's color ordering. Corresponds to `PixelsOrder` in pixels.proto.",
+ "type": "string",
+ "pattern": "^(GRB|GRBW|RGB|RGBW|BRG)$"
+ },
+ "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
}
}
},
- "i2c_metadata": {
- "title": "I2C Component Definition",
- "description": "An I2C-based WipperSnapper component for use in Adafruit IO",
+ "pwm_metadata": {
+ "title": "PWM Component Definition",
+ "description": "A PWM WipperSnapper component for use in Adafruit IO",
"required": [
"displayName",
"vendor",
- "i2cAddresses",
- "subcomponents"
+ "pwmSetting"
],
"properties": {
"displayName": {
@@ -2488,19 +2664,72 @@
"minLength": 3,
"maxLength": 24
},
- "i2cAddresses": {
- "description": "List of I2C addresses (as hex string, like \"0x38\") this component can appear on.",
- "type": "array",
- "items": {
- "type": "string"
- }
+ "pwmSetting": {
+ "description": "The component's pulse-width modulation setting. Either fixed frequency (variable duty cycle) or variable frequency (fixed duty cycle)",
+ "type": "string",
+ "pattern": "^(fixed|variable)Frequency$"
},
- "subcomponents": {
- "description": "List of sensors on this I2C component.",
- "type": "array",
- "items": {
- "$ref": "#/$defs/subcomponent"
- }
+ "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": {
+ "type": {
+ "const": "switch-pwm"
+ },
+ "offLabel": {
+ "type": "string"
+ },
+ "offIcon": {
+ "type": "string"
+ },
+ "onLabel": {
+ "type": "string"
+ },
+ "onIcon": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ {
+ "properties": {
+ "type": {
+ "const": "button"
+ },
+ "pressedLabel": {
+ "type": "string"
+ },
+ "unpressedLabel": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ {
+ "properties": {
+ "type": {
+ "const": "slider-pwm"
+ }
+ },
+ "additionalProperties": false
+ },
+ {
+ "properties": {
+ "type": {
+ "const": "color-picker"
+ }
+ },
+ "additionalProperties": false
+ }
+ ]
}
}
},
@@ -2577,21 +2806,22 @@
}
}
},
- "i2c_output_metadata": {
- "title": "I2C Output Component Definition",
- "description": "I2C Output component for use in Adafruit IO",
+ "uart_metadata": {
+ "title": "UART Component Definition",
+ "description": "A UART WipperSnapper component for use in Adafruit IO",
"required": [
"displayName",
"vendor",
- "outputType",
- "i2cAddresses"
+ "deviceId",
+ "baudRate",
+ "deviceType"
],
"properties": {
"displayName": {
"description": "The human-friendly name of this component.",
"type": "string",
"minLength": 3,
- "maxLength": 24
+ "maxLength": 30
},
"published": {
"description": "If True, this component is supported by the current firmware version and will be displayed to all users. Otherwise, it is hidden behind a developer toggle so that contributors can still work on it against the production site.",
@@ -2619,119 +2849,190 @@
"minLength": 3,
"maxLength": 24
},
- "i2cAddresses": {
- "description": "List of supported I2C addresses for this component.",
- "type": "array",
- "items": {
- "type": "string",
- "pattern": "^0x[0-9A-Fa-f]{2}$"
- }
+ "pinTx": {
+ "description": "The desired UART TX pin",
+ "type": "string",
+ "minLength": 1,
+ "maxLength": 16
},
- "outputType": {
- "description": "The type of i2c output component. Corresponds to `I2cOutputAdd` in i2c.proto",
+ "pinRx": {
+ "description": "The desired UART RX pin",
"type": "string",
- "pattern": "^(CHARLCD|7SEG|ALPHANUM|OLED)$"
+ "minLength": 1,
+ "maxLength": 16
},
- "charLcdColumns": {
- "description": "The number of columns for a character LCD. Corresponds to `CharLCDConfig` in i2c.proto.",
+ "portNumber": {
+ "description": "The desired UART bus port number",
"type": "number",
"minimum": 0,
- "maximum": 128
+ "maximum": 3
},
- "charLcdRows": {
- "description": "The number of rows for a character LCD. Corresponds to `CharLCDConfig` in i2c.proto.",
+ "baudRate": {
+ "description": "The desired UART bus baud rate, in bps.",
"type": "number",
- "minimum": 0,
- "maximum": 16
+ "minimum": 1200,
+ "maximum": 256000
},
- "ledBackpackAlignment": {
- "description": "The alignment for the LED backpack. Corresponds to `LedBackpackConfig` in i2c.proto. Defaults to RIGHT.",
+ "format": {
+ "description": "The data, parity, and stop bits configuration for the serial port. Defaults to 8N1 (8 data bits, no parity, 1 stop bit).",
"type": "string",
- "pattern": "^(LEFT|RIGHT)$"
- },
- "ledBackpackBrightness": {
- "description": "The brightness of a LED backpack. Corresponds to `CharLCDConfig` in i2c.proto.",
- "type": "number",
- "minimum": 0,
- "maximum": 15
- },
- "oledWidth": {
- "description": "The width of an OLED display, in pixels.",
- "type": "number",
- "minimum": 0,
- "maximum": 128
+ "enum": [
+ "unspecified",
+ "8n1",
+ "5n1",
+ "6n1",
+ "7n1",
+ "5n2",
+ "6n2",
+ "7n2",
+ "8n2",
+ "5e1",
+ "6e1",
+ "7e1",
+ "8e1",
+ "5e2",
+ "6e2",
+ "7e2",
+ "8e2",
+ "5o1",
+ "6o1",
+ "7o1",
+ "8o1",
+ "5o2",
+ "6o2",
+ "7o2",
+ "8o2"
+ ],
+ "default": "8n1"
},
- "oledHeight": {
- "description": "The height of an OLED display, in pixels.",
+ "timeout": {
+ "description": "Maximum milliseconds to wait for serial data. Defaults to 1000 ms.",
"type": "number",
"minimum": 0,
- "maximum": 64
+ "maximum": 65535
},
- "textSize": {
- "description": "The font magnification size for a OLED display. Corresponds to `SSD1306TextSize` in i2c.proto.",
- "type": "string",
- "pattern": "^(SZ_DEFAULT|SZ_LARGE)$"
- }
- }
- },
- "uart_metadata": {
- "title": "UART Component Definition",
- "description": "A UART WipperSnapper component for use in Adafruit IO",
- "required": [
- "displayName",
- "vendor",
- "subcomponents",
- "baudRate"
- ],
- "properties": {
- "displayName": {
- "description": "The human-friendly name of this component.",
- "type": "string",
- "minLength": 3,
- "maxLength": 30
+ "use_sw_serial": {
+ "description": "If True, uses software serial instead of hardware serial. Defaults to False.",
+ "type": "boolean"
},
- "published": {
- "description": "If True, this component is supported by the current firmware version and will be displayed to all users. Otherwise, it is hidden behind a developer toggle so that contributors can still work on it against the production site.",
+ "invert_sw_serial": {
+ "description": "If True, inverts the UART signal on RX and TX pins. Defaults to False.",
"type": "boolean"
},
- "description": {
- "description": "A brief description describing this component's capabilities.",
+ "deviceId": {
+ "description": "The unique identifier string for the UART device.",
"type": "string",
"minLength": 3,
- "maxLength": 255
- },
- "productURL": {
- "description": "Link to this component's homepage.",
- "type": "string",
- "format": "uri"
- },
- "documentationURL": {
- "description": "Link to this component's documentation.",
- "type": "string",
- "format": "uri"
+ "maxLength": 30
},
- "vendor": {
- "description": "Name of the company that makes this component.",
+ "deviceType": {
+ "description": "The data, parity, and stop bits configuration for the serial port. Defaults to 8N1 (8 data bits, no parity, 1 stop bit).",
"type": "string",
- "minLength": 3,
- "maxLength": 24
+ "enum": [
+ "unspecified",
+ "generic_input",
+ "generic_output",
+ "gps",
+ "pm25aqi",
+ "tmc22xx"
+ ],
+ "default": "unspecified"
},
- "subcomponents": {
- "description": "List of sensor subcomponents comprising the primary UART component.",
- "type": "array",
- "items": {
- "$ref": "#/$defs/subcomponent"
- }
+ "pm25aqi": {
+ "type": "object",
+ "description": "Configuration for PM2.5 AQI sensors",
+ "required": [
+ "period",
+ "sensor_types"
+ ],
+ "properties": {
+ "is_pm1006": {
+ "type": "boolean",
+ "description": "True if the device is a PM1006 AQ sensor",
+ "default": false
+ },
+ "period": {
+ "type": "integer",
+ "description": "The period to poll the device, in milliseconds",
+ "minimum": 0,
+ "maximum": 65535
+ },
+ "sensor_types": {
+ "type": "array",
+ "description": "SI Types for each sensor on the I2c device",
+ "items": {
+ "$ref": "#/$defs/subcomponent"
+ }
+ }
+ },
+ "additionalProperties": false
},
- "baudRate": {
- "description": "The desired UART bus baud rate, in bps.",
- "type": "number",
- "minimum": 1200,
- "maximum": 256000
+ "generic_input": {
+ "type": "object",
+ "description": "Configuration for generic UART input devices.",
+ "required": [
+ "period",
+ "sensor_types"
+ ],
+ "properties": {
+ "line_ending": {
+ "description": "The line ending format for incoming data.",
+ "type": "string",
+ "enum": [
+ "unspecified",
+ "lf",
+ "crlf",
+ "timeout_100ms",
+ "timeout_1000ms"
+ ],
+ "default": "unspecified"
+ },
+ "period": {
+ "type": "integer",
+ "description": "The period to poll the device, in milliseconds",
+ "minimum": 0,
+ "maximum": 65535
+ },
+ "sensor_types": {
+ "type": "array",
+ "description": "SI Types for each sensor on the I2c device",
+ "items": {
+ "$ref": "#/$defs/subcomponent"
+ }
+ }
+ },
+ "additionalProperties": false
},
- "inverted": {
- "description": "When True, this component will invert TX/RX signals on the UART bus.",
- "type": "boolean"
+ "gps": {
+ "type": "object",
+ "description": "Configuration for GPS devices.",
+ "required": [
+ "period"
+ ],
+ "properties": {
+ "commands_pmtks": {
+ "type": "array",
+ "description": "List of PMTK commands (MediaTek) in string format",
+ "items": {
+ "type": "string"
+ }
+ },
+ "commands_ubxes": {
+ "type": "array",
+ "description": "List of UBX commands (U-Blox) in bytes format",
+ "items": {
+ "type": "string",
+ "contentEncoding": "base64"
+ }
+ },
+ "period": {
+ "type": "integer",
+ "description": "Desired period to poll the GPS module, in milliseconds",
+ "minimum": 0,
+ "maximum": 65535
+ }
+ },
+ "additionalProperties": false
}
}
}