RP2350 (générique / cartes basées sur le RP2350)
⚡ L’essentiel en 60 secondes
- mcu_cpu — dual-core, selectable architecture: two Arm Cortex-M33 (Armv8-M, Security/TrustZone-M, DSP, single-precision FPU + double-precision coprocessor) or two Hazard3 RISC-V cores (RV32IMAC). Only one architecture runs at a time per core pair; cores can be swapped live via the ARCHSEL register plus core reset (datasheet §1.1, §3; also Clock: 150 MHz nominal.
- gpu — none (no display engine; HSTX is a digital serial transmitter, see below).
- ram — 520 KB SRAM in 10 independently accessible banks, single-cycle access (datasheet §1.1).
- storage — no internal flash. 8 KB one-time-programmable (OTP) memory. External QSPI flash/PSRAM up to 16 MB with execute-in-place (XIP) + optional second chip select for another 16 MB. RP2354 adds 2 MB in-package flash.
- connectivity — no WiFi/Bluetooth on-chip. 1× USB controller: USB 2.0 Full-Speed device (12 Mb/s), Full/Low-Speed host (integrated USB 1.1 PHY) (datasheet §12 USB). Wireless on "W" boards (e.g. Pico 2 W) comes from an add-on radio companion chip.
- gpio_peripherals — - 30 GPIO (RP2350A) or 48 GPIO (RP2350B); IO voltage IOVDD 1.8–3.3 V (datasheet §1.2 pin description tables). - ADC: 12-bit SAR, 500 kSPS, 4 channels (A) / 8 channels (B) + internal temperature channel (datasheet; No DAC. - PWM: 8 (A) / 12 (B) dual-channel slices = 16/24 channels ( - 2× UART, 2× SPI, 2× I²C, 1× QSPI (XIP), 1× HSTX high-speed serial transmitter (output-only, 8 pins, DDR — Wikipedia cites 300 Mb/s per pin). - PIO: 3 blocks, 12 state machines total (vs 2 blocks / 8 SMs on RP2040), with 2 dedicated IRQs per block (PIO0/1/2_IRQ_0/1) vs one shared pair on RP2040 (datasheet §3.2 interrupt table, p.81–82). - DMA: 16 channels, 4 IRQ outputs (datasheet interrupt table DMA_IRQ_0–3; comparison table in - Interrupts: 52 IRQ inputs per core, all routed to both cores (datasheet §3.2).
- Sur cette fiche : 9 tutoriels · 10 codes
Le RP2350 représente la seconde génération de microcontrôleurs développés par Raspberry Pi Ltd, succédant au très populaire RP2040. Contrairement à une carte unique, cette fiche technique décrit la puce elle-même ainsi que l'écosystème foisonnant de cartes génériques ou tierces qui l'exploitent, allant des modules compatibles Pico-2 aux formats compacts comme les XIAO ou les Stamp. Annoncé en août 2024, ce composant incarne une philosophie d'accessibilité radicale : disponible à moins d'un dollar en volume, il est conçu pour être au cœur de millions de projets, avec une garantie de disponibilité des cartes officielles jusqu'en 2040. Cette longévité exceptionnelle en fait un choix stratégique pour les développements industriels ou éducatifs à long terme, assurant que le matériel ne deviendra pas obsolète prématurément.
L'architecture du RP2350 se distingue par une caractéristique unique dans sa gamme de prix : la possibilité de choisir dynamiquement entre deux jeux d'instructions différents. La puce intègre deux cœurs Arm Cortex-M33, modernes et sécurisés, ou deux cœurs RISC-V nommés Hazard3. Ces deux architectures ne fonctionnent pas simultanément ; le développeur peut basculer l'un des cœurs de l'Arm au RISC-V via un registre spécifique, sans avoir besoin de redémarrer la carte. Cette flexibilité permet d'optimiser les performances ou la consommation selon les besoins, tout en offrant une porte d'entrée vers l'écosystème RISC-V, de plus en plus prisé pour son ouverture. La fréquence de fonctionnement nominale est fixée à 150 MHz. Il est crucial de noter que cette fréquence est inférieure aux 200 MHz du prédécesseur RP2040, bien que les cœurs soient plus performants par cycle. Les développeurs migrateurs doivent donc vérifier la compatibilité de leurs boucles temporelles précises.
En matière de mémoire, le RP2350 dispose de 520 Ko de SRAM, soit le double de la génération précédente, organisée en dix banques accessibles indépendamment pour réduire les conflits d'accès. La puce ne contient pas de mémoire flash interne pour le stockage du programme ; elle repose sur une mémoire flash QSPI externe, pouvant atteindre 16 Mo avec exécution en place (XIP), ce qui signifie que le processeur peut exécuter le code directement depuis la mémoire externe sans la charger d'abord dans la RAM. Des variantes spécifiques, comme le RP2354, intègrent 2 Mo de flash directement dans le boîtier, simplifiant la conception des circuits imprimés. Pour la sécurité, le RP2350 introduit des mécanismes avancés inhabituels pour un microcontrôleur de ce coût, notamment la technologie Arm TrustZone-M. Cela permet de diviser le système en zones sécurisées et non sécurisées, isolant les données sensibles du reste du code. Un démarrage sécurisé, utilisant des clés cryptographiques stockées dans une mémoire OTP (One-Time Programmable), garantit que seul un code signé par le développeur peut s'exécuter, protégeant ainsi la propriété intellectuelle contre la copie.
Les capacités d'entrées/sorties sont renforcées par trois blocs PIO (Programmable I/O), contre deux sur le RP2040. Les PIO sont des coprocesseurs simples qui gèrent les tâches d'entrée/sortie complexes sans solliciter le cœur principal, libérant ainsi la puissance de calcul. Avec douze machines à états au total et des interruptions dédiées par bloc, le RP2350 offre une réactivité accrue pour le contrôle de périphériques rapides. Un nouveau périphérique, le HSTX, permet d'envoyer des flux de données numériques à très haute vitesse, utile pour piloter des écrans ou d'autres interfaces rapides, bien qu'il s'agisse d'une sortie pure. La connectivité sans fil n'est pas intégrée à la puce elle-même ; les cartes portant la mention « W » (comme la Pico 2 W) ajoutent une puce radio séparée pour le Wi-Fi et le Bluetooth. La connectivité USB est native, supportant le mode périphérique Full-Speed et le mode hôte, permettant de brancher des claviers ou des souris directement sur la carte.
L'écosystème logiciel est vaste et mature. Le SDK officiel C/C++ de Raspberry Pi offre un contrôle bas niveau, tandis que MicroPython et CircuitPython permettent un développement rapide et interactif, idéal pour l'éducation. Le support Arduino est assuré par le cœur communautaire « Arduino-Pico », qui inclut des définitions pour les cartes génériques. Pour les amateurs de systèmes embarqués modernes, le support Rust est disponible via les bibliothèques rp-hal et Embassy, permettant de tirer parti de la sécurité mémoire de ce langage. Il est important de noter que les cartes génériques nécessitent souvent un fichier d'en-tête spécifique pour être reconnues par le SDK officiel, car celui-ci ne contient pas de définitions universelles pour toutes les variantes tierces.
Comme tout matériel complexe, le RP2350 a connu des ajustements. Les premières versions de la puce (stepping A2) souffraient d'un problème de fuite de courant sur les broches d'entrée, pouvant affecter les mesures analogiques précises ou la consommation en veille. Ce défaut a été corrigé dans les révisions A3 et A4, sorties en 2025, il est donc recommandé de vérifier la révision de la puce lors de l'achat pour les applications critiques. De plus, l'activation du démarrage sécurisé désactive les cœurs RISC-V, car la vérification de signature est liée à l'architecture Arm. Enfin, des failles de sécurité ont été identifiées lors de défis de piratage, impliquant des injections de fautes physiques, mais des correctifs matériels et logiciels ont été déployés pour atténuer ces risques. En résumé, le RP2350 est un microcontrôleur puissant, flexible et sécurisé, qui repousse les limites de ce que l'on peut attendre d'un composant à bas coût, tout en nécessitant une attention particulière aux spécificités de sa génération de silicium et de son écosystème logiciel.



Schéma de brochage (pinout)
| Attr | Specs | vérifié |
|---|---|---|
mcu_cpu | dual-core, selectable architecture: two Arm Cortex-M33 (Armv8-M, Security/TrustZone-M, DSP, single-precision FPU + double-precision coprocessor) or two Hazard3 RISC-V cores (RV32IMAC). Only one architecture runs at a time per core pair; cores can be swapped live via the ARCHSEL register plus core reset (datasheet §1.1, §3; also Clock: 150 MHz nominal. | ✔ |
gpu | none (no display engine; HSTX is a digital serial transmitter, see below). | ? non vérifié |
ram | 520 KB SRAM in 10 independently accessible banks, single-cycle access (datasheet §1.1). | ? non vérifié |
storage | no internal flash. 8 KB one-time-programmable (OTP) memory. External QSPI flash/PSRAM up to 16 MB with execute-in-place (XIP) + optional second chip select for another 16 MB. RP2354 adds 2 MB in-package flash. | ? non vérifié |
connectivity | no WiFi/Bluetooth on-chip. 1× USB controller: USB 2.0 Full-Speed device (12 Mb/s), Full/Low-Speed host (integrated USB 1.1 PHY) (datasheet §12 USB). Wireless on "W" boards (e.g. Pico 2 W) comes from an add-on radio companion chip. | ? non vérifié |
gpio_peripherals | - 30 GPIO (RP2350A) or 48 GPIO (RP2350B); IO voltage IOVDD 1.8–3.3 V (datasheet §1.2 pin description tables). - ADC: 12-bit SAR, 500 kSPS, 4 channels (A) / 8 channels (B) + internal temperature channel (datasheet; No DAC. - PWM: 8 (A) / 12 (B) dual-channel slices = 16/24 channels ( - 2× UART, 2× SPI, 2× I²C, 1× QSPI (XIP), 1× HSTX high-speed serial transmitter (output-only, 8 pins, DDR — Wikipedia cites 300 Mb/s per pin). - PIO: 3 blocks, 12 state machines total (vs 2 blocks / 8 SMs on RP2040), with 2 dedicated IRQs per block (PIO0/1/2_IRQ_0/1) vs one shared pair on RP2040 (datasheet §3.2 interrupt table, p.81–82). - DMA: 16 channels, 4 IRQ outputs (datasheet interrupt table DMA_IRQ_0–3; comparison table in - Interrupts: 52 IRQ inputs per core, all routed to both cores (datasheet §3.2). | ✔ |
power | on-chip SMPS (buck, up to 200 mA, VOUT 0.55–3.3 V, nominal 1.1 V core) + low-quiescent LDO mode (up to 1 mA for state retention in sleep); VREG_VIN 2.7–5.5 V; USB_OTP_VDD and ADC_AVDD 3.3 V (datasheet §1.1, §6.3, §14.9.6). | ? non vérifié |
temperature | ambient operating range −40 to 85 °C (datasheet §14.9.3, Table 1682); regulator over-temperature shutdown, junction threshold configurable 100–150 °C (datasheet §6.3.6). | ? non vérifié |
process_package | 40 nm ( 5.3×5.3 mm die in QFN-60EP or QFN-80EP, 0.4 mm pitch (Wikipedia). | ✔ |
rp2040_relationship | the RP2350 is software-compatible with the RP2040 (same SDK family, PIO heritage) per At board level, Pico-2-format boards keep the original Pico's 40-pin, 51×21 mm, 0.1″-castellation format (Pico 2 Datasheet, mechanical spec). The chip package itself (QFN-60/80) is not pin-identical to RP2040's QFN-56 — compatibility is at SDK/board level, not silicon footprint. | ✔ |
- Fabricant : Raspberry Pi Ltd (Royaume-Uni). Le RP2350 est le deuxième microcontrôleur en silicium de Raspberry Pi, après le RP2040. Cette fiche couvre la puce elle-même et les nombreuses cartes « generic RP2350 » tierces construites autour d'elle (modules compatibles Pico-2, Pro Micro, XIAO, Stamp, etc.), et pas spécifiquement la carte Raspberry Pi Pico 2.
- Annoncé : 8 août 2024, lancé sur la Raspberry Pi Pico 2 à 5 US$ ; la puce RP2350 seule coûte au minimum 0,80 US$ en volume ( consulté le 2026-10-13).
- Statut : Actif. Raspberry Pi garantit la disponibilité de la carte Pico 2 jusqu'en janvier 2040 au minimum (Raspberry Pi Pico 2 Datasheet, "Availability", consulté le 2026-10-13).
- Variantes (puce) : RP2350A (30 GPIO, QFN-60 7×7 mm), RP2350B (48 GPIO, QFN-80 10×10 mm), RP2354A/RP2354B — mêmes boîtiers avec un flash NOR QSPI de 2 MB empilée dans le boîtier sur la puce ( ; RP2350 Datasheet §1.1, Révisions de silicium A2 → A3 → A4 (A4 identifiée par CHIP_ID.REVISION = 0x3 ; datasheet Annexe C, consulté le 2026-10-13).
- Formats de carte courants l'utilisant : Raspberry Pi Pico 2 / Pico 2 W ; SparkFun Pro Micro RP2350 & Thing Plus RP2350 ; Seeed XIAO RP2350 ; Solder Party RP2350 Stamp (XL) ; Waveshare RP2350 Core/Zero/Plus/PiZero ; Pimoroni PicoPlus2 / Tiny2350 / Plasma2350 ; Adafruit Metro RP2350 / Feather RP2350 ; Olimex Pico2XL/XXL ; entrées "Generic RP2350" dans le core Arduino-Pico ( consulté le 2026-10-13).
+ Points forts
- Architecture CPU sélectionnable à l'exécution : double Cortex-M33 ou double Hazard3 RISC-V à 150 MHz, basculable sans couper l'alimentation (ARCHSEL + reset du cœur) — unique à ce prix (datasheet §1.1 ; Wikipedia).
- Empilement de sécurité inhabituel pour du silicium à 1 $ : Arm TrustZone-M étendu à l'ensemble du système — périphériques, GPIO et canaux DMA individuellement affectables aux domaines Secure/Non-secure ; 8 régions SAU + 8+8 régions MPU par cœur ; secure boot (SHA-256 + ECDSA secp256k1, empreinte de clé publique OTP, anti-retour) ; clés de démarrage chiffrées dans l'OTP ; accélérateur matériel SHA-256 ; TRNG (bloc IP Arm) ; coprocesseur de redondance (RCP) et détecteur de glitch comme atténuations contre l'injection de fautes (datasheet §10, §3.6.3, §12.12–12.13).
- Triple PIO : 3 blocs PIO / 12 SMs avec IRQ par bloc, plus HSTX pour la sortie numérique haut débit de type vidéo — philosophie compatible RP2040, puissance d'E/S doublée (datasheet §1.1, §3.2).
- 520 Ko de RAM en 10 banques (2× le RP2040), 8 Ko d'OTP, QSPI adressable 16+16 MB.
- Faible coût, longue durée de vie : à partir de 0,80 $ en volume ; disponibilité des cartes garantie jusqu'en 2040 (Wikipedia ; Pico 2 Datasheet).
- Large prise en charge des langages : C/C++, MicroPython, CircuitPython, Arduino, Rust (embassy/rp-hal), Free Pascal, assemblement (Wikipedia ; READMEs de l'écosystème ci-dessus).
− Points faibles
- RP2350-E9 — Fuite en entrée des GPIO de la Bank 0 (le plus gros). Premières puces (révision A2) : les broches configurées en entrée sourcent ~120 µA quand l'entrée se situe entre les niveaux logiques, les entrées en l'air flottant vers ~2,2 V ; d'abord documenté comme errata « latching pull-down », reclassifié en « increased leakage current on Bank 0 GPIO when pad input is enabled ». Signalé par des utilisateurs, y compris les développeurs du Bus Pirate. Corrigé dans les révisions A3/A4 annoncées en juillet 2025. Références : ; ;
- RP2350-E3 (QFN-60 uniquement) : GPIO_NSMASK0 applique les permissions Non-secure des PADS aux mauvaises pads car la cartographie du registre ignore la remapping des pads du QFN-60 — affecte l'usage de TrustZone des registres PADS sur RP2350A (datasheet Annexe D.1.1).
- Errata du bootrom corrigés dans les révisions ultérieures : E13 (des blocs IMAGE_DEF invalides démarrent), E14 (connect_internal_flash ignore la broche CS1), E15 (permissions des pages OTP 62/63), E18 (un motif ECC invalide dans le champ de partition OTP brique le démarrage), E22–E23, E25 — voir datasheet Annexes C/D (changelists du bootrom A3/A4).
- Constats d'injection de fautes du défi de hacking DEF CON 32 : le défi de lecture OTP à 10 k$→20 k$ a été remporté en janvier 2025 (4 lauréats) par injection de fautes laser sur le secure boot et lecture OTP par faisceau d'ions focalisés ; Raspberry Pi a livré les atténuations comme errata E20/E21/E24/E26 (changements du bootrom dans A3/A4). ; datasheet Annexes C.2–C.3.
- Le secure boot désactive RISC-V : l'application des signatures vit sur la voie de démarrage du Cortex-M33, donc activer SB force les cœurs Arm (Wikipedia, citant la datasheet §10).
- Les cartes génériques ont besoin d'un en-tête de carte SDK personnalisé : le master de pico-sdk fournit les en-têtes pico2/pico2_w mais aucun en-tête « generic RP2350 » ; les cartes tierces fournissent soit un en-tête (le core Arduino le fait), soit vous en écrivez un (
- 150 MHz contre 200 MHz du RP2040 : l'horloge du RP2350 est plus basse que les 200 MHz du RP2040 malgré des cœurs plus rapides — ne présumez pas d'une portabilité du comptage de cycles en migrant du code RP2040 (Wikipedia, tableau comparatif).
- Retour d'expérience expert expert — expert-microcontroleur
- Retour d'experience sur les cartes generiques RP2350. Le selcteur d'architecture entre Cortex-M33 et Hazard3 RISC-V a 150 MHz est reellement utile et fonctionne sans réinitialisation materielle. Par contre attention aux steppings. Les puces A2 souffrent de l'errata RP2350-E9 sur la fuite en entrée … — expert-microcontroleur
- Salut, je confirme pour le E9 sur mon Stamp RP2350. J'ai passe des heures a diagnostiquer pourquoi mes entrées analogiques etaient faussees par les numériques voisines. En mettant des résistances de pull-down externes sur chaque ligne sensible, j'ai stabilise la lecture, mais ça consomme de la plac… — maker-bidouilleur-42
- Interessante remarque sur le E9. Pour ma part, j'utilise surtout le mode RISC-V Hazard3 pour des taches de calcul vectoriel et la bascule dynamique est fluide. Par contre, je n'ai pas rencontre le E3 sur mes cartes Pico-compatible, mais je suppose que ce n'est pas du QFN-60 ? Si tu as un module Pro… — dev-embedded-riscv
Retours et projets de la communauté
- Using both I2C channels on RP2350 forum.arduino.cc
- Waveshare RP2350-Touch-AMOLED-1.43" forum.arduino.cc
- Linux Runs on Raspberry Pi RP2350's Hazard3 RISC-V Cores (2024) hackster.io
- I got almost all of my wishes granted with RP2350 dmitry.gr
- Photon-Emission-Guided Laser Fault Injection Enables RP2350 Secure Debug donjon.ledger.com
Contenu indisponible pour le moment.
- RP2350 Datasheet (authoritative, PDF)
- Pico 2 board datasheet (reference design)
- Pico C/C++ SDK
- Pico C/C++ SDK
- Pico C/C++ SDK
- pico-extras (HSTX/scanvideo/audio, WIP)
- Errata / hardware feedback tracker
- Wikipedia RP2350 overview
- MicroPython RP2 port
- Arduino-Pico core (RP2040/RP2350)
- Arduino-Pico core (RP2040/RP2350)
- Rust
- Rust
- Rust
- RISC-V toolchain for RP2350
- Community
- Community
- RP2350-E9 — Fuite en entrée des GPIO de la Bank 0 (le plus gros). Premières puces (révision A2) : les broches configurées en entrée sourcent ~120 µA quand l'entrée se situe entre les niveaux logiques, les entrées en l'air flottant vers ~2,2 V ; d'abord documenté comme errata « latching pull-down », reclassifié en « increased leakage current on Bank 0 GPIO when pad input is enabled ». Signalé par des utilisateurs, y compris les développeurs du Bus Pirate. Corrigé dans les révisions A3/A4 annoncées en juillet 2025. Références : ; ;
- RP2350-E3 (QFN-60 uniquement) : GPIO_NSMASK0 applique les permissions Non-secure des PADS aux mauvaises pads car la cartographie du registre ignore la remapping des pads du QFN-60 — affecte l'usage de TrustZone des registres PADS sur RP2350A (datasheet Annexe D.1.1).
- Errata du bootrom corrigés dans les révisions ultérieures : E13 (des blocs IMAGE_DEF invalides démarrent), E14 (connect_internal_flash ignore la broche CS1), E15 (permissions des pages OTP 62/63), E18 (un motif ECC invalide dans le champ de partition OTP brique le démarrage), E22–E23, E25 — voir datasheet Annexes C/D (changelists du bootrom A3/A4).
- Constats d'injection de fautes du défi de hacking DEF CON 32 : le défi de lecture OTP à 10 k$→20 k$ a été remporté en janvier 2025 (4 lauréats) par injection de fautes laser sur le secure boot et lecture OTP par faisceau d'ions focalisés ; Raspberry Pi a livré les atténuations comme errata E20/E21/E24/E26 (changements du bootrom dans A3/A4). ; datasheet Annexes C.2–C.3.
- Le secure boot désactive RISC-V : l'application des signatures vit sur la voie de démarrage du Cortex-M33, donc activer SB force les cœurs Arm (Wikipedia, citant la datasheet §10).
- Les cartes génériques ont besoin d'un en-tête de carte SDK personnalisé : le master de pico-sdk fournit les en-têtes pico2/pico2_w mais aucun en-tête « generic RP2350 » ; les cartes tierces fournissent soit un en-tête (le core Arduino le fait), soit vous en écrivez un (
- 150 MHz contre 200 MHz du RP2040 : l'horloge du RP2350 est plus basse que les 200 MHz du RP2040 malgré des cœurs plus rapides — ne présumez pas d'une portabilité du comptage de cycles en migrant du code RP2040 (Wikipedia, tableau comparatif).
- Flasher MicroPython sur une carte RP2350 générique et faire clignoter la première LED debutant Schéma : IMG-rp2350-generic-debutant-1-rp2350-flash-micropython.svg — carte RP2350 générique au format Pico (type Pimoroni Tiny2350 ou XIAO RP2350) maintenue par un doigt sur le bouton BOOT, câble USB branché, fenêtre Thonny avec le REPL MicroPython, LED GP25 illuminée
- Console série sur RP2350 : USB CDC natif et UART0 de secours debutant Schéma : IMG-rp2350-generic-debutant-2-rp2350-console-serie-uart.svg — carte RP2350 générique branchée en USB sur un PC (console CDC), et en parallèle un adaptateur USB-TTL relié à GP0 (TX0) et GP1 (RX0) avec masse commune, terminal à 115200 bauds
- Lire l'ADC 12 bits et le capteur de température interne du RP2350 debutant Schéma : IMG-rp2350-generic-debutant-3-rp2350-adc-capteur-interne.svg — carte RP2350 générique, potentiomètre entre 3V3, GND et curseur sur GP26 (ADC0), puce RP2350 avec bloc ADC 12-bit SAR 500 kSPS et canal température interne, graphique des valeurs 0..4095
- Exploiter les 3 blocs PIO et 12 machines d'état du RP2350 (avec IRQ dédiées) intermediaire Schéma : IMG-rp2350-generic-intermediaire-1-rp2350-pio-3-blocs-irq.svg — puce RP2350 avec les 3 blocs PIO (PIO0/1/2) et leurs 4 machines d'état chacun, signal WS2812 sur PIO0 et compteur sur PIO1, IRQ par bloc reliant PIO et cœurs, LED GP25 animée par la PIO
- Pico SDK 2.x sur une carte RP2350 générique : CMake, board header et PICO_BOARD intermediaire Schéma : IMG-rp2350-generic-intermediaire-2-rp2350-sdk2-board-header.svg — éditeur de code avec CMakeLists.txt et un fichier d'en-tête board custom (maquette de brochage), ligne de commande cmake -DPICO_BOARD=..., carte RP2350 générique connectée en USB avec outil picotool
- Basculer les cœurs de Arm Cortex-M33 à Hazard3 RISC-V avec ARCHSEL intermediaire Schéma : IMG-rp2350-generic-intermediaire-3-rp2350-archsel-riscv.svg — puce RP2350 coupée en deux moitiés, à gauche deux cœurs Cortex-M33 (Armv8-M), à droite deux cœurs Hazard3 (RV32IMAC), registre ARCHSEL et reset de cœur comme interrupteur entre les deux, terminal affichant le banner RISC-V
- Secure boot et TrustZone-M sur RP2350 : signer son firmware sans se faire avoir avance Schéma : IMG-rp2350-generic-avance-1-rp2350-secure-boot-trustzone.svg — puce RP2350 avec bloc boot ROM vérifiant une signature ECDSA secp256k1, mémoire OTP avec empreinte de clé publique et compteur anti-recul, domaines Secure/Non-Secure séparés par la SAU, cœurs RISC-V barrés (désactivés par le secure boot)
- HSTX : générer une sortie vidéo/parallèle haute vitesse avec les 8 broches DDR avance Schéma : IMG-rp2350-generic-avance-2-rp2350-hstx-scanvideo.svg — puce RP2350 avec bloc HSTX, 8 broches de sortie en DDR reliées à un écran RGB passif et un réseau de résistances (DAC R-2R), trame pixel horodatée, PIO et DMA alimentant le HSTX depuis la SRAM 520 Ko
- Auditer le stepping de son RP2350 : fuite Bank 0 (E9), errata bootrom et parades avance Schéma : IMG-rp2350-generic-avance-3-rp2350-errata-stepping-audit.svg — puce RP2350 vue de dessus avec le registre CHIP_ID.REVISION en loupe, broches du Bank 0 surlignées avec un courant de fuite de 120 µA vers une entrée flottante à 2,2 V, calendrier A2 → A3 → A4, multimètre en mesure de courant
Bibliothèque de code — exemples écrits pour cette carte
clignotante.pyPythonbouton-interruption.pyPythonpwm-servo.pyPythonlecture-adc.pyPythonneopixel.pyPythonoled-i2c.pyPythoncapteur-dht.pyPythonjournalisation.pyPythonuart-commandes.pyPythontaches-cooperatives.pyPython
Exemples et dépôts trouvés en ligne
- raspberrypi/pico-examples github.com
- raspberrypi/pico-sdk github.com
- earlephilhower/arduino-pico github.com
- melastmohican/rust-rpico2-embassy-examples github.com
- johnwalicki/RaspPi-Pico-Examples-Fedora github.com