Skip to content

Commit 9b2bb37

Browse files
Add basic documentation
1 parent 6dddb1e commit 9b2bb37

File tree

4 files changed

+24
-3
lines changed

4 files changed

+24
-3
lines changed

README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
Raspberry Pi Pico Arduino core, for all RP2040 and RP2350 boards
66

7-
This is a port of Arduino to the RP2040 (Raspberry Pi Pico processor) and RP2350 (Raspberry Pi Pico 2 processor). It uses the bare Raspberry Pi Pico SDK and a custom GCC 12.3/Newlib 4.0 toolchain.
7+
This is a port of Arduino to the RP2040 (Raspberry Pi Pico processor) and RP2350 (Raspberry Pi Pico 2 processor). It uses the bare Raspberry Pi Pico SDK and a custom GCC 14.2/Newlib 4.3 toolchain and supports ARM and RISC-V cores.
88

99
# Documentation
1010
See https://arduino-pico.readthedocs.io/en/latest/ along with the examples for more detailed usage information.
@@ -126,6 +126,7 @@ Read the [Contributing Guide](https://github.com/earlephilhower/arduino-pico/blo
126126
* Peripherals: SPI master/slave, Wire(I2C) master/slave, dual UART, emulated EEPROM, I2S audio input/output, Servo
127127
* printf (i.e. debug) output over USB serial
128128
* Transparent use of PSRAM globals and heap (RP2350 only)
129+
* ARM or RISC-V (Hazard3) support for The RP2350
129130

130131
The RP2040 PIO state machines (SMs) are used to generate jitter-free:
131132
* Servos

docs/index.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ RP2040 (Raspberry Pi Pico processor) and RP2350 (Raspberry Pi Pico 2
77
processor), intended to make it easier and more fun to use and
88
program the Raspberry Pi Pico / RP2040 / RP2350 based boards.
99

10-
This Arduino core uses a custom toolset with GCC 12.3 and Newlib 4.0.0
10+
This Arduino core uses a custom toolset with GCC 14.2 and Newlib 4.3
1111
and doesn't require any system-installed prerequisites.
1212

1313
For the latest version, always check https://github.com/earlephilhower/arduino-pico

docs/platformio.rst

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -309,6 +309,19 @@ local copy of the core (with e.g. some modifications) on disk (`see documentatio
309309
Note that this can only be done for versions that have the PlatformIO
310310
builder script it in, so versions before 1.9.2 are not supported.
311311

312+
Selecting the CPU architecture
313+
------------------------------
314+
315+
By default Platform.IO will build for the onboard ARM cores on the RP2350. To build RISC-V binaries
316+
adjust the ``board_build.mcu`` option accordingly:
317+
318+
.. code:: ini
319+
320+
; RP2350 based (RISC-V)
321+
[env:rpipico2-riscv]
322+
board = rpipico2
323+
board_build.mcu = rp2350-riscv
324+
312325
Examples
313326
--------
314327

docs/rp2350.rst

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,14 @@ is supported by the core with some minor caveats:
66

77
* PSRAM is supported via a new ``pmalloc`` call and ``PSRAM`` variable decorator.
88
* Both RP2350A and RP2350B (48 GPIOs) are supported.
9-
* Only ARM mode is available. For RISC-V (Hazard3), please use the raw SDK.
9+
10+
ARM and RISC-V Modes
11+
~~~~~~~~~~~~~~~~~~~~
12+
13+
Either set of cores can be used on the RP2350, ARM Cortex-M33 or RISC-V Hazard3.
14+
Select the desired core from the IDE menus under ``Tools->CPU Architecture``.
15+
As of the initial release, all libraries should work under the new RISC-V mode with
16+
the exception of FreeRTOS. If not, patches are always welcome.
1017

1118
P2350-E9 Errata ("Increased leakage current on Bank 0 GPIO when pad input is enabled")
1219
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

0 commit comments

Comments
 (0)