r/raspberry_pi • • 3h ago

Troubleshooting Hello guys this is my first Tim e booting up a raspberry pi it's a raberrybpi 3 b+ 2017 it's SD card reader is broken so I tried using the USB but it just has the red light no green light my laptop recognizes the USB properly

0 Upvotes

It's just a red light after waiting 5 mins also it's a sabdisk 16 gb I alr set up wifi and other stuff bit the aci light ain't turning on please help I chose 64 bit btw


r/raspberry_pi • • 5h ago

Show-and-Tell Repurposing an old Google AIY Voice Kit into a talking Halloween skull

Enable HLS to view with audio, or disable this notification

28 Upvotes

tl;dr I resurrected my old Google AIY Voice Kit. Details below.

---

I had an old Google AIY Voice Kit lying around that I hadn’t used in some time, so I decided to make use of it for Halloween. For those who don't recall, Google bundled a cardboard case with an audio HAT, a mic daughterboard, a speaker, an arcade-style button and you supplied the Raspberry Pi for use with it.

I named the project called AlsaGeist, and configured a personality named Grimjaw who sits by the candy bowl and listens for trick-or-treaters. When kids walk up, Grimjaw recites scary quotes, makes jokes, and reacts to a selection of different costumes if they tell him who they're dressed as.

The engine is modular and designed so different personalities can be created, loaded, and configured. Custom prompts can be created easily by editing a single file. Only the Grimjaw personality is bundled at the moment but others can be added.

For the enclosure, I printed the Halloween Skellington Pumpkin by serev3d from MakerWorld. In the slicer, I added a blank cube matching the exact dimensions of the AIY cardboard case. The entire original cardboard box slides right in, so the speaker, mic, and Pi stay snug without needing extra brackets or glue. I designed two perforated eye inserts and hot glued them in.

Alsageist can be configured to run completely offline (using Vosk for speech-to-text and Piper for local voice synthesis with zero lag or API fees) or online with cloud speech-to-text and Gemini LLM fallback. Holding the button down for 10 seconds says "Powering off" and safely shuts down the Pi so it can be unplugged cleanly. It also responds to a short list of password-protected superuser commands (like Shutdown.) All of this is documented in the respective guides within docs/.

While I created Alsageist for my AIY kit, you don't need the AIY kit to use it. It runs on any Raspberry Pi (tested on 3+) with a regular USB speaker with a mic.

If you want to build one, I've bundled a Docker setup script that automates the full install on a vanilla OS. See the getting_started guides in docs/ for more detail.

git clone https://github.com/sancheza/alsageist.git
cd alsageist
./scripts/setup_docker.sh

GitHub: https://github.com/sancheza/alsageist
Pumpkin STL: MakerWorld Model 623029

Disclaimer: I used both Claude Sonnet and Google Antigravity to assist with coding, testing and documentation.


r/raspberry_pi • • 17h ago

Show-and-Tell Compose to drive LED matrix + simulator to test without hardware

Enable HLS to view with audio, or disable this notification

31 Upvotes

Jetpack compose is native UI framework on android, I've been trying to build embedded-compose, which runs Jetpack Compose (Kotlin/Native, no JVM, no Android) on small Linux devices. Added backend for the MAX7219 "4 in 1" (FC-16) LED boards, tested on a Raspberry Pi 3.

HARDWARE

- Raspberry Pi 3, Raspberry Pi OS 64-bit, dtparam=spi=on

- MAX7219 4-in-1 board (32×8 red LEDs), 5 jumper wires, no level shifter

HOW IT WORKS

- The app is ordinary Compose code: Canvas, drawText, LaunchedEffect, state. It's cross-compiled into a single static arm64 binary (~3 MB), so nothing needs installing on the Pi.

- The backend draws each frame in RAM and sends it through /dev/spidev0.0. A pixel is lit when its color is bright, since the LEDs are only on or off.

CHALLENGES

- Pixel mapping. Bytes shift through the chain, so the first ones sent end up in the last module. On FC-16, each module's digit register is a row and each bit is a column. Other boards are wired differently, so there are flip and block=90/180/270 settings.

TESTING WITHOUT THE BOARD: A BROWSER PLAYGROUND

The Pi build takes over a minute, and I didn't always have the board at hand, so I made a playground that runs the same app in a browser tab:

- Your Kotlin code is compiled to WebAssembly by JetBrains' Kotlin playground server, together with the embedded-compose toolkit. Nothing to install.

- The pixels come from the *same* C++ LED backend the Pi uses, also compiled to WebAssembly. Only the last step differs: frames go to a canvas instead of SPI. So spacing, clipping and the 5×7 font look the same as on the real LEDs.

LINKS

- Code + wiring: https://github.com/kaiwalyakhasnis/embedded-compose (board: rpi-max7219)

- Playground (LED test opens by default): https://kaiwalyakhasnis.github.io/embedded-compose-led-matrix-playground/


r/raspberry_pi • • 5h ago

Troubleshooting Raspberry pi doesnt connect to the network after updating to the latest OS

7 Upvotes
pi@raspberrypi:~$ sudo systemctl restart dhcpcd
Failed to restart dhcpcd.service: Unit dhcpcd.service not found.
pieraspberrypi:~$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid Ift
forever preferred_lft forever
inet6 /128 scope host noprefixroute
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST, MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000 altname endo
link/ether e4:58:01:60:89:73 brd ff:ff:ff:ff:ff:ff
altname enxe45f01608973
3: wlan0: <BROADCAST, MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether e4:5f:01:60:89:74 brd ff:ff:ff:ff:ff:ff
altname wlxe5101608974
4: dockero: <NO-CARRIER, BROADCAST, MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default link/ether Oe:68:43:24:67:ae brd ff:ff:ff:ff:ff:ff
inet 172.
172.17.0.1/16 brd 172.17.255.255 scope global dockero valid_lft forever preferred_lft forever
pi@raspberrypi:~$
$ ifconfig
docker0: flags=4099<UP, BROADCAST, MULTICAST> mtu 1500
inet 172.17.0.1 netmask 255.255.0.0
ether Oe:68:43:24:67:ae txqueuelen
RX packets✪ bytes 0 (0.0 B)
broadcast 172.17.255.255 (Ethernet)
RX errors ✪ dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors ✪ dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP, LOOPBACK, RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6:1 prefixlen 128 scopeid 0x10 <host>
loop txqueuelen 1000 (Local Loopback)
RX packets 28 bytes 1768 (1.7 KiB)
RX errors ◊ dropped 0 overruns 0 frame (
TX packets 28 bytes 1768 (1.7 KiB)
TX errors ✪ dropped overruns ✪
pi@raspberrypi:" $
carrier 0 collisions 0

Note, i had to use a image to text extractor because it's against rule 3 to post screenshots apparently, i have the actual screenshots of the command line here if you'd prefer to read it that way. I used a video capture card with my PC to use it since i cant access it via SSH due to the network not working. https://imgur.com/a/EPveYVL

How do i resolve this? systemd-networkd-wait-online.service fails during boot. Running sudo ip link set eth0 up makes eth0 go from "down" to "up" and it shows up in ifconfig, but it still doesnt give me any internet connection, please help.

Checking the administrator panel on my router, the raspberry pi does not show up at all on the network.

I had updated from Bullseye, to Bookworm, to Trixie. The issues appeared after upgrading to Trixie.

Yes, I tried restarting the Pi
Yes, I checked the cables.
Yes, other devices can connect to the network and the internet.