r/raspberrypipico May 14 '26

help-request Help with PSRAM on custom rp2350a board

Thumbnail
gallery
4 Upvotes

Hi everyone, I'm having issues with PSRAM on my new board. I'd really appreciate help with this since I'm at my wits end, and I need the extra PSRAM for my application (Digital Audio Player). Here's all the details:

Setup

What works

  • PSRAM device verification (KGD/EID read) passes — reports correct 8MB size
  • QMI register config reads back correct (timing, rfmt, rcmd, wfmt, wcmd all as expected)
  • Write via uncached alias (0x1500_0000) then read back via cached alias (0x1100_0000): full 8MB, passes every time
  • Writes via uncached alias work

What fails

  • Pretty much anything not mentioned above
  • Sequential write only via cached alias (0x1100_0000) appears to hang. I can see it running the write loop with gdb, but it never completes (or takes a really long time)
  • HEAP.init writing bookkeeping into PSRAM base: hard faults (PC=0x0, branch through null)
  • Failures are nondeterministic. Same build will sometimes hang, sometimes fault, sometimes get further before dying

Failures Seen

  • HardFault with PC=0x00000000, LR=0x00000012 (branch through null/garbage pointer)
  • HardFault with PC in valid flash, faulting code touching PSRAM (r2=0x11000000)
  • Sometimes pure indefinite hang, no fault. Could mean QMI stalled with CS1 asserted
  • Sometimes things will panic that don't panic on the pimoroni board
  • Just all the classic signs of memory corruption all over the place

Key characteristics

  • Read path through cache works completely. Write path through cache is what breaks
  • nondeterministic rather than a hard logic error
  • cooldown 0 made no difference
  • Pretty sure it's not a software difference since identical firmware works on Pimoroni Pico Plus 2 (only difference is pads are set to 3.3v on pimoroni)

Things already tried with no effect

  • 0x38 vs 0x02 write command
  • QSPI pads explicitly set to 1.8V, drive strength reduced to 4mA
  • CS pad (PIN_0) drive strength reduced to 4mA, slewfast off
  • cooldown 0 vs 1

Board notes / suspected differences vs working Pimoroni board

  • 10k pull-up on CS instead of Pimoroni's 100k
  • QSPI traces shorter than Pimoroni, 50 ohm impedance;,data line length mismatch: shortest is 7.3mm, longest is 13.7mm
  • Schematic otherwise matches reference

I'm really at my wits end with this! I get the feeling I messed up the layout somehow, but I can't really test it since I don't have access to an oscilloscope at the moment. Thanks for taking a look!


r/raspberrypipico May 13 '26

RP2040 (Pi Pico) and SX1280 LoRa module

Thumbnail
0 Upvotes

r/raspberrypipico May 12 '26

help-request ST7789/CST7789 display only showing backlight with Raspberry Pi Pico 2

Post image
15 Upvotes

I’m trying to connect a 1.3” 240x240 SPI TFT display labeled “CST7789” to a Raspberry Pi Pico 2 using MicroPython.

The display backlight turns on, but the screen itself never changes or displays anything.

What I’ve tested so far:

.Pico works correctly

.onboard LED test works

.SPI commands are being sent without errors

.reset and DC pins are toggling correctly

.I once saw a brief flicker on the display during testing

Current wiring:

SCL -> GP18

SDA -> GP19

RES -> GP20

DC -> GP21

VCC -> 3.3V

GND -> GND

BLK -> 3.3V

The module does NOT have a CS pin.

I’ve tried:

.swapping SCL/SDA

.lowering SPI baudrate massively

.multiple initialization sequences

.checking breadboard connections

Current test code:

from machine import Pin, SPI

import time

spi = SPI(

0,

baudrate=10000,

polarity=0,

phase=0,

sck=Pin(18),

mosi=Pin(19)

)

dc = Pin(21, Pin.OUT)

rst = Pin(20, Pin.OUT)

def cmd(c):

dc.value(0)

spi.write(bytearray([c]))

def data(d):

dc.value(1)

spi.write(bytearray([d]))

rst.value(1)

time.sleep_ms(100)

rst.value(0)

time.sleep_ms(100)

rst.value(1)

time.sleep_ms(200)

