A cymatics project with many rabbit holes
- Python 81.8%
- Shell 15.2%
- OpenSCAD 3%
| lcd | add a min saturation knob for sine 2 program | |
| led-ring | ||
| playground/home-assistant | ||
| pyaudio-samples | ||
| scad | ||
| zigbee | change default IP to rpi for zigbee server | |
| .gitignore | ||
| readme.md | ||
| todo.md | ||
pymatics
A cymatics project with many rabbit holes.
Introduction
This project is about cymatics where we generate patterns in a bowl of water. We have the following basic scenario:
- An audio source
- An amplifier
- A loudspeaker
- A bowl of water in the loudspeaker
- Lighting in the form of a 60 LED ring and three Philips Hue (zigbee) spotlights
- A digital camera
What happens is the following:
- The audio goes into the amplifier
- The amplifier plays the audio on the loudspeaker
- The bowl of water in the loudspeaker vibrates, generating wave patterns on the water surface
- The light sources creates reflections on the water surface
- The reflected light is picked up by the digital camera
Additionally this can get as complicated or as simple as we want it to be and opens up many different areas for further exploration.
Some examples:
- Audio. What are sound waves? How can they be encoded, transmitted, compressed, analyzed, modified, filtered, amplified etc. Any of the above can also be done using analog or digital methods or combinations thereof.
- Video. How can we capture a good video? What does all those diffrent resolutions mean? What is frame rate? How do we record it efficiently? What software to use for recording and post processing?
- Hardware. How does LED strips or zigbee spotlights work? What hardware can we use or develop ourselves to control them?
- Software. Different programming languages. Develop programs to control the lights. Programs for processing the audio etc.
- Networking. What are servers and clients? Should we use cables or wifi or both or something else? What protocols can we use between the nodes in the network?
led-ring
TODO
zigbee
TODO
Todo
- Document availabe OSC commands
- Add images for the LED lamp, the Behringer MIDI device
- Add screenshots of the UI
- Document the 3D models and add screenshots. Describe how the design was made
- Document the hardware between the lamp and the cable
- Show the casing with the RPI, PSU etc
- Add photo of the whole setup