← index #17111Issue #18831
Off-topic · high · value 0.095
QUERY · ISSUE

HSTX Support for RP2350

openby sfe-SparkFroopened 2025-04-10updated 2025-10-29
enhancementport-rp2

Description

Would love for the RP2350's HSTX peripheral to be available in MicroPython! It provides an interface for outputting data ludicrously fast (8 GPIO pins (GPIO 12-19 only), DDR on each clock cycle, so up to 2.4Gbps without any overclocking), very useful for things like displays. Would be a part of the rp2 module, only on RP2350 boards (not supported on RP2040).

Section 12.11 of the RP2350 datasheet provides more details about the hardware. There are also a couple examples from the pico-examples repo.

As I understand it, basically just need to gpio_set_function(<GPIO 12-19>, GPIO_FUNC_HSTX), configure the hardware peripheral hstx_ctrl_hw (from hardware/structs/hstx_ctrl.h using macros from hardware/regs/hstx_ctrl.h), then send data to the FIFO buffer hstx_fifo_hw (from hardware/structs/hstx_fifo.h using macros from hardware/regs/hstx_fifo.h). I believe it's also possible to have the DMA feed the HSTX FIFO, DREQ_HSTX is a member of the DMA's dreq_num_rp2350, which should be made available in MicroPython.

Code Size

IMO this should always be enabled for RP2350 boards as part of the rp2 module, similar to the PIO and DMA features. Not expecting it to be very large.

Implementation

I hope the MicroPython maintainers or community will implement this feature

Code of Conduct

Yes, I agree

CANDIDATE · ISSUE

rp2: Use RP2350 hardware TRNG for os.urandom

closedby mimi89999opened 2026-02-17updated 2026-02-27
enhancement

Description

The RP2350 has a dedicated hardware TRNG peripheral with built-in health tests aligned with NIST SP 800-90B. The Pico SDK already uses it, pico_rand auto-detects HAS_RP2350_TRNG and sources entropy from it.

The current implementation is using ROSC for both rp2 microcontrollers. The RP2040 datasheet (§2.17.5) warns this "does not meet the requirements of randomness for security systems because it can be compromised."

Code Size

I expect the new code size to be rather small

Implementation

I would like to sponsor development of this feature

Code of Conduct

Yes, I agree

Keyboard

j / / n
next pair
k / / p
previous pair
1 / / h
show query pane
2 / / l
show candidate pane
c
copy suggested comment
r
toggle reasoning
g i
go to index
?
show this help
esc
close overlays

press ? or esc to close

copied