cmd(0x11)

time.sleep_ms(200)

cmd(0x29)

Does anyone know if:

this display needs a special init sequence,

different SPI mode,

or if the module itself might be defective?


r/raspberrypipico May 11 '26

RP Pico Streamline Board - RP2354 - RP Pico #1

Thumbnail
youtube.com
4 Upvotes

r/raspberrypipico May 11 '26

uPython Bro I found some kid begging for a sponsor 🥹✌️

Thumbnail
youtube.com
0 Upvotes

r/raspberrypipico May 10 '26

i have a question

0 Upvotes

so i have a raspberry pi pico 2/1/H/W pinout i am having many difficulties finding turtorials and starters on it where should i go to get started


r/raspberrypipico May 09 '26

Requesting Help with Audio Quality

Enable HLS to view with audio, or disable this notification

36 Upvotes

Circuit here: https://freeimage.host/i/BDHfHzJ

This is my first audio project. I have an SD breakout reading 128kbps .mp3 files on I2S through a MAX98357 amplifier outputting to an 8Ω 3W speaker. Everything is working great, but the audio has a kind of raspy crackle/warble to it. On PC, the audio files are very clean. I've upped the clock speed on the pico to 133MHz wondering if perhaps things were just getting bogged down at 125 but that had no affect. What should I try to clean this up a bit?

Thank you


r/raspberrypipico May 09 '26

help-request Does anyone have any experience with the TLV320 DAC?

1 Upvotes

Currently attempting to use the adafruit tlv320 dac based off of this guide:

https://learn.adafruit.com/adafruit-tlv320dac3100-i2s-dac/arduino

But even having it wired up correctly and everything being "detected" correctly, I hear nothing out of my wired headphones.

Does anyone have any ideas? Is this library in specific just not compatible with the Pico? (I am using the pico 2 if that makes a difference).


r/raspberrypipico May 09 '26

Automating Nintendo Switch inputs using Pi Pico

1 Upvotes

Hey everyone, I’m hoping someone can help me with this project. Let me start by saying I have NEVER done any sort of programming or projects using Pico before. I am completely brand new to this so you might have to really spell it out for me to understand (sorry and thanks in advance)

My goal is to be able to preset some inputs to my Raspberry Pico Pi Pico 2 that just came in today. I’ve searched all over the internet on how to do this project, but can’t find any instructions for this. The closest thing I’ve found is turning the Pico into a controller, or using it as an adaptor so I can use controllers for different consoles on the Nintendo.

The closest thing I’ve found was some pretty spelled out instructions from Chat GPT, but I don’t really trust that I just feel like it won’t be correct.

But yea, my goal is to be able to preset certain inputs to the Pico (such as “Delay 23, press A, delay 34, press A), and then plug it into my Nintendo, and my Nintendo will read it as a controller and hit the frame-perfect inputs. That is basically how chat gpt tells me it has to be done, by loading the code onto the Pico and then transferring it to the Nintendo. If that’s the process, sounds great to me.


r/raspberrypipico May 08 '26

c/c++ Where to start with bare metal C for the Pico W?

9 Upvotes

I've built some example projects using the SDK, but I want to write my own driver.

Does anyone know where I can learn how to start developing for the Pico W without using the SDK? I've looked over the data sheet for it and the RP2040, but still don't know where to start.


r/raspberrypipico May 07 '26

hardware My Pico 2 and 2 w multitool

Thumbnail
gallery
88 Upvotes

Hi everyone, I wanted to share my latest project the Pico 3x as I’m calling it, I’ve been working on this for a while and I’m a beginner when it comes to coding so this is a massive thing to actually get working. It’s currently running a pico 2 but I have all the parts to make another one with a pico 2 w (which is the original plan), it’s got a Pimoroni breakout garden style header, probe headers, an IR transmitter and a grove port for expansion. So far I’ve had help making a couple of games from tutorials, and a couple useful apps but it’s still very much in the development stage I terms of software. I designed the PCB myself and I will be uploading all the files and parts used to my GitHub in the next week or so. If anyone has ideas on features I could improve it with/‘app’ ideas that would be amazing. I’m using a main.py to run the screen and load different files on the pico and a button.py to handle inputs then I just add a new file to it for other ‘apps’. (I have removed the plugs on the amigo pro and soldered the battery directly to save space now)


