Skip to content

Commit 96b186e

Browse files
committed
Add all first-party modules
1 parent ca04aae commit 96b186e

File tree

1 file changed

+151
-28
lines changed

1 file changed

+151
-28
lines changed

src/modules.rs

Lines changed: 151 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,10 @@ pub struct Module {
88
pub remove_pins: &'static [&'static str],
99
}
1010

11+
// TODO: the module data was taken from https://www.espressif.com/en/products/modules and
12+
// will need to be double checked by actual data sheet information. Also, different modules
13+
// may not expose otherwise available pins, we should consider listing them as well.
14+
1115
pub const ESP32_MODULES: &[Module] = &[
1216
Module {
1317
name: "esp32-wroom-32e",
@@ -17,86 +21,187 @@ pub const ESP32_MODULES: &[Module] = &[
1721
},
1822
Module {
1923
name: "esp32-wrover-e",
20-
display_name: "ESP32-WROVER-E/IE (8MB PSRAM)",
24+
display_name: "ESP32-WROVER-E/IE (4/8/16MB flash, 8MB PSRAM)",
2125
chip: Chip::Esp32,
2226
remove_pins: &["spi_flash", "spi_psram", "esp32_pico_v3"],
2327
},
2428
Module {
2529
name: "esp32-mini-1",
26-
display_name: "ESP32-MINI-1 (4MB flash)",
30+
display_name: "ESP32-MINI-1/1U (4MB flash)",
31+
chip: Chip::Esp32,
32+
remove_pins: &["spi_flash", "esp32_pico_v3"],
33+
},
34+
Module {
35+
name: "esp32-pico-mini-01",
36+
display_name: "ESP32-PICO-MINI-02/02U (8MB flash, 2MB PSRAM)",
37+
chip: Chip::Esp32,
38+
remove_pins: &["spi_flash", "spi_psram"],
39+
},
40+
Module {
41+
name: "esp32-pico-v3-zero",
42+
display_name: "ESP32-PICO-V3-ZERO (4MB flash)",
43+
chip: Chip::Esp32,
44+
remove_pins: &["spi_flash"],
45+
},
46+
Module {
47+
name: "esp32-wroom-32d",
48+
display_name: "ESP32-WROOM-32D/32U (4/8/16MB flash)",
49+
chip: Chip::Esp32,
50+
remove_pins: &["spi_flash", "esp32_pico_v3"],
51+
},
52+
// ESP32-SOLO-1 omitted, weird single-core ESP32 variant
53+
Module {
54+
name: "esp32-wroom-32",
55+
display_name: "ESP32-WROOM-32 (4MB flash)",
56+
chip: Chip::Esp32,
57+
remove_pins: &["spi_flash", "esp32_pico_v3"],
58+
},
59+
Module {
60+
name: "esp32-wrover-b",
61+
display_name: "ESP32-WROVER-B/IB (4/8/16MB flash, 8MB PSRAM)",
62+
chip: Chip::Esp32,
63+
remove_pins: &["spi_flash", "spi_psram", "esp32_pico_v3"],
64+
},
65+
Module {
66+
name: "esp32-wroom-da",
67+
display_name: "ESP32-WROOM-DA (4/8/16MB flash)",
2768
chip: Chip::Esp32,
2869
remove_pins: &["spi_flash", "esp32_pico_v3"],
2970
},
71+
Module {
72+
name: "esp32-du1906",
73+
display_name: "ESP32-DU1906/DU1906-U (8MB flash, 8MB PSRAM)",
74+
chip: Chip::Esp32,
75+
remove_pins: &["spi_flash", "spi_psram", "esp32_pico_v3"],
76+
},
3077
];
3178

32-
pub const ESP32C2_MODULES: &[Module] = &[Module {
33-
name: "esp32c2-mini-1",
34-
display_name: "ESP32-C2-MINI-1 (2/4MB flash)",
35-
chip: Chip::Esp32c2,
36-
remove_pins: &["spi_flash"],
37-
}];
79+
pub const ESP32C2_MODULES: &[Module] = &[
80+
Module {
81+
name: "esp32c2-mini-1",
82+
display_name: "ESP8684-MINI-1/1U (1/2/4MB flash)",
83+
chip: Chip::Esp32c2,
84+
remove_pins: &["spi_flash"],
85+
},
86+
// TODO: these have different pins exposed, maybe separate them?
87+
Module {
88+
name: "esp32c2-wroom",
89+
display_name: "ESP8684-WROOM-01C/02C/02UC/03/04C/05/06C/07 (2/4MB flash)",
90+
chip: Chip::Esp32c2,
91+
remove_pins: &["spi_flash"],
92+
},
93+
];
3894

3995
pub const ESP32C3_MODULES: &[Module] = &[
96+
Module {
97+
name: "esp32c3-mini-1",
98+
display_name: "ESP32-C3-MINI-1/1U (4MB embedded flash)",
99+
chip: Chip::Esp32c3,
100+
remove_pins: &["spi_flash"],
101+
},
40102
Module {
41103
name: "esp32c3-wroom-02",
42104
display_name: "ESP32-C3-WROOM-02/02U (4MB flash)",
43105
chip: Chip::Esp32c3,
44106
remove_pins: &["spi_flash"],
45107
},
108+
// TODO: these have different pins exposed, maybe separate them?
46109
Module {
47-
name: "esp32c3-mini-1",
48-
display_name: "ESP32-C3-MINI-1 (4MB flash)",
110+
name: "esp32c3-wroom-03",
111+
display_name: "ESP8685-WROOM-03/04/05/06/07 (2/4MB flash)",
49112
chip: Chip::Esp32c3,
50113
remove_pins: &["spi_flash"],
51114
},
52115
];
53116

54117
pub const ESP32C6_MODULES: &[Module] = &[
55118
Module {
56-
name: "esp32c6-wroom-1",
57-
display_name: "ESP32-C6-WROOM-1/1U (4MB flash)",
119+
name: "esp32c6-mini-1",
120+
display_name: "ESP32-C6-MINI-1/1U (4/8MB flash)",
58121
chip: Chip::Esp32c6,
59122
remove_pins: &["spi_flash"],
60123
},
61124
Module {
62-
name: "esp32c6-mini-1",
63-
display_name: "ESP32-C6-MINI-1 (4/8MB flash)",
125+
name: "esp32c6-wroom-1",
126+
display_name: "ESP32-C6-WROOM-1/1U (4/8/16MB flash)",
64127
chip: Chip::Esp32c6,
65128
remove_pins: &["spi_flash"],
66129
},
67130
];
68131

69132
pub const ESP32H2_MODULES: &[Module] = &[
70133
Module {
71-
name: "esp32h2-wroom-02",
72-
display_name: "ESP32-H2-WROOM-02 (4MB flash)",
134+
name: "esp32h2-mini-1",
135+
display_name: "ESP32-H2-MINI-1/1U (1/2/4MB flash)",
73136
chip: Chip::Esp32h2,
74137
remove_pins: &["spi_flash"],
75138
},
76139
Module {
77-
name: "esp32h2-mini-1",
78-
display_name: "ESP32-H2-MINI-1 (4MB flash)",
140+
name: "esp32h2-wroom-02c",
141+
display_name: "ESP32-H2-WROOM-02C (2/4MB flash)",
79142
chip: Chip::Esp32h2,
80143
remove_pins: &["spi_flash"],
81144
},
82145
];
83146

84147
pub const ESP32S2_MODULES: &[Module] = &[
85148
Module {
86-
name: "esp32s2-wroom",
87-
display_name: "ESP32-S2-WROOM (4MB flash)",
149+
name: "esp32s2-mini-2",
150+
display_name: "ESP32-S2-MINI-2/2U (4MB embedded flash)",
88151
chip: Chip::Esp32s2,
89152
remove_pins: &["spi_flash"],
90153
},
91154
Module {
92-
name: "esp32s2-wrover",
93-
display_name: "ESP32-S2-WROVER (2MB PSRAM)",
155+
name: "esp32s2-mini-2-psram",
156+
display_name: "ESP32-S2-MINI-2/2U (4MB embedded flash, 2MB PSRAM)",
157+
chip: Chip::Esp32s2,
158+
remove_pins: &["spi_flash", "spi_psram"],
159+
},
160+
Module {
161+
name: "esp32s2-solo-2",
162+
display_name: "ESP32-S2-SOLO-2/2U (4MB flash)",
163+
chip: Chip::Esp32s2,
164+
remove_pins: &["spi_flash"],
165+
},
166+
Module {
167+
name: "esp32s2-solo-2-psram",
168+
display_name: "ESP32-S2-SOLO-2/2U (4MB embedded flash, 2MB PSRAM)",
94169
chip: Chip::Esp32s2,
95170
remove_pins: &["spi_flash", "spi_psram"],
96171
},
97172
Module {
98173
name: "esp32s2-mini-1",
99-
display_name: "ESP32-S2-MINI-1 (4MB flash)",
174+
display_name: "ESP32-S2-MINI-1/1U (4MB embedded flash)",
175+
chip: Chip::Esp32s2,
176+
remove_pins: &["spi_flash"],
177+
},
178+
Module {
179+
name: "esp32s2-mini-1-psram",
180+
display_name: "ESP32-S2-MINI-1/1U (4MB embedded flash, 2MB PSRAM)",
181+
chip: Chip::Esp32s2,
182+
remove_pins: &["spi_flash", "spi_psram"],
183+
},
184+
Module {
185+
name: "esp32s2-solo",
186+
display_name: "ESP32-S2-SOLO/SOLO-U (4/8/16MB flash)",
187+
chip: Chip::Esp32s2,
188+
remove_pins: &["spi_flash"],
189+
},
190+
Module {
191+
name: "esp32s2-solo-psram",
192+
display_name: "ESP32-S2-SOLO/SOLO-U (4/8/16MB embedded flash, 2MB PSRAM)",
193+
chip: Chip::Esp32s2,
194+
remove_pins: &["spi_flash", "spi_psram"],
195+
},
196+
Module {
197+
name: "esp32s2-wrover",
198+
display_name: "ESP32-S2-WROVER/WROVER-I (4/8/16MB flash, 2MB PSRAM)",
199+
chip: Chip::Esp32s2,
200+
remove_pins: &["spi_flash", "spi_psram"],
201+
},
202+
Module {
203+
name: "esp32s2-wroom",
204+
display_name: "ESP32-S2-WROOM/WROOM-I (4/8/16MB flash)",
100205
chip: Chip::Esp32s2,
101206
remove_pins: &["spi_flash"],
102207
},
@@ -105,21 +210,39 @@ pub const ESP32S2_MODULES: &[Module] = &[
105210
pub const ESP32S3_MODULES: &[Module] = &[
106211
Module {
107212
name: "esp32s3-wroom-1",
108-
display_name: "ESP32-S3-WROOM-1/1U (quad flash/PSRAM)",
213+
display_name: "ESP32-S3-WROOM-1/1U (4/8/16MB flash)",
109214
chip: Chip::Esp32s3,
110215
remove_pins: &["spi_flash"],
111216
},
217+
Module {
218+
name: "esp32s3-wroom-1-psram",
219+
display_name: "ESP32-S3-WROOM-1/1U (4/8/16MB flash, 2MB PSRAM)",
220+
chip: Chip::Esp32s3,
221+
remove_pins: &["spi_flash", "spi_psram"],
222+
},
223+
Module {
224+
name: "esp32s3-wroom-1-octal-psram",
225+
display_name: "ESP32-S3-WROOM-1/1U (4/8/16MB flash, 8/16MB PSRAM)",
226+
chip: Chip::Esp32s3,
227+
remove_pins: &["spi_flash", "octal_psram"],
228+
},
112229
Module {
113230
name: "esp32s3-wroom-2",
114-
display_name: "ESP32-S3-WROOM-2 (octal flash/PSRAM)",
231+
display_name: "ESP32-S3-WROOM-2 (16/32MB flash, 8/16MB PSRAM)",
115232
chip: Chip::Esp32s3,
116-
remove_pins: &[],
233+
remove_pins: &["octal_flash", "octal_psram"],
117234
},
118235
Module {
119236
name: "esp32s3-mini-1",
120-
display_name: "ESP32-S3-MINI-1/1U (quad flash/PSRAM)",
237+
display_name: "ESP32-S3-MINI-1/1U (4/8MB embedded flash)",
121238
chip: Chip::Esp32s3,
122-
remove_pins: &[],
239+
remove_pins: &["spi_flash"],
240+
},
241+
Module {
242+
name: "esp32s3-mini-1-psram",
243+
display_name: "ESP32-S3-MINI-1/1U (4/8MB embedded flash, 2MB PSRAM)",
244+
chip: Chip::Esp32s3,
245+
remove_pins: &["spi_flash", "spi_psram"],
123246
},
124247
];
125248

0 commit comments

Comments
 (0)