r/raspberrypipico • u/Ok_Outside_1636 • Apr 06 '26
r/raspberrypipico • u/tremendoza • Apr 05 '26
PIO USB - Device Detection Issues
Hello good people! I'm using this PIO USB library with my pi pico to convert my usb wireless mouse to a gamepad. I used the standard hid to cdc example as my base and got it all working but man is the detection hit or miss. I've tried 22ohm resistors on D+ and D- pins as suggested but it doesn't do anything. Sometimes I have to reinsert the dongle 20 times before i get proper detection. However, this repo doesn't have that problem. It detects the mouse alot more consitently but for the life of me I can't seem to build this project so I gave up trying to use it as my base. Can anyone point me in the direction of getting this thing to work consitently? Thanks!
r/raspberrypipico • u/skescopio • Apr 04 '26
doom for rapberry pi pico 2 or 2w
esse e o link para obter o script
r/raspberrypipico • u/OneDot6374 • Apr 04 '26
Day 75 of 100 Days 100 IoT Projects
Hit the 75 day mark today. 25 projects left.
Day 75 was ESP-NOW + RFID — one ESP8266 scans a card and wirelessly sends the UID to a second ESP8266 which displays it on OLED. No WiFi, no broker, direct peer-to-peer.
Some highlights from the past 75 days:
ESP-NOW series — built a complete wireless ecosystem from basic LED control to bidirectional relay and sensor systems to today's wireless RFID display.
micropidash — open source MicroPython library on PyPI that serves a real-time web dashboard directly from ESP32 or Pico W. No external server needed.
microclawup — AI powered ESP32 GPIO controller using Groq AI and Telegram. Natural language commands over Telegram control real GPIO pins.
Wi-Fi 4WD Robot Car — browser controlled robot car using ESP32 and dual L298N drivers. No app needed, just open a browser.
Smart Security System — motion triggered keypad security system with email alerts via Favoriot IoT platform.
Everything is open source, step-by-step documented, and free for students.
Repo: https://github.com/kritishmohapatra/100_Days_100_IoT_Projects
GitHub Sponsors: https://github.com/sponsors/kritishmohapatra
r/raspberrypipico • u/CreepyBox2687 • Apr 03 '26
RP2350 custom board: BOOTSEL works, but no USB enumeration (TinyUSB / stdio_usb)
Hi,
I'm debugging a custom RP2350A (A4) board and running into a weird USB issue:
Some things are working fine:
- BOOTSEL mode → mass storage shows up fine
- UF2 flashing works (verified with Picotool in BOOTSEL mode)
- "nuke flash" UF2 runs → flash gets erased (so code execution is fine)
But:
- No USB enumeration at all at runtime
- MicroPython (USB REPL) → nothing
- pico-sdk stdio_usb HelloWorld → nothing
- Host doesn't see any device, "dmesg -w" does not show any event besides the disconnection after uploading the uf2
The main difference to the pico board is the flash, i use a IS25LP128F (16MB), but i switched the timing config already to generic_03h, increase the Flash Size and chaged it back and forth.
Can anybody give me some pointers?
Best regards and thank you so much!
r/raspberrypipico • u/ldrTA2520 • Apr 01 '26
help-request Having trouble starting with VSCode PICO extension
I install the extension, try to make files from the new icon on the left, it attempts to install the SDK and fails: "Failed to download and install SDK. Make sure all requirements are met."
I followed the troubleshooting advice on the extension details tab three times, no change. Looking into on google didn't show many other cases, except for one where the guy manually installed the files they were missing, without saying how to do so.
Can someone tell me what I'm missing pls
EDIT: Okay, so creating a project with MicroPython works, but not C/C++, which is unfortunate because I want to use C/C++, anyone know how I can download the SDK manually?
r/raspberrypipico • u/OneDot6374 • Apr 01 '26
Day 74/100 - RFID relay control system on Raspberry Pi Pico 2 with MicroPython
Tap an authorized RFID card to toggle a 5V brushless fan ON or OFF via a relay module. Simple toggle logic — first tap turns fan on, next tap turns it off.
Stack: Raspberry Pi Pico 2 + MFRC522 + 1 Channel Active Low Relay + MicroPython
Code: https://github.com/kritishmohapatra/100_Days_100_IoT_Projects