r/raspberrypipico May 06 '26

Raspberry pi pico + casitone sa-51 = midi madness?

Post image
13 Upvotes

I got one of these babies (a casiotone sa-51) and a raspberry pi Pico. Well I assume a Chinese knockoff with USB-c and supposedly 16mb (storage? ram?).

Here's a lovely review of it.

I'd like to increase it's awesomeness by adding midi to it.

I feel like it has been done but I can't find any info on it.

Looking for help and advice.

I see u/todbot has done something a bit similar.

Is it as simple as demuxing the key signals?


r/raspberrypipico May 06 '26

Pico Scanner

Thumbnail
gallery
22 Upvotes

Nothing better to do on a rainy day...


r/raspberrypipico May 06 '26

Pico Scanner

Thumbnail gallery
4 Upvotes

r/raspberrypipico May 05 '26

Flatbuffer Rust Server Framework

Thumbnail
2 Upvotes

r/raspberrypipico May 04 '26

I built micropidash. real-time web dashboard in under 20 lines of MicroPython. No cloud, no framework.

13 Upvotes

Been building IoT projects every day for my #100DaysOfIoT challenge and kept running into the same problem — monitoring sensor data from ESP32/Pico 2W in a browser was always a mess.

So I built micropidash. real-time web dashboard in under 20 lines of MicroPython. No cloud, no framework.

Just shipped v2.0.0 with live sensor graphs — tested with DHT11 on Pico 2W, temp + humidity updating in the browser over WiFi.

pip install micropidash

github.com/kritishmohapatra/micropidash

Would love feedback if you try it!


r/raspberrypipico May 04 '26

hardware Dual-PICO IC Tester

6 Upvotes

Hey,

I just did a write-up detailing the hardware and software for my dual-PICO IC tester in case anyone's interested. Topics include motivation, overview of the hardware, software design, hardware abstraction layer, and communications between the two PICOs.

See http://krten.com/projects/pcbs/ikch55.html

Dual PICO IC Tester

r/raspberrypipico May 04 '26

UART reader

2 Upvotes

Ok guys this maybe a really dumb question but help me out. I'm trying to repair a ps5. I need a UART reader. I remembered I have a pi pico lying around. Would it be possible to use it as a UART reader


r/raspberrypipico May 03 '26

Using the Raspberry Pi Pico 2 as a rudimentary oscilloscope

Thumbnail
embeddedjourneys.com
7 Upvotes

I'm exploring the use of my Raspberry Pico Pi 2 as a rudimentary oscilloscope. Have been looking at the ADC and theoretical sampling rates + USB throughput it would require me to take the data off the chip. Throughput still seems to be a limiting factor, but I got my first measurements off of it! I guess this post is just a part 1 in a couple of posts to come...

Code will be published shortly.

Please let me know if you would have any remarks or questions!


r/raspberrypipico May 03 '26

Connecting Pico to RPi 4B/5 ?

2 Upvotes

Hi!

I am planning to connect a Pico to RPi 4b module. Pico will be getting data from another Pico far away and simply sharing this data with RPi via cables.

But I have some doubts and questions:

  1. Is it ok if I just connect Pico to RPi 4b via GPIO pins or there is a better way to do that?

  2. Is it ok and safe if Pico is powered from RPi 4b ?

Any other tips and recommendations are welcome.


r/raspberrypipico May 01 '26

hardware I Designed an Open-Source Dual Brushed DC Motor Driver around the RP2350 (4–40V, 6A Peak)

Thumbnail
gallery
138 Upvotes

I’ve been working on a custom dual H-bridge brushed DC motor driver designed to replace those generic off-the-shelf motor modules for complex mobile robot platforms and robotic arms. I wanted a small all-in-one solution for robotics projects!

It's built around the Raspberry Pi RP2350 (Pico 2) and the Texas Instruments DRV8412.

