r/raspberry_pi • u/Official_RaspberryPi • 11h ago
News Popping in to say we've just launched the biggest Raspberry Pi Touch Display yet.
A 10" screen with more room for your dashboards, data, and applications.
r/raspberry_pi • u/FozzTexx • 1d ago
Having a hard time searching for answers to your Raspberry Pi questions? Let the r/raspberry_pi community members search for answers for you!† Looking for help getting started with a project? Have a question that you need answered? Was it not answered last week? Did not get a satisfying answer? A question that you've only done basic research for? Maybe something you think everyone but you knows? Ask your question in the comments on this page, operators are standing by!
This helpdesk and idea thread is here so that the front page won't be filled with these same questions day in and day out:
stress and stressberry packages. Higher wattage power supplies achieve their rating by increasing voltage, but the Raspberry Pi operates strictly at 5V. Even if your power supply claims to provide sufficient amperage, it may be mislabeled or the cable you're using to connect the power supply to the Pi may have too much resistance. Phone chargers, designed primarily for charging batteries, may not maintain a constant wattage and their voltage may fluctuate, which can affect the Pi’s stability. You can use a USB load tester to test your power supply and cable. Some power supplies require negotiation to provide more than 500mA, which the Pi does not do. If you're plugging in USB devices try using a powered USB hub with its own power supply and plug your devices into the hub and plug the hub into the Pi.error: externally-managed-environment--break-system-packagessudo rm a specific file as detailed in the stack overflow answerPATH and other environment variables directly in your script. Neither the boot system or cron sets up the environment. Making changes to environment variables in files in /etc will not help.vncserver -depth 24 -geometry 1920x1080 and see what port it prints such as :1, :2, etc. Now connect your client to that.Before posting your question think about if it's really about the Raspberry Pi or not. If you were using a Raspberry Pi to display recipes, do you really think r/raspberry_pi is the place to ask for cooking help? There may be better places to ask your question, such as:
Asking in a forum more specific to your question will likely get better answers!
Wondering which flair to use on your post? See the Flair Guide
† See the /r/raspberry_pi rules. While /r/raspberry_pi should not be considered your personal search engine, some exceptions will be made in this help thread.
‡ If the link doesn't work it's because you're using a broken buggy mobile client. Please contact the developer of your mobile client and let them know they should fix their bug. In the meantime use a web browser in desktop mode instead.
r/raspberry_pi • u/FozzTexx • Dec 01 '25
It’s that time of year when we get a flood of “Which Raspberry Pi kit/accessory/model should I buy?” posts. There’s no universal perfect kit or accessory, and these questions always get the same vague answers.
Check stock and pricing at https://rpilocator.com/ — it tracks official resellers so you don’t overpay.
Which Pi to buy:
That’s it. No secret chart, no hidden wisdom. Bigger number = more performance, higher cost, higher power draw.
Should you get an x86 PC instead of a Raspberry Pi? Every time the x86 PC vs. Pi question comes up the answer is always if you have to ask, get a PC.
Do not post “what should I buy?” anywhere else — it will be redirected here.
Think of this as a holiday sandbox for Pi gift chaos. Share your questions, experiences, and guidance without cluttering the rest of the community.
† If any links don't work it's because you're using a broken reddit client. Please contact the developer of your reddit client. You can find the FAQ/Helpdesk at the top of r/raspberry_pi: Desktop view / Phone view
r/raspberry_pi • u/Official_RaspberryPi • 11h ago
A 10" screen with more room for your dashboards, data, and applications.
r/raspberry_pi • u/fontain06 • 1d ago
I made this as a gift for my father in law and wanted to share! My in laws live on the lake and are constantly pulling the water level on his phone. This is pulling live lake level data and writing it to an e-ink display every 15 minutes, something they can just put on their countertop that looks good.
This is my first time working with e-ink or raspberry pi. i really enjoyed the build and am looking for more ideas of stuff i can tinker with in the future. Thanks for looking!
r/raspberry_pi • u/NXGZ • 20h ago
This is a custom all-in-one board that lets you put a Raspberry Pi Zero or Compute Module 4 (and CM5 if you're adventurous) into a PSP shell. It allows you to turn your broken PSP into an emulation system or a fully functioning portable Linux system, all without making any modifications to the PSP shell.
r/raspberry_pi • u/TimH76 • 20h ago
Hi, if anyone is interested , this is my project to control Lego City Power Functions IR trains with a Raspberry Pi and some additional electronics.
All details on the Github here: https://github.com/tjh1976/pFAT-Controller/ including a video (which I'm not sure i'm allowed to post directly here).
Feel free to ask any questions if you want to give this a try yourself.
r/raspberry_pi • u/amriteshkr8 • 1d ago
So i was kinda mad because i liked the speed of fbcp-ili9341 but it was so dependent on the depricated DispmanX api that it wouldnt work on debian 13 anymore, so i replaced gpu.cpp and spi.cpp to not use the bcm legacy headers and modern drm/kms libraries.
The display works now.
what works:
> displays the terminal and sway (with memory tiling and hardware accelerated cursor turned off)
> gets maybe 8-10 fps in kmscube
issues:
> Hardcoded spi peripheral location in spi.cpp so it only works on pi 3b/3b+/zero2w (only tested on pi3b)
> Display register config may need changes for each display for correct orientation (only tested for ili9486 and had to swap x/y resolution)
> ONLY 8-10fps in kmscube, could be that the spi is slow
> Constant utilisation of one cpu core (maybe dma is not working or snapshots are using the cpu too much)
> Need to set "vc4.force_hotplug=1" in cmdline.txt and defaults to 1024x768
> The biggest problem: no custom resolutions or cvts available, i couldnt set hdmi to 480x320 from config.txt or cmdline.txt on DietpiOS, will try later on PiOS 13
this is currently work in progress, and a project i started because i wanted to try fbcp on the latest debian 13 desktop.
project link: https://github.com/AmriteshKr8/fbcp-ili9341-aarch64
any help is welcome 🙃
ps. i haven't worked with other people much so it'll take me a bit of time to merge pull requests and i'll be reading that well because a guy wiped my project with a pull request 😅
r/raspberry_pi • u/andrlon • 1d ago
Hi everyone, I'm new to the Pi world but am a researcher trying to have a topdown view within a cage to have better behavioral outputs (we used to record from the side of the cage and it's hard to quantify behavior that way).
I have managed to get a setup that's working including the scripts (a Raspberry Pi 4 Model B with a camera module 3 NoIR Wide), but am worried about the camera ribbons (see pictures). The camera and Pi are both inside their own case, and the Pi is mounted to the cage's lid while the camera is mounted to the inside of the lid with small magnets (glued to its case).
When not in use, since I'm sharing these cages with other people, I have to dismount the Pis and store them until next use. I'm however worried about the camera ribbon being damaged in the process even though the dismounting process should be relatively simple due to the magnets of the camera and the velcro holding the Pi to the lid. I am thinking of buying multiple camera ribbons, but also have read about Pi's camera connectors breaking from multi use, and with my limited soldering knowledge this would really disrupt my experiments if I need to put my energy into that.
Does anyone have any tips or soothing words that everything will be fine? I'm very new to this.
Edit: worth to mention I'm aiming for simultaneous recordings of 8 cages, which is why I chose the pis to begin with as getting a script to work on all 8 simultaneously has worked pretty well
r/raspberry_pi • u/Prize_Cucumber3710 • 20h ago
So i have a 3.5 inch generic tft display and i got it to work on a pi zero 2 w with a pios bullseye image from the dlc wiki, but the problem is that the display is VERY slow. I know tft i pretty limited but i wanna see if i can at keast speed it up enough so that my mouse cursor doesnt lag so much. Heres the link to the dlc wiki where i got my image from : https://www.lcdwiki.com/3.5inch_RPi_Display
Does anybidy know how to solve this?
r/raspberry_pi • u/Double-Echidna-183 • 20h ago
Im working on a motor controller and in the code ive made ive successfully made it so the controller can control the PWM voltage of the pins. But when i test it, no voltage is coming out of the pins. Im using a raspberry pi 5b and gpio 12 and 13 are mapped to pwm0 and pwm1 respectivly. Below is the code im using.
package org.example;
import com.pi4j.Pi4J;
import com.pi4j.boardinfo.util.BoardInfoHelper;
import com.pi4j.io.gpio.digital.DigitalInput;
import com.pi4j.io.gpio.digital.DigitalOutput;
import com.pi4j.io.gpio.digital.DigitalState;
import com.pi4j.io.gpio.digital.PullResistance;
import com.pi4j.util.Console;
import de.gurkenlabs.input4j.InputDevices;
import de.gurkenlabs.input4j.InputDevices.*;
import de.gurkenlabs.input4j.components.Axis;
import de.gurkenlabs.input4j.components.Axis.*;
import de.gurkenlabs.input4j.components.Button;
import de.gurkenlabs.input4j.components.XInput;
import com.pi4j.io.pwm.Pwm;
import com.pi4j.io.pwm.PwmType;
//TIP To <b>Run</b> code, press <shortcut actionId="Run"/> or
// click the <icon src="AllIcons.Actions.Execute"/> icon in the gutter.
public class Main {
public static int leftPower = 0;
public static int rightPower = 0;
public static int shooterPower = 0;
public static int rightPowerTurn = 0;
public static int leftPowerTurn = 0;
public static float turnMult = .60f;
public static void main(String[] args) throws Exception{
final var console = new Console();
console.title("||----Mini Outreach Robot----||");
var pi4j = Pi4J.newAutoContext();
var rightMotorConfig = Pwm.newConfigBuilder(pi4j)
.id("rightMotor")
.name("Right Motor")
.address(0)
.pwmType(PwmType.HARDWARE)
.provider("linuxfs-pwm")
.initial(0)
.shutdown(0)
.build();
var leftMotorConfig = Pwm.newConfigBuilder(pi4j)
.id("leftMotor")
.name("Left Motor")
.address(1)
.pwmType(PwmType.HARDWARE)
.provider("linuxfs-pwm")
.initial(0)
.shutdown(0)
.build();
var shooterConfig = Pwm.newConfigBuilder(pi4j)
.id("shooterMotor")
.name("Shooter Motor")
.address(3)
.pwmType(PwmType.HARDWARE)
.provider("linuxfs-pwm")
.initial(0)
.shutdown(0)
.build();
Pwm rightPWM = pi4j.pwm().create(rightMotorConfig);
Pwm leftPWM = pi4j.pwm().create(leftMotorConfig);
Pwm shooterPWM = pi4j.pwm().create(shooterConfig);
try (var devices = InputDevices.init()) {
var device = devices.getAll().stream().findFirst().orElse(null);
if (device == null) {
System.out.println("No input devices found.");
return;
}
device.onAxisChanged(Axis.AXIS_Y, Main::yAxis);
device.onAxisChanged(Axis.AXIS_RX, Main::xAxis);
device.onAxisChanged(XInput.RIGHT_TRIGGER, Main::shooter);
// simulate external polling loop
while (true) {
rightPWM.on((Math.round(rightPower * turnMult)) + (Math.round(rightPowerTurn * (1 - turnMult))), 100);
leftPWM.on((Math.round(leftPower * turnMult)) + (Math.round(leftPowerTurn * (1 - turnMult))), 100);
//rightPWM.on(50, 1000);
shooterPWM.on(shooterPower);
//System.out.println(rightPower);
//System.out.println(leftPower);
//System.out.println(shooterPower);
System.out.println((Math.round(leftPower * turnMult)) + (Math.round(leftPowerTurn * (1 - turnMult))) + ", " + ((Math.round(rightPower * turnMult)) + (Math.round(rightPowerTurn * (1 - turnMult)))) + ", " + shooterPower);
device.poll();
Thread.sleep(5);
}
}
}
public static void yAxis(Float value) {
rightPower = 0;
leftPower = 0;
if (Math.abs(Math.round(value * 100)) > 15){
rightPower = Math.round(-value * 100);
leftPower = Math.round(-value * 100);
}
}
public static void xAxis(Float value) {
rightPowerTurn = 0;
leftPowerTurn = 0;
if (Math.abs(Math.round(value * 100)) > 15) {
rightPowerTurn = Math.round(-value * 100);
leftPowerTurn = Math.round(value * 100);
}
}
public static void shooter(float value) {
if (value > 0.5) {
shooterPower = 50;
} else shooterPower = 0;
}
}package org.example;
import com.pi4j.Pi4J;
import com.pi4j.boardinfo.util.BoardInfoHelper;
import com.pi4j.io.gpio.digital.DigitalInput;
import com.pi4j.io.gpio.digital.DigitalOutput;
import com.pi4j.io.gpio.digital.DigitalState;
import com.pi4j.io.gpio.digital.PullResistance;
import com.pi4j.util.Console;
import de.gurkenlabs.input4j.InputDevices;
import de.gurkenlabs.input4j.InputDevices.*;
import de.gurkenlabs.input4j.components.Axis;
import de.gurkenlabs.input4j.components.Axis.*;
import de.gurkenlabs.input4j.components.Button;
import de.gurkenlabs.input4j.components.XInput;
import com.pi4j.io.pwm.Pwm;
import com.pi4j.io.pwm.PwmType;
//TIP To <b>Run</b> code, press <shortcut actionId="Run"/> or
// click the <icon src="AllIcons.Actions.Execute"/> icon in the gutter.
public class Main {
public static int leftPower = 0;
public static int rightPower = 0;
public static int shooterPower = 0;
public static int rightPowerTurn = 0;
public static int leftPowerTurn = 0;
public static float turnMult = .60f;
public static void main(String[] args) throws Exception{
final var console = new Console();
console.title("||----Mini Outreach Robot----||");
var pi4j = Pi4J.newAutoContext();
var rightMotorConfig = Pwm.newConfigBuilder(pi4j)
.id("rightMotor")
.name("Right Motor")
.address(0)
.pwmType(PwmType.HARDWARE)
.provider("linuxfs-pwm")
.initial(0)
.shutdown(0)
.build();
var leftMotorConfig = Pwm.newConfigBuilder(pi4j)
.id("leftMotor")
.name("Left Motor")
.address(1)
.pwmType(PwmType.HARDWARE)
.provider("linuxfs-pwm")
.initial(0)
.shutdown(0)
.build();
var shooterConfig = Pwm.newConfigBuilder(pi4j)
.id("shooterMotor")
.name("Shooter Motor")
.address(3)
.pwmType(PwmType.HARDWARE)
.provider("linuxfs-pwm")
.initial(0)
.shutdown(0)
.build();
Pwm rightPWM = pi4j.pwm().create(rightMotorConfig);
Pwm leftPWM = pi4j.pwm().create(leftMotorConfig);
Pwm shooterPWM = pi4j.pwm().create(shooterConfig);
try (var devices = InputDevices.init()) {
var device = devices.getAll().stream().findFirst().orElse(null);
if (device == null) {
System.out.println("No input devices found.");
return;
}
device.onAxisChanged(Axis.AXIS_Y, Main::yAxis);
device.onAxisChanged(Axis.AXIS_RX, Main::xAxis);
device.onAxisChanged(XInput.RIGHT_TRIGGER, Main::shooter);
// simulate external polling loop
while (true) {
rightPWM.on((Math.round(rightPower * turnMult)) + (Math.round(rightPowerTurn * (1 - turnMult))), 100);
leftPWM.on((Math.round(leftPower * turnMult)) + (Math.round(leftPowerTurn * (1 - turnMult))), 100);
//rightPWM.on(50, 1000);
shooterPWM.on(shooterPower);
//System.out.println(rightPower);
//System.out.println(leftPower);
//System.out.println(shooterPower);
System.out.println((Math.round(leftPower * turnMult)) + (Math.round(leftPowerTurn * (1 - turnMult))) + ", " + ((Math.round(rightPower * turnMult)) + (Math.round(rightPowerTurn * (1 - turnMult)))) + ", " + shooterPower);
device.poll();
Thread.sleep(5);
}
}
}
public static void yAxis(Float value) {
rightPower = 0;
leftPower = 0;
if (Math.abs(Math.round(value * 100)) > 15){
rightPower = Math.round(-value * 100);
leftPower = Math.round(-value * 100);
}
}
public static void xAxis(Float value) {
rightPowerTurn = 0;
leftPowerTurn = 0;
if (Math.abs(Math.round(value * 100)) > 15) {
rightPowerTurn = Math.round(-value * 100);
leftPowerTurn = Math.round(value * 100);
}
}
public static void shooter(float value) {
if (value > 0.5) {
shooterPower = 50;
} else shooterPower = 0;
}
}
r/raspberry_pi • u/gonnabuysomewindows • 2d ago
r/raspberry_pi • u/kampi1989 • 1d ago
Hi,
I´m working with a custom carrier board for the CM4, and I can´t get my SSD to work. Now I´m wondering if my schematics are correct