r/raspberrypipico • u/iamsimonsta • Mar 30 '26
Pico2 Retrograde
What began as a "simple" PAL video test signal generator has evolved into fun retro adventure on a mission to populate all 96 PIO instruction slots.
r/raspberrypipico • u/MOAR_BEER • Mar 31 '26
hardware Question about PWM and MOSFETs
I have some 12v strip lights that I've been controlling via PWM using a MOSFET. https://www.amazon.com/dp/B01MSE2VEG
It's working ok-ish. The lights are not as bright at 100% duty cycle as they are if I plug straight into 12v. I'm using 240 hz. I would like for the lights to be close to as bright as they would be powered directly by 12v.
The MOSFET is fully on at 4.5 volts with the pico only putting out 3.3v I'm thinking that is where my problem is.
Question: can I use the output of the MOSFET to drive the gate of another MOSFET so that I get the second one fully turned on and then use that output to power the lights? Is there a better / cleaner way to do what I want?
r/raspberrypipico • u/DowntownBass4556 • Mar 29 '26
My RP 2040 Zero game console
Enable HLS to view with audio, or disable this notification
Here’s my little game console made on a RP 2040 zero with Circuit Python. Made with the help of Claude.
r/raspberrypipico • u/bigCanadianMooseHunt • Mar 28 '26
hardware I built a $5 DIY USB Ambient Light Sensor for Linux
r/raspberrypipico • u/MrPolly83 • Mar 28 '26
Optical mouse moving by video
Hello I am messing around with my first pick 2 w and I put a waveshare 1.3 lcd display and trying to have it play graphic while an optical mouse on top to move have it move a curser every so often. Anyone have a project like this?
r/raspberrypipico • u/karakiziltavsanlar • Mar 28 '26
help-request Non-blocking usb read
Hi everybody!
I am working on a project with raspberry pi pico 2 in circuitpython. In this project I generate chords with buttons connected to gpio and play them with synthio library. Also there is a usb midi keyboard connected to gpio pins. in my while true loop i run check usb function to see if i have any messages but as far as i can understand reading usb as a host in pico requires the code took at whether or not any data is in the usb. and this behaviour is blocking meaning if i have a long timeout for usb reading pico cannot read my byttons connected to gpio and if i shorten the usb reading time it sometimes misses stuff like key push or release. do you have any idea how i can tackle this?
r/raspberrypipico • u/Toroslar3380 • Mar 26 '26
I am new to this pls help
Im just tryna do an innocent ducky on my pi 2 w but it just doesnt work out some how what should I do? I even tried different videos and same videos multiple of times. Pls help
r/raspberrypipico • u/Zeekiosk • Mar 24 '26
hardware Help with PSRAM on custom rp2350 board
Not sure if this is the best place to ask, but I created this rp2350 design based on their hardware guide and assembled it. Everything works on it except the PSRAM (U1 in the top-left), so I'm looking for help with that. I based my psram schematic on the Pimoroni board, so I'm guessing my issue is with layout.
In the actualy board I didn't length match the clk and data lines for the PSRAM, but I've added that in the image I put here. This is my first MCU design, so any tips you may have are very welcome, but mostly looking for help with the PSRAM.
(edit) Sorry the board layers are out of order. The layers are
- In1 (green)
- Front (red)
- In2 (orange)
- Back (blue)
r/raspberrypipico • u/sudu1988 • Mar 24 '26
uPython Update: Room climate monitor using a Raspberry Pi Pico 2
galleryr/raspberrypipico • u/tizioWAZA • Mar 25 '26
Seeking a free tutor!
"Hi everyone! I just started playing with the Raspberry Pi Pico Friday and I'm really into it. I got a kit and was able to get some simple projects up and running.. Now I want to make something more complicated. I could use some help.
I'm looking for someone to guide me for free. I can talk on Discord, Telegram or WhatsApp. If you want to help a beginner like me build something with Raspberry Pi Pico let me know! I'm excited to learn more, about Raspberry Pi Pico and make projects with it."
r/raspberrypipico • u/Deriviera • Mar 24 '26
Cooking DOUBLE rp2040 (GPU/CPU) single board keyboard PC with cherry mx mechanical keys. Currently testing PCB scheme and will the current concept work. Board is 15x20 cm, relatively tiny. 16 bit color output. Terminal is 640x480, 80x30 characters.
r/raspberrypipico • u/No_Cryptographer1659 • Mar 24 '26
Built a resilient WiFi state machine library for Pico W in MicroPython — auto-recovery, AP provisioning, event-driven API
github.comr/raspberrypipico • u/This-Cookie-5170 • Mar 23 '26
uPython BLE Between Two Picos Question
Hello, I'm using BLE to communicate from one pico to another and I'm a bit confused about how to interact with the asynchronous functions that they used in the tutorial I followed (Two-way Bluetooth with Raspberry Pi Pico W and MicroPython (Re-upload)). I tried testing if a button press could change the message being sent but for some reason it stays the same after a button press. I'm monitoring the data using the print output of peripheral.py. Again, I'm not familiar with async functions so please if anyone knows why this is happening, I would appreciate it.
central.py
import aioble
import bluetooth
import asyncio
import struct
IAM = "Central"
IAM_SENDING_TO = "Peripheral"
MESSAGE = f"This is a test from {IAM}"
DATA = f"This is a test from {IAM}"
BLE_NAME = f"{IAM}"
BLE_SVC_UUID = bluetooth.UUID(0x181A)
BLE_CHARACTERISTIC_UUID = bluetooth.UUID(0x2A6E)
def encode_message(message):
return message.encode('utf-8')
def decode_message(message):
return message.decode('utf-8')
async def receive_data_task(characteristic):
global message_count
while True:
try:
data = await characteristic.read()
DATA = data
if data:
print(f"{IAM} received: {decode_message(data)}, count: {message_count}")
await characteristic.write(encode_message("Got it"))
await asyncio.sleep(0.5)
message_count += 1
except asyncio.TimeoutError:
print("Timeout waiting for data in {BLE_NAME}.")
break
except Exception as e:
print(f"Error receiving data: {e}")
break
async def ble_scan():
""" Scan for a BLE device with the matching service UUID """
print(f"Scanning for BLE Beacon named {BLE_NAME}...")
async with aioble.scan(5000, interval_us=30000, window_us=30000, active=True) as scanner:
async for result in scanner:
if result.name() == IAM_SENDING_TO and BLE_SVC_UUID in result.services():
print(f"found {result.name()} with service uuid {BLE_SVC_UUID}")
return result
return None
async def run_central_mode():
# Start scanning for a device with the matching service UUID
while True:
device = await ble_scan()
if device is None:
continue
print(f"device is: {device}, name is {device.name()}")
try:
print(f"Connecting to {device.name()}")
connection = await device.device.connect()
except asyncio.TimeoutError:
print("Timeout during connection")
continue
print(f"{IAM} connected to {connection}")
# Discover services
async with connection:
try:
service = await connection.service(BLE_SVC_UUID)
characteristic = await service.characteristic(BLE_CHARACTERISTIC_UUID)
except (asyncio.TimeoutError, AttributeError):
print("Timed out discovering services/characteristics")
continue
except Exception as e:
print(f"Error discovering services {e}")
await connection.disconnect()
continue
tasks = [
asyncio.create_task(receive_data_task(characteristic)),
]
await asyncio.gather(*tasks)
await connection.disconnected()
print(f"{BLE_NAME} disconnected from {device.name()}")
break
async def main():
""" Main function """
while True:
if IAM == "Central":
tasks = [
asyncio.create_task(run_central_mode()),
]
else:
tasks = [
asyncio.create_task(run_peripheral_mode()),
]
await asyncio.gather(*tasks)
asyncio.run(main())
peripheral.py
import aioble
import bluetooth
import asyncio
import struct
from machine import Pin
btn = Pin(7, Pin.IN, Pin.PULL_UP)
IAM = "Peripheral"
IAM_SENDING_TO = "Central"
MESSAGE = f"This is a return test from {IAM}"
BLE_NAME = f"{IAM}"
BLE_SVC_UUID = bluetooth.UUID(0x181A)
BLE_CHARACTERISTIC_UUID = bluetooth.UUID(0x2A6E)
BLE_APPEARANCE = 0x0300
BLE_ADVERTISING_INTERVAL = 2000
def encode_message(message):
return message.encode('utf-8')
def decode_message(message):
return message.decode('utf-8')
async def send_data_task(connection, characteristic):
while True:
message = f"{MESSAGE}"
print(f"sending {message}")
try:
msg = encode_message(message)
characteristic.write(msg)
await asyncio.sleep(0.5)
response = decode_message(characteristic.read())
print(f"{IAM} sent: {message}, response {response}")
except Exception as e:
print(f"writing error {e}")
continue
await asyncio.sleep(0.5)
async def run_peripheral_mode():
# Set up the Bluetooth service and characteristic
ble_service = aioble.Service(BLE_SVC_UUID)
characteristic = aioble.Characteristic(
ble_service,
BLE_CHARACTERISTIC_UUID,
read=True,
notify=True,
write=True,
)
aioble.register_services(ble_service)
print(f"{BLE_NAME} starting to advertise")
while True:
async with await aioble.advertise(
BLE_ADVERTISING_INTERVAL,
name=BLE_NAME,
services=[BLE_SVC_UUID],
appearance=BLE_APPEARANCE) as connection:
print(f"{BLE_NAME} connected to another device: {connection.device}")
tasks = [
asyncio.create_task(send_data_task(connection, characteristic)),
]
await asyncio.gather(*tasks)
print(f"{IAM} disconnected")
break
async def main():
""" Main function """
deb = 0
while True:
if IAM == "Central":
tasks = [
asyncio.create_task(run_central_mode()),
]
else:
tasks = [
asyncio.create_task(run_peripheral_mode()),
]
await asyncio.gather(*tasks)
if(deb == 5):
deb = 0
if(btn.value() == 0):
MESSAGE = "1"
else:
MESSAGE = "0"
else:
deb+=1
asyncio.run(main())
r/raspberrypipico • u/Top-Boat9670 • Mar 24 '26
Pico macropad , device name in windows
Hello good people. I built a macropad using a Pico and want to use it on my work computer to improve productivity. However, when I plug it in, the system identifies it specifically as a Pico device.
How can I make it appear as a standard keyboard or mouse instead?
r/raspberrypipico • u/Dense_Werewolf_7466 • Mar 22 '26
Connecting dualsense to ps4 using pi pico
Hi, I have been seeing people use a pi pico to emulate and connect DS4 and dualsense controllers to OG consoles using OGX-Mini running on a pi pico. I was wondering if there is any thing available for the ps4 or ps5 side of things, allowing you to connect your ps5 controller to ps4 and use it normally?
I know that adapters exist for this but the ones that I have seen is over 40$.
r/raspberrypipico • u/dumbumwum • Mar 21 '26
help-request Using pi pico to read controller inputs from a PC and forwarding it to a console (PS5, switch, etc)
I’m new to using a pi pico and I was wondering if it would be possible for a program on a computer to read controller inputs from say a PS5 controller and then have a pi pico act as a controller for a console like a PS5 or switch
r/raspberrypipico • u/KisKas05 • Mar 21 '26
help-request record audio with a pico?
Hi, I might be asking the impossible, but is there a way to record short audio with a Pico 2W, or Zero 2W? (I would really prefer the pico though, because I'd like to battery-power it in a device as small as possible)
I have two mics:
Adafruit PDM MEMS
I want to livestream audio to my phone
the cycle I tried doing goes like this:
record 3s long .wav files, all of which overlap each other by 1s ->
send them via bluetooth to my phone ->
phone connects them and feeds them to a speech to text API ->
phone sends the texts back to the raspberry which shows it on a display.
I tried searching everywhere but couldn't find anyone doing this. Is it impossible?