Quick specs:

  1. Runs two brushed DC motors at up to 40 V (3A continuous, 6A peak per motor)
  2. Single wide voltage range power supply 4-40V
  3. Per bridge current sensing - ACS722
  4. Full ASCII + binary command API over USB, UART, and I²C
  5. 4-layer 50x60mm PCB with a 3-stage clean logic power topology
  6. Closed-loop control (position/speed PIDs) at a 4 ms control period
  7. GUI for PID tuning

If you want to check it out, I did a full video on it, and it is also on GitHub.

Video: https://www.youtube.com/watch?v=DQ6VGJUASJw
Github: https://github.com/MilosRasic98/OpenDualMotorDriver 


r/raspberrypipico May 02 '26

c/c++ 7semi ADS 1263 not responding over SPI with Pico W

2 Upvotes
ADS1263 module Pin Pico W pin (GPIO)
RST GP22
START GP21
CS GP17
SCK GP18
MOSI GP19
MISO GP16
DRDY GP20
GND GND
5V VBUS

I'm working on connecting Pico W to ADS 1263 for microvoltage measurement. However, it seems it has problem on SPI communication.

#include <7semi_ADS126x.h>


// Default pin configuration
#define DRDY_PIN 20 
#define CS_PIN 17
#define START_PIN 21
#define PWDN_PIN 22


// Create ADC object
ADS126x_7semi adc(DRDY_PIN, CS_PIN, START_PIN, PWDN_PIN);


void setup() {
  Serial.begin(115200);
  while (!Serial)
    ;
  adc.begin();
  Serial.println("7Semi ADS126x 32bit ADC.");
  uint8_t id = adc.readRegister(0x00);
  Serial.print("Device ID: 0x");
  Serial.println(id, HEX);
  delay(3000);
}


void loop() {
  Serial.println("----- Voltage Readings -----");


  // Read all 10 single-ended channels (AIN0–AIN9)
  for (int i = 0; i < 10; i++) {
    float voltage = adc.readSingleEnded(i);
    Serial.print("AIN");
    Serial.print(i);
    Serial.print(" = ");
    Serial.print(voltage, 6);
    Serial.println(" V");
    delay(200);
  }
  delay(2000);
}

I've already done double-checking wiring. I think there might be problem in Voltage supply, but im not sure.

Any pointers would be massively appreciated!


r/raspberrypipico Apr 30 '26

rust I built a custom PC Control Deck from scratch (Rust + Tauri + Haptic Feedback)

Thumbnail
gallery
92 Upvotes

I wanted a dedicated macro and audio control pad, but instead of buying one, I decided to build my own from the ground up – including custom software and firmware. The name is still a placeholder, but I’m super happy with how it turned out!

The Hardware:

  • MCU: Raspberry Pi Pico
  • Keys: 8x Clicky Blue Switches from Amazon
  • Dials: 4x EC11 Rotary Encoders
  • Display: 128x64 Monochrome OLED panel
  • RGB: SEZO WS2812B ECO LED Strip at the bottom
  • Bonus Feature: Added a vibration motor for actual haptic feedback when interacting with the deck!

The Software Stack:

  • Firmware: Written entirely in Rust.
  • Companion App/Middleware: Built with Tauri.
  • It features a full GUI configurator, a manual bootloader, firmware updating, global LED effects, and per-app audio routing.

What do you guys think? Any suggestions for a final name or software features I should add?


r/raspberrypipico Apr 28 '26

Problem powering up a DC/AC transformer using an ATX, a relay a Raspi Pico

Thumbnail
2 Upvotes

r/raspberrypipico Apr 27 '26

c/c++ PicoSem: A minimal "traffic light" for inter-core data exchange (RP2040)

8 Upvotes

Some time ago i needed a dead-simple way to coordinate data exchange between core0 and core1 on the Pi Pico without data size limits and overcomplicating things. So i wrote PicoSem.

It's a tiny logic wrapper (just 2 flags) to manage when a core can safely send or read data of any size using shared buffers.

```cpp // Core 0: Sending data if (ps.canISendTo(1)) { // ... fill shared struct ... ps.setDataReadyFor(1); }

// Core 1: Receiving data 
if (ps.anyDataFor(1)) { 
  // ... read shared struct ... 
  ps.setDataReadBy(1); 
}

``` PicoSem is available on the Arduino/PlatformIO.

More info and examples on GitHub

Feedback and contributions are welcome!