src/eric7/MicroPython/Devices/__init__.py

branch
eric7
changeset 11031
9f75293fcd57
parent 11010
798440273c11
child 11033
6b197c3389f7
equal deleted inserted replaced
11030:46172eee98b6 11031:9f75293fcd57
20 20
21 from .DeviceBase import BaseDevice 21 from .DeviceBase import BaseDevice
22 22
23 SupportedBoards = { 23 SupportedBoards = {
24 "bbc_microbit": { 24 "bbc_microbit": {
25 "ids": [ 25 "ids": (
26 (0x0D28, 0x0204), # micro:bit 26 (0x0D28, 0x0204), # micro:bit
27 ], 27 ),
28 "description": "BBC micro:bit", 28 "description": "BBC micro:bit",
29 "icon": "microbitDevice", 29 "icon": "microbitDevice",
30 "port_description": "BBC micro:bit CMSIS-DAP", 30 "port_description": "BBC micro:bit CMSIS-DAP",
31 "module": ".MicrobitDevices", 31 "module": ".MicrobitDevices",
32 }, 32 },
33 "calliope": { 33 "calliope": {
34 "ids": [ 34 "ids": (
35 (0x0D28, 0x0204), # Calliope mini 35 (0x0D28, 0x0204), # Calliope mini
36 ], 36 ),
37 "description": "Calliope mini", 37 "description": "Calliope mini",
38 "icon": "calliope_mini", 38 "icon": "calliope_mini",
39 "port_description": "DAPLink CMSIS-DAP", 39 "port_description": "DAPLink CMSIS-DAP",
40 "module": ".MicrobitDevices", 40 "module": ".MicrobitDevices",
41 }, 41 },
42 "circuitpython": { 42 "circuitpython": {
43 "ids": [ 43 "ids": (
44 (0x0483, 0x572A), # STMicroelectronics NUCLEO-F446RE - CPy 44 (0x0483, 0x572A), # STMicroelectronics NUCLEO-F446RE - CPy
45 (0x04D8, 0xE799), # Cytron Maker Zero SAMD21 45 (0x04D8, 0xE799), # Cytron Maker Zero SAMD21
46 (0x04D8, 0xEA2A), # BHDynamics DynaLoRa_USB 46 (0x04D8, 0xEA2A), # BHDynamics DynaLoRa_USB
47 (0x04D8, 0xEAD1), # BH Dynamics DynOSSAT-EDU-EPS-v1.0 47 (0x04D8, 0xEAD1), # BH Dynamics DynOSSAT-EDU-EPS-v1.0
48 (0x04D8, 0xEAD2), # BH Dynamics DynOSSAT-EDU-OBC-v1.0 48 (0x04D8, 0xEAD2), # BH Dynamics DynOSSAT-EDU-OBC-v1.0
131 (0x1B4F, 0x8D22), # SparkFun SAMD21 Mini Breakout 131 (0x1B4F, 0x8D22), # SparkFun SAMD21 Mini Breakout
132 (0x1B4F, 0x8D23), # SparkFun SAMD21 Dev Breakout 132 (0x1B4F, 0x8D23), # SparkFun SAMD21 Dev Breakout
133 (0x1B4F, 0x8D24), # SparkFun Qwiic Micro 133 (0x1B4F, 0x8D24), # SparkFun Qwiic Micro
134 (0x1D50, 0x60E8), # Radomir Dopieralski PewPew M4 134 (0x1D50, 0x60E8), # Radomir Dopieralski PewPew M4
135 (0x1D50, 0x6152), # nrf52.jpconstantineau.com BlueMicro833 135 (0x1D50, 0x6152), # nrf52.jpconstantineau.com BlueMicro833
136 (0x1D50, 0x6153), # JPConstantineau PyKey18 136 (0x1D50, 0x6153),
137 (0x1D50, 0x6153), # JPConstantineau PyKey44 137 # JPConstantineau PyKey18
138 (0x1D50, 0x6153), # JPConstantineau PyKey60 138 # JPConstantineau PyKey44
139 (0x1D50, 0x6153), # JPConstantineau PyKey87 139 # JPConstantineau PyKey60
140 # JPConstantineau PyKey87
140 (0x1D50, 0x6154), # JPConstantineau EncoderPad RP2040 141 (0x1D50, 0x6154), # JPConstantineau EncoderPad RP2040
141 (0x1D50, 0x6161), # nrf52.jpconstantineau.com BlueMicro840 142 (0x1D50, 0x6161), # nrf52.jpconstantineau.com BlueMicro840
142 (0x2019, 0x7103), # Benjamin Shockley Fig Pi 143 (0x2019, 0x7103), # Benjamin Shockley Fig Pi
143 (0x2341, 0x056B), # Arduino Nano ESP32 144 (0x2341, 0x056B), # Arduino Nano ESP32
144 (0x2341, 0x8053), # Arduino MKR1300 145 (0x2341, 0x8053), # Arduino MKR1300
184 (0x2E8A, 0x1019), # Pimoroni Motor 2040 185 (0x2E8A, 0x1019), # Pimoroni Motor 2040
185 (0x2E8A, 0x101A), # Pimoroni Servo 2040 186 (0x2E8A, 0x101A), # Pimoroni Servo 2040
186 (0x2E8A, 0x101B), # Pimoroni Badger 2040 187 (0x2E8A, 0x101B), # Pimoroni Badger 2040
187 (0x2E8A, 0x101E), # Raspberry Pi Zero W 188 (0x2E8A, 0x101E), # Raspberry Pi Zero W
188 (0x2E8A, 0x101F), # Waveshare Electronics RP2040-Zero 189 (0x2E8A, 0x101F), # Waveshare Electronics RP2040-Zero
189 (0x2E8A, 0x1020), # Waveshare Electronics RP2040-Plus (16MB) 190 (0x2E8A, 0x1020),
190 (0x2E8A, 0x1020), # Waveshare Electronics RP2040-Plus (4MB) 191 # Waveshare Electronics RP2040-Plus (16MB)
192 # Waveshare Electronics RP2040-Plus (4MB)
191 (0x2E8A, 0x1021), # Waveshare Electronics Waveshare RP2040-LCD-0.96 193 (0x2E8A, 0x1021), # Waveshare Electronics Waveshare RP2040-LCD-0.96
192 (0x2E8A, 0x1023), # Invector Labs Challenger RP2040 LoRa 194 (0x2E8A, 0x1023), # Invector Labs Challenger RP2040 LoRa
193 (0x2E8A, 0x1026), # ELECFREAKS Pico:ed 195 (0x2E8A, 0x1026), # ELECFREAKS Pico:ed
194 (0x2E8A, 0x1027), # WIZnet W5100S-EVB-Pico 196 (0x2E8A, 0x1027), # WIZnet W5100S-EVB-Pico
195 (0x2E8A, 0x1029), # WIZnet W5500-EVB-Pico 197 (0x2E8A, 0x1029), # WIZnet W5500-EVB-Pico
232 (0x2E8A, 0x10A4), # Pimoroni Tiny 2350 234 (0x2E8A, 0x10A4), # Pimoroni Tiny 2350
233 (0x2E8A, 0x10A5), # Pimoroni Plasma 2350 235 (0x2E8A, 0x10A5), # Pimoroni Plasma 2350
234 (0x2E8A, 0x10A6), # Pimoroni PGA2350 236 (0x2E8A, 0x10A6), # Pimoroni PGA2350
235 (0x2E8A, 0x10AE), # Datanoise PicoADK V2 237 (0x2E8A, 0x10AE), # Datanoise PicoADK V2
236 (0x303A, 0x7001), # Espressif ESP32-S2-HMI-DevKit-1 238 (0x303A, 0x7001), # Espressif ESP32-S2-HMI-DevKit-1
237 (0x303A, 0x7003), # Espressif ESP32-S3-DevKitC-1 239 (0x303A, 0x7003),
238 (0x303A, 0x7003), # Espressif ESP32-S3-DevKitC-1-N16 240 # Espressif ESP32-S3-DevKitC-1
239 (0x303A, 0x7003), # Espressif ESP32-S3-DevKitC-1-N32R8 241 # Espressif ESP32-S3-DevKitC-1-N16
240 (0x303A, 0x7003), # Espressif ESP32-S3-DevKitC-1-N8 242 # Espressif ESP32-S3-DevKitC-1-N32R8
241 (0x303A, 0x7003), # Espressif ESP32-S3-DevKitC-1-N8R2 243 # Espressif ESP32-S3-DevKitC-1-N8
242 (0x303A, 0x7003), # Espressif ESP32-S3-DevKitC-1-N8R8 244 # Espressif ESP32-S3-DevKitC-1-N8R2
243 (0x303A, 0x7003), # Espressif ESP32-S3-DevKitC-1-nopsram 245 # Espressif ESP32-S3-DevKitC-1-N8R8
246 # Espressif ESP32-S3-DevKitC-1-nopsram
244 (0x303A, 0x7005), # Espressif ESP32-S3-Box-2.5 247 (0x303A, 0x7005), # Espressif ESP32-S3-Box-2.5
245 (0x303A, 0x7007), # Espressif ESP32-S3-DevKitM-1-N8 248 (0x303A, 0x7007), # Espressif ESP32-S3-DevKitM-1-N8
246 (0x303A, 0x7009), # Espressif ESP32-S2-DevKitC-1-N4 249 (0x303A, 0x7009),
247 (0x303A, 0x7009), # Espressif ESP32-S2-DevKitC-1-N4R2 250 # Espressif ESP32-S2-DevKitC-1-N4
248 (0x303A, 0x7009), # Espressif ESP32-S2-DevKitC-1-N8R2 251 # Espressif ESP32-S2-DevKitC-1-N4R2
252 # Espressif ESP32-S2-DevKitC-1-N8R2
249 (0x303A, 0x700B), # Espressif ESP32-S3-USB-OTG-N8 253 (0x303A, 0x700B), # Espressif ESP32-S3-USB-OTG-N8
250 (0x303A, 0x700D), # Espressif ESP32-S3-Box-Lite 254 (0x303A, 0x700D), # Espressif ESP32-S3-Box-Lite
251 (0x303A, 0x700F), # Espressif ESP32-S3-EYE 255 (0x303A, 0x700F), # Espressif ESP32-S3-EYE
252 (0x303A, 0x7011), # Espressif ESP32-S3-EV-LCD-Board_v1.5 256 (0x303A, 0x7011), # Espressif ESP32-S3-EV-LCD-Board_v1.5
253 (0x303A, 0x8002), # UnexpectedMaker TinyS2 257 (0x303A, 0x8002), # UnexpectedMaker TinyS2
304 (0x303A, 0x81AA), # MakerM0 MagiClick S3 n4r2 308 (0x303A, 0x81AA), # MakerM0 MagiClick S3 n4r2
305 (0x303A, 0x81B1), # UnexpectedMaker TinyWATCH S3 309 (0x303A, 0x81B1), # UnexpectedMaker TinyWATCH S3
306 (0x303A, 0x81B4), # Waveshare Electronics Waveshare ESP32-S3-Zero 310 (0x303A, 0x81B4), # Waveshare Electronics Waveshare ESP32-S3-Zero
307 (0x303A, 0x81B6), # LILYGO T DECK 311 (0x303A, 0x81B6), # LILYGO T DECK
308 (0x303A, 0x81B9), # Espressif senseBox MCU-S2 ESP32S2 312 (0x303A, 0x81B9), # Espressif senseBox MCU-S2 ESP32S2
309 ( 313 (0x303A, 0x81BF),
310 0x303A, 314 # MakerFabs MakerFabs-ESP32-S3-Parallel-TFT-With-Touch-7inch
311 0x81BF,
312 ), # MakerFabs MakerFabs-ESP32-S3-Parallel-TFT-With-Touch-7inch
313 (0x303A, 0x81CF), # Flipper Devices Inc. Flipper Zero Wi-Fi Dev 315 (0x303A, 0x81CF), # Flipper Devices Inc. Flipper Zero Wi-Fi Dev
314 (0x303A, 0x81D0), # Double Take Labs COLUMBIA-DSL-SENSOR-BOARD-V1 316 (0x303A, 0x81D0), # Double Take Labs COLUMBIA-DSL-SENSOR-BOARD-V1
315 (0x303A, 0x81DA), # M5STACK M5Stack Cardputer - CircuitPython 317 (0x303A, 0x81DA), # M5STACK M5Stack Cardputer - CircuitPython
316 (0x303A, 0x81DD), # M5Stack M5stack - Dial 318 (0x303A, 0x81DD), # M5Stack M5stack - Dial
317 (0x303A, 0x81EA), # Waveshare Electronics ESP32-S3-GEEK 319 (0x303A, 0x81EA), # Waveshare Electronics ESP32-S3-GEEK
333 (0x3343, 0x83CF), # DFRobot Firebeetle 2 ESP32-S3 335 (0x3343, 0x83CF), # DFRobot Firebeetle 2 ESP32-S3
334 (0x4097, 0x0001), # TG-Boards Datalore IP M4 336 (0x4097, 0x0001), # TG-Boards Datalore IP M4
335 (0x612B, 0x80A7), # Ai-Thinker ESP 12k NodeMCU 337 (0x612B, 0x80A7), # Ai-Thinker ESP 12k NodeMCU
336 # do not overwrite this entry 338 # do not overwrite this entry
337 (0x239A, None), # Any Adafruit Boards 339 (0x239A, None), # Any Adafruit Boards
338 ], 340 ),
339 "description": "CircuitPython", 341 "description": "CircuitPython",
340 "icon": "circuitPythonDevice", 342 "icon": "circuitPythonDevice",
341 "port_description": "", 343 "port_description": "",
342 "module": ".CircuitPythonDevices", 344 "module": ".CircuitPythonDevices",
343 }, 345 },
344 "esp": { 346 "esp": {
345 "ids": [ 347 "ids": (
346 (0x0403, 0x6001), # M5Stack ESP32 device"), 348 (0x0403, 0x6001), # M5Stack ESP32 device"),
347 (0x0403, 0x6001), # FT232/FT245 (XinaBox CW01, CW02) 349 (0x0403, 0x6001), # FT232/FT245 (XinaBox CW01, CW02)
348 (0x0403, 0x6010), # FT2232C/D/L/HL/Q (ESP-WROVER-KIT) 350 (0x0403, 0x6010), # FT2232C/D/L/HL/Q (ESP-WROVER-KIT)
349 (0x0403, 0x6011), # FT4232 351 (0x0403, 0x6011), # FT4232
350 (0x0403, 0x6014), # FT232H 352 (0x0403, 0x6014), # FT232H
353 (0x10C4, 0xEA60), # CP210x 355 (0x10C4, 0xEA60), # CP210x
354 (0x1A86, 0x55D4), # CH343 356 (0x1A86, 0x55D4), # CH343
355 (0x1A86, 0x7523), # HL-340, CH340 357 (0x1A86, 0x7523), # HL-340, CH340
356 (0x303A, 0x1001), # USB JTAG serial debug unit, 358 (0x303A, 0x1001), # USB JTAG serial debug unit,
357 (0x303A, 0x4001), # Espressif Device 359 (0x303A, 0x4001), # Espressif Device
358 ], 360 ),
359 "description": "ESP32, ESP8266", 361 "description": "ESP32, ESP8266",
360 "icon": "esp32Device", 362 "icon": "esp32Device",
361 "port_description": "", 363 "port_description": "",
362 "module": ".EspDevices", 364 "module": ".EspDevices",
363 }, 365 },
364 "generic": { 366 "generic": {
365 # only manually configured devices use this 367 # only manually configured devices use this
366 "ids": [ 368 "ids": (
367 (0xF055, 0x9802), # Board in FS mode 369 (0xF055, 0x9802), # Board in FS mode
368 ], 370 ),
369 "description": QCoreApplication.translate( 371 "description": QCoreApplication.translate(
370 "MicroPythonDevice", "Generic MicroPython Board" 372 "MicroPythonDevice", "Generic MicroPython Board"
371 ), 373 ),
372 "icon": "micropython48", 374 "icon": "micropython48",
373 "port_description": "Board", 375 "port_description": "Board",
374 "module": ".GenericMicroPythonDevices", 376 "module": ".GenericMicroPythonDevices",
375 }, 377 },
376 "pyboard": { 378 "pyboard": {
377 "ids": [ 379 "ids": (
378 (0x2341, 0x045F), # Arduino Nicla Vision 380 (0x2341, 0x045F), # Arduino Nicla Vision
379 (0x2341, 0x055B), # Arduino Portenta H7 381 (0x2341, 0x055B), # Arduino Portenta H7
380 (0x2341, 0x0566), # Arduino GIGA R1 WiFi 382 (0x2341, 0x0566), # Arduino GIGA R1 WiFi
381 (0xF055, 0x9800), # Pyboard in CDC+MSC mode 383 (0xF055, 0x9800), # Pyboard in CDC+MSC mode
382 (0xF055, 0x9801), # Pyboard in CDC+HID mode 384 (0xF055, 0x9801), # Pyboard in CDC+HID mode
387 (0xF055, 0x9806), # Pyboard in CDC3 mode 389 (0xF055, 0x9806), # Pyboard in CDC3 mode
388 (0xF055, 0x9807), # Pyboard in CDC3+MSC mode 390 (0xF055, 0x9807), # Pyboard in CDC3+MSC mode
389 (0xF055, 0x9808), # Pyboard in CDC+MSC+HID mode 391 (0xF055, 0x9808), # Pyboard in CDC+MSC+HID mode
390 (0xF055, 0x9809), # Pyboard in CDC2+MSC+HID mode 392 (0xF055, 0x9809), # Pyboard in CDC2+MSC+HID mode
391 (0xF055, 0x980A), # Pyboard in CDC3+MSC+HID mode 393 (0xF055, 0x980A), # Pyboard in CDC3+MSC+HID mode
392 ], 394 ),
393 "description": "PyBoard", 395 "description": "PyBoard",
394 "icon": "micropython48", 396 "icon": "micropython48",
395 "port_description": "Pyboard", 397 "port_description": "Pyboard",
396 "module": ".PyBoardDevices", 398 "module": ".PyBoardDevices",
397 }, 399 },
398 "rp2": { 400 "rp2": {
399 "ids": [ 401 "ids": (
400 (0x1209, 0xF502), # Silicognition RP2040-Shim 402 (0x1209, 0xF502), # Silicognition RP2040-Shim
401 (0x16D0, 0x08C7), # Pimoroni Tiny 2040 (8MB) 403 (0x16D0, 0x08C7), # Pimoroni Tiny 2040 (8MB)
402 (0x1B4F, 0x0025), # SparkFun Thing Plus RP2040 404 (0x1B4F, 0x0025), # SparkFun Thing Plus RP2040
403 (0x1B4F, 0x0026), # SparkFun Pro Micro RP2040 405 (0x1B4F, 0x0026), # SparkFun Pro Micro RP2040
404 (0x1B4F, 0x0039), # SparkFun Pro Micro RP2350 406 (0x1B4F, 0x0039), # SparkFun Pro Micro RP2350
410 (0x239A, 0x80FE), # Adafruit ItsyBitsy RP2040 412 (0x239A, 0x80FE), # Adafruit ItsyBitsy RP2040
411 (0x2E8A, 0x0005), # Raspberry Pi Pico, Raspberry Pi Pico 2 413 (0x2E8A, 0x0005), # Raspberry Pi Pico, Raspberry Pi Pico 2
412 (0x2E8A, 0x000C), # Raspberry Pi Pico, Raspberry Pi Pico 2 414 (0x2E8A, 0x000C), # Raspberry Pi Pico, Raspberry Pi Pico 2
413 (0x2E8A, 0x1002), # Pimoroni Pico LiPo (4MB) 415 (0x2E8A, 0x1002), # Pimoroni Pico LiPo (4MB)
414 (0x2E8A, 0x1003), # Pimoroni Pico LiPo (16MB) 416 (0x2E8A, 0x1003), # Pimoroni Pico LiPo (16MB)
415 ], 417 ),
416 "description": QCoreApplication.translate( 418 "description": QCoreApplication.translate(
417 "MicroPythonDevice", "RP2040/RP2350 based" 419 "MicroPythonDevice", "RP2040/RP2350 based"
418 ), 420 ),
419 "icon": "rp2Device", 421 "icon": "rp2Device",
420 "port_description": "", 422 "port_description": "",
421 "module": ".RP2Devices", 423 "module": ".RP2Devices",
422 }, 424 },
423 "stlink": { 425 "stlink": {
424 "ids": [ 426 "ids": (
425 (0x0483, 0x374B), # STM32 STLink, 427 (0x0483, 0x374B), # STM32 STLink,
426 ], 428 ),
427 "description": "STM32 STLink", 429 "description": "STM32 STLink",
428 "icon": "micropython48", 430 "icon": "micropython48",
429 "port_description": "STM32 STLink", 431 "port_description": "STM32 STLink",
430 "module": ".STLinkDevices", 432 "module": ".STLinkDevices",
431 }, 433 },
432 "teensy": { 434 "teensy": {
433 "ids": [ 435 "ids": (
434 (0xF055, 0x9802), # Pyboard in CDC+MSC mode 436 (0xF055, 0x9802), # Pyboard in CDC+MSC mode
435 ], 437 ),
436 "description": "Teensy", 438 "description": "Teensy",
437 "icon": "micropython48", 439 "icon": "micropython48",
438 "port_description": "Teensy", 440 "port_description": "Teensy",
439 "module": ".TeensyDevices", 441 "module": ".TeensyDevices",
440 }, 442 },

eric ide

mercurial