Skip to content

Commit 20ce57b

Browse files
tyethclaude
andcommitted
feat(display): add oldNames field for v1 migration
Add oldNames array to all display definitions that have v1 equivalents, mapping old folder names from display/ (EPD/TFT) and i2c_output/ (OLED/LED backpack/char LCD) to the new nested structure. OLED entries map to both text size variants (e.g. oled128x64default + oled128x64large) since v2 handles text_size as a configurable property. Schema updated with optional oldNames string array field. 5 new-only components correctly have no oldNames: - char_lcd/pcf8574/16x2 (proto-only, no v1 product) - epd/ssd1680/250x122/mono/pre2024 and rev2024 (new panel variants) - oled/sh1106 and oled/ssd1305 (proto-only, no v1 i2c_output entry) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 5cd10e6 commit 20ce57b

21 files changed

Lines changed: 531 additions & 403 deletions

File tree

Lines changed: 32 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,32 @@
1-
{
2-
"displayName": "16x2 Char LCD (MCP23008)",
3-
"vendor": "Adafruit",
4-
"productURL": "https://www.adafruit.com/product/1447",
5-
"documentationURL": "https://learn.adafruit.com/i2c-spi-lcd-backpack",
6-
"published": true,
7-
"description": "Standard 16x2 HD44780 LCD character display with I2C backpack (MCP23008).",
8-
"displayType": {
9-
"type": "char_lcd",
10-
"driver": "MCP23008",
11-
"panel": "16x2",
12-
"i2c": {
13-
"addresses": ["0x20", "0x21", "0x22", "0x23", "0x24", "0x25", "0x26", "0x27"]
14-
},
15-
"charLcdConfig": {
16-
"rows": 2,
17-
"columns": 16
18-
}
19-
}
20-
}
1+
{
2+
"displayName": "16x2 Char LCD (MCP23008)",
3+
"vendor": "Adafruit",
4+
"productURL": "https://www.adafruit.com/product/1447",
5+
"documentationURL": "https://learn.adafruit.com/i2c-spi-lcd-backpack",
6+
"published": true,
7+
"description": "Standard 16x2 HD44780 LCD character display with I2C backpack (MCP23008).",
8+
"oldNames": [
9+
"chardisplay16x2"
10+
],
11+
"displayType": {
12+
"type": "char_lcd",
13+
"driver": "MCP23008",
14+
"panel": "16x2",
15+
"i2c": {
16+
"addresses": [
17+
"0x20",
18+
"0x21",
19+
"0x22",
20+
"0x23",
21+
"0x24",
22+
"0x25",
23+
"0x26",
24+
"0x27"
25+
]
26+
},
27+
"charLcdConfig": {
28+
"rows": 2,
29+
"columns": 16
30+
}
31+
}
32+
}
Lines changed: 32 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,32 @@
1-
{
2-
"displayName": "20x4 Char LCD (MCP23008)",
3-
"vendor": "Adafruit",
4-
"productURL": "https://www.adafruit.com/product/198",
5-
"documentationURL": "https://learn.adafruit.com/i2c-spi-lcd-backpack",
6-
"published": true,
7-
"description": "Standard 20x4 HD44780 LCD character display with I2C backpack (MCP23008).",
8-
"displayType": {
9-
"type": "char_lcd",
10-
"driver": "MCP23008",
11-
"panel": "20x4",
12-
"i2c": {
13-
"addresses": ["0x20", "0x21", "0x22", "0x23", "0x24", "0x25", "0x26", "0x27"]
14-
},
15-
"charLcdConfig": {
16-
"rows": 4,
17-
"columns": 20
18-
}
19-
}
20-
}
1+
{
2+
"displayName": "20x4 Char LCD (MCP23008)",
3+
"vendor": "Adafruit",
4+
"productURL": "https://www.adafruit.com/product/198",
5+
"documentationURL": "https://learn.adafruit.com/i2c-spi-lcd-backpack",
6+
"published": true,
7+
"description": "Standard 20x4 HD44780 LCD character display with I2C backpack (MCP23008).",
8+
"oldNames": [
9+
"chardisplay20x4"
10+
],
11+
"displayType": {
12+
"type": "char_lcd",
13+
"driver": "MCP23008",
14+
"panel": "20x4",
15+
"i2c": {
16+
"addresses": [
17+
"0x20",
18+
"0x21",
19+
"0x22",
20+
"0x23",
21+
"0x24",
22+
"0x25",
23+
"0x26",
24+
"0x27"
25+
]
26+
},
27+
"charLcdConfig": {
28+
"rows": 4,
29+
"columns": 20
30+
}
31+
}
32+
}
Lines changed: 25 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,25 @@
1-
{
2-
"displayName": "2.9\" Grayscale eInk",
3-
"vendor": "Adafruit",
4-
"productURL": "https://www.adafruit.com/product/4777",
5-
"documentationURL": "https://learn.adafruit.com/adafruit-2-9-eink-display-breakouts-and-featherwings",
6-
"published": true,
7-
"description": "Adafruit 2.9\" Grayscale eInk / ePaper Display FeatherWing - ILI0373 - Mono / 4 Grayscale",
8-
"displayType": {
9-
"type": "epd",
10-
"driver": "ILI0373",
11-
"panel": "2.9-296x128-grayscale4",
12-
"spiEpd": {
13-
"bus": 0
14-
},
15-
"epdConfig": {
16-
"mode": "grayscale4",
17-
"width": 296,
18-
"height": 128,
19-
"textSize": 3
20-
}
21-
}
22-
}
1+
{
2+
"displayName": "2.9\" Grayscale eInk",
3+
"vendor": "Adafruit",
4+
"productURL": "https://www.adafruit.com/product/4777",
5+
"documentationURL": "https://learn.adafruit.com/adafruit-2-9-eink-display-breakouts-and-featherwings",
6+
"published": true,
7+
"description": "Adafruit 2.9\" Grayscale eInk / ePaper Display FeatherWing - ILI0373 - Mono / 4 Grayscale",
8+
"oldNames": [
9+
"eink-29-grayscale-ili0373"
10+
],
11+
"displayType": {
12+
"type": "epd",
13+
"driver": "ILI0373",
14+
"panel": "2.9-296x128-grayscale4",
15+
"spiEpd": {
16+
"bus": 0
17+
},
18+
"epdConfig": {
19+
"mode": "grayscale4",
20+
"width": 296,
21+
"height": 128,
22+
"textSize": 3
23+
}
24+
}
25+
}
Lines changed: 25 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,25 @@
1-
{
2-
"displayName": "MagTag 2.9\" E-Ink",
3-
"vendor": "Adafruit",
4-
"productURL": "https://www.adafruit.com/product/4800",
5-
"documentationURL": "https://learn.adafruit.com/adafruit-magtag",
6-
"published": true,
7-
"description": "Adafruit MagTag's built-in 2.9\" E-Ink display. Driver auto-detected by board variant.",
8-
"displayType": {
9-
"type": "epd",
10-
"driver": "MAGTAG",
11-
"panel": "2.9-296x128-magtag",
12-
"spiEpd": {
13-
"bus": 0
14-
},
15-
"epdConfig": {
16-
"mode": "mono",
17-
"width": 296,
18-
"height": 128,
19-
"textSize": 3
20-
}
21-
}
22-
}
1+
{
2+
"displayName": "MagTag 2.9\" E-Ink",
3+
"vendor": "Adafruit",
4+
"productURL": "https://www.adafruit.com/product/4800",
5+
"documentationURL": "https://learn.adafruit.com/adafruit-magtag",
6+
"published": true,
7+
"description": "Adafruit MagTag's built-in 2.9\" E-Ink display. Driver auto-detected by board variant.",
8+
"oldNames": [
9+
"eink-magtag"
10+
],
11+
"displayType": {
12+
"type": "epd",
13+
"driver": "MAGTAG",
14+
"panel": "2.9-296x128-magtag",
15+
"spiEpd": {
16+
"bus": 0
17+
},
18+
"epdConfig": {
19+
"mode": "mono",
20+
"width": 296,
21+
"height": 128,
22+
"textSize": 3
23+
}
24+
}
25+
}
Lines changed: 25 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,25 @@
1-
{
2-
"displayName": "2.9\" Grayscale eInk",
3-
"vendor": "Adafruit",
4-
"productURL": "https://www.adafruit.com/product/4777",
5-
"documentationURL": "https://learn.adafruit.com/adafruit-2-9-eink-display-breakouts-and-featherwings",
6-
"published": true,
7-
"description": "Adafruit 2.9\" Grayscale eInk / ePaper Display FeatherWing - SSD1680 - Mono / 4 Grayscale",
8-
"displayType": {
9-
"type": "epd",
10-
"driver": "SSD1680",
11-
"panel": "2.9-296x128-mono",
12-
"spiEpd": {
13-
"bus": 0
14-
},
15-
"epdConfig": {
16-
"mode": "mono",
17-
"width": 296,
18-
"height": 128,
19-
"textSize": 3
20-
}
21-
}
22-
}
1+
{
2+
"displayName": "2.9\" Grayscale eInk",
3+
"vendor": "Adafruit",
4+
"productURL": "https://www.adafruit.com/product/4777",
5+
"documentationURL": "https://learn.adafruit.com/adafruit-2-9-eink-display-breakouts-and-featherwings",
6+
"published": true,
7+
"description": "Adafruit 2.9\" Grayscale eInk / ePaper Display FeatherWing - SSD1680 - Mono / 4 Grayscale",
8+
"oldNames": [
9+
"eink-29-grayscale-ssd1680"
10+
],
11+
"displayType": {
12+
"type": "epd",
13+
"driver": "SSD1680",
14+
"panel": "2.9-296x128-mono",
15+
"spiEpd": {
16+
"bus": 0
17+
},
18+
"epdConfig": {
19+
"mode": "mono",
20+
"width": 296,
21+
"height": 128,
22+
"textSize": 3
23+
}
24+
}
25+
}
Lines changed: 25 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,25 @@
1-
{
2-
"displayName": "4.2\" Grayscale eInk",
3-
"vendor": "Adafruit",
4-
"productURL": "https://www.adafruit.com/product/6381",
5-
"documentationURL": "https://learn.adafruit.com/adafruit-eink-display-breakouts",
6-
"published": true,
7-
"description": "4.2\" 300x400 Monochrome or 4-Gray eInk / ePaper - Bare Display with SSD1683 driver.",
8-
"displayType": {
9-
"type": "epd",
10-
"driver": "SSD1683",
11-
"panel": "4.2-400x300-grayscale4",
12-
"spiEpd": {
13-
"bus": 0
14-
},
15-
"epdConfig": {
16-
"mode": "grayscale4",
17-
"width": 400,
18-
"height": 300,
19-
"textSize": 3
20-
}
21-
}
22-
}
1+
{
2+
"displayName": "4.2\" Grayscale eInk",
3+
"vendor": "Adafruit",
4+
"productURL": "https://www.adafruit.com/product/6381",
5+
"documentationURL": "https://learn.adafruit.com/adafruit-eink-display-breakouts",
6+
"published": true,
7+
"description": "4.2\" 300x400 Monochrome or 4-Gray eInk / ePaper - Bare Display with SSD1683 driver.",
8+
"oldNames": [
9+
"eink-42-grayscale-300x400"
10+
],
11+
"displayType": {
12+
"type": "epd",
13+
"driver": "SSD1683",
14+
"panel": "4.2-400x300-grayscale4",
15+
"spiEpd": {
16+
"bus": 0
17+
},
18+
"epdConfig": {
19+
"mode": "grayscale4",
20+
"width": 400,
21+
"height": 300,
22+
"textSize": 3
23+
}
24+
}
25+
}