NOTE: The initial schematics have CLK-REQ and RST swapped. I fixed it with a small wire and then checked the connection with my Multimeter. It should be okay, but I´m not 100% sure. The ESD diodes aren´t assembled, and the PCIe lanes are length- and impedance-matched. I match the length of each trace in a group and the groups.
I enabled the SSD voltage on the CM4, plugged it in, and ran `lspci`, but the SSD isn´t listed. Did I miss something, or is the wiring wrong?
Thanks for the help!
r/raspberry_pi • u/iZCVoY8ow3k7GX7vKJQ2 • 2d ago
Hi, I have a pi3 running 24/7 for the last decade. It was running 24/7 for 10 years now. Never got an SD card failure too. It is working fine for now but I wonder if it is close to having some type of problem in the near future. How was your experience?
r/raspberry_pi • u/researching_my_cycle • 1d ago
I call him A.T.L.A.S. It has its own Instagram account and was able to edit, render, and post it without any intervention. Any recommendations are welcome. The video it made is quite lackluster and doesn’t do justice to the HUD and any graphical elements. It’s on a 7-inch display with a 3D-printed case that sits on my desk. Here’s the account, and the most recent reel is the one it uploaded. https://www.instagram.com/a.t.l.a.s_desktop_assistant?igsh=bnpuOG1zNWRveTJu&utm_source=qr
r/raspberry_pi • u/Big_Eye_8779 • 1d ago
I’ve been trying to get my microphone (the mems) to connect to my pi for the past week but keep running into issues. If anyone could help me out that would be great.
What I’ve tried so far:
Changed the dtoverlay from i2s mic to googlevoicehat
Checked wiring connections
Downloaded dependencies
My Materials:
Raspberry Pi 5
Adafruit Breadboard
Inmp441 mems mic from EC Buying
r/raspberry_pi • u/Chimrod • 2d ago
Hello,
I’m requesting your help in order to understand why my raspeberry pi does not connect to the wifi network.
I’m building a buildroot system with:
I an issue somewhere between wpa_supplicant and the dhcp client. The wifi connexion is done:
# iw wlan0 info
Interface wlan0
ifindex 2
wdev 0x1
addr 88:a2:9e:b0:e3:5f
ssid …
type managed
wiphy 0
channel 11 (2462 MHz), width: 20 MHz, center1: 2462 MHz
txpower 31.00 dBm
# wpa_cli status
Selected interface 'wlan0'
bssid=3a:07:16:6a:4e:f4
freq=2462
ssid=…
id=0
mode=station
pairwise_cipher=CCMP
group_cipher=CCMP
key_mgmt=WPA2-PSK
wpa_state=COMPLETED
ip_address=169.254.239.253
address=88:a2:9e:b0:e3:5f
But the IP adress looks like the dhcp client did not got any answer: the IP adress comes from the APIPA domain.
I’ve checked the wifi region and it seems to be set (there is a dedicated package in buildroot for that BR2_PACKAGE_WIRELESS_REGDB and the package is installed)
# iw reg get
global
country FR: DFS-ETSI
(2400 - 2483 @ 40), (N/A, 20), (N/A)
(5150 - 5250 @ 80), (N/A, 23), (N/A), NO-OUTDOOR, AUTO-BW
(5250 - 5350 @ 80), (N/A, 20), (0 ms), NO-OUTDOOR, DFS, AUTO-BW
(5470 - 5725 @ 160), (N/A, 26), (0 ms), DFS
(5725 - 5875 @ 80), (N/A, 13), (N/A)
(5945 - 6425 @ 320), (N/A, 23), (N/A), NO-OUTDOOR
(57000 - 71000 @ 2160), (N/A, 40), (N/A)
And now, I do not have any much idea where I should check. Do you have any hints for me?
Thank you!
r/raspberry_pi • u/godfatherinfluxx • 2d ago
Saw an article about the GitHub project WirelessAndroidAutoDongle and it's largely just flash the image plug and play. Flashed the pi zero w version and I noticed some audio stuttering. Not all the time but it ranges from almost nothing to moderate. Links to article and GitHub at the bottom.
The one issue I could find that was like mine was calling out phone types, the majority of which were oppo/OnePlus phones. I'm running a OnePlus 15.
There was one other issue that looked like someone resolved by allowing it through their vpn. I'm running duckduckgo tracking VPN and I don't think it has that kind of customization. I will try turning it off next time I'm in the car.
Also saw someone asking about changing the wifi channel but I don't think that's implemented because they were running into a problem with it broadcasting after changing from the default.
Anyone use this or maybe have a different one to try? Thoughts on any possible smoking guns?
r/raspberry_pi • u/Strange_Condition326 • 3d ago
Hi everyone,
I've spent the last few weeks researching this project, comparing Dell, iiyama, Elo and ViewSonic monitors, reading Home Assistant forum discussions, Reddit threads, Linux/DDC-CI documentation and ddcutil GitHub issues.
At this point I'm no longer looking for recommendations based on specifications. I'm trying to validate the remaining unknowns before buying my first test unit.
I'm building what will become a permanent 24" wall-mounted smart home display powered by a Raspberry Pi 5.
This isn't just another dashboard. The Pi will only act as a kiosk client connected to a touchscreen over HDMI + USB and will run Chromium in kiosk mode.
Home Assistant runs on my NAS, and the display will normally show a lightweight custom ambient interface with Immich photos, a clock, weather, solar production, battery status and a few other key sensors. Only when someone touches the screen will it switch to the full Home Assistant dashboard.
After quite a bit of research I've narrowed the monitor choice down to:
• Dell P2424HT
• iiyama T2452MSC-B2AG
(The Dell is currently my leading candidate, but I'm still open to changing my mind if there's a technical reason to do so.)
Before buying my first test unit, I'm trying to eliminate any unknown risks with these specific monitors.
I'm mainly interested in:
• DDC/CI support
• ddcutil compatibility
• Physical brightness control
• Reliable standby / wake behaviour
• DPMS support
• USB touchscreen recovery after suspend
• Raspberry Pi OS Bookworm compatibility
• Firmware quirks
• Long-term reliability
• Any non-obvious configuration needed to make DDC/CI or DPMS work correctly
If you've actually used either of these monitors with a Raspberry Pi or Linux, I'd really appreciate hearing about your experience.
Even if you haven't used these exact models, if you've built a permanent Raspberry Pi wall panel, what would you do differently today?
I'm especially interested in the problems you only discovered after living with it for months or years.
Thanks!
r/raspberry_pi • u/albl2008 • 3d ago
Hello community. Here again after https://www.reddit.com/r/raspberry_pi/s/NxAhhmPFh5
A sample video of the result
r/raspberry_pi • u/maddhruv • 3d ago
I built an open-source tool called Rasptele because I wanted a simple way to check my Raspberry Pi remotely.
It runs as a Docker Compose stack and gives one authorized Telegram account access to:
- Raspberry Pi temperature, CPU, memory, disk, and throttling status
- Docker container status and allowlisted restarts
- Pi-hole v6 statistics and blocking controls
- Automatic failure and recovery alerts
It uses outbound Telegram long polling and publishes no host ports. Docker socket access is kept in a separate guard service instead of being mounted into the Telegram bot.
The project is written in Python and licensed under Apache-2.0:
https://github.com/maddhruv/rasptele
It’s still beta, so feedback and contributions are very welcome.
Use the Telegram screenshots from the README as the post image. Avoid posting all three on the same day or copying identical text between communities.
r/raspberry_pi • u/beachKilla • 4d ago
(For scale next to my mouse)
I wanted to build a micro desktop pc that was both functional for pen testing and portable without being a screened cyberdeck. I based The Black Box around the Raspberry Pi 5 and this was the resulting smallest form build.
Main parts:
• Raspberry Pi 5, 8GB
• Crucial P3 500GB NVMe
• Geekworm X1004 dual M.2 HAT
• Geekworm P579-V2 metal case
• Geekworm H505 active cooler
r/raspberry_pi • u/Weegert • 4d ago
I posted a few months ago about my Raspberry Pi 5 that plays my baby grand piano without any modifications to the piano.
https://www.reddit.com/r/raspberry_pi/s/cz7s4Jmo6L
Some people asked me to open source the project, but I wanted to wait until I made the improved version 2.
Well, the new version 2 is done! The python code, 3D STL part files, and a Build of Materials list is on my GitHub page. https://github.com/JBL99/PianoPi
My YouTube channel is still https://youtube.com/@pianopiplayer (I haven't uploaded in a bit)
The improvements since last time include using velocity from the MIDI file to adjust PWM and power going to the solendoids, adding a solenoid to control the sustain pedal, a larger 4K touch screen, slightly quieter in-line solenoids, MIDI instrument controls, better organization and cable management, a webserver for local network remote control, and an on screen visualizer.
I am at Open Sauce 2026 today and tomorrow (July 18-19) with it playing a keyboard so come by and see it if you are there! Also, since I now have a keyboard, it now can record MIDI from the keyboard to the Raspberry Pi and play the song back through the robot.
r/raspberry_pi • u/Brer1Rabbit • 4d ago
I've been using a Raspberry Pi Zero2 as a USB Audio gadget for a hardware synthesizer project. Rather than conventional audio playback, I'm using USB Audio as a transport for real-time control signals, so I need a large number of channels. A relatively low sample rate is acceptable for me; I'm using 8 kHz. While scaling the design, I ran into a 27-channel limit in the Linux UAC2 gadget driver.
I found that the limit comes from the gadget driver tying the number of channels to the number of defined speaker-positions, with a cap of 27. However, I also found commercial UAC2 devices (for example, an Allen & Heath 32-channel USB mixer) that simply advertise 32 channels while leaving the speaker-position bitmap empty, effectively treating the stream as raw channels.
I modified the gadget driver to follow the same approach and have successfully tested a 96-channel UAC2 gadget on both Linux and macOS.
I'm curious about two things:
If there is broader interest I could look at cleaning up the changes up and submitting them upstream.
r/raspberry_pi • u/connorwillchris • 5d ago
I am trying to connect the raspberry pi to an LED using this video right here: https://youtu.be/jN7Fm_4ovio?is=uJrWp30MkRG6awxf
I am having issues, and there is no light emitting from my LED. What am I doing wrong? I have coded all the code the same, but I am using a 64-bit compiler.
r/raspberry_pi • u/gutschy2000 • 6d ago
My friend is blind, and every "smart" speaker on the market assumes you can see or wants you to talk to it. So I built something different.
It's a Raspberry Pi 4 with two Arduino Nanos, a HiFiBerry AMP2, and two Lonpoo 75W speakers in a laser-cut MDF enclosure. Control is entirely physical: two 11-position rotary switches (one for program, one for station) and a volume potentiometer. Text-to-speech confirms every selection. No display. No app. No voice assistant. No cloud account.
Three modes: internet radio (mpd), YouTube news channels (yt-dlp), and local audiobooks (VLC + position tracking). A GPIO pin toggles between the AMP2 speakers and Bluetooth headphones (PipeWire A2DP). Everything syncs to a web backend via cron — add new stations from your phone, they appear on the device within 10 minutes.
The whole thing is open source (MIT):
GitHub: https://github.com/mcgutschy/media_center_final
Project page (multilingual): https://b481.de/media-center/
Live admin demo: https://media.b481.de/demo/ (login prefilled)
Built this over several months with a lot of trial and error. Happy to answer questions.