Add the Raspberry Pi Pico 2 board (RP2350A, LED on GPIO25)

Abierto Apto para principiantes
#111 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
84/100
Tipo de issue
Nueva funcionalidad
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
cmake, python, raspberry-pi, yaml

Línea de trabajo

Empieza con boards/rpi/pico2_w/board.yaml y luego lee las secciones «A second board on the same SoC» y «A numbered GPIO bank: the RP2350» de docs/engineering/hwgen.md; usa boards/pico2.h de pico-sdk y la hoja de datos del Pico 2 para conocer los datos de la placa. Añade boards/rpi/pico2/board.yaml y genera sus archivos con python3 -I hw/gen/emb-hwgen.py generate --board boards/rpi/pico2. Ejecuta la comprobación del generador y la compilación de CMake indicada; el trabajo estará terminado cuando la comprobación pase y la placa compile.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

enhancement good first issue help wanted

Goal

Support the Raspberry Pi Pico 2 (the one without wireless). The Pico 2 W is supported and tested on hardware. The Pico 2 is the same RP2350A, but its user LED is on GPIO25, driven directly by the chip (the W's LED sits behind the wireless chip, so the W has none).

A board here is a description, not code: this should need one YAML file and no C.

What exists

  • boards/rpi/pico2_w/board.yaml: start from it.
  • docs/engineering/hwgen.md, "A second board on the same SoC", shows how the NUCLEO-F446ZE was added this way. "A numbered GPIO bank: the RP2350" shows how its pins are named.
  • Boards with an LED declare it as leds: [ { name: user, gpio: ..., active: high, doc: ... } ] (see the NUCLEO-F446RE's).

Steps

  1. Create boards/rpi/pico2/board.yaml from the Pico 2 W's: name pico2, the LED on GPIO25, and the text in doc: updated. Take facts from pico-sdk's boards/pico2.h and the Pico 2 datasheet, and say so in the header comment.
  2. python3 -I hw/gen/emb-hwgen.py generate --board boards/rpi/pico2, then python3 -I hw/gen/emb-hwgen.py check.
  3. Build it: cmake --preset cm33-pico2w -B build/pico2 -DEMB_BOARD=pico2 && cmake --build build/pico2.
  4. If the generator or board support refuses the LED, describe what it said in the issue. That is a useful finding in itself.
  5. If you have a Pico 2: copy a test image's UF2 to it and tell us what the console printed (UART0 on GPIO0/GPIO1, 115200 baud).

Done when

  • boards/rpi/pico2/ holds board.yaml and the generated/ the tool wrote, and nothing else.
  • emb-hwgen.py check passes, and the board builds.
Lenguaje dominante
C
Estrellas
1
Forks
1
Merge medio
14 h 21 min
PR fusionados (30 d)
125

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de EmbLinkOs/EmbLinkRTOS

Todos los issues de EmbLinkOs/EmbLinkRTOS

Issues similares

Más issues de C

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.