components/display/epd/uc8151d/296x128/mono/definition.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
"documentationURL": "https://learn.adafruit.com/adafruit-eink-display-breakouts",
66
"published": true,
77
"description": "2.9\" Flexible 296x128 Monochrome eInk / ePaper Display with UC8151D Chipset.",
8+
"oldNames": ["eink-29-flexible-monochrome-296x128"],
89
"displayType": {
910
"type": "epd",
1011
"driver": "UC8151D",
Lines changed: 25 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,25 @@
1-
{
2-
"displayName": "5.83\" Mono eInk",
3-
"vendor": "Adafruit",
4-
"productURL": "https://www.adafruit.com/product/6397",
5-
"documentationURL": "https://learn.adafruit.com/adafruit-eink-display-breakouts",
6-
"published": true,
7-
"description": "5.83\" 648x480 Monochrome Black / White eInk / ePaper - Bare Display with UC8179 Chipset.",
8-
"displayType": {
9-
"type": "epd",
10-
"driver": "UC8179",
11-
"panel": "5.83-648x480-mono",
12-
"spiEpd": {
13-
"bus": 0
14-
},
15-
"epdConfig": {
16-
"mode": "mono",
17-
"width": 648,
18-
"height": 480,
19-
"textSize": 3
20-
}
21-
}
22-
}
1+
{
2+
"displayName": "5.83\" Mono eInk",
3+
"vendor": "Adafruit",
4+
"productURL": "https://www.adafruit.com/product/6397",
5+
"documentationURL": "https://learn.adafruit.com/adafruit-eink-display-breakouts",
6+
"published": true,
7+
"description": "5.83\" 648x480 Monochrome Black / White eInk / ePaper - Bare Display with UC8179 Chipset.",
8+
"oldNames": [
9+
"eink-583-monochrome-648x480"
10+
],
11+
"displayType": {
12+
"type": "epd",
13+
"driver": "UC8179",
14+
"panel": "5.83-648x480-mono",
15+
"spiEpd": {
16+
"bus": 0
17+
},
18+
"epdConfig": {
19+
"mode": "mono",
20+
"width": 648,
21+
"height": 480,
22+
"textSize": 3
23+
}
24+
}
25+
}

0 commit comments

Comments
 (0)