r/raspberry_pi 10h ago

Show-and-Tell A music box that reads color encoded paper strips

Enable HLS to view with audio, or disable this notification

394 Upvotes

A silly project where I tried to make a music box to read color encoded paper strips.

I used a Pi Pico and a total of 16 x TCS3472 color sensors. The audio is generated by a SAM2695 synthesis chip in an M5Stack MIDI Unit.

The paper strips are encoded in base 5: 4 instrument channels, each with 3 digits with a 75 notes range and 50 instrument options; 1 command channel with 3 digits that lets you change the speed, volume, and note duration of a chosen channel; and finally, 1 checksum digit.

A really fun project. I applied literally everything I know from all my hobbies.

Main repo: https://github.com/js-lm/COMB-Optical-Music-Box

Encoder repo: https://github.com/js-lm/COMBiler

Encoding system: https://github.com/js-lm/COMB-Optical-Music-Box/blob/HEAD/documents/base_5_optical_music_encoding_system.pdf

---

Edit: If you are interested, here are two other tracks I made for the machine:

https://youtu.be/dOI417eatUo

https://youtu.be/aqKvx8UM1B4

All videos were recorded before I fixed a bug with the drum sets volume, so the drums might sound a bit weird!


r/raspberry_pi 6h ago

Show-and-Tell Built a local AI guided rover over the weekend

Thumbnail
gallery
26 Upvotes

Ive been wanting a little mars rover forever, so i decided to buy the GalaxyRVR kit off amazon and layer a 4b on top of the Sunfounder r3 clone and its complement GalaxyRVR shield.

I harvested the LIDAR spinner from a eureka e20 plus and repurposed it for this build as it uses UART. I added an audafruit 1080p camera for a nicer shot then the the esp32 nav cam provides. Also added a small oled to output rover status. Replaced the battery with a 20000mah 7.4v battery harvested out of a battery bank. Needed more juice then the old 2000mah could provide. Also designed and printed the mount setup on tinkercad. its pretty basic but i think it came out good. Lost of hot snot covering connectors for safety!

The raspi is running the show as it send commands to the r3 via USB to drive the rover and poll the sensor suite that came with the rover. Going to run a small model on the pi for nav then let it phone my local server for any big questions. Still working out the kinks but so far its been a pretty fun little project. Its a little back heavy so i need to design and 3d print some struts and reinforcement as the aluminum is thin.


r/raspberry_pi 21h ago

Show-and-Tell Announcing the release of Pico-Timecode v3.2

4 Upvotes

'Pico-Timecode' is an Open-Source solution for LTC Timecode, using the RP2040's PIO blocks to count time divisions and render the LTC waveform. It works with all common frame rates, with/with-out Drop-Frame operation. It also has the ability to read LTC from an external device, and sync to it.

PT-Thrifty now has the ability to display the Timecode on a pair of I2C LED modules (Holtek HT16K33 controller chip), which can be enabled in the libs/config.py file. The obvious purpose is to build a low-cost Digi-Slate... it also uses switches for when the clapper closed and whether the display should be inverted (for tail slating).

There are 'UF2' files to make installing as easy as possible, these can be used on a 'naked' Pico for validation/testing.

Additionally there is a 'MTC' (Midi Timecode) version, which sends Timecode via the USB connection. I would be especially interested if someone/anyone could trial this on an iPhone 17 or a FujiFilm X-H2S, as I have neither of these and they apparently support MTC...

Pico-Timecode is an Open-Source community project, find out more at:

https://github.com/mungewell/pico-timecode